New GUI, many changes
[pierogi] / pirselectdeviceform.h
1 #ifndef PIRSELECTDEVICEFORM_H
2 #define PIRSELECTDEVICEFORM_H
3
4 #include <QWidget>
5
6 #include "pirmakenames.h"
7 #include "pirdevicetypenames.h"
8
9 class PIRKeysetWidgetItem;
10 class QListWidget;
11
12 namespace Ui {
13 class PIRSelectDeviceForm;
14 }
15
16 class PIRSelectDeviceForm : public QWidget
17 {
18   Q_OBJECT
19   
20 public:
21   explicit PIRSelectDeviceForm(QWidget *parent = 0);
22   ~PIRSelectDeviceForm();
23
24   void addNameToList(
25     QString name,
26     unsigned int index,
27     PIRMakeName make);
28
29   void addWidgetItem(
30     PIRKeysetWidgetItem *kwi);
31
32   // This is a bit of a hack, but not sure how to create a connection otherwise.
33   QListWidget *getDeviceListWidget();
34
35 private slots:
36   void filterListByMake(
37     int make);
38
39   void filterListByDeviceType(
40     int deviceType);
41  
42 private:
43   void refilterList();
44
45   Ui::PIRSelectDeviceForm *ui;
46
47   PIRMakeName currentMake;
48   PIRDeviceTypeName currentDevice;
49 };
50
51 #endif // PIRSELECTDEVICEFORM_H