#ifndef MASTERNODELIST_H #define MASTERNODELIST_H #include "platformstyle.h" #include "primitives/transaction.h" #include "sync.h" #include "util.h" #include #include #include #include #define MASTERNODELIST_UPDATE_SECONDS 15 #define MASTERNODELIST_FILTER_COOLDOWN_SECONDS 3 namespace Ui { class MasternodeList; } class ClientModel; class WalletModel; QT_BEGIN_NAMESPACE class QModelIndex; QT_END_NAMESPACE /** Masternode Manager page widget */ class MasternodeList : public QWidget { Q_OBJECT public: explicit MasternodeList(const PlatformStyle* platformStyle, QWidget* parent = 0); ~MasternodeList(); void setClientModel(ClientModel* clientModel); void setWalletModel(WalletModel* walletModel); CDeterministicMNCPtr GetSelectedDIP3MN(); private: QMenu* contextMenuDIP3; int64_t nTimeFilterUpdatedDIP3; bool fFilterUpdatedDIP3; public Q_SLOTS: void updateDIP3List(); Q_SIGNALS: void doubleClicked(const QModelIndex&); private: QTimer* timer; Ui::MasternodeList* ui; ClientModel* clientModel; WalletModel* walletModel; // Protects tableWidgetMasternodesDIP3 CCriticalSection cs_dip3list; QString strCurrentFilterDIP3; private Q_SLOTS: void showContextMenuDIP3(const QPoint&); void on_filterLineEditDIP3_textChanged(const QString& strFilterIn); void extraInfoDIP3_clicked(); void copyProTxHash_clicked(); void copyCollateralOutpoint_clicked(); }; #endif // MASTERNODELIST_H