Commit 9e1f8d0933fa0b38d3cc0ff8d4da9f682182c07a
1 parent
184bdebb42
Exists in
master
and in
2 other branches
엔코더 구현 대비 선행 수정
Showing
52 changed files
with
1628 additions
and
48 deletions
Show diff stats
app/gui/oven_control/autocooksettingwidget.cpp
| ... | ... | @@ -65,6 +65,16 @@ AutoCookSettingWidget::~AutoCookSettingWidget() |
| 65 | 65 | delete ui; |
| 66 | 66 | } |
| 67 | 67 | |
| 68 | +void AutoCookSettingWidget::keyPressEvent(QKeyEvent *event) | |
| 69 | +{ | |
| 70 | + | |
| 71 | +} | |
| 72 | + | |
| 73 | +void AutoCookSettingWidget::keyReleaseEvent(QKeyEvent *event) | |
| 74 | +{ | |
| 75 | + | |
| 76 | +} | |
| 77 | + | |
| 68 | 78 | void AutoCookSettingWidget::setupUi(Cook cook) |
| 69 | 79 | { |
| 70 | 80 | ui->cookTypeIcon->setPixmap(Define::icon(cook.type)); |
| ... | ... | @@ -132,3 +142,18 @@ void AutoCookSettingWidget::setupUi(Cook cook) |
| 132 | 142 | } |
| 133 | 143 | } |
| 134 | 144 | } |
| 145 | + | |
| 146 | +void AutoCookSettingWidget::onEncoderLeft() | |
| 147 | +{ | |
| 148 | + | |
| 149 | +} | |
| 150 | + | |
| 151 | +void AutoCookSettingWidget::onEncoderRight() | |
| 152 | +{ | |
| 153 | + | |
| 154 | +} | |
| 155 | + | |
| 156 | +void AutoCookSettingWidget::onEncoderClicked(QWidget *clicked) | |
| 157 | +{ | |
| 158 | + | |
| 159 | +} | ... | ... |
app/gui/oven_control/autocooksettingwidget.h
| ... | ... | @@ -30,11 +30,21 @@ public: |
| 30 | 30 | explicit AutoCookSettingWidget(AutoCookSetting setting, QWidget *parent = 0); |
| 31 | 31 | ~AutoCookSettingWidget(); |
| 32 | 32 | |
| 33 | +protected: | |
| 34 | + void keyPressEvent(QKeyEvent *event); | |
| 35 | + void keyReleaseEvent(QKeyEvent *event); | |
| 36 | + | |
| 33 | 37 | private: |
| 34 | 38 | Ui::AutoCookSettingWidget *ui; |
| 35 | 39 | QList<ConfigWidget> configWidgets; |
| 36 | 40 | |
| 37 | 41 | void setupUi(Cook cook); |
| 42 | + | |
| 43 | + QWidget *pushed = NULL; | |
| 44 | + | |
| 45 | + void onEncoderLeft(); | |
| 46 | + void onEncoderRight(); | |
| 47 | + void onEncoderClicked(QWidget *clicked); | |
| 38 | 48 | }; |
| 39 | 49 | |
| 40 | 50 | #endif // AUTOCOOKSETTINGWIDGET_H | ... | ... |
app/gui/oven_control/autocookwindow.cpp
| 1 | 1 | #include "autocookwindow.h" |
| 2 | 2 | #include "ui_autocookwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "keepwarmpopup.h" |
| 5 | 7 | #include "cookhistory.h" |
| 6 | 8 | #include "confirmpopup.h" |
| ... | ... | @@ -107,6 +109,41 @@ AutoCookWindow::~AutoCookWindow() |
| 107 | 109 | delete ui; |
| 108 | 110 | } |
| 109 | 111 | |
| 112 | +void AutoCookWindow::keyPressEvent(QKeyEvent *event) | |
| 113 | +{ | |
| 114 | + switch (event->key()) | |
| 115 | + { | |
| 116 | + case 0x01000030: // Turn left | |
| 117 | + onEncoderLeft(); | |
| 118 | + break; | |
| 119 | + case 0x01000031: // Push | |
| 120 | + pushed = focusWidget(); | |
| 121 | + break; | |
| 122 | + case 0x01000032: // Turn right | |
| 123 | + onEncoderRight(); | |
| 124 | + break; | |
| 125 | + } | |
| 126 | +} | |
| 127 | + | |
| 128 | +void AutoCookWindow::keyReleaseEvent(QKeyEvent *event) | |
| 129 | +{ | |
| 130 | + switch (event->key()) | |
| 131 | + { | |
| 132 | + case 0x01000030: // Turn left | |
| 133 | + onEncoderLeft(); | |
| 134 | + break; | |
| 135 | + case 0x01000031: // Push | |
| 136 | + if (focusWidget() == pushed) | |
| 137 | + onEncoderClicked(pushed); | |
| 138 | + | |
| 139 | + pushed = NULL; | |
| 140 | + break; | |
| 141 | + case 0x01000032: // Turn right | |
| 142 | + onEncoderRight(); | |
| 143 | + break; | |
| 144 | + } | |
| 145 | +} | |
| 146 | + | |
| 110 | 147 | void AutoCookWindow::setupUi() |
| 111 | 148 | { |
| 112 | 149 | steamModeIcon.load(":/images/cook_mode/small_steam.png"); |
| ... | ... | @@ -234,6 +271,21 @@ void AutoCookWindow::setupUi() |
| 234 | 271 | updateView(); |
| 235 | 272 | } |
| 236 | 273 | |
| 274 | +void AutoCookWindow::onEncoderLeft() | |
| 275 | +{ | |
| 276 | + | |
| 277 | +} | |
| 278 | + | |
| 279 | +void AutoCookWindow::onEncoderRight() | |
| 280 | +{ | |
| 281 | + | |
| 282 | +} | |
| 283 | + | |
| 284 | +void AutoCookWindow::onEncoderClicked(QWidget *clicked) | |
| 285 | +{ | |
| 286 | + | |
| 287 | +} | |
| 288 | + | |
| 237 | 289 | void AutoCookWindow::updateView() |
| 238 | 290 | { |
| 239 | 291 | Oven *oven = Oven::getInstance(); | ... | ... |
app/gui/oven_control/autocookwindow.h
| ... | ... | @@ -19,6 +19,10 @@ public: |
| 19 | 19 | explicit AutoCookWindow(QWidget *parent, Cook cook); |
| 20 | 20 | ~AutoCookWindow(); |
| 21 | 21 | |
| 22 | +protected: | |
| 23 | + void keyPressEvent(QKeyEvent *event); | |
| 24 | + void keyReleaseEvent(QKeyEvent *event); | |
| 25 | + | |
| 22 | 26 | private: |
| 23 | 27 | Ui::AutoCookWindow *ui; |
| 24 | 28 | |
| ... | ... | @@ -77,6 +81,12 @@ private: |
| 77 | 81 | |
| 78 | 82 | void setupUi(); |
| 79 | 83 | |
| 84 | + QWidget *pushed = NULL; | |
| 85 | + | |
| 86 | + void onEncoderLeft(); | |
| 87 | + void onEncoderRight(); | |
| 88 | + void onEncoderClicked(QWidget *clicked); | |
| 89 | + | |
| 80 | 90 | private slots: |
| 81 | 91 | void updateView(); |
| 82 | 92 | void checkCook(); | ... | ... |
app/gui/oven_control/basicsettingwindow.cpp
| ... | ... | @@ -17,3 +17,30 @@ BasicSettingWindow::~BasicSettingWindow() |
| 17 | 17 | { |
| 18 | 18 | delete ui; |
| 19 | 19 | } |
| 20 | + | |
| 21 | +void BasicSettingWindow::keyPressEvent(QKeyEvent *event) | |
| 22 | +{ | |
| 23 | + | |
| 24 | +} | |
| 25 | + | |
| 26 | +void BasicSettingWindow::keyReleaseEvent(QKeyEvent *event) | |
| 27 | +{ | |
| 28 | + | |
| 29 | +} | |
| 30 | + | |
| 31 | +void BasicSettingWindow::onEncoderLeft() | |
| 32 | +{ | |
| 33 | + focusPreviousChild(); | |
| 34 | +} | |
| 35 | + | |
| 36 | +void BasicSettingWindow::onEncoderRight() | |
| 37 | +{ | |
| 38 | + focusNextChild(); | |
| 39 | +} | |
| 40 | + | |
| 41 | +void BasicSettingWindow::onEncoderClicked(QWidget *clicked) | |
| 42 | +{ | |
| 43 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 44 | + if (b) | |
| 45 | + b->click(); | |
| 46 | +} | ... | ... |
app/gui/oven_control/basicsettingwindow.h
| ... | ... | @@ -15,8 +15,18 @@ public: |
| 15 | 15 | explicit BasicSettingWindow(QWidget *parent = 0); |
| 16 | 16 | ~BasicSettingWindow(); |
| 17 | 17 | |
| 18 | +protected: | |
| 19 | + void keyPressEvent(QKeyEvent *event); | |
| 20 | + void keyReleaseEvent(QKeyEvent *event); | |
| 21 | + | |
| 18 | 22 | private: |
| 19 | 23 | Ui::BasicSettingWindow *ui; |
| 24 | + | |
| 25 | + QWidget *pushed = NULL; | |
| 26 | + | |
| 27 | + void onEncoderLeft(); | |
| 28 | + void onEncoderRight(); | |
| 29 | + void onEncoderClicked(QWidget *clicked); | |
| 20 | 30 | }; |
| 21 | 31 | |
| 22 | 32 | #endif // BASICSETTINGWINDOW_H | ... | ... |
app/gui/oven_control/burnertestwindow.cpp
| ... | ... | @@ -2,6 +2,7 @@ |
| 2 | 2 | #include "ui_burnertestwindow.h" |
| 3 | 3 | |
| 4 | 4 | #include <QTimer> |
| 5 | +#include <QKeyEvent> | |
| 5 | 6 | |
| 6 | 7 | #include "soundplayer.h" |
| 7 | 8 | |
| ... | ... | @@ -42,6 +43,41 @@ BurnerTestWindow::~BurnerTestWindow() |
| 42 | 43 | delete ui; |
| 43 | 44 | } |
| 44 | 45 | |
| 46 | +void BurnerTestWindow::keyPressEvent(QKeyEvent *event) | |
| 47 | +{ | |
| 48 | + switch (event->key()) | |
| 49 | + { | |
| 50 | + case 0x01000030: // Turn left | |
| 51 | + onEncoderLeft(); | |
| 52 | + break; | |
| 53 | + case 0x01000031: // Push | |
| 54 | + pushed = focusWidget(); | |
| 55 | + break; | |
| 56 | + case 0x01000032: // Turn right | |
| 57 | + onEncoderRight(); | |
| 58 | + break; | |
| 59 | + } | |
| 60 | +} | |
| 61 | + | |
| 62 | +void BurnerTestWindow::keyReleaseEvent(QKeyEvent *event) | |
| 63 | +{ | |
| 64 | + switch (event->key()) | |
| 65 | + { | |
| 66 | + case 0x01000030: // Turn left | |
| 67 | + onEncoderLeft(); | |
| 68 | + break; | |
| 69 | + case 0x01000031: // Push | |
| 70 | + if (focusWidget() == pushed) | |
| 71 | + onEncoderClicked(pushed); | |
| 72 | + | |
| 73 | + pushed = NULL; | |
| 74 | + break; | |
| 75 | + case 0x01000032: // Turn right | |
| 76 | + onEncoderRight(); | |
| 77 | + break; | |
| 78 | + } | |
| 79 | +} | |
| 80 | + | |
| 45 | 81 | void BurnerTestWindow::onDataChanged() |
| 46 | 82 | { |
| 47 | 83 | oven_state_t oven; |
| ... | ... | @@ -151,6 +187,23 @@ void BurnerTestWindow::on_backButton_clicked() |
| 151 | 187 | close(); |
| 152 | 188 | } |
| 153 | 189 | |
| 190 | +void BurnerTestWindow::onEncoderLeft() | |
| 191 | +{ | |
| 192 | + focusPreviousChild(); | |
| 193 | +} | |
| 194 | + | |
| 195 | +void BurnerTestWindow::onEncoderRight() | |
| 196 | +{ | |
| 197 | + focusNextChild(); | |
| 198 | +} | |
| 199 | + | |
| 200 | +void BurnerTestWindow::onEncoderClicked(QWidget *clicked) | |
| 201 | +{ | |
| 202 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 203 | + if (b) | |
| 204 | + b->click(); | |
| 205 | +} | |
| 206 | + | |
| 154 | 207 | void BurnerTestWindow::steamOn() |
| 155 | 208 | { |
| 156 | 209 | udp->turnOn(TG_BUNNER3_MANUAL); | ... | ... |
app/gui/oven_control/burnertestwindow.h
| ... | ... | @@ -18,6 +18,10 @@ public: |
| 18 | 18 | explicit BurnerTestWindow(QWidget *parent = 0); |
| 19 | 19 | ~BurnerTestWindow(); |
| 20 | 20 | |
| 21 | +protected: | |
| 22 | + void keyPressEvent(QKeyEvent *event); | |
| 23 | + void keyReleaseEvent(QKeyEvent *event); | |
| 24 | + | |
| 21 | 25 | private slots: |
| 22 | 26 | void steamOn(); |
| 23 | 27 | void steamOff(); |
| ... | ... | @@ -42,6 +46,12 @@ private: |
| 42 | 46 | QTimer steamTimer; |
| 43 | 47 | QTimer upperTimer; |
| 44 | 48 | QTimer lowerTimer; |
| 49 | + | |
| 50 | + QWidget *pushed = NULL; | |
| 51 | + | |
| 52 | + void onEncoderLeft(); | |
| 53 | + void onEncoderRight(); | |
| 54 | + void onEncoderClicked(QWidget *clicked); | |
| 45 | 55 | }; |
| 46 | 56 | |
| 47 | 57 | #endif // BURNERTESTWINDOW_H | ... | ... |
app/gui/oven_control/componenttestwindow.cpp
| 1 | 1 | #include "componenttestwindow.h" |
| 2 | 2 | #include "ui_componenttestwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "soundplayer.h" |
| 5 | 7 | |
| 6 | 8 | ComponentTestWindow::ComponentTestWindow(QWidget *parent) : |
| ... | ... | @@ -32,6 +34,41 @@ ComponentTestWindow::~ComponentTestWindow() |
| 32 | 34 | delete ui; |
| 33 | 35 | } |
| 34 | 36 | |
| 37 | +void ComponentTestWindow::keyPressEvent(QKeyEvent *event) | |
| 38 | +{ | |
| 39 | + switch (event->key()) | |
| 40 | + { | |
| 41 | + case 0x01000030: // Turn left | |
| 42 | + onEncoderLeft(); | |
| 43 | + break; | |
| 44 | + case 0x01000031: // Push | |
| 45 | + pushed = focusWidget(); | |
| 46 | + break; | |
| 47 | + case 0x01000032: // Turn right | |
| 48 | + onEncoderRight(); | |
| 49 | + break; | |
| 50 | + } | |
| 51 | +} | |
| 52 | + | |
| 53 | +void ComponentTestWindow::keyReleaseEvent(QKeyEvent *event) | |
| 54 | +{ | |
| 55 | + switch (event->key()) | |
| 56 | + { | |
| 57 | + case 0x01000030: // Turn left | |
| 58 | + onEncoderLeft(); | |
| 59 | + break; | |
| 60 | + case 0x01000031: // Push | |
| 61 | + if (focusWidget() == pushed) | |
| 62 | + onEncoderClicked(pushed); | |
| 63 | + | |
| 64 | + pushed = NULL; | |
| 65 | + break; | |
| 66 | + case 0x01000032: // Turn right | |
| 67 | + onEncoderRight(); | |
| 68 | + break; | |
| 69 | + } | |
| 70 | +} | |
| 71 | + | |
| 35 | 72 | void ComponentTestWindow::onDataChanged() |
| 36 | 73 | { |
| 37 | 74 | if (udp->hl()) |
| ... | ... | @@ -83,6 +120,23 @@ void ComponentTestWindow::on_backButton_clicked() |
| 83 | 120 | close(); |
| 84 | 121 | } |
| 85 | 122 | |
| 123 | +void ComponentTestWindow::onEncoderLeft() | |
| 124 | +{ | |
| 125 | + focusPreviousChild(); | |
| 126 | +} | |
| 127 | + | |
| 128 | +void ComponentTestWindow::onEncoderRight() | |
| 129 | +{ | |
| 130 | + focusNextChild(); | |
| 131 | +} | |
| 132 | + | |
| 133 | +void ComponentTestWindow::onEncoderClicked(QWidget *clicked) | |
| 134 | +{ | |
| 135 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 136 | + if (b) | |
| 137 | + b->click(); | |
| 138 | +} | |
| 139 | + | |
| 86 | 140 | void ComponentTestWindow::lampOn() |
| 87 | 141 | { |
| 88 | 142 | udp->turnOn(TG_HL); | ... | ... |
app/gui/oven_control/componenttestwindow.h
| ... | ... | @@ -18,6 +18,10 @@ public: |
| 18 | 18 | explicit ComponentTestWindow(QWidget *parent = 0); |
| 19 | 19 | ~ComponentTestWindow(); |
| 20 | 20 | |
| 21 | +protected: | |
| 22 | + void keyPressEvent(QKeyEvent *event); | |
| 23 | + void keyReleaseEvent(QKeyEvent *event); | |
| 24 | + | |
| 21 | 25 | private slots: |
| 22 | 26 | void lampOn(); |
| 23 | 27 | void lampOff(); |
| ... | ... | @@ -36,6 +40,12 @@ private: |
| 36 | 40 | UdpHandler *udp; |
| 37 | 41 | |
| 38 | 42 | QTimer damperTimer; |
| 43 | + | |
| 44 | + QWidget *pushed = NULL; | |
| 45 | + | |
| 46 | + void onEncoderLeft(); | |
| 47 | + void onEncoderRight(); | |
| 48 | + void onEncoderClicked(QWidget *clicked); | |
| 39 | 49 | }; |
| 40 | 50 | |
| 41 | 51 | ... | ... |
app/gui/oven_control/cookpanelbutton.cpp
| 1 | 1 | #include "cookpanelbutton.h" |
| 2 | 2 | #include "ui_cookpanelbutton.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "soundplayer.h" |
| 5 | 7 | #include "manualcooksettingwidget.h" |
| 6 | 8 | |
| ... | ... | @@ -81,6 +83,41 @@ void CookPanelButton::setEnabled(bool enabled) |
| 81 | 83 | ui->deleteButton->setEnabled(enabled); |
| 82 | 84 | } |
| 83 | 85 | |
| 86 | +void CookPanelButton::keyPressEvent(QKeyEvent *event) | |
| 87 | +{ | |
| 88 | + switch (event->key()) | |
| 89 | + { | |
| 90 | + case 0x01000030: // Turn left | |
| 91 | + onEncoderLeft(); | |
| 92 | + break; | |
| 93 | + case 0x01000031: // Push | |
| 94 | + pushed = focusWidget(); | |
| 95 | + break; | |
| 96 | + case 0x01000032: // Turn right | |
| 97 | + onEncoderRight(); | |
| 98 | + break; | |
| 99 | + } | |
| 100 | +} | |
| 101 | + | |
| 102 | +void CookPanelButton::keyReleaseEvent(QKeyEvent *event) | |
| 103 | +{ | |
| 104 | + switch (event->key()) | |
| 105 | + { | |
| 106 | + case 0x01000030: // Turn left | |
| 107 | + onEncoderLeft(); | |
| 108 | + break; | |
| 109 | + case 0x01000031: // Push | |
| 110 | + if (focusWidget() == pushed) | |
| 111 | + onEncoderClicked(pushed); | |
| 112 | + | |
| 113 | + pushed = NULL; | |
| 114 | + break; | |
| 115 | + case 0x01000032: // Turn right | |
| 116 | + onEncoderRight(); | |
| 117 | + break; | |
| 118 | + } | |
| 119 | +} | |
| 120 | + | |
| 84 | 121 | void CookPanelButton::emitLongPressed() |
| 85 | 122 | { |
| 86 | 123 | emitted = true; |
| ... | ... | @@ -106,6 +143,21 @@ void CookPanelButton::on_deleteButton_clicked() |
| 106 | 143 | emit deleteClicked(this); |
| 107 | 144 | } |
| 108 | 145 | |
| 146 | +void CookPanelButton::onEncoderLeft() | |
| 147 | +{ | |
| 148 | + | |
| 149 | +} | |
| 150 | + | |
| 151 | +void CookPanelButton::onEncoderRight() | |
| 152 | +{ | |
| 153 | + | |
| 154 | +} | |
| 155 | + | |
| 156 | +void CookPanelButton::onEncoderClicked(QWidget *clicked) | |
| 157 | +{ | |
| 158 | + | |
| 159 | +} | |
| 160 | + | |
| 109 | 161 | void CookPanelButton::on_pushButton_pressed() |
| 110 | 162 | { |
| 111 | 163 | longPressedTimer.start(); | ... | ... |
app/gui/oven_control/cookpanelbutton.h
| ... | ... | @@ -42,6 +42,10 @@ public: |
| 42 | 42 | public slots: |
| 43 | 43 | void setEnabled(bool enabled = true); |
| 44 | 44 | |
| 45 | +protected: | |
| 46 | + void keyPressEvent(QKeyEvent *event); | |
| 47 | + void keyReleaseEvent(QKeyEvent *event); | |
| 48 | + | |
| 45 | 49 | private slots: |
| 46 | 50 | void emitLongPressed(); |
| 47 | 51 | |
| ... | ... | @@ -59,6 +63,12 @@ private: |
| 59 | 63 | QLabel *label; |
| 60 | 64 | bool emitted; |
| 61 | 65 | bool longPressEnabled; |
| 66 | + | |
| 67 | + QWidget *pushed = NULL; | |
| 68 | + | |
| 69 | + void onEncoderLeft(); | |
| 70 | + void onEncoderRight(); | |
| 71 | + void onEncoderClicked(QWidget *clicked); | |
| 62 | 72 | }; |
| 63 | 73 | |
| 64 | 74 | #endif // COOKPANELBUTTON_H | ... | ... |
app/gui/oven_control/electricmodelsettingwindow.cpp
| ... | ... | @@ -16,24 +16,24 @@ ElectricModelSettingWindow::ElectricModelSettingWindow(QWidget *parent) : |
| 16 | 16 | foreach (QPushButton *button, findChildren<QPushButton *>()) |
| 17 | 17 | connect(button, &QPushButton::pressed, SoundPlayer::playClick); |
| 18 | 18 | |
| 19 | - Config* cfg = Config::getInstance(); | |
| 20 | - Define::config_item item; | |
| 21 | - item = cfg->getConfigValue(Define::config_model); | |
| 22 | - selitem = item.d32; | |
| 23 | - switch(selitem){ | |
| 24 | - case Define::model_electric_10: | |
| 25 | - ui->e10Button->setChecked(true); | |
| 26 | - break; | |
| 27 | - case Define::model_electric_20: | |
| 28 | - ui->e20Button->setChecked(true); | |
| 29 | - break; | |
| 30 | - case Define::model_electric_24: | |
| 31 | - ui->e24Button->setChecked(true); | |
| 32 | - break; | |
| 33 | - case Define::model_electric_40: | |
| 34 | - ui->e40Button->setChecked(true); | |
| 35 | - break; | |
| 36 | - } | |
| 19 | + Config* cfg = Config::getInstance(); | |
| 20 | + Define::config_item item; | |
| 21 | + item = cfg->getConfigValue(Define::config_model); | |
| 22 | + selitem = item.d32; | |
| 23 | + switch(selitem){ | |
| 24 | + case Define::model_electric_10: | |
| 25 | + ui->e10Button->setChecked(true); | |
| 26 | + break; | |
| 27 | + case Define::model_electric_20: | |
| 28 | + ui->e20Button->setChecked(true); | |
| 29 | + break; | |
| 30 | + case Define::model_electric_24: | |
| 31 | + ui->e24Button->setChecked(true); | |
| 32 | + break; | |
| 33 | + case Define::model_electric_40: | |
| 34 | + ui->e40Button->setChecked(true); | |
| 35 | + break; | |
| 36 | + } | |
| 37 | 37 | } |
| 38 | 38 | |
| 39 | 39 | ElectricModelSettingWindow::~ElectricModelSettingWindow() |
| ... | ... | @@ -41,6 +41,41 @@ ElectricModelSettingWindow::~ElectricModelSettingWindow() |
| 41 | 41 | delete ui; |
| 42 | 42 | } |
| 43 | 43 | |
| 44 | +void ElectricModelSettingWindow::keyPressEvent(QKeyEvent *event) | |
| 45 | +{ | |
| 46 | + switch (event->key()) | |
| 47 | + { | |
| 48 | + case 0x01000030: // Turn left | |
| 49 | + onEncoderLeft(); | |
| 50 | + break; | |
| 51 | + case 0x01000031: // Push | |
| 52 | + pushed = focusWidget(); | |
| 53 | + break; | |
| 54 | + case 0x01000032: // Turn right | |
| 55 | + onEncoderRight(); | |
| 56 | + break; | |
| 57 | + } | |
| 58 | +} | |
| 59 | + | |
| 60 | +void ElectricModelSettingWindow::keyReleaseEvent(QKeyEvent *event) | |
| 61 | +{ | |
| 62 | + switch (event->key()) | |
| 63 | + { | |
| 64 | + case 0x01000030: // Turn left | |
| 65 | + onEncoderLeft(); | |
| 66 | + break; | |
| 67 | + case 0x01000031: // Push | |
| 68 | + if (focusWidget() == pushed) | |
| 69 | + onEncoderClicked(pushed); | |
| 70 | + | |
| 71 | + pushed = NULL; | |
| 72 | + break; | |
| 73 | + case 0x01000032: // Turn right | |
| 74 | + onEncoderRight(); | |
| 75 | + break; | |
| 76 | + } | |
| 77 | +} | |
| 78 | + | |
| 44 | 79 | void ElectricModelSettingWindow::setModel(Define::model_type model) |
| 45 | 80 | { |
| 46 | 81 | Define::config_item item; |
| ... | ... | @@ -92,3 +127,20 @@ void ElectricModelSettingWindow::on_backButton_clicked() |
| 92 | 127 | } |
| 93 | 128 | close(); |
| 94 | 129 | } |
| 130 | + | |
| 131 | +void ElectricModelSettingWindow::onEncoderLeft() | |
| 132 | +{ | |
| 133 | + focusPreviousChild(); | |
| 134 | +} | |
| 135 | + | |
| 136 | +void ElectricModelSettingWindow::onEncoderRight() | |
| 137 | +{ | |
| 138 | + focusNextChild(); | |
| 139 | +} | |
| 140 | + | |
| 141 | +void ElectricModelSettingWindow::onEncoderClicked(QWidget *clicked) | |
| 142 | +{ | |
| 143 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 144 | + if (b) | |
| 145 | + b->click(); | |
| 146 | +} | ... | ... |
app/gui/oven_control/electricmodelsettingwindow.h
| ... | ... | @@ -17,6 +17,10 @@ public: |
| 17 | 17 | explicit ElectricModelSettingWindow(QWidget *parent = 0); |
| 18 | 18 | ~ElectricModelSettingWindow(); |
| 19 | 19 | |
| 20 | +protected: | |
| 21 | + void keyPressEvent(QKeyEvent *event); | |
| 22 | + void keyReleaseEvent(QKeyEvent *event); | |
| 23 | + | |
| 20 | 24 | private slots: |
| 21 | 25 | void setModel(Define::model_type model); |
| 22 | 26 | |
| ... | ... | @@ -30,6 +34,12 @@ private slots: |
| 30 | 34 | private: |
| 31 | 35 | Ui::ElectricModelSettingWindow *ui; |
| 32 | 36 | int selitem; |
| 37 | + | |
| 38 | + QWidget *pushed = NULL; | |
| 39 | + | |
| 40 | + void onEncoderLeft(); | |
| 41 | + void onEncoderRight(); | |
| 42 | + void onEncoderClicked(QWidget *clicked); | |
| 33 | 43 | }; |
| 34 | 44 | |
| 35 | 45 | #endif // ELECTRICMODELSETTINGWINDOW_H | ... | ... |
app/gui/oven_control/engineermenuwindow.cpp
| ... | ... | @@ -9,6 +9,8 @@ |
| 9 | 9 | #include "modelsettingwindow.h" |
| 10 | 10 | #include "soundplayer.h" |
| 11 | 11 | |
| 12 | +#include <QKeyEvent> | |
| 13 | + | |
| 12 | 14 | EngineerMenuWindow::EngineerMenuWindow(QWidget *parent) : |
| 13 | 15 | QMainWindow(parent), |
| 14 | 16 | ui(new Ui::EngineerMenuWindow) |
| ... | ... | @@ -29,6 +31,41 @@ EngineerMenuWindow::~EngineerMenuWindow() |
| 29 | 31 | delete ui; |
| 30 | 32 | } |
| 31 | 33 | |
| 34 | +void EngineerMenuWindow::keyPressEvent(QKeyEvent *event) | |
| 35 | +{ | |
| 36 | + switch (event->key()) | |
| 37 | + { | |
| 38 | + case 0x01000030: // Turn left | |
| 39 | + onEncoderLeft(); | |
| 40 | + break; | |
| 41 | + case 0x01000031: // Push | |
| 42 | + pushed = focusWidget(); | |
| 43 | + break; | |
| 44 | + case 0x01000032: // Turn right | |
| 45 | + onEncoderRight(); | |
| 46 | + break; | |
| 47 | + } | |
| 48 | +} | |
| 49 | + | |
| 50 | +void EngineerMenuWindow::keyReleaseEvent(QKeyEvent *event) | |
| 51 | +{ | |
| 52 | + switch (event->key()) | |
| 53 | + { | |
| 54 | + case 0x01000030: // Turn left | |
| 55 | + onEncoderLeft(); | |
| 56 | + break; | |
| 57 | + case 0x01000031: // Push | |
| 58 | + if (focusWidget() == pushed) | |
| 59 | + onEncoderClicked(pushed); | |
| 60 | + | |
| 61 | + pushed = NULL; | |
| 62 | + break; | |
| 63 | + case 0x01000032: // Turn right | |
| 64 | + onEncoderRight(); | |
| 65 | + break; | |
| 66 | + } | |
| 67 | +} | |
| 68 | + | |
| 32 | 69 | void EngineerMenuWindow::on_serviceHistoryButton_clicked() |
| 33 | 70 | { |
| 34 | 71 | ServiceHistoryMain *w = new ServiceHistoryMain(this); |
| ... | ... | @@ -79,3 +116,20 @@ void EngineerMenuWindow::on_modelTypeConfigButton_clicked() |
| 79 | 116 | w->showFullScreen(); |
| 80 | 117 | w->raise(); |
| 81 | 118 | } |
| 119 | + | |
| 120 | +void EngineerMenuWindow::onEncoderLeft() | |
| 121 | +{ | |
| 122 | + focusPreviousChild(); | |
| 123 | +} | |
| 124 | + | |
| 125 | +void EngineerMenuWindow::onEncoderRight() | |
| 126 | +{ | |
| 127 | + focusNextChild(); | |
| 128 | +} | |
| 129 | + | |
| 130 | +void EngineerMenuWindow::onEncoderClicked(QWidget *clicked) | |
| 131 | +{ | |
| 132 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 133 | + if (b) | |
| 134 | + b->click(); | |
| 135 | +} | ... | ... |
app/gui/oven_control/engineermenuwindow.h
| ... | ... | @@ -15,6 +15,10 @@ public: |
| 15 | 15 | explicit EngineerMenuWindow(QWidget *parent = 0); |
| 16 | 16 | ~EngineerMenuWindow(); |
| 17 | 17 | |
| 18 | +protected: | |
| 19 | + void keyPressEvent(QKeyEvent *event); | |
| 20 | + void keyReleaseEvent(QKeyEvent *event); | |
| 21 | + | |
| 18 | 22 | private slots: |
| 19 | 23 | void on_serviceHistoryButton_clicked(); |
| 20 | 24 | |
| ... | ... | @@ -32,6 +36,12 @@ private slots: |
| 32 | 36 | |
| 33 | 37 | private: |
| 34 | 38 | Ui::EngineerMenuWindow *ui; |
| 39 | + | |
| 40 | + QWidget *pushed = NULL; | |
| 41 | + | |
| 42 | + void onEncoderLeft(); | |
| 43 | + void onEncoderRight(); | |
| 44 | + void onEncoderClicked(QWidget *clicked); | |
| 35 | 45 | }; |
| 36 | 46 | |
| 37 | 47 | #endif // ENGINEERMENUWINDOW_H | ... | ... |
app/gui/oven_control/fantestwindow.cpp
| 1 | 1 | #include "fantestwindow.h" |
| 2 | 2 | #include "ui_fantestwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "soundplayer.h" |
| 5 | 7 | |
| 6 | 8 | FanTestWindow::FanTestWindow(QWidget *parent) : |
| ... | ... | @@ -38,6 +40,41 @@ FanTestWindow::~FanTestWindow() |
| 38 | 40 | delete ui; |
| 39 | 41 | } |
| 40 | 42 | |
| 43 | +void FanTestWindow::keyPressEvent(QKeyEvent *event) | |
| 44 | +{ | |
| 45 | + switch (event->key()) | |
| 46 | + { | |
| 47 | + case 0x01000030: // Turn left | |
| 48 | + onEncoderLeft(); | |
| 49 | + break; | |
| 50 | + case 0x01000031: // Push | |
| 51 | + pushed = focusWidget(); | |
| 52 | + break; | |
| 53 | + case 0x01000032: // Turn right | |
| 54 | + onEncoderRight(); | |
| 55 | + break; | |
| 56 | + } | |
| 57 | +} | |
| 58 | + | |
| 59 | +void FanTestWindow::keyReleaseEvent(QKeyEvent *event) | |
| 60 | +{ | |
| 61 | + switch (event->key()) | |
| 62 | + { | |
| 63 | + case 0x01000030: // Turn left | |
| 64 | + onEncoderLeft(); | |
| 65 | + break; | |
| 66 | + case 0x01000031: // Push | |
| 67 | + if (focusWidget() == pushed) | |
| 68 | + onEncoderClicked(pushed); | |
| 69 | + | |
| 70 | + pushed = NULL; | |
| 71 | + break; | |
| 72 | + case 0x01000032: // Turn right | |
| 73 | + onEncoderRight(); | |
| 74 | + break; | |
| 75 | + } | |
| 76 | +} | |
| 77 | + | |
| 41 | 78 | void FanTestWindow::onDataChanged() |
| 42 | 79 | { |
| 43 | 80 | if (udp->convection1()) |
| ... | ... | @@ -255,6 +292,23 @@ void FanTestWindow::on_backButton_clicked() |
| 255 | 292 | deleteLater(); |
| 256 | 293 | } |
| 257 | 294 | |
| 295 | +void FanTestWindow::onEncoderLeft() | |
| 296 | +{ | |
| 297 | + focusPreviousChild(); | |
| 298 | +} | |
| 299 | + | |
| 300 | +void FanTestWindow::onEncoderRight() | |
| 301 | +{ | |
| 302 | + focusNextChild(); | |
| 303 | +} | |
| 304 | + | |
| 305 | +void FanTestWindow::onEncoderClicked(QWidget *clicked) | |
| 306 | +{ | |
| 307 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 308 | + if (b) | |
| 309 | + b->click(); | |
| 310 | +} | |
| 311 | + | |
| 258 | 312 | void FanTestWindow::setRpm(Fan fan, int rpm) |
| 259 | 313 | { |
| 260 | 314 | switch (fan) | ... | ... |
app/gui/oven_control/fantestwindow.h
| ... | ... | @@ -20,6 +20,10 @@ public: |
| 20 | 20 | explicit FanTestWindow(QWidget *parent = 0); |
| 21 | 21 | ~FanTestWindow(); |
| 22 | 22 | |
| 23 | +protected: | |
| 24 | + void keyPressEvent(QKeyEvent *event); | |
| 25 | + void keyReleaseEvent(QKeyEvent *event); | |
| 26 | + | |
| 23 | 27 | private slots: |
| 24 | 28 | void setRpm(Fan fan, int rpm); |
| 25 | 29 | void setDirection(Fan fan, Direction direction); |
| ... | ... | @@ -43,6 +47,12 @@ private: |
| 43 | 47 | Fan currentFan; |
| 44 | 48 | Direction direction1, direction2; |
| 45 | 49 | int rpm1, rpm2; |
| 50 | + | |
| 51 | + QWidget *pushed = NULL; | |
| 52 | + | |
| 53 | + void onEncoderLeft(); | |
| 54 | + void onEncoderRight(); | |
| 55 | + void onEncoderClicked(QWidget *clicked); | |
| 46 | 56 | }; |
| 47 | 57 | |
| 48 | 58 | #endif // FANTESTWINDOW_H | ... | ... |
app/gui/oven_control/favoritenamepopup.cpp
| 1 | 1 | #include "favoritenamepopup.h" |
| 2 | 2 | #include "ui_favoritenamepopup.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "soundplayer.h" |
| 5 | 7 | #include "primewindow.h" |
| 6 | 8 | #include "mainwindow.h" |
| ... | ... | @@ -35,6 +37,41 @@ FavoriteNamePopup::~FavoriteNamePopup() |
| 35 | 37 | delete ui; |
| 36 | 38 | } |
| 37 | 39 | |
| 40 | +void FavoriteNamePopup::keyPressEvent(QKeyEvent *event) | |
| 41 | +{ | |
| 42 | + switch (event->key()) | |
| 43 | + { | |
| 44 | + case 0x01000030: // Turn left | |
| 45 | + onEncoderLeft(); | |
| 46 | + break; | |
| 47 | + case 0x01000031: // Push | |
| 48 | + pushed = focusWidget(); | |
| 49 | + break; | |
| 50 | + case 0x01000032: // Turn right | |
| 51 | + onEncoderRight(); | |
| 52 | + break; | |
| 53 | + } | |
| 54 | +} | |
| 55 | + | |
| 56 | +void FavoriteNamePopup::keyReleaseEvent(QKeyEvent *event) | |
| 57 | +{ | |
| 58 | + switch (event->key()) | |
| 59 | + { | |
| 60 | + case 0x01000030: // Turn left | |
| 61 | + onEncoderLeft(); | |
| 62 | + break; | |
| 63 | + case 0x01000031: // Push | |
| 64 | + if (focusWidget() == pushed) | |
| 65 | + onEncoderClicked(pushed); | |
| 66 | + | |
| 67 | + pushed = NULL; | |
| 68 | + break; | |
| 69 | + case 0x01000032: // Turn right | |
| 70 | + onEncoderRight(); | |
| 71 | + break; | |
| 72 | + } | |
| 73 | +} | |
| 74 | + | |
| 38 | 75 | void FavoriteNamePopup::ok() |
| 39 | 76 | { |
| 40 | 77 | int id; |
| ... | ... | @@ -74,3 +111,18 @@ void FavoriteNamePopup::on_cancelButton_clicked() |
| 74 | 111 | { |
| 75 | 112 | cancel(); |
| 76 | 113 | } |
| 114 | + | |
| 115 | +void FavoriteNamePopup::onEncoderLeft() | |
| 116 | +{ | |
| 117 | + | |
| 118 | +} | |
| 119 | + | |
| 120 | +void FavoriteNamePopup::onEncoderRight() | |
| 121 | +{ | |
| 122 | + | |
| 123 | +} | |
| 124 | + | |
| 125 | +void FavoriteNamePopup::onEncoderClicked(QWidget *clicked) | |
| 126 | +{ | |
| 127 | + | |
| 128 | +} | ... | ... |
app/gui/oven_control/favoritenamepopup.h
| ... | ... | @@ -20,6 +20,10 @@ public: |
| 20 | 20 | explicit FavoriteNamePopup(QWidget *parent, AutoCookSetting setting); |
| 21 | 21 | ~FavoriteNamePopup(); |
| 22 | 22 | |
| 23 | +protected: | |
| 24 | + void keyPressEvent(QKeyEvent *event); | |
| 25 | + void keyReleaseEvent(QKeyEvent *event); | |
| 26 | + | |
| 23 | 27 | private: |
| 24 | 28 | Ui::FavoriteNamePopup *ui; |
| 25 | 29 | |
| ... | ... | @@ -27,6 +31,12 @@ private: |
| 27 | 31 | ManualCookSetting manualSetting; |
| 28 | 32 | AutoCookSetting autoSetting; |
| 29 | 33 | |
| 34 | + QWidget *pushed = NULL; | |
| 35 | + | |
| 36 | + void onEncoderLeft(); | |
| 37 | + void onEncoderRight(); | |
| 38 | + void onEncoderClicked(QWidget *clicked); | |
| 39 | + | |
| 30 | 40 | private slots: |
| 31 | 41 | void ok(); |
| 32 | 42 | void cancel(); | ... | ... |
app/gui/oven_control/functiontestwindow.cpp
| 1 | 1 | #include "functiontestwindow.h" |
| 2 | 2 | #include "ui_functiontestwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "burnertestwindow.h" |
| 5 | 7 | #include "componenttestwindow.h" |
| 6 | 8 | #include "valvetestwindow.h" |
| ... | ... | @@ -29,6 +31,41 @@ FunctionTestWindow::~FunctionTestWindow() |
| 29 | 31 | delete ui; |
| 30 | 32 | } |
| 31 | 33 | |
| 34 | +void FunctionTestWindow::keyPressEvent(QKeyEvent *event) | |
| 35 | +{ | |
| 36 | + switch (event->key()) | |
| 37 | + { | |
| 38 | + case 0x01000030: // Turn left | |
| 39 | + onEncoderLeft(); | |
| 40 | + break; | |
| 41 | + case 0x01000031: // Push | |
| 42 | + pushed = focusWidget(); | |
| 43 | + break; | |
| 44 | + case 0x01000032: // Turn right | |
| 45 | + onEncoderRight(); | |
| 46 | + break; | |
| 47 | + } | |
| 48 | +} | |
| 49 | + | |
| 50 | +void FunctionTestWindow::keyReleaseEvent(QKeyEvent *event) | |
| 51 | +{ | |
| 52 | + switch (event->key()) | |
| 53 | + { | |
| 54 | + case 0x01000030: // Turn left | |
| 55 | + onEncoderLeft(); | |
| 56 | + break; | |
| 57 | + case 0x01000031: // Push | |
| 58 | + if (focusWidget() == pushed) | |
| 59 | + onEncoderClicked(pushed); | |
| 60 | + | |
| 61 | + pushed = NULL; | |
| 62 | + break; | |
| 63 | + case 0x01000032: // Turn right | |
| 64 | + onEncoderRight(); | |
| 65 | + break; | |
| 66 | + } | |
| 67 | +} | |
| 68 | + | |
| 32 | 69 | void FunctionTestWindow::on_burnerTestButton_clicked() |
| 33 | 70 | { |
| 34 | 71 | BurnerTestWindow *w = new BurnerTestWindow(this); |
| ... | ... | @@ -62,5 +99,22 @@ void FunctionTestWindow::on_fanTestButton_clicked() |
| 62 | 99 | void FunctionTestWindow::on_gasTestButton_clicked() |
| 63 | 100 | { |
| 64 | 101 | // GasTestWindow *w = new GasTestWindow(this, udp); |
| 65 | -// w->showFullScreen(); | |
| 102 | + // w->showFullScreen(); | |
| 103 | +} | |
| 104 | + | |
| 105 | +void FunctionTestWindow::onEncoderLeft() | |
| 106 | +{ | |
| 107 | + focusPreviousChild(); | |
| 108 | +} | |
| 109 | + | |
| 110 | +void FunctionTestWindow::onEncoderRight() | |
| 111 | +{ | |
| 112 | + focusNextChild(); | |
| 113 | +} | |
| 114 | + | |
| 115 | +void FunctionTestWindow::onEncoderClicked(QWidget *clicked) | |
| 116 | +{ | |
| 117 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 118 | + if (b) | |
| 119 | + b->click(); | |
| 66 | 120 | } | ... | ... |
app/gui/oven_control/functiontestwindow.h
| ... | ... | @@ -15,6 +15,10 @@ public: |
| 15 | 15 | explicit FunctionTestWindow(QWidget *parent = 0); |
| 16 | 16 | ~FunctionTestWindow(); |
| 17 | 17 | |
| 18 | +protected: | |
| 19 | + void keyPressEvent(QKeyEvent *event); | |
| 20 | + void keyReleaseEvent(QKeyEvent *event); | |
| 21 | + | |
| 18 | 22 | private slots: |
| 19 | 23 | void on_burnerTestButton_clicked(); |
| 20 | 24 | |
| ... | ... | @@ -30,6 +34,12 @@ private slots: |
| 30 | 34 | |
| 31 | 35 | private: |
| 32 | 36 | Ui::FunctionTestWindow *ui; |
| 37 | + | |
| 38 | + QWidget *pushed = NULL; | |
| 39 | + | |
| 40 | + void onEncoderLeft(); | |
| 41 | + void onEncoderRight(); | |
| 42 | + void onEncoderClicked(QWidget *clicked); | |
| 33 | 43 | }; |
| 34 | 44 | |
| 35 | 45 | #endif // FUNCTIONTESTWINDOW_H | ... | ... |
app/gui/oven_control/gasmodelsettingwindow.cpp
| ... | ... | @@ -18,35 +18,35 @@ GasModelSettingWindow::GasModelSettingWindow(QWidget *parent) : |
| 18 | 18 | connect(button, &QPushButton::pressed, SoundPlayer::playClick); |
| 19 | 19 | |
| 20 | 20 | Config* cfg = Config::getInstance(); |
| 21 | - Define::config_item item; | |
| 22 | - item = cfg->getConfigValue(Define::config_model); | |
| 23 | - selitem = item.d32; | |
| 24 | - switch(item.d32){ | |
| 25 | - case Define::model_gas_lng_10: | |
| 26 | - ui->lng10Button->setChecked(true); | |
| 27 | - break; | |
| 28 | - case Define::model_gas_lng_20: | |
| 29 | - ui->lng20Button->setChecked(true); | |
| 30 | - break; | |
| 31 | - case Define::model_gas_lng_24: | |
| 32 | - ui->lng24Button->setChecked(true); | |
| 33 | - break; | |
| 34 | - case Define::model_gas_lng_40: | |
| 35 | - ui->lng40Button->setChecked(true); | |
| 36 | - break; | |
| 37 | - case Define::model_gas_lpg_10: | |
| 38 | - ui->lpg10Button->setChecked(true); | |
| 39 | - break; | |
| 40 | - case Define::model_gas_lpg_20: | |
| 41 | - ui->lpg20Button->setChecked(true); | |
| 42 | - break; | |
| 43 | - case Define::model_gas_lpg_24: | |
| 44 | - ui->lpg24Button->setChecked(true); | |
| 45 | - break; | |
| 46 | - case Define::model_gas_lpg_40: | |
| 47 | - ui->lpg40Button->setChecked(true); | |
| 48 | - break; | |
| 49 | - } | |
| 21 | + Define::config_item item; | |
| 22 | + item = cfg->getConfigValue(Define::config_model); | |
| 23 | + selitem = item.d32; | |
| 24 | + switch(item.d32){ | |
| 25 | + case Define::model_gas_lng_10: | |
| 26 | + ui->lng10Button->setChecked(true); | |
| 27 | + break; | |
| 28 | + case Define::model_gas_lng_20: | |
| 29 | + ui->lng20Button->setChecked(true); | |
| 30 | + break; | |
| 31 | + case Define::model_gas_lng_24: | |
| 32 | + ui->lng24Button->setChecked(true); | |
| 33 | + break; | |
| 34 | + case Define::model_gas_lng_40: | |
| 35 | + ui->lng40Button->setChecked(true); | |
| 36 | + break; | |
| 37 | + case Define::model_gas_lpg_10: | |
| 38 | + ui->lpg10Button->setChecked(true); | |
| 39 | + break; | |
| 40 | + case Define::model_gas_lpg_20: | |
| 41 | + ui->lpg20Button->setChecked(true); | |
| 42 | + break; | |
| 43 | + case Define::model_gas_lpg_24: | |
| 44 | + ui->lpg24Button->setChecked(true); | |
| 45 | + break; | |
| 46 | + case Define::model_gas_lpg_40: | |
| 47 | + ui->lpg40Button->setChecked(true); | |
| 48 | + break; | |
| 49 | + } | |
| 50 | 50 | } |
| 51 | 51 | |
| 52 | 52 | GasModelSettingWindow::~GasModelSettingWindow() |
| ... | ... | @@ -54,6 +54,41 @@ GasModelSettingWindow::~GasModelSettingWindow() |
| 54 | 54 | delete ui; |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | +void GasModelSettingWindow::keyPressEvent(QKeyEvent *event) | |
| 58 | +{ | |
| 59 | + switch (event->key()) | |
| 60 | + { | |
| 61 | + case 0x01000030: // Turn left | |
| 62 | + onEncoderLeft(); | |
| 63 | + break; | |
| 64 | + case 0x01000031: // Push | |
| 65 | + pushed = focusWidget(); | |
| 66 | + break; | |
| 67 | + case 0x01000032: // Turn right | |
| 68 | + onEncoderRight(); | |
| 69 | + break; | |
| 70 | + } | |
| 71 | +} | |
| 72 | + | |
| 73 | +void GasModelSettingWindow::keyReleaseEvent(QKeyEvent *event) | |
| 74 | +{ | |
| 75 | + switch (event->key()) | |
| 76 | + { | |
| 77 | + case 0x01000030: // Turn left | |
| 78 | + onEncoderLeft(); | |
| 79 | + break; | |
| 80 | + case 0x01000031: // Push | |
| 81 | + if (focusWidget() == pushed) | |
| 82 | + onEncoderClicked(pushed); | |
| 83 | + | |
| 84 | + pushed = NULL; | |
| 85 | + break; | |
| 86 | + case 0x01000032: // Turn right | |
| 87 | + onEncoderRight(); | |
| 88 | + break; | |
| 89 | + } | |
| 90 | +} | |
| 91 | + | |
| 57 | 92 | void GasModelSettingWindow::setModel(Define::model_type model) |
| 58 | 93 | { |
| 59 | 94 | Define::config_item item; |
| ... | ... | @@ -129,3 +164,20 @@ void GasModelSettingWindow::on_backButton_clicked() |
| 129 | 164 | } |
| 130 | 165 | close(); |
| 131 | 166 | } |
| 167 | + | |
| 168 | +void GasModelSettingWindow::onEncoderLeft() | |
| 169 | +{ | |
| 170 | + focusPreviousChild(); | |
| 171 | +} | |
| 172 | + | |
| 173 | +void GasModelSettingWindow::onEncoderRight() | |
| 174 | +{ | |
| 175 | + focusNextChild(); | |
| 176 | +} | |
| 177 | + | |
| 178 | +void GasModelSettingWindow::onEncoderClicked(QWidget *clicked) | |
| 179 | +{ | |
| 180 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 181 | + if (b) | |
| 182 | + b->click(); | |
| 183 | +} | ... | ... |
app/gui/oven_control/gasmodelsettingwindow.h
| ... | ... | @@ -17,6 +17,10 @@ public: |
| 17 | 17 | explicit GasModelSettingWindow(QWidget *parent = 0); |
| 18 | 18 | ~GasModelSettingWindow(); |
| 19 | 19 | |
| 20 | +protected: | |
| 21 | + void keyPressEvent(QKeyEvent *event); | |
| 22 | + void keyReleaseEvent(QKeyEvent *event); | |
| 23 | + | |
| 20 | 24 | private slots: |
| 21 | 25 | void setModel(Define::model_type model); |
| 22 | 26 | void on_lpg10Button_clicked(); |
| ... | ... | @@ -33,6 +37,12 @@ private slots: |
| 33 | 37 | private: |
| 34 | 38 | Ui::GasModelSettingWindow *ui; |
| 35 | 39 | uint32_t selitem; |
| 40 | + | |
| 41 | + QWidget *pushed = NULL; | |
| 42 | + | |
| 43 | + void onEncoderLeft(); | |
| 44 | + void onEncoderRight(); | |
| 45 | + void onEncoderClicked(QWidget *clicked); | |
| 36 | 46 | }; |
| 37 | 47 | |
| 38 | 48 | #endif // GASMODELSETTINGWINDOW_H | ... | ... |
app/gui/oven_control/gastestwindow.cpp
| 1 | 1 | #include "gastestwindow.h" |
| 2 | 2 | #include "ui_gastestwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "soundplayer.h" |
| 5 | 7 | |
| 6 | 8 | GasTestWindow::GasTestWindow(QWidget *parent, UdpHandler *udp) : |
| ... | ... | @@ -23,6 +25,41 @@ GasTestWindow::~GasTestWindow() |
| 23 | 25 | delete ui; |
| 24 | 26 | } |
| 25 | 27 | |
| 28 | +void GasTestWindow::keyPressEvent(QKeyEvent *event) | |
| 29 | +{ | |
| 30 | + switch (event->key()) | |
| 31 | + { | |
| 32 | + case 0x01000030: // Turn left | |
| 33 | + onEncoderLeft(); | |
| 34 | + break; | |
| 35 | + case 0x01000031: // Push | |
| 36 | + pushed = focusWidget(); | |
| 37 | + break; | |
| 38 | + case 0x01000032: // Turn right | |
| 39 | + onEncoderRight(); | |
| 40 | + break; | |
| 41 | + } | |
| 42 | +} | |
| 43 | + | |
| 44 | +void GasTestWindow::keyReleaseEvent(QKeyEvent *event) | |
| 45 | +{ | |
| 46 | + switch (event->key()) | |
| 47 | + { | |
| 48 | + case 0x01000030: // Turn left | |
| 49 | + onEncoderLeft(); | |
| 50 | + break; | |
| 51 | + case 0x01000031: // Push | |
| 52 | + if (focusWidget() == pushed) | |
| 53 | + onEncoderClicked(pushed); | |
| 54 | + | |
| 55 | + pushed = NULL; | |
| 56 | + break; | |
| 57 | + case 0x01000032: // Turn right | |
| 58 | + onEncoderRight(); | |
| 59 | + break; | |
| 60 | + } | |
| 61 | +} | |
| 62 | + | |
| 26 | 63 | void GasTestWindow::onDataChanged() |
| 27 | 64 | { |
| 28 | 65 | |
| ... | ... | @@ -32,3 +69,20 @@ void GasTestWindow::on_backButton_clicked() |
| 32 | 69 | { |
| 33 | 70 | close(); |
| 34 | 71 | } |
| 72 | + | |
| 73 | +void GasTestWindow::onEncoderLeft() | |
| 74 | +{ | |
| 75 | + focusPreviousChild(); | |
| 76 | +} | |
| 77 | + | |
| 78 | +void GasTestWindow::onEncoderRight() | |
| 79 | +{ | |
| 80 | + focusNextChild(); | |
| 81 | +} | |
| 82 | + | |
| 83 | +void GasTestWindow::onEncoderClicked(QWidget *clicked) | |
| 84 | +{ | |
| 85 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 86 | + if (b) | |
| 87 | + b->click(); | |
| 88 | +} | ... | ... |
app/gui/oven_control/gastestwindow.h
| ... | ... | @@ -17,6 +17,10 @@ public: |
| 17 | 17 | explicit GasTestWindow(QWidget *parent = 0, UdpHandler *udp = 0); |
| 18 | 18 | ~GasTestWindow(); |
| 19 | 19 | |
| 20 | +protected: | |
| 21 | + void keyPressEvent(QKeyEvent *event); | |
| 22 | + void keyReleaseEvent(QKeyEvent *event); | |
| 23 | + | |
| 20 | 24 | private slots: |
| 21 | 25 | void onDataChanged(); |
| 22 | 26 | |
| ... | ... | @@ -25,6 +29,12 @@ private slots: |
| 25 | 29 | private: |
| 26 | 30 | Ui::GasTestWindow *ui; |
| 27 | 31 | UdpHandler *udp; |
| 32 | + | |
| 33 | + QWidget *pushed = NULL; | |
| 34 | + | |
| 35 | + void onEncoderLeft(); | |
| 36 | + void onEncoderRight(); | |
| 37 | + void onEncoderClicked(QWidget *clicked); | |
| 28 | 38 | }; |
| 29 | 39 | |
| 30 | 40 | ... | ... |
app/gui/oven_control/keepwarmpopup.cpp
| 1 | 1 | #include "keepwarmpopup.h" |
| 2 | 2 | #include "ui_keepwarmpopup.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | KeepWarmPopup::KeepWarmPopup(QWidget *parent) : |
| 5 | 7 | QWidget(parent), |
| 6 | 8 | ui(new Ui::KeepWarmPopup) |
| ... | ... | @@ -20,6 +22,56 @@ KeepWarmPopup::~KeepWarmPopup() |
| 20 | 22 | delete ui; |
| 21 | 23 | } |
| 22 | 24 | |
| 25 | +void KeepWarmPopup::keyPressEvent(QKeyEvent *event) | |
| 26 | +{ | |
| 27 | + switch (event->key()) | |
| 28 | + { | |
| 29 | + case 0x01000030: // Turn left | |
| 30 | + onEncoderLeft(); | |
| 31 | + break; | |
| 32 | + case 0x01000031: // Push | |
| 33 | + pushed = focusWidget(); | |
| 34 | + break; | |
| 35 | + case 0x01000032: // Turn right | |
| 36 | + onEncoderRight(); | |
| 37 | + break; | |
| 38 | + } | |
| 39 | +} | |
| 40 | + | |
| 41 | +void KeepWarmPopup::keyReleaseEvent(QKeyEvent *event) | |
| 42 | +{ | |
| 43 | + switch (event->key()) | |
| 44 | + { | |
| 45 | + case 0x01000030: // Turn left | |
| 46 | + onEncoderLeft(); | |
| 47 | + break; | |
| 48 | + case 0x01000031: // Push | |
| 49 | + if (focusWidget() == pushed) | |
| 50 | + onEncoderClicked(pushed); | |
| 51 | + | |
| 52 | + pushed = NULL; | |
| 53 | + break; | |
| 54 | + case 0x01000032: // Turn right | |
| 55 | + onEncoderRight(); | |
| 56 | + break; | |
| 57 | + } | |
| 58 | +} | |
| 59 | + | |
| 60 | +void KeepWarmPopup::onEncoderLeft() | |
| 61 | +{ | |
| 62 | + | |
| 63 | +} | |
| 64 | + | |
| 65 | +void KeepWarmPopup::onEncoderRight() | |
| 66 | +{ | |
| 67 | + | |
| 68 | +} | |
| 69 | + | |
| 70 | +void KeepWarmPopup::onEncoderClicked(QWidget *clicked) | |
| 71 | +{ | |
| 72 | + | |
| 73 | +} | |
| 74 | + | |
| 23 | 75 | void KeepWarmPopup::updateView() |
| 24 | 76 | { |
| 25 | 77 | int elapsed = startTime.elapsed() / 1000; | ... | ... |
app/gui/oven_control/keepwarmpopup.h
| ... | ... | @@ -17,12 +17,22 @@ public: |
| 17 | 17 | explicit KeepWarmPopup(QWidget *parent = 0); |
| 18 | 18 | ~KeepWarmPopup(); |
| 19 | 19 | |
| 20 | +protected: | |
| 21 | + void keyPressEvent(QKeyEvent *event); | |
| 22 | + void keyReleaseEvent(QKeyEvent *event); | |
| 23 | + | |
| 20 | 24 | private: |
| 21 | 25 | Ui::KeepWarmPopup *ui; |
| 22 | 26 | |
| 23 | 27 | QTime startTime; |
| 24 | 28 | QTimer updateViewTimer; |
| 25 | 29 | |
| 30 | + QWidget *pushed = NULL; | |
| 31 | + | |
| 32 | + void onEncoderLeft(); | |
| 33 | + void onEncoderRight(); | |
| 34 | + void onEncoderClicked(QWidget *clicked); | |
| 35 | + | |
| 26 | 36 | |
| 27 | 37 | private slots: |
| 28 | 38 | void updateView(); | ... | ... |
app/gui/oven_control/manualcooksettingwidget.cpp
| 1 | 1 | #include "manualcooksettingwidget.h" |
| 2 | 2 | #include "ui_manualcooksettingwidget.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "stringer.h" |
| 5 | 7 | |
| 6 | 8 | ManualCookSettingWidget::ManualCookSettingWidget(ManualCookSetting setting, QWidget *parent) : |
| ... | ... | @@ -110,3 +112,53 @@ void ManualCookSettingWidget::setFan(int level) |
| 110 | 112 | break; |
| 111 | 113 | } |
| 112 | 114 | } |
| 115 | + | |
| 116 | +void ManualCookSettingWidget::keyPressEvent(QKeyEvent *event) | |
| 117 | +{ | |
| 118 | + switch (event->key()) | |
| 119 | + { | |
| 120 | + case 0x01000030: // Turn left | |
| 121 | + onEncoderLeft(); | |
| 122 | + break; | |
| 123 | + case 0x01000031: // Push | |
| 124 | + pushed = focusWidget(); | |
| 125 | + break; | |
| 126 | + case 0x01000032: // Turn right | |
| 127 | + onEncoderRight(); | |
| 128 | + break; | |
| 129 | + } | |
| 130 | +} | |
| 131 | + | |
| 132 | +void ManualCookSettingWidget::keyReleaseEvent(QKeyEvent *event) | |
| 133 | +{ | |
| 134 | + switch (event->key()) | |
| 135 | + { | |
| 136 | + case 0x01000030: // Turn left | |
| 137 | + onEncoderLeft(); | |
| 138 | + break; | |
| 139 | + case 0x01000031: // Push | |
| 140 | + if (focusWidget() == pushed) | |
| 141 | + onEncoderClicked(pushed); | |
| 142 | + | |
| 143 | + pushed = NULL; | |
| 144 | + break; | |
| 145 | + case 0x01000032: // Turn right | |
| 146 | + onEncoderRight(); | |
| 147 | + break; | |
| 148 | + } | |
| 149 | +} | |
| 150 | + | |
| 151 | +void ManualCookSettingWidget::onEncoderLeft() | |
| 152 | +{ | |
| 153 | + | |
| 154 | +} | |
| 155 | + | |
| 156 | +void ManualCookSettingWidget::onEncoderRight() | |
| 157 | +{ | |
| 158 | + | |
| 159 | +} | |
| 160 | + | |
| 161 | +void ManualCookSettingWidget::onEncoderClicked(QWidget *clicked) | |
| 162 | +{ | |
| 163 | + | |
| 164 | +} | ... | ... |
app/gui/oven_control/manualcooksettingwidget.h
| ... | ... | @@ -26,8 +26,18 @@ public: |
| 26 | 26 | void setCoreTemp(int celsius); |
| 27 | 27 | void setFan(int level); |
| 28 | 28 | |
| 29 | +protected: | |
| 30 | + void keyPressEvent(QKeyEvent *event); | |
| 31 | + void keyReleaseEvent(QKeyEvent *event); | |
| 32 | + | |
| 29 | 33 | private: |
| 30 | 34 | Ui::ManualCookSettingWidget *ui; |
| 35 | + | |
| 36 | + QWidget *pushed = NULL; | |
| 37 | + | |
| 38 | + void onEncoderLeft(); | |
| 39 | + void onEncoderRight(); | |
| 40 | + void onEncoderClicked(QWidget *clicked); | |
| 31 | 41 | }; |
| 32 | 42 | |
| 33 | 43 | #endif // MANUALCOOKSETTINGWIDGET_H | ... | ... |
app/gui/oven_control/modelsettingwindow.cpp
| 1 | 1 | #include "modelsettingwindow.h" |
| 2 | 2 | #include "ui_modelsettingwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "electricmodelsettingwindow.h" |
| 5 | 7 | #include "gasmodelsettingwindow.h" |
| 6 | 8 | #include "soundplayer.h" |
| ... | ... | @@ -23,6 +25,41 @@ ModelSettingWindow::~ModelSettingWindow() |
| 23 | 25 | delete ui; |
| 24 | 26 | } |
| 25 | 27 | |
| 28 | +void ModelSettingWindow::keyPressEvent(QKeyEvent *event) | |
| 29 | +{ | |
| 30 | + switch (event->key()) | |
| 31 | + { | |
| 32 | + case 0x01000030: // Turn left | |
| 33 | + onEncoderLeft(); | |
| 34 | + break; | |
| 35 | + case 0x01000031: // Push | |
| 36 | + pushed = focusWidget(); | |
| 37 | + break; | |
| 38 | + case 0x01000032: // Turn right | |
| 39 | + onEncoderRight(); | |
| 40 | + break; | |
| 41 | + } | |
| 42 | +} | |
| 43 | + | |
| 44 | +void ModelSettingWindow::keyReleaseEvent(QKeyEvent *event) | |
| 45 | +{ | |
| 46 | + switch (event->key()) | |
| 47 | + { | |
| 48 | + case 0x01000030: // Turn left | |
| 49 | + onEncoderLeft(); | |
| 50 | + break; | |
| 51 | + case 0x01000031: // Push | |
| 52 | + if (focusWidget() == pushed) | |
| 53 | + onEncoderClicked(pushed); | |
| 54 | + | |
| 55 | + pushed = NULL; | |
| 56 | + break; | |
| 57 | + case 0x01000032: // Turn right | |
| 58 | + onEncoderRight(); | |
| 59 | + break; | |
| 60 | + } | |
| 61 | +} | |
| 62 | + | |
| 26 | 63 | void ModelSettingWindow::on_electricButton_clicked() |
| 27 | 64 | { |
| 28 | 65 | ElectricModelSettingWindow *w = new ElectricModelSettingWindow(this); |
| ... | ... | @@ -39,3 +76,20 @@ void ModelSettingWindow::on_backButton_clicked() |
| 39 | 76 | { |
| 40 | 77 | close(); |
| 41 | 78 | } |
| 79 | + | |
| 80 | +void ModelSettingWindow::onEncoderLeft() | |
| 81 | +{ | |
| 82 | + focusPreviousChild(); | |
| 83 | +} | |
| 84 | + | |
| 85 | +void ModelSettingWindow::onEncoderRight() | |
| 86 | +{ | |
| 87 | + focusNextChild(); | |
| 88 | +} | |
| 89 | + | |
| 90 | +void ModelSettingWindow::onEncoderClicked(QWidget *clicked) | |
| 91 | +{ | |
| 92 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 93 | + if (b) | |
| 94 | + b->click(); | |
| 95 | +} | ... | ... |
app/gui/oven_control/modelsettingwindow.h
| ... | ... | @@ -15,6 +15,10 @@ public: |
| 15 | 15 | explicit ModelSettingWindow(QWidget *parent = 0); |
| 16 | 16 | ~ModelSettingWindow(); |
| 17 | 17 | |
| 18 | +protected: | |
| 19 | + void keyPressEvent(QKeyEvent *event); | |
| 20 | + void keyReleaseEvent(QKeyEvent *event); | |
| 21 | + | |
| 18 | 22 | private slots: |
| 19 | 23 | |
| 20 | 24 | void on_electricButton_clicked(); |
| ... | ... | @@ -25,6 +29,12 @@ private slots: |
| 25 | 29 | |
| 26 | 30 | private: |
| 27 | 31 | Ui::ModelSettingWindow *ui; |
| 32 | + | |
| 33 | + QWidget *pushed = NULL; | |
| 34 | + | |
| 35 | + void onEncoderLeft(); | |
| 36 | + void onEncoderRight(); | |
| 37 | + void onEncoderClicked(QWidget *clicked); | |
| 28 | 38 | }; |
| 29 | 39 | |
| 30 | 40 | #endif // MODELSETTINGWINDOW_H | ... | ... |
app/gui/oven_control/primewindow.cpp
| ... | ... | @@ -4,6 +4,7 @@ |
| 4 | 4 | #include <QtDebug> |
| 5 | 5 | #include <QLabel> |
| 6 | 6 | #include <QPainter> |
| 7 | +#include <QKeyEvent> | |
| 7 | 8 | |
| 8 | 9 | #include "manualcooksettingwidget.h" |
| 9 | 10 | #include "cookhistory.h" |
| ... | ... | @@ -82,6 +83,41 @@ void PrimeWindow::focusFavorite(int id) |
| 82 | 83 | } |
| 83 | 84 | } |
| 84 | 85 | |
| 86 | +void PrimeWindow::keyPressEvent(QKeyEvent *event) | |
| 87 | +{ | |
| 88 | + switch (event->key()) | |
| 89 | + { | |
| 90 | + case 0x01000030: // Turn left | |
| 91 | + onEncoderLeft(); | |
| 92 | + break; | |
| 93 | + case 0x01000031: // Push | |
| 94 | + pushed = focusWidget(); | |
| 95 | + break; | |
| 96 | + case 0x01000032: // Turn right | |
| 97 | + onEncoderRight(); | |
| 98 | + break; | |
| 99 | + } | |
| 100 | +} | |
| 101 | + | |
| 102 | +void PrimeWindow::keyReleaseEvent(QKeyEvent *event) | |
| 103 | +{ | |
| 104 | + switch (event->key()) | |
| 105 | + { | |
| 106 | + case 0x01000030: // Turn left | |
| 107 | + onEncoderLeft(); | |
| 108 | + break; | |
| 109 | + case 0x01000031: // Push | |
| 110 | + if (focusWidget() == pushed) | |
| 111 | + onEncoderClicked(pushed); | |
| 112 | + | |
| 113 | + pushed = NULL; | |
| 114 | + break; | |
| 115 | + case 0x01000032: // Turn right | |
| 116 | + onEncoderRight(); | |
| 117 | + break; | |
| 118 | + } | |
| 119 | +} | |
| 120 | + | |
| 85 | 121 | void PrimeWindow::on_mostCookedButton_toggled(bool checked) |
| 86 | 122 | { |
| 87 | 123 | if (!checked) |
| ... | ... | @@ -212,3 +248,20 @@ void PrimeWindow::on_helpButton_clicked() |
| 212 | 248 | { |
| 213 | 249 | |
| 214 | 250 | } |
| 251 | + | |
| 252 | +void PrimeWindow::onEncoderLeft() | |
| 253 | +{ | |
| 254 | + focusPreviousChild(); | |
| 255 | +} | |
| 256 | + | |
| 257 | +void PrimeWindow::onEncoderRight() | |
| 258 | +{ | |
| 259 | + focusNextChild(); | |
| 260 | +} | |
| 261 | + | |
| 262 | +void PrimeWindow::onEncoderClicked(QWidget *clicked) | |
| 263 | +{ | |
| 264 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 265 | + if (b) | |
| 266 | + b->click(); | |
| 267 | +} | ... | ... |
app/gui/oven_control/primewindow.h
| ... | ... | @@ -25,6 +25,10 @@ public: |
| 25 | 25 | void listFavorites(); |
| 26 | 26 | void focusFavorite(int id); |
| 27 | 27 | |
| 28 | +protected: | |
| 29 | + void keyPressEvent(QKeyEvent *event); | |
| 30 | + void keyReleaseEvent(QKeyEvent *event); | |
| 31 | + | |
| 28 | 32 | private slots: |
| 29 | 33 | void on_mostCookedButton_toggled(bool checked); |
| 30 | 34 | void on_recentsButton_toggled(bool checked); |
| ... | ... | @@ -52,6 +56,12 @@ private: |
| 52 | 56 | |
| 53 | 57 | QList<CookPanelButton *> list; |
| 54 | 58 | CookPanelButton *lastInfoDisplayed; |
| 59 | + | |
| 60 | + QWidget *pushed = NULL; | |
| 61 | + | |
| 62 | + void onEncoderLeft(); | |
| 63 | + void onEncoderRight(); | |
| 64 | + void onEncoderClicked(QWidget *clicked); | |
| 55 | 65 | }; |
| 56 | 66 | |
| 57 | 67 | #endif // PRIMEWINDOW_H | ... | ... |
app/gui/oven_control/programmingautoconfigwindow.cpp
| 1 | 1 | #include "programmingautoconfigwindow.h" |
| 2 | 2 | #include "ui_programmingautoconfigwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "soundplayer.h" |
| 5 | 7 | #include "stringer.h" |
| 6 | 8 | #include "cookprogram.h" |
| ... | ... | @@ -69,6 +71,56 @@ ProgrammingAutoConfigWindow::~ProgrammingAutoConfigWindow() |
| 69 | 71 | delete ui; |
| 70 | 72 | } |
| 71 | 73 | |
| 74 | +void ProgrammingAutoConfigWindow::keyPressEvent(QKeyEvent *event) | |
| 75 | +{ | |
| 76 | + switch (event->key()) | |
| 77 | + { | |
| 78 | + case 0x01000030: // Turn left | |
| 79 | + onEncoderLeft(); | |
| 80 | + break; | |
| 81 | + case 0x01000031: // Push | |
| 82 | + pushed = focusWidget(); | |
| 83 | + break; | |
| 84 | + case 0x01000032: // Turn right | |
| 85 | + onEncoderRight(); | |
| 86 | + break; | |
| 87 | + } | |
| 88 | +} | |
| 89 | + | |
| 90 | +void ProgrammingAutoConfigWindow::keyReleaseEvent(QKeyEvent *event) | |
| 91 | +{ | |
| 92 | + switch (event->key()) | |
| 93 | + { | |
| 94 | + case 0x01000030: // Turn left | |
| 95 | + onEncoderLeft(); | |
| 96 | + break; | |
| 97 | + case 0x01000031: // Push | |
| 98 | + if (focusWidget() == pushed) | |
| 99 | + onEncoderClicked(pushed); | |
| 100 | + | |
| 101 | + pushed = NULL; | |
| 102 | + break; | |
| 103 | + case 0x01000032: // Turn right | |
| 104 | + onEncoderRight(); | |
| 105 | + break; | |
| 106 | + } | |
| 107 | +} | |
| 108 | + | |
| 109 | +void ProgrammingAutoConfigWindow::onEncoderLeft() | |
| 110 | +{ | |
| 111 | + | |
| 112 | +} | |
| 113 | + | |
| 114 | +void ProgrammingAutoConfigWindow::onEncoderRight() | |
| 115 | +{ | |
| 116 | + | |
| 117 | +} | |
| 118 | + | |
| 119 | +void ProgrammingAutoConfigWindow::onEncoderClicked(QWidget *clicked) | |
| 120 | +{ | |
| 121 | + | |
| 122 | +} | |
| 123 | + | |
| 72 | 124 | void ProgrammingAutoConfigWindow::setupUi() |
| 73 | 125 | { |
| 74 | 126 | ui->cookTypeIcon->setPixmap(Define::icon(cook.type)); | ... | ... |
app/gui/oven_control/programmingautoconfigwindow.h
| ... | ... | @@ -21,6 +21,10 @@ public: |
| 21 | 21 | explicit ProgrammingAutoConfigWindow(QWidget *parent, Cook cook); |
| 22 | 22 | ~ProgrammingAutoConfigWindow(); |
| 23 | 23 | |
| 24 | +protected: | |
| 25 | + void keyPressEvent(QKeyEvent *event); | |
| 26 | + void keyReleaseEvent(QKeyEvent *event); | |
| 27 | + | |
| 24 | 28 | private: |
| 25 | 29 | Ui::ProgrammingAutoConfigWindow *ui; |
| 26 | 30 | Cook cook; |
| ... | ... | @@ -35,6 +39,12 @@ private: |
| 35 | 39 | |
| 36 | 40 | QList<ConfigWidget> configWidgets; |
| 37 | 41 | |
| 42 | + QWidget *pushed = NULL; | |
| 43 | + | |
| 44 | + void onEncoderLeft(); | |
| 45 | + void onEncoderRight(); | |
| 46 | + void onEncoderClicked(QWidget *clicked); | |
| 47 | + | |
| 38 | 48 | private slots: |
| 39 | 49 | void setupUi(); |
| 40 | 50 | void updateView(); | ... | ... |
app/gui/oven_control/programmingautoselectionwindow.cpp
| ... | ... | @@ -2,6 +2,7 @@ |
| 2 | 2 | #include "ui_programmingautoselectionwindow.h" |
| 3 | 3 | |
| 4 | 4 | #include <QSignalMapper> |
| 5 | +#include <QKeyEvent> | |
| 5 | 6 | |
| 6 | 7 | #include "soundplayer.h" |
| 7 | 8 | #include "programmingautoconfigwindow.h" |
| ... | ... | @@ -63,6 +64,56 @@ ProgrammingAutoSelectionWindow::~ProgrammingAutoSelectionWindow() |
| 63 | 64 | delete ui; |
| 64 | 65 | } |
| 65 | 66 | |
| 67 | +void ProgrammingAutoSelectionWindow::keyPressEvent(QKeyEvent *event) | |
| 68 | +{ | |
| 69 | + switch (event->key()) | |
| 70 | + { | |
| 71 | + case 0x01000030: // Turn left | |
| 72 | + onEncoderLeft(); | |
| 73 | + break; | |
| 74 | + case 0x01000031: // Push | |
| 75 | + pushed = focusWidget(); | |
| 76 | + break; | |
| 77 | + case 0x01000032: // Turn right | |
| 78 | + onEncoderRight(); | |
| 79 | + break; | |
| 80 | + } | |
| 81 | +} | |
| 82 | + | |
| 83 | +void ProgrammingAutoSelectionWindow::keyReleaseEvent(QKeyEvent *event) | |
| 84 | +{ | |
| 85 | + switch (event->key()) | |
| 86 | + { | |
| 87 | + case 0x01000030: // Turn left | |
| 88 | + onEncoderLeft(); | |
| 89 | + break; | |
| 90 | + case 0x01000031: // Push | |
| 91 | + if (focusWidget() == pushed) | |
| 92 | + onEncoderClicked(pushed); | |
| 93 | + | |
| 94 | + pushed = NULL; | |
| 95 | + break; | |
| 96 | + case 0x01000032: // Turn right | |
| 97 | + onEncoderRight(); | |
| 98 | + break; | |
| 99 | + } | |
| 100 | +} | |
| 101 | + | |
| 102 | +void ProgrammingAutoSelectionWindow::onEncoderLeft() | |
| 103 | +{ | |
| 104 | + | |
| 105 | +} | |
| 106 | + | |
| 107 | +void ProgrammingAutoSelectionWindow::onEncoderRight() | |
| 108 | +{ | |
| 109 | + | |
| 110 | +} | |
| 111 | + | |
| 112 | +void ProgrammingAutoSelectionWindow::onEncoderClicked(QWidget *clicked) | |
| 113 | +{ | |
| 114 | + | |
| 115 | +} | |
| 116 | + | |
| 66 | 117 | void ProgrammingAutoSelectionWindow::onCookSelected(int idx) |
| 67 | 118 | { |
| 68 | 119 | ProgrammingAutoConfigWindow *w = new ProgrammingAutoConfigWindow(this, book.get(idx)); | ... | ... |
app/gui/oven_control/programmingautoselectionwindow.h
| ... | ... | @@ -17,11 +17,21 @@ public: |
| 17 | 17 | explicit ProgrammingAutoSelectionWindow(QWidget *parent, Define::CookType type); |
| 18 | 18 | ~ProgrammingAutoSelectionWindow(); |
| 19 | 19 | |
| 20 | +protected: | |
| 21 | + void keyPressEvent(QKeyEvent *event); | |
| 22 | + void keyReleaseEvent(QKeyEvent *event); | |
| 23 | + | |
| 20 | 24 | private: |
| 21 | 25 | Ui::ProgrammingAutoSelectionWindow *ui; |
| 22 | 26 | Define::CookType type; |
| 23 | 27 | CookBook book; |
| 24 | 28 | |
| 29 | + QWidget *pushed = NULL; | |
| 30 | + | |
| 31 | + void onEncoderLeft(); | |
| 32 | + void onEncoderRight(); | |
| 33 | + void onEncoderClicked(QWidget *clicked); | |
| 34 | + | |
| 25 | 35 | private slots: |
| 26 | 36 | void onCookSelected(int idx); |
| 27 | 37 | ... | ... |
app/gui/oven_control/programmingmanualcoretemppopup.cpp
| 1 | 1 | #include "programmingmanualcoretemppopup.h" |
| 2 | 2 | #include "ui_programmingmanualcoretemppopup.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "stringer.h" |
| 5 | 7 | #include "soundplayer.h" |
| 6 | 8 | #include "oven.h" |
| ... | ... | @@ -42,6 +44,41 @@ ProgrammingManualCoreTempPopup::~ProgrammingManualCoreTempPopup() |
| 42 | 44 | delete ui; |
| 43 | 45 | } |
| 44 | 46 | |
| 47 | +void ProgrammingManualCoreTempPopup::keyPressEvent(QKeyEvent *event) | |
| 48 | +{ | |
| 49 | + switch (event->key()) | |
| 50 | + { | |
| 51 | + case 0x01000030: // Turn left | |
| 52 | + onEncoderLeft(); | |
| 53 | + break; | |
| 54 | + case 0x01000031: // Push | |
| 55 | + pushed = focusWidget(); | |
| 56 | + break; | |
| 57 | + case 0x01000032: // Turn right | |
| 58 | + onEncoderRight(); | |
| 59 | + break; | |
| 60 | + } | |
| 61 | +} | |
| 62 | + | |
| 63 | +void ProgrammingManualCoreTempPopup::keyReleaseEvent(QKeyEvent *event) | |
| 64 | +{ | |
| 65 | + switch (event->key()) | |
| 66 | + { | |
| 67 | + case 0x01000030: // Turn left | |
| 68 | + onEncoderLeft(); | |
| 69 | + break; | |
| 70 | + case 0x01000031: // Push | |
| 71 | + if (focusWidget() == pushed) | |
| 72 | + onEncoderClicked(pushed); | |
| 73 | + | |
| 74 | + pushed = NULL; | |
| 75 | + break; | |
| 76 | + case 0x01000032: // Turn right | |
| 77 | + onEncoderRight(); | |
| 78 | + break; | |
| 79 | + } | |
| 80 | +} | |
| 81 | + | |
| 45 | 82 | void ProgrammingManualCoreTempPopup::updateCoreTempLabel() |
| 46 | 83 | { |
| 47 | 84 | ui->coreTempLabel->setText(Stringer::temperature(ui->coreTempSlider->sliderPosition(), Stringer::fontSize14)); |
| ... | ... | @@ -63,3 +100,18 @@ void ProgrammingManualCoreTempPopup::on_applyButton_clicked() |
| 63 | 100 | |
| 64 | 101 | close(); |
| 65 | 102 | } |
| 103 | + | |
| 104 | +void ProgrammingManualCoreTempPopup::onEncoderLeft() | |
| 105 | +{ | |
| 106 | + | |
| 107 | +} | |
| 108 | + | |
| 109 | +void ProgrammingManualCoreTempPopup::onEncoderRight() | |
| 110 | +{ | |
| 111 | + | |
| 112 | +} | |
| 113 | + | |
| 114 | +void ProgrammingManualCoreTempPopup::onEncoderClicked(QWidget *clicked) | |
| 115 | +{ | |
| 116 | + | |
| 117 | +} | ... | ... |
app/gui/oven_control/programmingmanualcoretemppopup.h
| ... | ... | @@ -15,6 +15,10 @@ public: |
| 15 | 15 | explicit ProgrammingManualCoreTempPopup(QWidget *parent = 0); |
| 16 | 16 | ~ProgrammingManualCoreTempPopup(); |
| 17 | 17 | |
| 18 | +protected: | |
| 19 | + void keyPressEvent(QKeyEvent *event); | |
| 20 | + void keyReleaseEvent(QKeyEvent *event); | |
| 21 | + | |
| 18 | 22 | private slots: |
| 19 | 23 | void updateCoreTempLabel(); |
| 20 | 24 | |
| ... | ... | @@ -25,6 +29,12 @@ private slots: |
| 25 | 29 | private: |
| 26 | 30 | Ui::ProgrammingManualCoreTempPopup *ui; |
| 27 | 31 | |
| 32 | + QWidget *pushed = NULL; | |
| 33 | + | |
| 34 | + void onEncoderLeft(); | |
| 35 | + void onEncoderRight(); | |
| 36 | + void onEncoderClicked(QWidget *clicked); | |
| 37 | + | |
| 28 | 38 | signals: |
| 29 | 39 | void coreTempEnabled(int); |
| 30 | 40 | }; | ... | ... |
app/gui/oven_control/programmingmanualwindow.cpp
| 1 | 1 | #include "programmingmanualwindow.h" |
| 2 | 2 | #include "ui_programmingmanualwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "stringer.h" |
| 5 | 7 | #include "programmingmanualcoretemppopup.h" |
| 6 | 8 | #include "cookprogram.h" |
| ... | ... | @@ -71,6 +73,41 @@ ProgrammingManualWindow::~ProgrammingManualWindow() |
| 71 | 73 | delete ui; |
| 72 | 74 | } |
| 73 | 75 | |
| 76 | +void ProgrammingManualWindow::keyPressEvent(QKeyEvent *event) | |
| 77 | +{ | |
| 78 | + switch (event->key()) | |
| 79 | + { | |
| 80 | + case 0x01000030: // Turn left | |
| 81 | + onEncoderLeft(); | |
| 82 | + break; | |
| 83 | + case 0x01000031: // Push | |
| 84 | + pushed = focusWidget(); | |
| 85 | + break; | |
| 86 | + case 0x01000032: // Turn right | |
| 87 | + onEncoderRight(); | |
| 88 | + break; | |
| 89 | + } | |
| 90 | +} | |
| 91 | + | |
| 92 | +void ProgrammingManualWindow::keyReleaseEvent(QKeyEvent *event) | |
| 93 | +{ | |
| 94 | + switch (event->key()) | |
| 95 | + { | |
| 96 | + case 0x01000030: // Turn left | |
| 97 | + onEncoderLeft(); | |
| 98 | + break; | |
| 99 | + case 0x01000031: // Push | |
| 100 | + if (focusWidget() == pushed) | |
| 101 | + onEncoderClicked(pushed); | |
| 102 | + | |
| 103 | + pushed = NULL; | |
| 104 | + break; | |
| 105 | + case 0x01000032: // Turn right | |
| 106 | + onEncoderRight(); | |
| 107 | + break; | |
| 108 | + } | |
| 109 | +} | |
| 110 | + | |
| 74 | 111 | int ProgrammingManualWindow::sliderToTime(int value) |
| 75 | 112 | { |
| 76 | 113 | if (value <= 180) |
| ... | ... | @@ -89,6 +126,21 @@ int ProgrammingManualWindow::timeToSlider(int secs) |
| 89 | 126 | return 270 + (secs - 360 * 60) / 15 / 60; |
| 90 | 127 | } |
| 91 | 128 | |
| 129 | +void ProgrammingManualWindow::onEncoderLeft() | |
| 130 | +{ | |
| 131 | + | |
| 132 | +} | |
| 133 | + | |
| 134 | +void ProgrammingManualWindow::onEncoderRight() | |
| 135 | +{ | |
| 136 | + | |
| 137 | +} | |
| 138 | + | |
| 139 | +void ProgrammingManualWindow::onEncoderClicked(QWidget *clicked) | |
| 140 | +{ | |
| 141 | + | |
| 142 | +} | |
| 143 | + | |
| 92 | 144 | void ProgrammingManualWindow::setDefault(Define::Mode mode) |
| 93 | 145 | { |
| 94 | 146 | switch (mode) | ... | ... |
app/gui/oven_control/programmingmanualwindow.h
| ... | ... | @@ -17,6 +17,10 @@ public: |
| 17 | 17 | explicit ProgrammingManualWindow(QWidget *parent, Define::Mode mode); |
| 18 | 18 | ~ProgrammingManualWindow(); |
| 19 | 19 | |
| 20 | +protected: | |
| 21 | + void keyPressEvent(QKeyEvent *event); | |
| 22 | + void keyReleaseEvent(QKeyEvent *event); | |
| 23 | + | |
| 20 | 24 | private: |
| 21 | 25 | Ui::ProgrammingManualWindow *ui; |
| 22 | 26 | |
| ... | ... | @@ -26,6 +30,12 @@ private: |
| 26 | 30 | int sliderToTime(int value); |
| 27 | 31 | int timeToSlider(int secs); |
| 28 | 32 | |
| 33 | + QWidget *pushed = NULL; | |
| 34 | + | |
| 35 | + void onEncoderLeft(); | |
| 36 | + void onEncoderRight(); | |
| 37 | + void onEncoderClicked(QWidget *clicked); | |
| 38 | + | |
| 29 | 39 | private slots: |
| 30 | 40 | void setDefault(Define::Mode mode); |
| 31 | 41 | void setFan(int level); | ... | ... |
app/gui/oven_control/programmingnamepopup.cpp
| 1 | 1 | #include "programmingnamepopup.h" |
| 2 | 2 | #include "ui_programmingnamepopup.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "soundplayer.h" |
| 5 | 7 | |
| 6 | 8 | ProgrammingNamePopup::ProgrammingNamePopup(QWidget *parent, CookRecord record) : |
| ... | ... | @@ -25,6 +27,41 @@ ProgrammingNamePopup::~ProgrammingNamePopup() |
| 25 | 27 | delete ui; |
| 26 | 28 | } |
| 27 | 29 | |
| 30 | +void ProgrammingNamePopup::keyPressEvent(QKeyEvent *event) | |
| 31 | +{ | |
| 32 | + switch (event->key()) | |
| 33 | + { | |
| 34 | + case 0x01000030: // Turn left | |
| 35 | + onEncoderLeft(); | |
| 36 | + break; | |
| 37 | + case 0x01000031: // Push | |
| 38 | + pushed = focusWidget(); | |
| 39 | + break; | |
| 40 | + case 0x01000032: // Turn right | |
| 41 | + onEncoderRight(); | |
| 42 | + break; | |
| 43 | + } | |
| 44 | +} | |
| 45 | + | |
| 46 | +void ProgrammingNamePopup::keyReleaseEvent(QKeyEvent *event) | |
| 47 | +{ | |
| 48 | + switch (event->key()) | |
| 49 | + { | |
| 50 | + case 0x01000030: // Turn left | |
| 51 | + onEncoderLeft(); | |
| 52 | + break; | |
| 53 | + case 0x01000031: // Push | |
| 54 | + if (focusWidget() == pushed) | |
| 55 | + onEncoderClicked(pushed); | |
| 56 | + | |
| 57 | + pushed = NULL; | |
| 58 | + break; | |
| 59 | + case 0x01000032: // Turn right | |
| 60 | + onEncoderRight(); | |
| 61 | + break; | |
| 62 | + } | |
| 63 | +} | |
| 64 | + | |
| 28 | 65 | void ProgrammingNamePopup::on_okButton_clicked() |
| 29 | 66 | { |
| 30 | 67 | CookProgram::rename(record, ui->lineEdit->text()); |
| ... | ... | @@ -38,3 +75,18 @@ void ProgrammingNamePopup::on_cancelButton_clicked() |
| 38 | 75 | { |
| 39 | 76 | close(); |
| 40 | 77 | } |
| 78 | + | |
| 79 | +void ProgrammingNamePopup::onEncoderLeft() | |
| 80 | +{ | |
| 81 | + | |
| 82 | +} | |
| 83 | + | |
| 84 | +void ProgrammingNamePopup::onEncoderRight() | |
| 85 | +{ | |
| 86 | + | |
| 87 | +} | |
| 88 | + | |
| 89 | +void ProgrammingNamePopup::onEncoderClicked(QWidget *clicked) | |
| 90 | +{ | |
| 91 | + | |
| 92 | +} | ... | ... |
app/gui/oven_control/programmingnamepopup.h
| ... | ... | @@ -17,6 +17,10 @@ public: |
| 17 | 17 | explicit ProgrammingNamePopup(QWidget *parent, CookRecord record); |
| 18 | 18 | ~ProgrammingNamePopup(); |
| 19 | 19 | |
| 20 | +protected: | |
| 21 | + void keyPressEvent(QKeyEvent *event); | |
| 22 | + void keyReleaseEvent(QKeyEvent *event); | |
| 23 | + | |
| 20 | 24 | private slots: |
| 21 | 25 | void on_okButton_clicked(); |
| 22 | 26 | |
| ... | ... | @@ -27,6 +31,12 @@ private: |
| 27 | 31 | |
| 28 | 32 | CookRecord record; |
| 29 | 33 | |
| 34 | + QWidget *pushed = NULL; | |
| 35 | + | |
| 36 | + void onEncoderLeft(); | |
| 37 | + void onEncoderRight(); | |
| 38 | + void onEncoderClicked(QWidget *clicked); | |
| 39 | + | |
| 30 | 40 | signals: |
| 31 | 41 | void changed(); |
| 32 | 42 | }; | ... | ... |
app/gui/oven_control/programmingselectionwindow.cpp
| 1 | 1 | #include "programmingselectionwindow.h" |
| 2 | 2 | #include "ui_programmingselectionwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "programmingmanualwindow.h" |
| 5 | 7 | #include "programmingautoselectionwindow.h" |
| 6 | 8 | #include "soundplayer.h" |
| ... | ... | @@ -45,6 +47,58 @@ void ProgrammingSelectionWindow::setCookTypeEnabled(bool enabled) |
| 45 | 47 | ui->etcButton->setEnabled(enabled); |
| 46 | 48 | } |
| 47 | 49 | |
| 50 | +void ProgrammingSelectionWindow::keyPressEvent(QKeyEvent *event) | |
| 51 | +{ | |
| 52 | + switch (event->key()) | |
| 53 | + { | |
| 54 | + case 0x01000030: // Turn left | |
| 55 | + onEncoderLeft(); | |
| 56 | + break; | |
| 57 | + case 0x01000031: // Push | |
| 58 | + pushed = focusWidget(); | |
| 59 | + break; | |
| 60 | + case 0x01000032: // Turn right | |
| 61 | + onEncoderRight(); | |
| 62 | + break; | |
| 63 | + } | |
| 64 | +} | |
| 65 | + | |
| 66 | +void ProgrammingSelectionWindow::keyReleaseEvent(QKeyEvent *event) | |
| 67 | +{ | |
| 68 | + switch (event->key()) | |
| 69 | + { | |
| 70 | + case 0x01000030: // Turn left | |
| 71 | + onEncoderLeft(); | |
| 72 | + break; | |
| 73 | + case 0x01000031: // Push | |
| 74 | + if (focusWidget() == pushed) | |
| 75 | + onEncoderClicked(pushed); | |
| 76 | + | |
| 77 | + pushed = NULL; | |
| 78 | + break; | |
| 79 | + case 0x01000032: // Turn right | |
| 80 | + onEncoderRight(); | |
| 81 | + break; | |
| 82 | + } | |
| 83 | +} | |
| 84 | + | |
| 85 | +void ProgrammingSelectionWindow::onEncoderLeft() | |
| 86 | +{ | |
| 87 | + focusPreviousChild(); | |
| 88 | +} | |
| 89 | + | |
| 90 | +void ProgrammingSelectionWindow::onEncoderRight() | |
| 91 | +{ | |
| 92 | + focusNextChild(); | |
| 93 | +} | |
| 94 | + | |
| 95 | +void ProgrammingSelectionWindow::onEncoderClicked(QWidget *clicked) | |
| 96 | +{ | |
| 97 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 98 | + if (b) | |
| 99 | + b->click(); | |
| 100 | +} | |
| 101 | + | |
| 48 | 102 | void ProgrammingSelectionWindow::onModeClicked(Define::Mode mode) |
| 49 | 103 | { |
| 50 | 104 | ProgrammingManualWindow *w = new ProgrammingManualWindow(this, mode); | ... | ... |
app/gui/oven_control/programmingselectionwindow.h
| ... | ... | @@ -20,9 +20,19 @@ public: |
| 20 | 20 | void setModeEnabled(bool enabled); |
| 21 | 21 | void setCookTypeEnabled(bool enabled); |
| 22 | 22 | |
| 23 | +protected: | |
| 24 | + void keyPressEvent(QKeyEvent *event); | |
| 25 | + void keyReleaseEvent(QKeyEvent *event); | |
| 26 | + | |
| 23 | 27 | private: |
| 24 | 28 | Ui::ProgrammingSelectionWindow *ui; |
| 25 | 29 | |
| 30 | + QWidget *pushed = NULL; | |
| 31 | + | |
| 32 | + void onEncoderLeft(); | |
| 33 | + void onEncoderRight(); | |
| 34 | + void onEncoderClicked(QWidget *clicked); | |
| 35 | + | |
| 26 | 36 | signals: |
| 27 | 37 | void added(); |
| 28 | 38 | ... | ... |
app/gui/oven_control/programmingwindow.cpp
| ... | ... | @@ -3,6 +3,7 @@ |
| 3 | 3 | |
| 4 | 4 | #include <QPainter> |
| 5 | 5 | #include <QtDebug> |
| 6 | +#include <QKeyEvent> | |
| 6 | 7 | |
| 7 | 8 | #include "programmingmanualwindow.h" |
| 8 | 9 | #include "programmingselectionwindow.h" |
| ... | ... | @@ -56,6 +57,41 @@ void ProgrammingWindow::listManual() |
| 56 | 57 | listButtons(CookProgram::listManual()); |
| 57 | 58 | } |
| 58 | 59 | |
| 60 | +void ProgrammingWindow::keyPressEvent(QKeyEvent *event) | |
| 61 | +{ | |
| 62 | + switch (event->key()) | |
| 63 | + { | |
| 64 | + case 0x01000030: // Turn left | |
| 65 | + onEncoderLeft(); | |
| 66 | + break; | |
| 67 | + case 0x01000031: // Push | |
| 68 | + pushed = focusWidget(); | |
| 69 | + break; | |
| 70 | + case 0x01000032: // Turn right | |
| 71 | + onEncoderRight(); | |
| 72 | + break; | |
| 73 | + } | |
| 74 | +} | |
| 75 | + | |
| 76 | +void ProgrammingWindow::keyReleaseEvent(QKeyEvent *event) | |
| 77 | +{ | |
| 78 | + switch (event->key()) | |
| 79 | + { | |
| 80 | + case 0x01000030: // Turn left | |
| 81 | + onEncoderLeft(); | |
| 82 | + break; | |
| 83 | + case 0x01000031: // Push | |
| 84 | + if (focusWidget() == pushed) | |
| 85 | + onEncoderClicked(pushed); | |
| 86 | + | |
| 87 | + pushed = NULL; | |
| 88 | + break; | |
| 89 | + case 0x01000032: // Turn right | |
| 90 | + onEncoderRight(); | |
| 91 | + break; | |
| 92 | + } | |
| 93 | +} | |
| 94 | + | |
| 59 | 95 | void ProgrammingWindow::setupUi() |
| 60 | 96 | { |
| 61 | 97 | ui->verticalScrollLayout->setAlignment(Qt::AlignTop); |
| ... | ... | @@ -244,3 +280,20 @@ void ProgrammingWindow::on_helpButton_clicked() |
| 244 | 280 | { |
| 245 | 281 | |
| 246 | 282 | } |
| 283 | + | |
| 284 | +void ProgrammingWindow::onEncoderLeft() | |
| 285 | +{ | |
| 286 | + focusPreviousChild(); | |
| 287 | +} | |
| 288 | + | |
| 289 | +void ProgrammingWindow::onEncoderRight() | |
| 290 | +{ | |
| 291 | + focusNextChild(); | |
| 292 | +} | |
| 293 | + | |
| 294 | +void ProgrammingWindow::onEncoderClicked(QWidget *clicked) | |
| 295 | +{ | |
| 296 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 297 | + if (b) | |
| 298 | + b->click(); | |
| 299 | +} | ... | ... |
app/gui/oven_control/programmingwindow.h
| ... | ... | @@ -20,6 +20,10 @@ public: |
| 20 | 20 | void listAuto(); |
| 21 | 21 | void listManual(); |
| 22 | 22 | |
| 23 | +protected: | |
| 24 | + void keyPressEvent(QKeyEvent *event); | |
| 25 | + void keyReleaseEvent(QKeyEvent *event); | |
| 26 | + | |
| 23 | 27 | private slots: |
| 24 | 28 | void setupUi(); |
| 25 | 29 | void updateView(); |
| ... | ... | @@ -49,6 +53,12 @@ private: |
| 49 | 53 | |
| 50 | 54 | QList<CookPanelButton *> list; |
| 51 | 55 | CookPanelButton *lastInfoDisplayed; |
| 56 | + | |
| 57 | + QWidget *pushed = NULL; | |
| 58 | + | |
| 59 | + void onEncoderLeft(); | |
| 60 | + void onEncoderRight(); | |
| 61 | + void onEncoderClicked(QWidget *clicked); | |
| 52 | 62 | }; |
| 53 | 63 | |
| 54 | 64 | #endif // PROGRAMMINGWINDOW_H | ... | ... |
app/gui/oven_control/valvetestwindow.cpp
| 1 | 1 | #include "valvetestwindow.h" |
| 2 | 2 | #include "ui_valvetestwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "soundplayer.h" |
| 5 | 7 | |
| 6 | 8 | ValveTestWindow::ValveTestWindow(QWidget *parent) : |
| ... | ... | @@ -29,6 +31,41 @@ ValveTestWindow::~ValveTestWindow() |
| 29 | 31 | delete ui; |
| 30 | 32 | } |
| 31 | 33 | |
| 34 | +void ValveTestWindow::keyPressEvent(QKeyEvent *event) | |
| 35 | +{ | |
| 36 | + switch (event->key()) | |
| 37 | + { | |
| 38 | + case 0x01000030: // Turn left | |
| 39 | + onEncoderLeft(); | |
| 40 | + break; | |
| 41 | + case 0x01000031: // Push | |
| 42 | + pushed = focusWidget(); | |
| 43 | + break; | |
| 44 | + case 0x01000032: // Turn right | |
| 45 | + onEncoderRight(); | |
| 46 | + break; | |
| 47 | + } | |
| 48 | +} | |
| 49 | + | |
| 50 | +void ValveTestWindow::keyReleaseEvent(QKeyEvent *event) | |
| 51 | +{ | |
| 52 | + switch (event->key()) | |
| 53 | + { | |
| 54 | + case 0x01000030: // Turn left | |
| 55 | + onEncoderLeft(); | |
| 56 | + break; | |
| 57 | + case 0x01000031: // Push | |
| 58 | + if (focusWidget() == pushed) | |
| 59 | + onEncoderClicked(pushed); | |
| 60 | + | |
| 61 | + pushed = NULL; | |
| 62 | + break; | |
| 63 | + case 0x01000032: // Turn right | |
| 64 | + onEncoderRight(); | |
| 65 | + break; | |
| 66 | + } | |
| 67 | +} | |
| 68 | + | |
| 32 | 69 | void ValveTestWindow::onDataChanged() |
| 33 | 70 | { |
| 34 | 71 | if (udp->ssv()) |
| ... | ... | @@ -120,6 +157,23 @@ void ValveTestWindow::on_backButton_clicked() |
| 120 | 157 | close(); |
| 121 | 158 | } |
| 122 | 159 | |
| 160 | +void ValveTestWindow::onEncoderLeft() | |
| 161 | +{ | |
| 162 | + focusPreviousChild(); | |
| 163 | +} | |
| 164 | + | |
| 165 | +void ValveTestWindow::onEncoderRight() | |
| 166 | +{ | |
| 167 | + focusNextChild(); | |
| 168 | +} | |
| 169 | + | |
| 170 | +void ValveTestWindow::onEncoderClicked(QWidget *clicked) | |
| 171 | +{ | |
| 172 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 173 | + if (b) | |
| 174 | + b->click(); | |
| 175 | +} | |
| 176 | + | |
| 123 | 177 | void ValveTestWindow::steamValveOpen() |
| 124 | 178 | { |
| 125 | 179 | udp->turnOn(TG_SSV); | ... | ... |
app/gui/oven_control/valvetestwindow.h
| ... | ... | @@ -17,6 +17,10 @@ public: |
| 17 | 17 | explicit ValveTestWindow(QWidget *parent = 0); |
| 18 | 18 | ~ValveTestWindow(); |
| 19 | 19 | |
| 20 | +protected: | |
| 21 | + void keyPressEvent(QKeyEvent *event); | |
| 22 | + void keyReleaseEvent(QKeyEvent *event); | |
| 23 | + | |
| 20 | 24 | private slots: |
| 21 | 25 | void steamValveOpen(); |
| 22 | 26 | void steamValveClose(); |
| ... | ... | @@ -43,6 +47,12 @@ private slots: |
| 43 | 47 | private: |
| 44 | 48 | Ui::ValveTestWindow *ui; |
| 45 | 49 | UdpHandler *udp; |
| 50 | + | |
| 51 | + QWidget *pushed = NULL; | |
| 52 | + | |
| 53 | + void onEncoderLeft(); | |
| 54 | + void onEncoderRight(); | |
| 55 | + void onEncoderClicked(QWidget *clicked); | |
| 46 | 56 | }; |
| 47 | 57 | |
| 48 | 58 | #endif // VALVETESTWINDOW_H | ... | ... |
app/gui/oven_control/washtestwindow.cpp
| 1 | 1 | #include "washtestwindow.h" |
| 2 | 2 | #include "ui_washtestwindow.h" |
| 3 | 3 | |
| 4 | +#include <QKeyEvent> | |
| 5 | + | |
| 4 | 6 | #include "soundplayer.h" |
| 5 | 7 | |
| 6 | 8 | WashTestWindow::WashTestWindow(QWidget *parent) : |
| ... | ... | @@ -29,6 +31,41 @@ WashTestWindow::~WashTestWindow() |
| 29 | 31 | delete ui; |
| 30 | 32 | } |
| 31 | 33 | |
| 34 | +void WashTestWindow::keyPressEvent(QKeyEvent *event) | |
| 35 | +{ | |
| 36 | + switch (event->key()) | |
| 37 | + { | |
| 38 | + case 0x01000030: // Turn left | |
| 39 | + onEncoderLeft(); | |
| 40 | + break; | |
| 41 | + case 0x01000031: // Push | |
| 42 | + pushed = focusWidget(); | |
| 43 | + break; | |
| 44 | + case 0x01000032: // Turn right | |
| 45 | + onEncoderRight(); | |
| 46 | + break; | |
| 47 | + } | |
| 48 | +} | |
| 49 | + | |
| 50 | +void WashTestWindow::keyReleaseEvent(QKeyEvent *event) | |
| 51 | +{ | |
| 52 | + switch (event->key()) | |
| 53 | + { | |
| 54 | + case 0x01000030: // Turn left | |
| 55 | + onEncoderLeft(); | |
| 56 | + break; | |
| 57 | + case 0x01000031: // Push | |
| 58 | + if (focusWidget() == pushed) | |
| 59 | + onEncoderClicked(pushed); | |
| 60 | + | |
| 61 | + pushed = NULL; | |
| 62 | + break; | |
| 63 | + case 0x01000032: // Turn right | |
| 64 | + onEncoderRight(); | |
| 65 | + break; | |
| 66 | + } | |
| 67 | +} | |
| 68 | + | |
| 32 | 69 | void WashTestWindow::onDataChanged() |
| 33 | 70 | { |
| 34 | 71 | if (udp->dp()) |
| ... | ... | @@ -93,6 +130,23 @@ void WashTestWindow::on_backButton_clicked() |
| 93 | 130 | close(); |
| 94 | 131 | } |
| 95 | 132 | |
| 133 | +void WashTestWindow::onEncoderLeft() | |
| 134 | +{ | |
| 135 | + focusPreviousChild(); | |
| 136 | +} | |
| 137 | + | |
| 138 | +void WashTestWindow::onEncoderRight() | |
| 139 | +{ | |
| 140 | + focusNextChild(); | |
| 141 | +} | |
| 142 | + | |
| 143 | +void WashTestWindow::onEncoderClicked(QWidget *clicked) | |
| 144 | +{ | |
| 145 | + QPushButton *b = qobject_cast<QPushButton *>(clicked); | |
| 146 | + if (b) | |
| 147 | + b->click(); | |
| 148 | +} | |
| 149 | + | |
| 96 | 150 | void WashTestWindow::steamPumpOn() |
| 97 | 151 | { |
| 98 | 152 | udp->turnOn(TG_DP); | ... | ... |
app/gui/oven_control/washtestwindow.h
| ... | ... | @@ -17,6 +17,10 @@ public: |
| 17 | 17 | explicit WashTestWindow(QWidget *parent = 0); |
| 18 | 18 | ~WashTestWindow(); |
| 19 | 19 | |
| 20 | +protected: | |
| 21 | + void keyPressEvent(QKeyEvent *event); | |
| 22 | + void keyReleaseEvent(QKeyEvent *event); | |
| 23 | + | |
| 20 | 24 | private slots: |
| 21 | 25 | void steamPumpOn(); |
| 22 | 26 | void steamPumpOff(); |
| ... | ... | @@ -40,6 +44,12 @@ private slots: |
| 40 | 44 | private: |
| 41 | 45 | Ui::WashTestWindow *ui; |
| 42 | 46 | UdpHandler *udp; |
| 47 | + | |
| 48 | + QWidget *pushed = NULL; | |
| 49 | + | |
| 50 | + void onEncoderLeft(); | |
| 51 | + void onEncoderRight(); | |
| 52 | + void onEncoderClicked(QWidget *clicked); | |
| 43 | 53 | }; |
| 44 | 54 | |
| 45 | 55 | #endif // WASHTESTWINDOW_H | ... | ... |