diff options
Diffstat (limited to 'src/qt/rpcconsole.h')
-rw-r--r-- | src/qt/rpcconsole.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/src/qt/rpcconsole.h b/src/qt/rpcconsole.h new file mode 100644 index 0000000000..a0a73bedd3 --- /dev/null +++ b/src/qt/rpcconsole.h @@ -0,0 +1,64 @@ +#ifndef RPCCONSOLE_H +#define RPCCONSOLE_H + +#include <QDialog> + +namespace Ui { + class RPCConsole; +} +class ClientModel; + +/** Local bitcoin RPC console. */ +class RPCConsole: public QDialog +{ + Q_OBJECT + +public: + explicit RPCConsole(QWidget *parent = 0); + ~RPCConsole(); + + void setClientModel(ClientModel *model); + + enum MessageClass { + MC_ERROR, + MC_DEBUG, + CMD_REQUEST, + CMD_REPLY, + CMD_ERROR + }; + +protected: + virtual bool event(QEvent *event); + virtual bool eventFilter(QObject* obj, QEvent *event); + +private slots: + void on_lineEdit_returnPressed(); + +public slots: + void clear(); + void message(int category, const QString &message); + /** Set number of connections shown in the UI */ + void setNumConnections(int count); + /** Set number of blocks shown in the UI */ + void setNumBlocks(int count); + /** Go forward or back in history */ + void browseHistory(int offset); + /** Copy currently selected message to clipboard */ + void copyMessage(); + +signals: + // For RPC command executor + void stopExecutor(); + void cmdRequest(const QString &command); + +private: + Ui::RPCConsole *ui; + ClientModel *clientModel; + bool firstLayout; + QStringList history; + int historyPtr; + + void startExecutor(); +}; + +#endif // RPCCONSOLE_H |