-
Notifications
You must be signed in to change notification settings - Fork 3
/
mainwindow.h
72 lines (59 loc) · 1.87 KB
/
mainwindow.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include "mainworker.h"
#include "editor/keycustomize.h"
#include <QMainWindow>
#include <QSettings>
namespace Ui {
class MainWindow;
}
struct KeymapConfig {
QList<int> layout;
ZArray<QList<QString>> layers;
};
class MainWindow : public QMainWindow {
Q_OBJECT
public:
explicit MainWindow(bool devel, QWidget *parent = 0);
~MainWindow();
void connectWorker(MainWorker *worker);
Q_INVOKABLE void customizeKey(int index);
protected:
// QWidget interface
void resizeEvent(QResizeEvent *event);
private:
void startCommand(KeyboardCommand cmd, QVariant arg1 = QVariant(), QVariant arg2 = QVariant());
void updateKeyLayout(ZPointer<Keymap> keymap);
void updateKeyLayer(int index);
signals:
void doRescan();
void kbCommand(zu64 key, KeyboardCommand cmd, QVariant arg1, QVariant arg2);
void kbKmUpdate(zu64 key, ZPointer<Keymap> keymap);
public slots:
void onRescanDone(ZArray<KeyboardDevice> list);
void onCommandDone(KeyboardCommand cmd, bool ret);
private slots:
void on_rescanButton_clicked();
void on_keyboardSelect_currentIndexChanged(int index);
void on_browseButton_clicked();
void on_uploadButton_clicked();
void on_rebootButton_clicked();
void on_bootButton_clicked();
void on_commitButton_clicked();
void on_resetButton_clicked();
void on_defaultButton_clicked();
void on_fileEdit_textChanged(const QString &arg1);
void on_layerSelection_currentIndexChanged(int index);
void updateRepr(int index, QString value);
private:
Ui::MainWindow *ui;
KeyCustomize *keyCustomize;
bool scanning;
ZArray<KeyboardDevice> klist;
KeyboardCommand currcmd;
QSettings settings;
int currentLayer;
ZPointer<Keymap> currentkeymap;
const QString CUSTOM_FIRMWARE_LOCATION = "customFirmwareLocation";
};
#endif // MAINWINDOW_H