almost ready to merge into master
[avrdudequi:avrdudequi.git] / fusewidget.h
1 #ifndef FUSEWIDGET_H
2 #define FUSEWIDGET_H
3
4 #include <QObject>
5 #include <QList>
6 #include <QComboBox>
7 #include <QGroupBox>
8 #include "mtfusearray.h"
9 #include <QCheckBox>
10 #include <QLabel>
11 #include <QPoint>
12
13 class FuseWidget : public QObject
14 {
15     Q_OBJECT
16
17     QString fuseArg;
18     QList<QComboBox *> *comboBoxList;
19     QGroupBox *gBoxFuse;
20     QLabel *fuseValue;
21     int fuseType;
22     QString ckName;
23
24     QList<QAction *> contextMenuActionList;
25
26     MtFuseArray fuseBitArray;
27     uchar fuseValueDefault;
28     QPoint wPoint;
29
30     uchar currentFuseValue;
31
32     void updategBoxFuse();
33     void updatecBox();
34     void showValue();
35
36 public:
37     enum FuseType { Low, High, Extended };
38     explicit FuseWidget(QGroupBox *gbox, FuseType type = Low, QObject *parent = 0);
39     void appendComboBox(QComboBox *cBox);
40     QString getFuseArg();
41     QString getFuseValueInHex();
42     void setFuseValue(uchar v);
43     //void resetValue();
44     void setLabelValue(QLabel *l);
45
46 private slots:
47     void cBoxIndexChanged(int idx);
48     void gBoxFuseChanged();
49     void contextMenuManager(QPoint p);
50     void editFuseValue();
51
52 public slots:
53     void resetValue();
54
55
56 };
57
58 #endif // FUSEWIDGET_H