Commit 184bdebb42d1f19f7f35c830eab16f74d0d13eac
1 parent
e9e5be516f
Exists in
master
and in
2 other branches
엔코더 구현
- 자동 요리 설정 화면
Showing
3 changed files
with
224 additions
and
50 deletions
Show diff stats
app/gui/oven_control/autocookconfigwindow.cpp
| 1 | #include "autocookconfigwindow.h" | 1 | #include "autocookconfigwindow.h" |
| 2 | #include "ui_autocookconfigwindow.h" | 2 | #include "ui_autocookconfigwindow.h" |
| 3 | 3 | ||
| 4 | +#include <QKeyEvent> | ||
| 5 | + | ||
| 4 | #include "autocookwindow.h" | 6 | #include "autocookwindow.h" |
| 5 | #include "confirmpopup.h" | 7 | #include "confirmpopup.h" |
| 6 | #include "stringer.h" | 8 | #include "stringer.h" |
| @@ -61,31 +63,143 @@ AutoCookConfigWindow::AutoCookConfigWindow(QWidget *parent, Cook cook) : | @@ -61,31 +63,143 @@ AutoCookConfigWindow::AutoCookConfigWindow(QWidget *parent, Cook cook) : | ||
| 61 | ui->configSlider_5 | 63 | ui->configSlider_5 |
| 62 | }); | 64 | }); |
| 63 | 65 | ||
| 64 | - cookStartTimer.setSingleShot(true); | ||
| 65 | - cookStartTimer.setInterval(3000); | ||
| 66 | - connect(&cookStartTimer, SIGNAL(timeout()), SLOT(start())); | 66 | + setupUi(); |
| 67 | + | ||
| 68 | + afterThreeSecsTimer.setSingleShot(true); | ||
| 69 | + afterThreeSecsTimer.setInterval(3000); | ||
| 70 | + connect(&afterThreeSecsTimer, SIGNAL(timeout()), SLOT(afterThreeSecs())); | ||
| 71 | + | ||
| 72 | + foreach (QPushButton *button, findChildren<QPushButton *>()) | ||
| 73 | + connect(button, &QPushButton::pressed, SoundPlayer::playClick); | ||
| 74 | + | ||
| 75 | + foreach (QWidget *w, findChildren<QWidget *>()) | ||
| 76 | + w->installEventFilter(this); | ||
| 77 | + | ||
| 78 | + installEventFilter(this); | ||
| 79 | + | ||
| 80 | + setFocus(); | ||
| 67 | 81 | ||
| 68 | - foreach (ConfigWidget w, configWidgets) | 82 | + afterThreeSecsTimer.start(); |
| 83 | +} | ||
| 84 | + | ||
| 85 | +AutoCookConfigWindow::~AutoCookConfigWindow() | ||
| 86 | +{ | ||
| 87 | + delete ui; | ||
| 88 | +} | ||
| 89 | + | ||
| 90 | +bool AutoCookConfigWindow::eventFilter(QObject */*watched*/, QEvent *event) | ||
| 91 | +{ | ||
| 92 | + switch (event->type()) | ||
| 69 | { | 93 | { |
| 70 | - connect(w.button, SIGNAL(pressed()), SLOT(stopTimer())); | ||
| 71 | - connect(w.button, SIGNAL(released()), SLOT(startTimer())); | ||
| 72 | - connect(w.slider, SIGNAL(sliderPressed()), SLOT(stopTimer())); | ||
| 73 | - connect(w.slider, SIGNAL(sliderReleased()), SLOT(startTimer())); | 94 | + case QEvent::KeyPress: |
| 95 | + case QEvent::KeyRelease: | ||
| 96 | + case QEvent::MouseButtonPress: | ||
| 97 | + case QEvent::MouseButtonRelease: | ||
| 98 | + case QEvent::MouseMove: | ||
| 99 | + afterThreeSecsTimer.start(); | ||
| 100 | + break; | ||
| 101 | + default: | ||
| 102 | + break; | ||
| 74 | } | 103 | } |
| 75 | 104 | ||
| 76 | - setupUi(); | 105 | + return false; |
| 106 | +} | ||
| 77 | 107 | ||
| 78 | - foreach (QPushButton *button, findChildren<QPushButton *>()) | 108 | +void AutoCookConfigWindow::keyPressEvent(QKeyEvent *event) |
| 109 | +{ | ||
| 110 | + switch (event->key()) | ||
| 79 | { | 111 | { |
| 80 | - connect(button, &QPushButton::pressed, SoundPlayer::playClick); | 112 | + case 0x01000030: // Turn left |
| 113 | + onEncoderLeft(); | ||
| 114 | + break; | ||
| 115 | + case 0x01000031: // Push | ||
| 116 | + pushed = focusWidget(); | ||
| 117 | + break; | ||
| 118 | + case 0x01000032: // Turn right | ||
| 119 | + onEncoderRight(); | ||
| 120 | + break; | ||
| 81 | } | 121 | } |
| 122 | +} | ||
| 82 | 123 | ||
| 83 | - startTimer(); | 124 | +void AutoCookConfigWindow::keyReleaseEvent(QKeyEvent *event) |
| 125 | +{ | ||
| 126 | + switch (event->key()) | ||
| 127 | + { | ||
| 128 | + case 0x01000030: // Turn left | ||
| 129 | + onEncoderLeft(); | ||
| 130 | + break; | ||
| 131 | + case 0x01000031: // Push | ||
| 132 | + if (focusWidget() == pushed) | ||
| 133 | + onEncoderClicked(pushed); | ||
| 134 | + | ||
| 135 | + pushed = NULL; | ||
| 136 | + break; | ||
| 137 | + case 0x01000032: // Turn right | ||
| 138 | + onEncoderRight(); | ||
| 139 | + break; | ||
| 140 | + } | ||
| 84 | } | 141 | } |
| 85 | 142 | ||
| 86 | -AutoCookConfigWindow::~AutoCookConfigWindow() | 143 | +void AutoCookConfigWindow::afterThreeSecs() |
| 87 | { | 144 | { |
| 88 | - delete ui; | 145 | + Slider *slider = qobject_cast<Slider *>(focusWidget()); |
| 146 | + if (slider) | ||
| 147 | + { | ||
| 148 | + if (slider == ui->configSlider_1) | ||
| 149 | + ui->configButton_1->setFocus(); | ||
| 150 | + else if (slider == ui->configSlider_2) | ||
| 151 | + ui->configButton_2->setFocus(); | ||
| 152 | + else if (slider == ui->configSlider_3) | ||
| 153 | + ui->configButton_3->setFocus(); | ||
| 154 | + else if (slider == ui->configSlider_4) | ||
| 155 | + ui->configButton_4->setFocus(); | ||
| 156 | + else if (slider == ui->configSlider_5) | ||
| 157 | + ui->configButton_5->setFocus(); | ||
| 158 | + | ||
| 159 | + afterThreeSecsTimer.start(); | ||
| 160 | + } | ||
| 161 | + else | ||
| 162 | + start(); | ||
| 163 | +} | ||
| 164 | + | ||
| 165 | +void AutoCookConfigWindow::onEncoderLeft() | ||
| 166 | +{ | ||
| 167 | + focusPreviousChild(); | ||
| 168 | +} | ||
| 169 | + | ||
| 170 | +void AutoCookConfigWindow::onEncoderRight() | ||
| 171 | +{ | ||
| 172 | + focusNextChild(); | ||
| 173 | +} | ||
| 174 | + | ||
| 175 | +void AutoCookConfigWindow::onEncoderClicked(QWidget *clicked) | ||
| 176 | +{ | ||
| 177 | + if (clicked == NULL) | ||
| 178 | + return; | ||
| 179 | + | ||
| 180 | + if (clicked->inherits("QPushButton")) | ||
| 181 | + { | ||
| 182 | + QPushButton *pb = qobject_cast<QPushButton *>(clicked); | ||
| 183 | + if (pb) | ||
| 184 | + pb->click(); | ||
| 185 | + } | ||
| 186 | + else if (clicked->inherits("Slider")) | ||
| 187 | + { | ||
| 188 | + Slider *slider = qobject_cast<Slider *>(clicked); | ||
| 189 | + if (slider) | ||
| 190 | + { | ||
| 191 | + if (slider == ui->configSlider_1) | ||
| 192 | + ui->configButton_1->setFocus(); | ||
| 193 | + else if (slider == ui->configSlider_2) | ||
| 194 | + ui->configButton_2->setFocus(); | ||
| 195 | + else if (slider == ui->configSlider_3) | ||
| 196 | + ui->configButton_3->setFocus(); | ||
| 197 | + else if (slider == ui->configSlider_4) | ||
| 198 | + ui->configButton_4->setFocus(); | ||
| 199 | + else if (slider == ui->configSlider_5) | ||
| 200 | + ui->configButton_5->setFocus(); | ||
| 201 | + } | ||
| 202 | + } | ||
| 89 | } | 203 | } |
| 90 | 204 | ||
| 91 | void AutoCookConfigWindow::setupUi() | 205 | void AutoCookConfigWindow::setupUi() |
| @@ -111,7 +225,7 @@ void AutoCookConfigWindow::setupUi() | @@ -111,7 +225,7 @@ void AutoCookConfigWindow::setupUi() | ||
| 111 | cw.button->setStyleSheet( | 225 | cw.button->setStyleSheet( |
| 112 | "QPushButton { image: url(" | 226 | "QPushButton { image: url(" |
| 113 | + Define::icon(config.type) | 227 | + Define::icon(config.type) |
| 114 | - + ") } QPushButton::pressed { image: url(" | 228 | + + ") } QPushButton:pressed, QPushButton:focus { image: url(" |
| 115 | + Define::iconOverlay(config.type) | 229 | + Define::iconOverlay(config.type) |
| 116 | + ") }"); | 230 | + ") }"); |
| 117 | 231 | ||
| @@ -187,16 +301,6 @@ void AutoCookConfigWindow::updateConfig() | @@ -187,16 +301,6 @@ void AutoCookConfigWindow::updateConfig() | ||
| 187 | updateView(); | 301 | updateView(); |
| 188 | } | 302 | } |
| 189 | 303 | ||
| 190 | -void AutoCookConfigWindow::startTimer() | ||
| 191 | -{ | ||
| 192 | - cookStartTimer.start(); | ||
| 193 | -} | ||
| 194 | - | ||
| 195 | -void AutoCookConfigWindow::stopTimer() | ||
| 196 | -{ | ||
| 197 | - cookStartTimer.stop(); | ||
| 198 | -} | ||
| 199 | - | ||
| 200 | void AutoCookConfigWindow::start() | 304 | void AutoCookConfigWindow::start() |
| 201 | { | 305 | { |
| 202 | AutoCookWindow *w = new AutoCookWindow(parentWidget(), cook); | 306 | AutoCookWindow *w = new AutoCookWindow(parentWidget(), cook); |
| @@ -204,7 +308,7 @@ void AutoCookConfigWindow::start() | @@ -204,7 +308,7 @@ void AutoCookConfigWindow::start() | ||
| 204 | w->showFullScreen(); | 308 | w->showFullScreen(); |
| 205 | w->raise(); | 309 | w->raise(); |
| 206 | 310 | ||
| 207 | - connect(w, SIGNAL(back()), SLOT(startTimer())); | 311 | + connect(w, SIGNAL(back()), &afterThreeSecsTimer, SLOT(start())); |
| 208 | } | 312 | } |
| 209 | 313 | ||
| 210 | void AutoCookConfigWindow::addFavorite() | 314 | void AutoCookConfigWindow::addFavorite() |
| @@ -241,10 +345,10 @@ void AutoCookConfigWindow::on_favoritesButton_clicked() | @@ -241,10 +345,10 @@ void AutoCookConfigWindow::on_favoritesButton_clicked() | ||
| 241 | 345 | ||
| 242 | connect(p, SIGNAL(accepted()), SLOT(addFavorite())); | 346 | connect(p, SIGNAL(accepted()), SLOT(addFavorite())); |
| 243 | 347 | ||
| 244 | - if (cookStartTimer.isActive()) | 348 | + if (afterThreeSecsTimer.isActive()) |
| 245 | { | 349 | { |
| 246 | - cookStartTimer.stop(); | ||
| 247 | - connect(p, SIGNAL(rejected()), &cookStartTimer, SLOT(start())); | 350 | + afterThreeSecsTimer.stop(); |
| 351 | + connect(p, SIGNAL(rejected()), &afterThreeSecsTimer, SLOT(start())); | ||
| 248 | } | 352 | } |
| 249 | } | 353 | } |
| 250 | 354 | ||
| @@ -257,3 +361,28 @@ void AutoCookConfigWindow::on_washButton_clicked() | @@ -257,3 +361,28 @@ void AutoCookConfigWindow::on_washButton_clicked() | ||
| 257 | 361 | ||
| 258 | MainWindow::jump(w); | 362 | MainWindow::jump(w); |
| 259 | } | 363 | } |
| 364 | + | ||
| 365 | +void AutoCookConfigWindow::on_configButton_1_clicked() | ||
| 366 | +{ | ||
| 367 | + ui->configSlider_1->setFocus(); | ||
| 368 | +} | ||
| 369 | + | ||
| 370 | +void AutoCookConfigWindow::on_configButton_2_clicked() | ||
| 371 | +{ | ||
| 372 | + ui->configSlider_2->setFocus(); | ||
| 373 | +} | ||
| 374 | + | ||
| 375 | +void AutoCookConfigWindow::on_configButton_3_clicked() | ||
| 376 | +{ | ||
| 377 | + ui->configSlider_3->setFocus(); | ||
| 378 | +} | ||
| 379 | + | ||
| 380 | +void AutoCookConfigWindow::on_configButton_4_clicked() | ||
| 381 | +{ | ||
| 382 | + ui->configSlider_4->setFocus(); | ||
| 383 | +} | ||
| 384 | + | ||
| 385 | +void AutoCookConfigWindow::on_configButton_5_clicked() | ||
| 386 | +{ | ||
| 387 | + ui->configSlider_5->setFocus(); | ||
| 388 | +} |
app/gui/oven_control/autocookconfigwindow.h
| @@ -24,13 +24,17 @@ public: | @@ -24,13 +24,17 @@ public: | ||
| 24 | explicit AutoCookConfigWindow(QWidget *parent, Cook cook); | 24 | explicit AutoCookConfigWindow(QWidget *parent, Cook cook); |
| 25 | ~AutoCookConfigWindow(); | 25 | ~AutoCookConfigWindow(); |
| 26 | 26 | ||
| 27 | + bool eventFilter(QObject *watched, QEvent *event); | ||
| 28 | + | ||
| 29 | +protected: | ||
| 30 | + void keyPressEvent(QKeyEvent *event); | ||
| 31 | + void keyReleaseEvent(QKeyEvent *event); | ||
| 32 | + | ||
| 27 | private: | 33 | private: |
| 28 | Ui::AutoCookConfigWindow *ui; | 34 | Ui::AutoCookConfigWindow *ui; |
| 29 | Oven *oven; | 35 | Oven *oven; |
| 30 | Cook cook; | 36 | Cook cook; |
| 31 | 37 | ||
| 32 | - QTimer cookStartTimer; | ||
| 33 | - | ||
| 34 | struct ConfigWidget { | 38 | struct ConfigWidget { |
| 35 | QPushButton *button; | 39 | QPushButton *button; |
| 36 | QLabel *minimum; | 40 | QLabel *minimum; |
| @@ -41,19 +45,31 @@ private: | @@ -41,19 +45,31 @@ private: | ||
| 41 | 45 | ||
| 42 | QList<ConfigWidget> configWidgets; | 46 | QList<ConfigWidget> configWidgets; |
| 43 | 47 | ||
| 48 | + QTimer afterThreeSecsTimer; | ||
| 49 | + | ||
| 50 | + QWidget *pushed = NULL; | ||
| 51 | + | ||
| 52 | + void onEncoderLeft(); | ||
| 53 | + void onEncoderRight(); | ||
| 54 | + void onEncoderClicked(QWidget *clicked); | ||
| 55 | + | ||
| 44 | private slots: | 56 | private slots: |
| 45 | void setupUi(); | 57 | void setupUi(); |
| 46 | void updateView(); | 58 | void updateView(); |
| 47 | void updateConfig(); | 59 | void updateConfig(); |
| 48 | - void startTimer(); | ||
| 49 | - void stopTimer(); | ||
| 50 | void start(); | 60 | void start(); |
| 51 | void addFavorite(); | 61 | void addFavorite(); |
| 62 | + void afterThreeSecs(); | ||
| 52 | 63 | ||
| 53 | void on_backButton_clicked(); | 64 | void on_backButton_clicked(); |
| 54 | void on_configButton_clicked(); | 65 | void on_configButton_clicked(); |
| 55 | void on_favoritesButton_clicked(); | 66 | void on_favoritesButton_clicked(); |
| 56 | void on_washButton_clicked(); | 67 | void on_washButton_clicked(); |
| 68 | + void on_configButton_1_clicked(); | ||
| 69 | + void on_configButton_2_clicked(); | ||
| 70 | + void on_configButton_3_clicked(); | ||
| 71 | + void on_configButton_4_clicked(); | ||
| 72 | + void on_configButton_5_clicked(); | ||
| 57 | }; | 73 | }; |
| 58 | 74 | ||
| 59 | #endif // AUTOCOOKCONFIGWINDOW_H | 75 | #endif // AUTOCOOKCONFIGWINDOW_H |
app/gui/oven_control/autocookconfigwindow.ui
| @@ -124,7 +124,7 @@ border: none; | @@ -124,7 +124,7 @@ border: none; | ||
| 124 | </property> | 124 | </property> |
| 125 | <property name="styleSheet"> | 125 | <property name="styleSheet"> |
| 126 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/back.png); } | 126 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/back.png); } |
| 127 | -QPushButton:pressed { border-image: url(:/images/bottom_bar/back_ov.png); }</string> | 127 | +QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/back_ov.png); }</string> |
| 128 | </property> | 128 | </property> |
| 129 | <property name="text"> | 129 | <property name="text"> |
| 130 | <string/> | 130 | <string/> |
| @@ -147,7 +147,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/back_ov.png); }</str | @@ -147,7 +147,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/back_ov.png); }</str | ||
| 147 | </property> | 147 | </property> |
| 148 | <property name="styleSheet"> | 148 | <property name="styleSheet"> |
| 149 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/wash.png); } | 149 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/wash.png); } |
| 150 | -QPushButton:pressed { border-image: url(:/images/bottom_bar/wash_ov.png); }</string> | 150 | +QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/wash_ov.png); }</string> |
| 151 | </property> | 151 | </property> |
| 152 | <property name="text"> | 152 | <property name="text"> |
| 153 | <string/> | 153 | <string/> |
| @@ -170,7 +170,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/wash_ov.png); }</str | @@ -170,7 +170,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/wash_ov.png); }</str | ||
| 170 | </property> | 170 | </property> |
| 171 | <property name="styleSheet"> | 171 | <property name="styleSheet"> |
| 172 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/config.png); } | 172 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/config.png); } |
| 173 | -QPushButton:pressed { border-image: url(:/images/bottom_bar/config_ov.png); }</string> | 173 | +QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/config_ov.png); }</string> |
| 174 | </property> | 174 | </property> |
| 175 | <property name="text"> | 175 | <property name="text"> |
| 176 | <string/> | 176 | <string/> |
| @@ -193,7 +193,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/config_ov.png); }</s | @@ -193,7 +193,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/config_ov.png); }</s | ||
| 193 | </property> | 193 | </property> |
| 194 | <property name="styleSheet"> | 194 | <property name="styleSheet"> |
| 195 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/help.png); } | 195 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/help.png); } |
| 196 | -QPushButton:pressed { border-image: url(:/images/bottom_bar/help_ov.png); }</string> | 196 | +QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/help_ov.png); }</string> |
| 197 | </property> | 197 | </property> |
| 198 | <property name="text"> | 198 | <property name="text"> |
| 199 | <string/> | 199 | <string/> |
| @@ -216,7 +216,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/help_ov.png); }</str | @@ -216,7 +216,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/help_ov.png); }</str | ||
| 216 | </property> | 216 | </property> |
| 217 | <property name="styleSheet"> | 217 | <property name="styleSheet"> |
| 218 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/favorites.png); } | 218 | <string notr="true">QPushButton { border-image: url(:/images/bottom_bar/favorites.png); } |
| 219 | -QPushButton:pressed { border-image: url(:/images/bottom_bar/favorites_ov.png); }</string> | 219 | +QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/favorites_ov.png); }</string> |
| 220 | </property> | 220 | </property> |
| 221 | <property name="text"> | 221 | <property name="text"> |
| 222 | <string/> | 222 | <string/> |
| @@ -368,7 +368,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/favorites_ov.png); } | @@ -368,7 +368,7 @@ QPushButton:pressed { border-image: url(:/images/bottom_bar/favorites_ov.png); } | ||
| 368 | <string notr="true">QPushButton { | 368 | <string notr="true">QPushButton { |
| 369 | border-image: url(:/images/button/288.png); | 369 | border-image: url(:/images/button/288.png); |
| 370 | } | 370 | } |
| 371 | -QPushButton::pressed { | 371 | +QPushButton::pressed, QPushButton:focus { |
| 372 | border-image: url(:/images/button/288_ov.png); | 372 | border-image: url(:/images/button/288_ov.png); |
| 373 | }</string> | 373 | }</string> |
| 374 | </property> | 374 | </property> |
| @@ -639,7 +639,7 @@ border-image: url(:/images/button/288_ov.png); | @@ -639,7 +639,7 @@ border-image: url(:/images/button/288_ov.png); | ||
| 639 | <string notr="true">QPushButton { | 639 | <string notr="true">QPushButton { |
| 640 | border-image: url(:/images/button/152.png); | 640 | border-image: url(:/images/button/152.png); |
| 641 | } | 641 | } |
| 642 | -QPushButton::pressed { | 642 | +QPushButton::pressed, QPushButton:focus { |
| 643 | border-image: url(:/images/button/152_ov.png); | 643 | border-image: url(:/images/button/152_ov.png); |
| 644 | }</string> | 644 | }</string> |
| 645 | </property> | 645 | </property> |
| @@ -1326,51 +1326,66 @@ border-image: url(:/images/button/152_ov.png); | @@ -1326,51 +1326,66 @@ border-image: url(:/images/button/152_ov.png); | ||
| 1326 | <property name="geometry"> | 1326 | <property name="geometry"> |
| 1327 | <rect> | 1327 | <rect> |
| 1328 | <x>185</x> | 1328 | <x>185</x> |
| 1329 | - <y>605</y> | 1329 | + <y>645</y> |
| 1330 | <width>666</width> | 1330 | <width>666</width> |
| 1331 | - <height>140</height> | 1331 | + <height>60</height> |
| 1332 | </rect> | 1332 | </rect> |
| 1333 | </property> | 1333 | </property> |
| 1334 | + <property name="focusPolicy"> | ||
| 1335 | + <enum>Qt::ClickFocus</enum> | ||
| 1336 | + </property> | ||
| 1334 | </widget> | 1337 | </widget> |
| 1335 | <widget class="Slider" name="configSlider_2" native="true"> | 1338 | <widget class="Slider" name="configSlider_2" native="true"> |
| 1336 | <property name="geometry"> | 1339 | <property name="geometry"> |
| 1337 | <rect> | 1340 | <rect> |
| 1338 | <x>185</x> | 1341 | <x>185</x> |
| 1339 | - <y>765</y> | 1342 | + <y>805</y> |
| 1340 | <width>666</width> | 1343 | <width>666</width> |
| 1341 | - <height>140</height> | 1344 | + <height>60</height> |
| 1342 | </rect> | 1345 | </rect> |
| 1343 | </property> | 1346 | </property> |
| 1347 | + <property name="focusPolicy"> | ||
| 1348 | + <enum>Qt::ClickFocus</enum> | ||
| 1349 | + </property> | ||
| 1344 | </widget> | 1350 | </widget> |
| 1345 | <widget class="Slider" name="configSlider_3" native="true"> | 1351 | <widget class="Slider" name="configSlider_3" native="true"> |
| 1346 | <property name="geometry"> | 1352 | <property name="geometry"> |
| 1347 | <rect> | 1353 | <rect> |
| 1348 | <x>185</x> | 1354 | <x>185</x> |
| 1349 | - <y>935</y> | 1355 | + <y>975</y> |
| 1350 | <width>666</width> | 1356 | <width>666</width> |
| 1351 | - <height>140</height> | 1357 | + <height>60</height> |
| 1352 | </rect> | 1358 | </rect> |
| 1353 | </property> | 1359 | </property> |
| 1360 | + <property name="focusPolicy"> | ||
| 1361 | + <enum>Qt::ClickFocus</enum> | ||
| 1362 | + </property> | ||
| 1354 | </widget> | 1363 | </widget> |
| 1355 | <widget class="Slider" name="configSlider_4" native="true"> | 1364 | <widget class="Slider" name="configSlider_4" native="true"> |
| 1356 | <property name="geometry"> | 1365 | <property name="geometry"> |
| 1357 | <rect> | 1366 | <rect> |
| 1358 | <x>185</x> | 1367 | <x>185</x> |
| 1359 | - <y>1115</y> | 1368 | + <y>1155</y> |
| 1360 | <width>666</width> | 1369 | <width>666</width> |
| 1361 | - <height>140</height> | 1370 | + <height>60</height> |
| 1362 | </rect> | 1371 | </rect> |
| 1363 | </property> | 1372 | </property> |
| 1373 | + <property name="focusPolicy"> | ||
| 1374 | + <enum>Qt::ClickFocus</enum> | ||
| 1375 | + </property> | ||
| 1364 | </widget> | 1376 | </widget> |
| 1365 | <widget class="Slider" name="configSlider_5" native="true"> | 1377 | <widget class="Slider" name="configSlider_5" native="true"> |
| 1366 | <property name="geometry"> | 1378 | <property name="geometry"> |
| 1367 | <rect> | 1379 | <rect> |
| 1368 | <x>185</x> | 1380 | <x>185</x> |
| 1369 | - <y>1285</y> | 1381 | + <y>1325</y> |
| 1370 | <width>666</width> | 1382 | <width>666</width> |
| 1371 | - <height>140</height> | 1383 | + <height>60</height> |
| 1372 | </rect> | 1384 | </rect> |
| 1373 | </property> | 1385 | </property> |
| 1386 | + <property name="focusPolicy"> | ||
| 1387 | + <enum>Qt::ClickFocus</enum> | ||
| 1388 | + </property> | ||
| 1374 | </widget> | 1389 | </widget> |
| 1375 | </widget> | 1390 | </widget> |
| 1376 | </widget> | 1391 | </widget> |
| @@ -1393,6 +1408,20 @@ border-image: url(:/images/button/152_ov.png); | @@ -1393,6 +1408,20 @@ border-image: url(:/images/button/152_ov.png); | ||
| 1393 | <container>1</container> | 1408 | <container>1</container> |
| 1394 | </customwidget> | 1409 | </customwidget> |
| 1395 | </customwidgets> | 1410 | </customwidgets> |
| 1411 | + <tabstops> | ||
| 1412 | + <tabstop>selectCookButton</tabstop> | ||
| 1413 | + <tabstop>pushButton_4</tabstop> | ||
| 1414 | + <tabstop>configButton_1</tabstop> | ||
| 1415 | + <tabstop>configButton_2</tabstop> | ||
| 1416 | + <tabstop>configButton_3</tabstop> | ||
| 1417 | + <tabstop>configButton_4</tabstop> | ||
| 1418 | + <tabstop>configButton_5</tabstop> | ||
| 1419 | + <tabstop>backButton</tabstop> | ||
| 1420 | + <tabstop>configButton</tabstop> | ||
| 1421 | + <tabstop>favoritesButton</tabstop> | ||
| 1422 | + <tabstop>washButton</tabstop> | ||
| 1423 | + <tabstop>helpButton</tabstop> | ||
| 1424 | + </tabstops> | ||
| 1396 | <resources> | 1425 | <resources> |
| 1397 | <include location="resources.qrc"/> | 1426 | <include location="resources.qrc"/> |
| 1398 | </resources> | 1427 | </resources> |