summaryrefslogtreecommitdiff
path: root/utils/regtools/qeditor/regdisplaypanel.h
diff options
context:
space:
mode:
Diffstat (limited to 'utils/regtools/qeditor/regdisplaypanel.h')
-rw-r--r--utils/regtools/qeditor/regdisplaypanel.h77
1 files changed, 77 insertions, 0 deletions
diff --git a/utils/regtools/qeditor/regdisplaypanel.h b/utils/regtools/qeditor/regdisplaypanel.h
new file mode 100644
index 0000000000..444f3615f2
--- /dev/null
+++ b/utils/regtools/qeditor/regdisplaypanel.h
@@ -0,0 +1,77 @@
1#ifndef REGDISPLAYPANEL_H
2#define REGDISPLAYPANEL_H
3
4#include <QVBoxLayout>
5#include <QLabel>
6#include <QGroupBox>
7#include <QTableWidget>
8#include <QStyledItemDelegate>
9#include <QItemEditorCreatorBase>
10#include <QTextEdit>
11#include <QScrollArea>
12#include <soc_desc.hpp>
13#include "backend.h"
14#include "settings.h"
15#include "aux.h"
16#include "regtab.h"
17
18class RegItemEditorCreator : public QItemEditorCreatorBase
19{
20public:
21 RegItemEditorCreator() {}
22 virtual QWidget *createWidget(QWidget * parent) const;
23 virtual QByteArray valuePropertyName () const;
24};
25
26class DevDisplayPanel : public QGroupBox, public RegTabPanel
27{
28 Q_OBJECT
29public:
30 DevDisplayPanel(QWidget *parent, const SocDevRef& reg);
31 void Reload();
32 void AllowWrite(bool en);
33 QWidget *GetWidget();
34 bool Quit();
35
36protected:
37
38 const SocDevRef& m_dev;
39 QFont m_reg_font;
40 QLabel *m_name;
41 QLabel *m_desc;
42};
43
44class RegDisplayPanel : public QGroupBox, public RegTabPanel
45{
46 Q_OBJECT
47public:
48 RegDisplayPanel(QWidget *parent, IoBackend *io_backend, const SocRegRef& reg);
49 ~RegDisplayPanel();
50 void AllowWrite(bool en);
51 void Reload();
52 QWidget *GetWidget();
53 bool Quit();
54
55protected:
56 IoBackend::WriteMode EditModeToWriteMode(RegLineEdit::EditMode mode);
57
58 IoBackend *m_io_backend;
59 const SocRegRef& m_reg;
60 bool m_allow_write;
61 RegLineEdit *m_raw_val_edit;
62 RegSexyDisplay *m_sexy_display;
63 GrowingTableWidget *m_value_table;
64 QStyledItemDelegate *m_table_delegate;
65 QItemEditorFactory *m_table_edit_factory;
66 RegItemEditorCreator *m_regedit_creator;
67 QLabel *m_raw_val_name;
68 QFont m_reg_font;
69 QLabel *m_desc;
70 QWidget *m_viewport;
71 QScrollArea *m_scroll;
72
73private slots:
74 void OnRawRegValueReturnPressed();
75};
76
77#endif /* REGDISPLAYPANEL_H */