| 1 | #ifndef MANUALCOMMANDS_H | 
 
 
 
 
 | 2 | #define MANUALCOMMANDS_H | 
 
 
 
 
 | 3 |  | 
 
 
 
 
 | 4 | #include <QMainWindow> | 
 
 
 
 
 | 5 | #include <QClipboard> | 
 
 
 
 
 | 6 | #include <QProcess> | 
 
 
 
 
 | 7 | #include <QScrollBar> | 
 
 
 
 
 | 8 |  | 
 
 
 
 
 | 9 | #include "utilvago.h" | 
 
 
 
 
 | 10 |  | 
 
 
 
 
 | 11 |  | 
 
 
 
 
 | 12 | namespace Ui { | 
 
 
 
 
 | 13 | class ManualCommands; | 
 
 
 
 
 | 14 | } | 
 
 
 
 
 | 15 |  | 
 
 
 
 
 | 16 | class ManualCommands : public QMainWindow | 
 
 
 
 
 | 17 | { | 
 
 
 
 
 | 18 | Q_OBJECT | 
 
 
 
 
 | 19 |  | 
 
 
 
 
 | 20 | public: | 
 
 
 
 
 | 21 | explicit ManualCommands(QWidget *parent = 0); | 
 
 
 
 
 | 22 | ~ManualCommands(); | 
 
 
 
 
 | 23 |  | 
 
 
 
 
 | 24 | protected: | 
 
 
 
 
 | 25 | bool eventFilter(QObject* obj, QEvent *event); | 
 
 
 
 
 | 26 |  | 
 
 
 
 
 | 27 | private slots: | 
 
 
 
 
 | 28 | void on_pbInput_clicked(); | 
 
 
 
 
 | 29 |  | 
 
 
 
 
 | 30 | void on_pcCopyClipboard_clicked(); | 
 
 
 
 
 | 31 |  | 
 
 
 
 
 | 32 | void on_pbClear_clicked(); | 
 
 
 
 
 | 33 |  | 
 
 
 
 
 | 34 | private: | 
 
 
 
 
 | 35 | void executeCommand(); | 
 
 
 
 
 | 36 | Ui::ManualCommands *ui; | 
 
 
 
 
 | 37 | static const int limHistory=50; | 
 
 
 
 
 | 38 | QString history[limHistory]; //this is kinda a circular buffer manual implementation (http://www.boost.org/doc/libs/1_36_0/libs/circular_buffer/doc/circular_buffer.html) | 
 
 
 
 
 | 39 | int nextInsertHistoryIdx; //next index where new commands will be inserted | 
 
 
 
 
 | 40 | int searchHistoryIdx; //current index when searching history with arrows | 
 
 
 
 
 | 41 | QProcess *myProcess; | 
 
 
 
 
 | 42 | }; | 
 
 
 
 
 | 43 |  | 
 
 
 
 
 | 44 | #endif // MANUALCOMMANDS_H |