578152eb5c6b653e2e4aa8d03c6042123f669661
[pierogi] / forms / pirmacroform.h
1 #ifndef PIRMACROFORM_H
2 #define PIRMACROFORM_H
3
4 #include <QWidget>
5 #include "dialogs/pirselectmacrodialog.h"
6 #include "dialogs/pireditmacrodialog.h"
7 #include "dialogs/pirdeletemacrodialog.h"
8 #include "dialogs/pircreatecommanddialog.h"
9 //#include "dialogs/pireditcommanddialog.h"
10
11 class PIRMacro;
12 class QComboBox;
13 class QListWidgetItem;
14 class MainWindow;
15
16 enum UserRequest {
17   No_Request,
18   DisplayMacro_Request,
19   NewMacro_Request,
20   EditMacro_Request,
21   DeleteMacro_Request
22 };
23
24 namespace Ui {
25 class PIRMacroForm;
26 }
27
28 class PIRMacroForm : public QWidget
29 {
30   Q_OBJECT
31   
32 public:
33 //  explicit PIRMacroForm(QWidget *parent = 0);
34
35   PIRMacroForm(
36     MainWindow *mw);
37
38   ~PIRMacroForm();
39
40   QComboBox *getKeysetComboBox();
41   
42 private slots:
43   void on_chooseMacroButton_clicked();
44 //  void on_newMacroButton_clicked();
45   void on_runButton_clicked();
46   void on_addButton_clicked();
47   void on_commandUpButton_clicked();
48   void on_commandDownIcon_clicked();
49   void on_deleteButton_clicked();
50   void on_copyButton_clicked();
51 //  void on_macroListWidget_itemClicked(QListWidgetItem *item);
52 //  void on_macroListWidget_itemClicked();
53   void on_macroListWidget_currentRowChanged(int currentRow);
54
55   void displayMacro(
56     QTreeWidgetItem *item);
57
58   void createNewMacro();
59
60   void editMacro(
61     QTreeWidgetItem *item);
62
63   void deleteMacro(
64     QTreeWidgetItem *item);
65
66 //  void deleteCurrentCommand();
67 //  void moveCurrentCommandUp();
68 //  void moveCurrentCommandDown();
69 //  void copyCurrentCommand();
70
71 private:
72   Ui::PIRMacroForm *ui;
73
74   PIRSelectMacroDialog smd;
75   PIREditMacroDialog emd;
76   PIRDeleteMacroDialog dmd;
77   PIRCreateCommandDialog ccd;
78 //  PIREditCommandDialog ecd;
79
80   PIRMacro *currentMacro;
81   PIRMacro *userRequestMacro;
82
83   UserRequest request;
84
85   MainWindow *mainWindow;
86 };
87
88 #endif // PIRMACROFORM_H