File indexing completed on 2024-04-28 04:03:13
0001 /* 0002 This file is part of Knights, a chess board for KDE SC 4. 0003 SPDX-FileCopyrightText: 2009, 2010, 2011 Miha Čančula <miha@noughmad.eu> 0004 0005 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0006 */ 0007 0008 #ifndef KNIGHTS_OFFERWIDGET_H 0009 #define KNIGHTS_OFFERWIDGET_H 0010 0011 #include <KMessageWidget> 0012 0013 namespace Ui { 0014 class Popup; 0015 } 0016 0017 namespace Knights { 0018 0019 class Offer; 0020 0021 enum OfferAction { 0022 AcceptOffer, 0023 DeclineOffer, 0024 IgnoreOffer 0025 }; 0026 0027 class OfferWidget : public KMessageWidget { 0028 Q_OBJECT 0029 0030 public: 0031 explicit OfferWidget(const Offer& offer, QWidget* parent = nullptr, Qt::WindowFlags f = {}); 0032 ~OfferWidget() override; 0033 0034 int id() const; 0035 0036 private: 0037 Ui::Popup* ui; 0038 int offerId; 0039 0040 private Q_SLOTS: 0041 void acceptClicked(); 0042 void declineClicked(); 0043 void closeClicked(); 0044 0045 Q_SIGNALS: 0046 void close(int id, OfferAction action); 0047 }; 0048 0049 } 0050 0051 #endif // KNIGHTS_OFFERWIDGET_H