Commit 935b853a430a8b7f4728a3f878b0850bfbff9d99
1 parent
3d5fe11870
Exists in
master
and in
2 other branches
새 슬라이더 적용
Showing
13 changed files
with
302 additions
and
423 deletions
Show diff stats
app/gui/oven_control/autocookconfigwindow.cpp
@@ -117,29 +117,31 @@ void AutoCookConfigWindow::setupUi() | @@ -117,29 +117,31 @@ void AutoCookConfigWindow::setupUi() | ||
117 | 117 | ||
118 | cw.minimum->setText(Define::minimum(config.type)); | 118 | cw.minimum->setText(Define::minimum(config.type)); |
119 | cw.maximum->setText(Define::maximum(config.type)); | 119 | cw.maximum->setText(Define::maximum(config.type)); |
120 | - cw.slider->blockSignals(true); | ||
121 | - cw.slider->setMinimum(1); | ||
122 | - cw.slider->setMaximum(config.maximum); | ||
123 | - cw.slider->setValue(config.current); | ||
124 | - cw.slider->blockSignals(false); | ||
125 | 120 | ||
126 | switch (config.type) | 121 | switch (config.type) |
127 | { | 122 | { |
128 | case Define::Time: | 123 | case Define::Time: |
129 | - cw.slider->setProperty("sliderColor", "white"); | 124 | + cw.slider->setSubPixmap(":/images/slider/sub_white.png"); |
130 | break; | 125 | break; |
131 | case Define::BurnDegree: | 126 | case Define::BurnDegree: |
132 | - cw.slider->setProperty("sliderColor", "yellow"); | 127 | + cw.slider->setSubPixmap(":/images/slider/sub_yellow.png"); |
133 | break; | 128 | break; |
134 | case Define::Brightness: | 129 | case Define::Brightness: |
135 | - cw.slider->setProperty("sliderColor", "red"); | 130 | + cw.slider->setSubPixmap(":/images/slider/sub_red.png"); |
136 | break; | 131 | break; |
137 | default: | 132 | default: |
138 | - cw.slider->setProperty("sliderColor", "blue"); | 133 | + cw.slider->setSubPixmap(":/images/slider/sub_blue.png"); |
139 | break; | 134 | break; |
140 | } | 135 | } |
141 | 136 | ||
142 | - connect(cw.slider, SIGNAL(valueChanged(int)), SLOT(updateConfig())); | 137 | + cw.slider->blockSignals(true); |
138 | + cw.slider->setMinimum(1); | ||
139 | + cw.slider->setMaximum(config.maximum); | ||
140 | + cw.slider->setValue(config.current); | ||
141 | + cw.slider->blockSignals(false); | ||
142 | + cw.slider->bigTickInterval = 1; | ||
143 | + | ||
144 | + connect(cw.slider, SIGNAL(sliderMoved(int)), SLOT(updateConfig())); | ||
143 | } | 145 | } |
144 | } | 146 | } |
145 | 147 | ||
@@ -176,11 +178,11 @@ void AutoCookConfigWindow::updateView() | @@ -176,11 +178,11 @@ void AutoCookConfigWindow::updateView() | ||
176 | 178 | ||
177 | void AutoCookConfigWindow::updateConfig() | 179 | void AutoCookConfigWindow::updateConfig() |
178 | { | 180 | { |
179 | - cook.setConfig(ui->configSlider_1->value(), | ||
180 | - ui->configSlider_2->value(), | ||
181 | - ui->configSlider_3->value(), | ||
182 | - ui->configSlider_4->value(), | ||
183 | - ui->configSlider_5->value()); | 181 | + cook.setConfig(ui->configSlider_1->sliderPosition(), |
182 | + ui->configSlider_2->sliderPosition(), | ||
183 | + ui->configSlider_3->sliderPosition(), | ||
184 | + ui->configSlider_4->sliderPosition(), | ||
185 | + ui->configSlider_5->sliderPosition()); | ||
184 | 186 | ||
185 | updateView(); | 187 | updateView(); |
186 | } | 188 | } |
app/gui/oven_control/autocookconfigwindow.h
@@ -10,6 +10,7 @@ | @@ -10,6 +10,7 @@ | ||
10 | #include "oven.h" | 10 | #include "oven.h" |
11 | //#include "cook.h" | 11 | //#include "cook.h" |
12 | #include "cookbook.h" | 12 | #include "cookbook.h" |
13 | +#include "slider.h" | ||
13 | 14 | ||
14 | namespace Ui { | 15 | namespace Ui { |
15 | class AutoCookConfigWindow; | 16 | class AutoCookConfigWindow; |
@@ -35,7 +36,7 @@ private: | @@ -35,7 +36,7 @@ private: | ||
35 | QLabel *minimum; | 36 | QLabel *minimum; |
36 | QLabel *maximum; | 37 | QLabel *maximum; |
37 | QLabel *current; | 38 | QLabel *current; |
38 | - QSlider *slider; | 39 | + Slider *slider; |
39 | }; | 40 | }; |
40 | 41 | ||
41 | QList<ConfigWidget> configWidgets; | 42 | QList<ConfigWidget> configWidgets; |
app/gui/oven_control/autocookconfigwindow.ui
@@ -673,31 +673,6 @@ border-image: url(:/images/button/152_ov.png); | @@ -673,31 +673,6 @@ border-image: url(:/images/button/152_ov.png); | ||
673 | <string notr="true">icon</string> | 673 | <string notr="true">icon</string> |
674 | </property> | 674 | </property> |
675 | </widget> | 675 | </widget> |
676 | - <widget class="QSlider" name="configSlider_4"> | ||
677 | - <property name="geometry"> | ||
678 | - <rect> | ||
679 | - <x>185</x> | ||
680 | - <y>1173</y> | ||
681 | - <width>666</width> | ||
682 | - <height>33</height> | ||
683 | - </rect> | ||
684 | - </property> | ||
685 | - <property name="maximum"> | ||
686 | - <number>100</number> | ||
687 | - </property> | ||
688 | - <property name="pageStep"> | ||
689 | - <number>1</number> | ||
690 | - </property> | ||
691 | - <property name="value"> | ||
692 | - <number>0</number> | ||
693 | - </property> | ||
694 | - <property name="tracking"> | ||
695 | - <bool>true</bool> | ||
696 | - </property> | ||
697 | - <property name="orientation"> | ||
698 | - <enum>Qt::Horizontal</enum> | ||
699 | - </property> | ||
700 | - </widget> | ||
701 | <widget class="QPushButton" name="configButton_4"> | 676 | <widget class="QPushButton" name="configButton_4"> |
702 | <property name="geometry"> | 677 | <property name="geometry"> |
703 | <rect> | 678 | <rect> |
@@ -776,31 +751,6 @@ border-image: url(:/images/button/152_ov.png); | @@ -776,31 +751,6 @@ border-image: url(:/images/button/152_ov.png); | ||
776 | <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> | 751 | <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> |
777 | </property> | 752 | </property> |
778 | </widget> | 753 | </widget> |
779 | - <widget class="QSlider" name="configSlider_2"> | ||
780 | - <property name="geometry"> | ||
781 | - <rect> | ||
782 | - <x>185</x> | ||
783 | - <y>823</y> | ||
784 | - <width>666</width> | ||
785 | - <height>33</height> | ||
786 | - </rect> | ||
787 | - </property> | ||
788 | - <property name="maximum"> | ||
789 | - <number>100</number> | ||
790 | - </property> | ||
791 | - <property name="pageStep"> | ||
792 | - <number>1</number> | ||
793 | - </property> | ||
794 | - <property name="value"> | ||
795 | - <number>10</number> | ||
796 | - </property> | ||
797 | - <property name="tracking"> | ||
798 | - <bool>true</bool> | ||
799 | - </property> | ||
800 | - <property name="orientation"> | ||
801 | - <enum>Qt::Horizontal</enum> | ||
802 | - </property> | ||
803 | - </widget> | ||
804 | <widget class="QLabel" name="configCurrentLabel_5"> | 754 | <widget class="QLabel" name="configCurrentLabel_5"> |
805 | <property name="enabled"> | 755 | <property name="enabled"> |
806 | <bool>true</bool> | 756 | <bool>true</bool> |
@@ -927,31 +877,6 @@ border-image: url(:/images/button/152_ov.png); | @@ -927,31 +877,6 @@ border-image: url(:/images/button/152_ov.png); | ||
927 | <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set> | 877 | <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set> |
928 | </property> | 878 | </property> |
929 | </widget> | 879 | </widget> |
930 | - <widget class="QSlider" name="configSlider_3"> | ||
931 | - <property name="geometry"> | ||
932 | - <rect> | ||
933 | - <x>185</x> | ||
934 | - <y>993</y> | ||
935 | - <width>666</width> | ||
936 | - <height>33</height> | ||
937 | - </rect> | ||
938 | - </property> | ||
939 | - <property name="maximum"> | ||
940 | - <number>100</number> | ||
941 | - </property> | ||
942 | - <property name="pageStep"> | ||
943 | - <number>1</number> | ||
944 | - </property> | ||
945 | - <property name="value"> | ||
946 | - <number>0</number> | ||
947 | - </property> | ||
948 | - <property name="tracking"> | ||
949 | - <bool>true</bool> | ||
950 | - </property> | ||
951 | - <property name="orientation"> | ||
952 | - <enum>Qt::Horizontal</enum> | ||
953 | - </property> | ||
954 | - </widget> | ||
955 | <widget class="QLabel" name="configMaxLabel_4"> | 880 | <widget class="QLabel" name="configMaxLabel_4"> |
956 | <property name="enabled"> | 881 | <property name="enabled"> |
957 | <bool>true</bool> | 882 | <bool>true</bool> |
@@ -1317,31 +1242,6 @@ border-image: url(:/images/button/152_ov.png); | @@ -1317,31 +1242,6 @@ border-image: url(:/images/button/152_ov.png); | ||
1317 | <string notr="true">icon</string> | 1242 | <string notr="true">icon</string> |
1318 | </property> | 1243 | </property> |
1319 | </widget> | 1244 | </widget> |
1320 | - <widget class="QSlider" name="configSlider_5"> | ||
1321 | - <property name="geometry"> | ||
1322 | - <rect> | ||
1323 | - <x>185</x> | ||
1324 | - <y>1343</y> | ||
1325 | - <width>666</width> | ||
1326 | - <height>33</height> | ||
1327 | - </rect> | ||
1328 | - </property> | ||
1329 | - <property name="maximum"> | ||
1330 | - <number>100</number> | ||
1331 | - </property> | ||
1332 | - <property name="pageStep"> | ||
1333 | - <number>1</number> | ||
1334 | - </property> | ||
1335 | - <property name="value"> | ||
1336 | - <number>0</number> | ||
1337 | - </property> | ||
1338 | - <property name="tracking"> | ||
1339 | - <bool>true</bool> | ||
1340 | - </property> | ||
1341 | - <property name="orientation"> | ||
1342 | - <enum>Qt::Horizontal</enum> | ||
1343 | - </property> | ||
1344 | - </widget> | ||
1345 | <widget class="QLabel" name="configCurrentLabel_4"> | 1245 | <widget class="QLabel" name="configCurrentLabel_4"> |
1346 | <property name="enabled"> | 1246 | <property name="enabled"> |
1347 | <bool>true</bool> | 1247 | <bool>true</bool> |
@@ -1422,35 +1322,54 @@ border-image: url(:/images/button/152_ov.png); | @@ -1422,35 +1322,54 @@ border-image: url(:/images/button/152_ov.png); | ||
1422 | <string notr="true">icon</string> | 1322 | <string notr="true">icon</string> |
1423 | </property> | 1323 | </property> |
1424 | </widget> | 1324 | </widget> |
1425 | - <widget class="QSlider" name="configSlider_1"> | 1325 | + <widget class="Slider" name="configSlider_1" native="true"> |
1426 | <property name="geometry"> | 1326 | <property name="geometry"> |
1427 | <rect> | 1327 | <rect> |
1428 | <x>185</x> | 1328 | <x>185</x> |
1429 | - <y>663</y> | 1329 | + <y>605</y> |
1430 | <width>666</width> | 1330 | <width>666</width> |
1431 | - <height>33</height> | 1331 | + <height>140</height> |
1432 | </rect> | 1332 | </rect> |
1433 | </property> | 1333 | </property> |
1434 | - <property name="maximum"> | ||
1435 | - <number>100</number> | ||
1436 | - </property> | ||
1437 | - <property name="pageStep"> | ||
1438 | - <number>1</number> | ||
1439 | - </property> | ||
1440 | - <property name="value"> | ||
1441 | - <number>39</number> | ||
1442 | - </property> | ||
1443 | - <property name="tracking"> | ||
1444 | - <bool>true</bool> | 1334 | + </widget> |
1335 | + <widget class="Slider" name="configSlider_2" native="true"> | ||
1336 | + <property name="geometry"> | ||
1337 | + <rect> | ||
1338 | + <x>185</x> | ||
1339 | + <y>765</y> | ||
1340 | + <width>666</width> | ||
1341 | + <height>140</height> | ||
1342 | + </rect> | ||
1445 | </property> | 1343 | </property> |
1446 | - <property name="orientation"> | ||
1447 | - <enum>Qt::Horizontal</enum> | 1344 | + </widget> |
1345 | + <widget class="Slider" name="configSlider_3" native="true"> | ||
1346 | + <property name="geometry"> | ||
1347 | + <rect> | ||
1348 | + <x>185</x> | ||
1349 | + <y>935</y> | ||
1350 | + <width>666</width> | ||
1351 | + <height>140</height> | ||
1352 | + </rect> | ||
1448 | </property> | 1353 | </property> |
1449 | - <property name="tickPosition"> | ||
1450 | - <enum>QSlider::TicksBelow</enum> | 1354 | + </widget> |
1355 | + <widget class="Slider" name="configSlider_4" native="true"> | ||
1356 | + <property name="geometry"> | ||
1357 | + <rect> | ||
1358 | + <x>185</x> | ||
1359 | + <y>1115</y> | ||
1360 | + <width>666</width> | ||
1361 | + <height>140</height> | ||
1362 | + </rect> | ||
1451 | </property> | 1363 | </property> |
1452 | - <property name="tickInterval"> | ||
1453 | - <number>1</number> | 1364 | + </widget> |
1365 | + <widget class="Slider" name="configSlider_5" native="true"> | ||
1366 | + <property name="geometry"> | ||
1367 | + <rect> | ||
1368 | + <x>185</x> | ||
1369 | + <y>1285</y> | ||
1370 | + <width>666</width> | ||
1371 | + <height>140</height> | ||
1372 | + </rect> | ||
1454 | </property> | 1373 | </property> |
1455 | </widget> | 1374 | </widget> |
1456 | </widget> | 1375 | </widget> |
@@ -1467,6 +1386,12 @@ border-image: url(:/images/button/152_ov.png); | @@ -1467,6 +1386,12 @@ border-image: url(:/images/button/152_ov.png); | ||
1467 | <extends>QLabel</extends> | 1386 | <extends>QLabel</extends> |
1468 | <header>washwarnicon.h</header> | 1387 | <header>washwarnicon.h</header> |
1469 | </customwidget> | 1388 | </customwidget> |
1389 | + <customwidget> | ||
1390 | + <class>Slider</class> | ||
1391 | + <extends>QWidget</extends> | ||
1392 | + <header>slider.h</header> | ||
1393 | + <container>1</container> | ||
1394 | + </customwidget> | ||
1470 | </customwidgets> | 1395 | </customwidgets> |
1471 | <resources> | 1396 | <resources> |
1472 | <include location="resources.qrc"/> | 1397 | <include location="resources.qrc"/> |
app/gui/oven_control/programmingautoconfigwindow.cpp
@@ -98,29 +98,31 @@ void ProgrammingAutoConfigWindow::setupUi() | @@ -98,29 +98,31 @@ void ProgrammingAutoConfigWindow::setupUi() | ||
98 | 98 | ||
99 | cw.minimum->setText(Define::minimum(config.type)); | 99 | cw.minimum->setText(Define::minimum(config.type)); |
100 | cw.maximum->setText(Define::maximum(config.type)); | 100 | cw.maximum->setText(Define::maximum(config.type)); |
101 | - cw.slider->blockSignals(true); | ||
102 | - cw.slider->setMinimum(1); | ||
103 | - cw.slider->setMaximum(config.maximum); | ||
104 | - cw.slider->setValue(config.current); | ||
105 | - cw.slider->blockSignals(false); | ||
106 | 101 | ||
107 | switch (config.type) | 102 | switch (config.type) |
108 | { | 103 | { |
109 | case Define::Time: | 104 | case Define::Time: |
110 | - cw.slider->setProperty("sliderColor", "white"); | 105 | + cw.slider->setSubPixmap(":/images/slider/sub_white.png"); |
111 | break; | 106 | break; |
112 | case Define::BurnDegree: | 107 | case Define::BurnDegree: |
113 | - cw.slider->setProperty("sliderColor", "yellow"); | 108 | + cw.slider->setSubPixmap(":/images/slider/sub_yellow.png"); |
114 | break; | 109 | break; |
115 | case Define::Brightness: | 110 | case Define::Brightness: |
116 | - cw.slider->setProperty("sliderColor", "red"); | 111 | + cw.slider->setSubPixmap(":/images/slider/sub_red.png"); |
117 | break; | 112 | break; |
118 | default: | 113 | default: |
119 | - cw.slider->setProperty("sliderColor", "blue"); | 114 | + cw.slider->setSubPixmap(":/images/slider/sub_blue.png"); |
120 | break; | 115 | break; |
121 | } | 116 | } |
122 | 117 | ||
123 | - connect(cw.slider, SIGNAL(valueChanged(int)), SLOT(updateConfig())); | 118 | + cw.slider->blockSignals(true); |
119 | + cw.slider->setMinimum(1); | ||
120 | + cw.slider->setMaximum(config.maximum); | ||
121 | + cw.slider->setValue(config.current); | ||
122 | + cw.slider->blockSignals(false); | ||
123 | + cw.slider->bigTickInterval = 1; | ||
124 | + | ||
125 | + connect(cw.slider, SIGNAL(sliderMoved(int)), SLOT(updateConfig())); | ||
124 | } | 126 | } |
125 | } | 127 | } |
126 | 128 | ||
@@ -157,11 +159,11 @@ void ProgrammingAutoConfigWindow::updateView() | @@ -157,11 +159,11 @@ void ProgrammingAutoConfigWindow::updateView() | ||
157 | 159 | ||
158 | void ProgrammingAutoConfigWindow::updateConfig() | 160 | void ProgrammingAutoConfigWindow::updateConfig() |
159 | { | 161 | { |
160 | - cook.setConfig(ui->configSlider_1->value(), | ||
161 | - ui->configSlider_2->value(), | ||
162 | - ui->configSlider_3->value(), | ||
163 | - ui->configSlider_4->value(), | ||
164 | - ui->configSlider_5->value()); | 162 | + cook.setConfig(ui->configSlider_1->sliderPosition(), |
163 | + ui->configSlider_2->sliderPosition(), | ||
164 | + ui->configSlider_3->sliderPosition(), | ||
165 | + ui->configSlider_4->sliderPosition(), | ||
166 | + ui->configSlider_5->sliderPosition()); | ||
165 | 167 | ||
166 | updateView(); | 168 | updateView(); |
167 | } | 169 | } |
app/gui/oven_control/programmingautoconfigwindow.h
@@ -7,6 +7,7 @@ | @@ -7,6 +7,7 @@ | ||
7 | #include <QSlider> | 7 | #include <QSlider> |
8 | 8 | ||
9 | #include "cookbook.h" | 9 | #include "cookbook.h" |
10 | +#include "slider.h" | ||
10 | 11 | ||
11 | namespace Ui { | 12 | namespace Ui { |
12 | class ProgrammingAutoConfigWindow; | 13 | class ProgrammingAutoConfigWindow; |
@@ -29,7 +30,7 @@ private: | @@ -29,7 +30,7 @@ private: | ||
29 | QLabel *minimum; | 30 | QLabel *minimum; |
30 | QLabel *maximum; | 31 | QLabel *maximum; |
31 | QLabel *current; | 32 | QLabel *current; |
32 | - QSlider *slider; | 33 | + Slider *slider; |
33 | }; | 34 | }; |
34 | 35 | ||
35 | QList<ConfigWidget> configWidgets; | 36 | QList<ConfigWidget> configWidgets; |
app/gui/oven_control/programmingautoconfigwindow.ui
@@ -405,37 +405,6 @@ border-image: url(:/images/button/152_ov.png); | @@ -405,37 +405,6 @@ border-image: url(:/images/button/152_ov.png); | ||
405 | <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> | 405 | <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> |
406 | </property> | 406 | </property> |
407 | </widget> | 407 | </widget> |
408 | - <widget class="QSlider" name="configSlider_1"> | ||
409 | - <property name="geometry"> | ||
410 | - <rect> | ||
411 | - <x>185</x> | ||
412 | - <y>663</y> | ||
413 | - <width>666</width> | ||
414 | - <height>33</height> | ||
415 | - </rect> | ||
416 | - </property> | ||
417 | - <property name="maximum"> | ||
418 | - <number>100</number> | ||
419 | - </property> | ||
420 | - <property name="pageStep"> | ||
421 | - <number>1</number> | ||
422 | - </property> | ||
423 | - <property name="value"> | ||
424 | - <number>39</number> | ||
425 | - </property> | ||
426 | - <property name="tracking"> | ||
427 | - <bool>true</bool> | ||
428 | - </property> | ||
429 | - <property name="orientation"> | ||
430 | - <enum>Qt::Horizontal</enum> | ||
431 | - </property> | ||
432 | - <property name="tickPosition"> | ||
433 | - <enum>QSlider::TicksBelow</enum> | ||
434 | - </property> | ||
435 | - <property name="tickInterval"> | ||
436 | - <number>1</number> | ||
437 | - </property> | ||
438 | - </widget> | ||
439 | <widget class="QLabel" name="configMinLabel_5"> | 408 | <widget class="QLabel" name="configMinLabel_5"> |
440 | <property name="enabled"> | 409 | <property name="enabled"> |
441 | <bool>true</bool> | 410 | <bool>true</bool> |
@@ -563,31 +532,6 @@ border-image: url(:/images/button/288_ov.png); | @@ -563,31 +532,6 @@ border-image: url(:/images/button/288_ov.png); | ||
563 | </widget> | 532 | </widget> |
564 | <widget class="QWidget" name="page_2"/> | 533 | <widget class="QWidget" name="page_2"/> |
565 | </widget> | 534 | </widget> |
566 | - <widget class="QSlider" name="configSlider_2"> | ||
567 | - <property name="geometry"> | ||
568 | - <rect> | ||
569 | - <x>185</x> | ||
570 | - <y>823</y> | ||
571 | - <width>666</width> | ||
572 | - <height>33</height> | ||
573 | - </rect> | ||
574 | - </property> | ||
575 | - <property name="maximum"> | ||
576 | - <number>100</number> | ||
577 | - </property> | ||
578 | - <property name="pageStep"> | ||
579 | - <number>1</number> | ||
580 | - </property> | ||
581 | - <property name="value"> | ||
582 | - <number>10</number> | ||
583 | - </property> | ||
584 | - <property name="tracking"> | ||
585 | - <bool>true</bool> | ||
586 | - </property> | ||
587 | - <property name="orientation"> | ||
588 | - <enum>Qt::Horizontal</enum> | ||
589 | - </property> | ||
590 | - </widget> | ||
591 | <widget class="QLabel" name="cookTypeIcon"> | 535 | <widget class="QLabel" name="cookTypeIcon"> |
592 | <property name="geometry"> | 536 | <property name="geometry"> |
593 | <rect> | 537 | <rect> |
@@ -623,31 +567,6 @@ border-image: url(:/images/button/288_ov.png); | @@ -623,31 +567,6 @@ border-image: url(:/images/button/288_ov.png); | ||
623 | <string notr="true">icon</string> | 567 | <string notr="true">icon</string> |
624 | </property> | 568 | </property> |
625 | </widget> | 569 | </widget> |
626 | - <widget class="QSlider" name="configSlider_4"> | ||
627 | - <property name="geometry"> | ||
628 | - <rect> | ||
629 | - <x>185</x> | ||
630 | - <y>1173</y> | ||
631 | - <width>666</width> | ||
632 | - <height>33</height> | ||
633 | - </rect> | ||
634 | - </property> | ||
635 | - <property name="maximum"> | ||
636 | - <number>100</number> | ||
637 | - </property> | ||
638 | - <property name="pageStep"> | ||
639 | - <number>1</number> | ||
640 | - </property> | ||
641 | - <property name="value"> | ||
642 | - <number>0</number> | ||
643 | - </property> | ||
644 | - <property name="tracking"> | ||
645 | - <bool>true</bool> | ||
646 | - </property> | ||
647 | - <property name="orientation"> | ||
648 | - <enum>Qt::Horizontal</enum> | ||
649 | - </property> | ||
650 | - </widget> | ||
651 | <widget class="QLabel" name="configMinLabel_2"> | 570 | <widget class="QLabel" name="configMinLabel_2"> |
652 | <property name="enabled"> | 571 | <property name="enabled"> |
653 | <bool>true</bool> | 572 | <bool>true</bool> |
@@ -726,31 +645,6 @@ border-image: url(:/images/button/288_ov.png); | @@ -726,31 +645,6 @@ border-image: url(:/images/button/288_ov.png); | ||
726 | <string notr="true">icon</string> | 645 | <string notr="true">icon</string> |
727 | </property> | 646 | </property> |
728 | </widget> | 647 | </widget> |
729 | - <widget class="QSlider" name="configSlider_3"> | ||
730 | - <property name="geometry"> | ||
731 | - <rect> | ||
732 | - <x>185</x> | ||
733 | - <y>993</y> | ||
734 | - <width>666</width> | ||
735 | - <height>33</height> | ||
736 | - </rect> | ||
737 | - </property> | ||
738 | - <property name="maximum"> | ||
739 | - <number>100</number> | ||
740 | - </property> | ||
741 | - <property name="pageStep"> | ||
742 | - <number>1</number> | ||
743 | - </property> | ||
744 | - <property name="value"> | ||
745 | - <number>0</number> | ||
746 | - </property> | ||
747 | - <property name="tracking"> | ||
748 | - <bool>true</bool> | ||
749 | - </property> | ||
750 | - <property name="orientation"> | ||
751 | - <enum>Qt::Horizontal</enum> | ||
752 | - </property> | ||
753 | - </widget> | ||
754 | <widget class="QLabel" name="configCurrentLabel_4"> | 648 | <widget class="QLabel" name="configCurrentLabel_4"> |
755 | <property name="enabled"> | 649 | <property name="enabled"> |
756 | <bool>true</bool> | 650 | <bool>true</bool> |
@@ -1123,31 +1017,6 @@ QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/c | @@ -1123,31 +1017,6 @@ QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/c | ||
1123 | <string notr="true">icon</string> | 1017 | <string notr="true">icon</string> |
1124 | </property> | 1018 | </property> |
1125 | </widget> | 1019 | </widget> |
1126 | - <widget class="QSlider" name="configSlider_5"> | ||
1127 | - <property name="geometry"> | ||
1128 | - <rect> | ||
1129 | - <x>185</x> | ||
1130 | - <y>1343</y> | ||
1131 | - <width>666</width> | ||
1132 | - <height>33</height> | ||
1133 | - </rect> | ||
1134 | - </property> | ||
1135 | - <property name="maximum"> | ||
1136 | - <number>100</number> | ||
1137 | - </property> | ||
1138 | - <property name="pageStep"> | ||
1139 | - <number>1</number> | ||
1140 | - </property> | ||
1141 | - <property name="value"> | ||
1142 | - <number>0</number> | ||
1143 | - </property> | ||
1144 | - <property name="tracking"> | ||
1145 | - <bool>true</bool> | ||
1146 | - </property> | ||
1147 | - <property name="orientation"> | ||
1148 | - <enum>Qt::Horizontal</enum> | ||
1149 | - </property> | ||
1150 | - </widget> | ||
1151 | <widget class="QLabel" name="configMaxLabel_3"> | 1020 | <widget class="QLabel" name="configMaxLabel_3"> |
1152 | <property name="enabled"> | 1021 | <property name="enabled"> |
1153 | <bool>true</bool> | 1022 | <bool>true</bool> |
@@ -1430,6 +1299,56 @@ QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/c | @@ -1430,6 +1299,56 @@ QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/c | ||
1430 | <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> | 1299 | <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> |
1431 | </property> | 1300 | </property> |
1432 | </widget> | 1301 | </widget> |
1302 | + <widget class="Slider" name="configSlider_4" native="true"> | ||
1303 | + <property name="geometry"> | ||
1304 | + <rect> | ||
1305 | + <x>185</x> | ||
1306 | + <y>1115</y> | ||
1307 | + <width>666</width> | ||
1308 | + <height>140</height> | ||
1309 | + </rect> | ||
1310 | + </property> | ||
1311 | + </widget> | ||
1312 | + <widget class="Slider" name="configSlider_3" native="true"> | ||
1313 | + <property name="geometry"> | ||
1314 | + <rect> | ||
1315 | + <x>185</x> | ||
1316 | + <y>935</y> | ||
1317 | + <width>666</width> | ||
1318 | + <height>140</height> | ||
1319 | + </rect> | ||
1320 | + </property> | ||
1321 | + </widget> | ||
1322 | + <widget class="Slider" name="configSlider_2" native="true"> | ||
1323 | + <property name="geometry"> | ||
1324 | + <rect> | ||
1325 | + <x>185</x> | ||
1326 | + <y>765</y> | ||
1327 | + <width>666</width> | ||
1328 | + <height>140</height> | ||
1329 | + </rect> | ||
1330 | + </property> | ||
1331 | + </widget> | ||
1332 | + <widget class="Slider" name="configSlider_5" native="true"> | ||
1333 | + <property name="geometry"> | ||
1334 | + <rect> | ||
1335 | + <x>185</x> | ||
1336 | + <y>1285</y> | ||
1337 | + <width>666</width> | ||
1338 | + <height>140</height> | ||
1339 | + </rect> | ||
1340 | + </property> | ||
1341 | + </widget> | ||
1342 | + <widget class="Slider" name="configSlider_1" native="true"> | ||
1343 | + <property name="geometry"> | ||
1344 | + <rect> | ||
1345 | + <x>185</x> | ||
1346 | + <y>605</y> | ||
1347 | + <width>666</width> | ||
1348 | + <height>140</height> | ||
1349 | + </rect> | ||
1350 | + </property> | ||
1351 | + </widget> | ||
1433 | </widget> | 1352 | </widget> |
1434 | </widget> | 1353 | </widget> |
1435 | <customwidgets> | 1354 | <customwidgets> |
@@ -1444,6 +1363,12 @@ QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/c | @@ -1444,6 +1363,12 @@ QPushButton:pressed, QPushButton:focus { border-image: url(:/images/bottom_bar/c | ||
1444 | <extends>QLabel</extends> | 1363 | <extends>QLabel</extends> |
1445 | <header>washwarnicon.h</header> | 1364 | <header>washwarnicon.h</header> |
1446 | </customwidget> | 1365 | </customwidget> |
1366 | + <customwidget> | ||
1367 | + <class>Slider</class> | ||
1368 | + <extends>QWidget</extends> | ||
1369 | + <header>slider.h</header> | ||
1370 | + <container>1</container> | ||
1371 | + </customwidget> | ||
1447 | </customwidgets> | 1372 | </customwidgets> |
1448 | <resources> | 1373 | <resources> |
1449 | <include location="resources.qrc"/> | 1374 | <include location="resources.qrc"/> |
app/gui/oven_control/programmingmanualcoretemppopup.cpp
@@ -3,6 +3,7 @@ | @@ -3,6 +3,7 @@ | ||
3 | 3 | ||
4 | #include "stringer.h" | 4 | #include "stringer.h" |
5 | #include "soundplayer.h" | 5 | #include "soundplayer.h" |
6 | +#include "oven.h" | ||
6 | 7 | ||
7 | ProgrammingManualCoreTempPopup::ProgrammingManualCoreTempPopup(QWidget *parent) : | 8 | ProgrammingManualCoreTempPopup::ProgrammingManualCoreTempPopup(QWidget *parent) : |
8 | QWidget(parent), | 9 | QWidget(parent), |
@@ -12,7 +13,23 @@ ProgrammingManualCoreTempPopup::ProgrammingManualCoreTempPopup(QWidget *parent) | @@ -12,7 +13,23 @@ ProgrammingManualCoreTempPopup::ProgrammingManualCoreTempPopup(QWidget *parent) | ||
12 | 13 | ||
13 | setAttribute(Qt::WA_DeleteOnClose); | 14 | setAttribute(Qt::WA_DeleteOnClose); |
14 | 15 | ||
15 | - connect(ui->coreTempSlider, SIGNAL(valueChanged(int)), SLOT(updateCoreTempLabel())); | 16 | + Oven *oven = Oven::getInstance(); |
17 | + | ||
18 | + ui->coreTempSlider->setSubPixmap(":/images/slider/core.png"); | ||
19 | + ui->coreTempSlider->setRange(oven->minInterTemp(), oven->maxInterTemp()); | ||
20 | + | ||
21 | + QList<int> &bigTicks = ui->coreTempSlider->bigTicks; | ||
22 | + bigTicks.append(oven->minInterTemp()); | ||
23 | + bigTicks.append(oven->minInterTemp() + (oven->maxInterTemp() - oven->minInterTemp()) / 2); | ||
24 | + bigTicks.append(oven->maxInterTemp()); | ||
25 | + | ||
26 | + QList<int> &ticks = ui->coreTempSlider->ticks; | ||
27 | + for (int i = 1; i < 3; i++) | ||
28 | + ticks.append(bigTicks.at(0) + i * (bigTicks.at(1) - bigTicks.at(0)) / 3); | ||
29 | + for (int i = 1; i < 3; i++) | ||
30 | + ticks.append(bigTicks.at(1) + i * (bigTicks.at(2) - bigTicks.at(1)) / 3); | ||
31 | + | ||
32 | + connect(ui->coreTempSlider, SIGNAL(sliderMoved(int)), SLOT(updateCoreTempLabel())); | ||
16 | 33 | ||
17 | updateCoreTempLabel(); | 34 | updateCoreTempLabel(); |
18 | 35 | ||
@@ -27,7 +44,7 @@ ProgrammingManualCoreTempPopup::~ProgrammingManualCoreTempPopup() | @@ -27,7 +44,7 @@ ProgrammingManualCoreTempPopup::~ProgrammingManualCoreTempPopup() | ||
27 | 44 | ||
28 | void ProgrammingManualCoreTempPopup::updateCoreTempLabel() | 45 | void ProgrammingManualCoreTempPopup::updateCoreTempLabel() |
29 | { | 46 | { |
30 | - ui->coreTempLabel->setText(Stringer::temperature(ui->coreTempSlider->value(), Stringer::fontSize14)); | 47 | + ui->coreTempLabel->setText(Stringer::temperature(ui->coreTempSlider->sliderPosition(), Stringer::fontSize14)); |
31 | } | 48 | } |
32 | 49 | ||
33 | void ProgrammingManualCoreTempPopup::on_coreTempButton_clicked() | 50 | void ProgrammingManualCoreTempPopup::on_coreTempButton_clicked() |
app/gui/oven_control/programmingmanualcoretemppopup.ui
@@ -52,34 +52,6 @@ width: 23px; | @@ -52,34 +52,6 @@ width: 23px; | ||
52 | height: 33px; | 52 | height: 33px; |
53 | }</string> | 53 | }</string> |
54 | </property> | 54 | </property> |
55 | - <widget class="QSlider" name="coreTempSlider"> | ||
56 | - <property name="geometry"> | ||
57 | - <rect> | ||
58 | - <x>185</x> | ||
59 | - <y>1012</y> | ||
60 | - <width>666</width> | ||
61 | - <height>33</height> | ||
62 | - </rect> | ||
63 | - </property> | ||
64 | - <property name="styleSheet"> | ||
65 | - <string notr="true">QSlider::sub-page { background-image: url(:/images/slider/core.png); }</string> | ||
66 | - </property> | ||
67 | - <property name="minimum"> | ||
68 | - <number>30</number> | ||
69 | - </property> | ||
70 | - <property name="maximum"> | ||
71 | - <number>99</number> | ||
72 | - </property> | ||
73 | - <property name="value"> | ||
74 | - <number>30</number> | ||
75 | - </property> | ||
76 | - <property name="tracking"> | ||
77 | - <bool>true</bool> | ||
78 | - </property> | ||
79 | - <property name="orientation"> | ||
80 | - <enum>Qt::Horizontal</enum> | ||
81 | - </property> | ||
82 | - </widget> | ||
83 | <widget class="QPushButton" name="coreTempButton"> | 55 | <widget class="QPushButton" name="coreTempButton"> |
84 | <property name="geometry"> | 56 | <property name="geometry"> |
85 | <rect> | 57 | <rect> |
@@ -211,13 +183,31 @@ QPushButton:pressed { background-image: url(:/images/manual_button/ok_ov.png); } | @@ -211,13 +183,31 @@ QPushButton:pressed { background-image: url(:/images/manual_button/ok_ov.png); } | ||
211 | <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> | 183 | <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> |
212 | </property> | 184 | </property> |
213 | </widget> | 185 | </widget> |
186 | + <widget class="Slider" name="coreTempSlider" native="true"> | ||
187 | + <property name="geometry"> | ||
188 | + <rect> | ||
189 | + <x>185</x> | ||
190 | + <y>954</y> | ||
191 | + <width>666</width> | ||
192 | + <height>140</height> | ||
193 | + </rect> | ||
194 | + </property> | ||
195 | + </widget> | ||
214 | <zorder>background</zorder> | 196 | <zorder>background</zorder> |
215 | - <zorder>coreTempSlider</zorder> | ||
216 | <zorder>coreTempButton</zorder> | 197 | <zorder>coreTempButton</zorder> |
217 | <zorder>cancelButton</zorder> | 198 | <zorder>cancelButton</zorder> |
218 | <zorder>applyButton</zorder> | 199 | <zorder>applyButton</zorder> |
219 | <zorder>coreTempLabel</zorder> | 200 | <zorder>coreTempLabel</zorder> |
201 | + <zorder>coreTempSlider</zorder> | ||
220 | </widget> | 202 | </widget> |
203 | + <customwidgets> | ||
204 | + <customwidget> | ||
205 | + <class>Slider</class> | ||
206 | + <extends>QWidget</extends> | ||
207 | + <header>slider.h</header> | ||
208 | + <container>1</container> | ||
209 | + </customwidget> | ||
210 | + </customwidgets> | ||
221 | <resources/> | 211 | <resources/> |
222 | <connections/> | 212 | <connections/> |
223 | </ui> | 213 | </ui> |
app/gui/oven_control/programmingmanualwindow.cpp
@@ -17,10 +17,48 @@ ProgrammingManualWindow::ProgrammingManualWindow(QWidget *parent, Define::Mode m | @@ -17,10 +17,48 @@ ProgrammingManualWindow::ProgrammingManualWindow(QWidget *parent, Define::Mode m | ||
17 | ui->clockContainer->setParent(ui->upperStack); | 17 | ui->clockContainer->setParent(ui->upperStack); |
18 | setAttribute(Qt::WA_DeleteOnClose); | 18 | setAttribute(Qt::WA_DeleteOnClose); |
19 | 19 | ||
20 | - connect(ui->humiditySlider, SIGNAL(valueChanged(int)), SLOT(updateHumidityLabel())); | ||
21 | - connect(ui->tempSlider, SIGNAL(valueChanged(int)), SLOT(updateTempLabel())); | ||
22 | - connect(ui->timeSlider, SIGNAL(valueChanged(int)), SLOT(updateTimeLabel())); | ||
23 | - connect(ui->interTempSlider, SIGNAL(valueChanged(int)), SLOT(updateCoreTempLabel())); | 20 | + ui->humiditySlider->setSubPixmap(":/images/slider/humidity.png"); |
21 | + ui->humiditySlider->setRange(0, 100); | ||
22 | + ui->humiditySlider->bigTickInterval = 50; | ||
23 | + ui->humiditySlider->tickInterval = 10; | ||
24 | + | ||
25 | + ui->tempSlider->setSubPixmap(":/images/slider/temp.png"); | ||
26 | + ui->tempSlider->bigTickInterval = 50; | ||
27 | + ui->tempSlider->tickInterval = 10; | ||
28 | + | ||
29 | + ui->timeSlider->setSubPixmap(":/images/slider/time.png"); | ||
30 | + ui->timeSlider->setRange(0, 342); | ||
31 | + ui->timeSlider->bigTicks.append(0); | ||
32 | + ui->timeSlider->bigTicks.append(180); | ||
33 | + ui->timeSlider->bigTicks.append(270); | ||
34 | + ui->timeSlider->bigTicks.append(342); | ||
35 | + ui->timeSlider->ticks.append(60); | ||
36 | + ui->timeSlider->ticks.append(120); | ||
37 | + ui->timeSlider->ticks.append(180 + 30); | ||
38 | + ui->timeSlider->ticks.append(180 + 60); | ||
39 | + ui->timeSlider->ticks.append(270 + 4 * 6); | ||
40 | + ui->timeSlider->ticks.append(270 + 4 * 12); | ||
41 | + | ||
42 | + ui->interTempSlider->setSubPixmap(":/images/slider/core.png"); | ||
43 | + ui->interTempSlider->setRange(30, 99); | ||
44 | + | ||
45 | + Oven *oven = Oven::getInstance(); | ||
46 | + | ||
47 | + QList<int> &bigTicks = ui->interTempSlider->bigTicks; | ||
48 | + bigTicks.append(oven->minInterTemp()); | ||
49 | + bigTicks.append(oven->minInterTemp() + (oven->maxInterTemp() - oven->minInterTemp()) / 2); | ||
50 | + bigTicks.append(oven->maxInterTemp()); | ||
51 | + | ||
52 | + QList<int> &ticks = ui->interTempSlider->ticks; | ||
53 | + for (int i = 1; i < 3; i++) | ||
54 | + ticks.append(bigTicks.at(0) + i * (bigTicks.at(1) - bigTicks.at(0)) / 3); | ||
55 | + for (int i = 1; i < 3; i++) | ||
56 | + ticks.append(bigTicks.at(1) + i * (bigTicks.at(2) - bigTicks.at(1)) / 3); | ||
57 | + | ||
58 | + connect(ui->humiditySlider, SIGNAL(sliderMoved(int)), SLOT(updateHumidityLabel())); | ||
59 | + connect(ui->tempSlider, SIGNAL(sliderMoved(int)), SLOT(updateTempLabel())); | ||
60 | + connect(ui->timeSlider, SIGNAL(sliderMoved(int)), SLOT(updateTimeLabel())); | ||
61 | + connect(ui->interTempSlider, SIGNAL(sliderMoved(int)), SLOT(updateCoreTempLabel())); | ||
24 | 62 | ||
25 | setDefault(mode); | 63 | setDefault(mode); |
26 | 64 | ||
@@ -33,6 +71,24 @@ ProgrammingManualWindow::~ProgrammingManualWindow() | @@ -33,6 +71,24 @@ ProgrammingManualWindow::~ProgrammingManualWindow() | ||
33 | delete ui; | 71 | delete ui; |
34 | } | 72 | } |
35 | 73 | ||
74 | +int ProgrammingManualWindow::sliderToTime(int value) | ||
75 | +{ | ||
76 | + if (value <= 180) | ||
77 | + return value * 60; | ||
78 | + if (value <= 270) | ||
79 | + return 180 * 60 + (value - 180) * 2 * 60; | ||
80 | + return 360 * 60 + (value - 270) * 15 * 60; | ||
81 | +} | ||
82 | + | ||
83 | +int ProgrammingManualWindow::timeToSlider(int secs) | ||
84 | +{ | ||
85 | + if (secs <= 180 * 60) | ||
86 | + return secs / 60; | ||
87 | + if (secs <= 360 * 60) | ||
88 | + return 180 + (secs - 180 * 60) / 2 / 60; | ||
89 | + return 270 + (secs - 360 * 60) / 15 / 60; | ||
90 | +} | ||
91 | + | ||
36 | void ProgrammingManualWindow::setDefault(Define::Mode mode) | 92 | void ProgrammingManualWindow::setDefault(Define::Mode mode) |
37 | { | 93 | { |
38 | switch (mode) | 94 | switch (mode) |
@@ -45,6 +101,7 @@ void ProgrammingManualWindow::setDefault(Define::Mode mode) | @@ -45,6 +101,7 @@ void ProgrammingManualWindow::setDefault(Define::Mode mode) | ||
45 | ui->tempSlider->setValue(100); | 101 | ui->tempSlider->setValue(100); |
46 | ui->timeSlider->setValue(0); | 102 | ui->timeSlider->setValue(0); |
47 | ui->interTempSlider->setEnabled(false); | 103 | ui->interTempSlider->setEnabled(false); |
104 | + ui->interTempSlider->setSubVisible(false); | ||
48 | ui->interTempSlider->setValue(30); | 105 | ui->interTempSlider->setValue(30); |
49 | setFan(4); | 106 | setFan(4); |
50 | updateCoreTempButton(); | 107 | updateCoreTempButton(); |
@@ -59,6 +116,7 @@ void ProgrammingManualWindow::setDefault(Define::Mode mode) | @@ -59,6 +116,7 @@ void ProgrammingManualWindow::setDefault(Define::Mode mode) | ||
59 | ui->tempSlider->setValue(100); | 116 | ui->tempSlider->setValue(100); |
60 | ui->timeSlider->setValue(0); | 117 | ui->timeSlider->setValue(0); |
61 | ui->interTempSlider->setEnabled(false); | 118 | ui->interTempSlider->setEnabled(false); |
119 | + ui->interTempSlider->setSubVisible(false); | ||
62 | ui->interTempSlider->setValue(30); | 120 | ui->interTempSlider->setValue(30); |
63 | setFan(4); | 121 | setFan(4); |
64 | updateCoreTempButton(); | 122 | updateCoreTempButton(); |
@@ -73,6 +131,7 @@ void ProgrammingManualWindow::setDefault(Define::Mode mode) | @@ -73,6 +131,7 @@ void ProgrammingManualWindow::setDefault(Define::Mode mode) | ||
73 | ui->tempSlider->setValue(160); | 131 | ui->tempSlider->setValue(160); |
74 | ui->timeSlider->setValue(0); | 132 | ui->timeSlider->setValue(0); |
75 | ui->interTempSlider->setEnabled(false); | 133 | ui->interTempSlider->setEnabled(false); |
134 | + ui->interTempSlider->setSubVisible(false); | ||
76 | ui->interTempSlider->setValue(30); | 135 | ui->interTempSlider->setValue(30); |
77 | setFan(4); | 136 | setFan(4); |
78 | updateCoreTempButton(); | 137 | updateCoreTempButton(); |
@@ -93,18 +152,17 @@ void ProgrammingManualWindow::setFan(int level) | @@ -93,18 +152,17 @@ void ProgrammingManualWindow::setFan(int level) | ||
93 | 152 | ||
94 | void ProgrammingManualWindow::updateHumidityLabel() | 153 | void ProgrammingManualWindow::updateHumidityLabel() |
95 | { | 154 | { |
96 | -// ui->humidityLabel->setText(QString::number(ui->humiditySlider->value())); | ||
97 | - ui->humidityLabel->setText(QString("%1%").arg(ui->humiditySlider->value())); | 155 | + ui->humidityLabel->setText(QString("%1%").arg(ui->humiditySlider->sliderPosition())); |
98 | } | 156 | } |
99 | 157 | ||
100 | void ProgrammingManualWindow::updateTempLabel() | 158 | void ProgrammingManualWindow::updateTempLabel() |
101 | { | 159 | { |
102 | - ui->tempLabel->setText(Stringer::temperature(ui->tempSlider->value(), Stringer::fontSize14)); | 160 | + ui->tempLabel->setText(Stringer::temperature(ui->tempSlider->sliderPosition(), Stringer::fontSize14)); |
103 | } | 161 | } |
104 | 162 | ||
105 | void ProgrammingManualWindow::updateTimeLabel() | 163 | void ProgrammingManualWindow::updateTimeLabel() |
106 | { | 164 | { |
107 | - ui->timeLabel->setText(Stringer::remainingTime(ui->timeSlider->value() * 1000, Stringer::fontSize14)); | 165 | + ui->timeLabel->setText(Stringer::remainingTime(sliderToTime(ui->timeSlider->sliderPosition()) * 1000, Stringer::fontSize14)); |
108 | } | 166 | } |
109 | 167 | ||
110 | void ProgrammingManualWindow::updateCoreTempButton() | 168 | void ProgrammingManualWindow::updateCoreTempButton() |
@@ -130,7 +188,7 @@ QPushButton:pressed {\ | @@ -130,7 +188,7 @@ QPushButton:pressed {\ | ||
130 | void ProgrammingManualWindow::updateCoreTempLabel() | 188 | void ProgrammingManualWindow::updateCoreTempLabel() |
131 | { | 189 | { |
132 | if (ui->interTempSlider->isEnabled()) | 190 | if (ui->interTempSlider->isEnabled()) |
133 | - ui->interTempLabel->setText(Stringer::temperature(ui->interTempSlider->value(), Stringer::fontSize14)); | 191 | + ui->interTempLabel->setText(Stringer::temperature(ui->interTempSlider->sliderPosition(), Stringer::fontSize14)); |
134 | else | 192 | else |
135 | ui->interTempLabel->setText(Stringer::unusedTemperature(Stringer::fontSize14)); | 193 | ui->interTempLabel->setText(Stringer::unusedTemperature(Stringer::fontSize14)); |
136 | } | 194 | } |
@@ -169,6 +227,7 @@ void ProgrammingManualWindow::updateFanButton() | @@ -169,6 +227,7 @@ void ProgrammingManualWindow::updateFanButton() | ||
169 | void ProgrammingManualWindow::onCoreTempEnabled(int celsius) | 227 | void ProgrammingManualWindow::onCoreTempEnabled(int celsius) |
170 | { | 228 | { |
171 | ui->interTempSlider->setEnabled(true); | 229 | ui->interTempSlider->setEnabled(true); |
230 | + ui->interTempSlider->setSubVisible(true); | ||
172 | ui->interTempSlider->setValue(celsius); | 231 | ui->interTempSlider->setValue(celsius); |
173 | updateCoreTempButton(); | 232 | updateCoreTempButton(); |
174 | updateCoreTempLabel(); | 233 | updateCoreTempLabel(); |
@@ -194,6 +253,7 @@ void ProgrammingManualWindow::on_interTempButton_clicked() | @@ -194,6 +253,7 @@ void ProgrammingManualWindow::on_interTempButton_clicked() | ||
194 | if (ui->interTempSlider->isEnabled()) | 253 | if (ui->interTempSlider->isEnabled()) |
195 | { | 254 | { |
196 | ui->interTempSlider->setEnabled(false); | 255 | ui->interTempSlider->setEnabled(false); |
256 | + ui->interTempSlider->setSubVisible(false); | ||
197 | updateCoreTempButton(); | 257 | updateCoreTempButton(); |
198 | updateCoreTempLabel(); | 258 | updateCoreTempLabel(); |
199 | } | 259 | } |
@@ -240,7 +300,7 @@ void ProgrammingManualWindow::on_okButton_clicked() | @@ -240,7 +300,7 @@ void ProgrammingManualWindow::on_okButton_clicked() | ||
240 | s.mode = mode; | 300 | s.mode = mode; |
241 | s.humidity = ui->humiditySlider->value(); | 301 | s.humidity = ui->humiditySlider->value(); |
242 | s.temp = ui->tempSlider->value(); | 302 | s.temp = ui->tempSlider->value(); |
243 | - s.time = ui->timeSlider->value(); | 303 | + s.time = sliderToTime(ui->timeSlider->value()); |
244 | s.coreTempEnabled = ui->interTempSlider->isEnabled(); | 304 | s.coreTempEnabled = ui->interTempSlider->isEnabled(); |
245 | s.coreTemp = ui->interTempSlider->value(); | 305 | s.coreTemp = ui->interTempSlider->value(); |
246 | s.fan = fan; | 306 | s.fan = fan; |
app/gui/oven_control/programmingmanualwindow.h
@@ -23,6 +23,9 @@ private: | @@ -23,6 +23,9 @@ private: | ||
23 | Define::Mode mode; | 23 | Define::Mode mode; |
24 | int fan; | 24 | int fan; |
25 | 25 | ||
26 | + int sliderToTime(int value); | ||
27 | + int timeToSlider(int secs); | ||
28 | + | ||
26 | private slots: | 29 | private slots: |
27 | void setDefault(Define::Mode mode); | 30 | void setDefault(Define::Mode mode); |
28 | void setFan(int level); | 31 | void setFan(int level); |
app/gui/oven_control/programmingmanualwindow.ui
@@ -293,64 +293,6 @@ QPushButton:pressed { image: url(:/images/slider_icon/time_ov.png); }</string> | @@ -293,64 +293,6 @@ QPushButton:pressed { image: url(:/images/slider_icon/time_ov.png); }</string> | ||
293 | <set>Qt::AlignCenter</set> | 293 | <set>Qt::AlignCenter</set> |
294 | </property> | 294 | </property> |
295 | </widget> | 295 | </widget> |
296 | - <widget class="QSlider" name="timeSlider"> | ||
297 | - <property name="geometry"> | ||
298 | - <rect> | ||
299 | - <x>185</x> | ||
300 | - <y>1083</y> | ||
301 | - <width>666</width> | ||
302 | - <height>33</height> | ||
303 | - </rect> | ||
304 | - </property> | ||
305 | - <property name="styleSheet"> | ||
306 | - <string notr="true">QSlider::sub-page { background-image: url(:/images/slider/time.png); }</string> | ||
307 | - </property> | ||
308 | - <property name="maximum"> | ||
309 | - <number>86400</number> | ||
310 | - </property> | ||
311 | - <property name="singleStep"> | ||
312 | - <number>60</number> | ||
313 | - </property> | ||
314 | - <property name="pageStep"> | ||
315 | - <number>3600</number> | ||
316 | - </property> | ||
317 | - <property name="value"> | ||
318 | - <number>0</number> | ||
319 | - </property> | ||
320 | - <property name="orientation"> | ||
321 | - <enum>Qt::Horizontal</enum> | ||
322 | - </property> | ||
323 | - </widget> | ||
324 | - <widget class="QSlider" name="interTempSlider"> | ||
325 | - <property name="enabled"> | ||
326 | - <bool>false</bool> | ||
327 | - </property> | ||
328 | - <property name="geometry"> | ||
329 | - <rect> | ||
330 | - <x>185</x> | ||
331 | - <y>1233</y> | ||
332 | - <width>666</width> | ||
333 | - <height>33</height> | ||
334 | - </rect> | ||
335 | - </property> | ||
336 | - <property name="styleSheet"> | ||
337 | - <string notr="true">QSlider::sub-page { background-image: url(:/images/slider/core.png); } | ||
338 | -QSlider::sub-page:disabled { background: #00000000; } | ||
339 | -QSlider::handle:disabled { background: #00000000; }</string> | ||
340 | - </property> | ||
341 | - <property name="minimum"> | ||
342 | - <number>30</number> | ||
343 | - </property> | ||
344 | - <property name="maximum"> | ||
345 | - <number>99</number> | ||
346 | - </property> | ||
347 | - <property name="value"> | ||
348 | - <number>30</number> | ||
349 | - </property> | ||
350 | - <property name="orientation"> | ||
351 | - <enum>Qt::Horizontal</enum> | ||
352 | - </property> | ||
353 | - </widget> | ||
354 | <widget class="QLabel" name="interTempLabel"> | 296 | <widget class="QLabel" name="interTempLabel"> |
355 | <property name="enabled"> | 297 | <property name="enabled"> |
356 | <bool>true</bool> | 298 | <bool>true</bool> |
@@ -634,28 +576,6 @@ QPushButton:pressed { image: url(:/images/slider_icon/temp_ov.png); }</string> | @@ -634,28 +576,6 @@ QPushButton:pressed { image: url(:/images/slider_icon/temp_ov.png); }</string> | ||
634 | <string notr="true">icon</string> | 576 | <string notr="true">icon</string> |
635 | </property> | 577 | </property> |
636 | </widget> | 578 | </widget> |
637 | - <widget class="QSlider" name="tempSlider"> | ||
638 | - <property name="geometry"> | ||
639 | - <rect> | ||
640 | - <x>185</x> | ||
641 | - <y>933</y> | ||
642 | - <width>666</width> | ||
643 | - <height>33</height> | ||
644 | - </rect> | ||
645 | - </property> | ||
646 | - <property name="styleSheet"> | ||
647 | - <string notr="true">QSlider::sub-page { background-image: url(:/images/slider/temp.png); }</string> | ||
648 | - </property> | ||
649 | - <property name="maximum"> | ||
650 | - <number>6</number> | ||
651 | - </property> | ||
652 | - <property name="value"> | ||
653 | - <number>0</number> | ||
654 | - </property> | ||
655 | - <property name="orientation"> | ||
656 | - <enum>Qt::Horizontal</enum> | ||
657 | - </property> | ||
658 | - </widget> | ||
659 | <widget class="QPushButton" name="steamButton"> | 579 | <widget class="QPushButton" name="steamButton"> |
660 | <property name="geometry"> | 580 | <property name="geometry"> |
661 | <rect> | 581 | <rect> |
@@ -809,25 +729,6 @@ QPushButton:checked { background-image: url(:/images/cook_mode/big_steam.png); } | @@ -809,25 +729,6 @@ QPushButton:checked { background-image: url(:/images/cook_mode/big_steam.png); } | ||
809 | <set>Qt::AlignCenter</set> | 729 | <set>Qt::AlignCenter</set> |
810 | </property> | 730 | </property> |
811 | </widget> | 731 | </widget> |
812 | - <widget class="QSlider" name="humiditySlider"> | ||
813 | - <property name="geometry"> | ||
814 | - <rect> | ||
815 | - <x>185</x> | ||
816 | - <y>783</y> | ||
817 | - <width>666</width> | ||
818 | - <height>33</height> | ||
819 | - </rect> | ||
820 | - </property> | ||
821 | - <property name="styleSheet"> | ||
822 | - <string notr="true">QSlider::sub-page { background-image: url(:/images/slider/humidity.png); }</string> | ||
823 | - </property> | ||
824 | - <property name="maximum"> | ||
825 | - <number>100</number> | ||
826 | - </property> | ||
827 | - <property name="orientation"> | ||
828 | - <enum>Qt::Horizontal</enum> | ||
829 | - </property> | ||
830 | - </widget> | ||
831 | <widget class="QPushButton" name="humidityButton"> | 732 | <widget class="QPushButton" name="humidityButton"> |
832 | <property name="geometry"> | 733 | <property name="geometry"> |
833 | <rect> | 734 | <rect> |
@@ -966,6 +867,46 @@ QPushButton:checked { background-image: url(:/images/cook_mode/big_combi.png); } | @@ -966,6 +867,46 @@ QPushButton:checked { background-image: url(:/images/cook_mode/big_combi.png); } | ||
966 | <string notr="true">QPushButton { background-image: url(:/images/manual_button/fan_4.png); }</string> | 867 | <string notr="true">QPushButton { background-image: url(:/images/manual_button/fan_4.png); }</string> |
967 | </property> | 868 | </property> |
968 | </widget> | 869 | </widget> |
870 | + <widget class="Slider" name="tempSlider" native="true"> | ||
871 | + <property name="geometry"> | ||
872 | + <rect> | ||
873 | + <x>185</x> | ||
874 | + <y>875</y> | ||
875 | + <width>666</width> | ||
876 | + <height>140</height> | ||
877 | + </rect> | ||
878 | + </property> | ||
879 | + </widget> | ||
880 | + <widget class="Slider" name="interTempSlider" native="true"> | ||
881 | + <property name="geometry"> | ||
882 | + <rect> | ||
883 | + <x>185</x> | ||
884 | + <y>1175</y> | ||
885 | + <width>666</width> | ||
886 | + <height>140</height> | ||
887 | + </rect> | ||
888 | + </property> | ||
889 | + </widget> | ||
890 | + <widget class="Slider" name="timeSlider" native="true"> | ||
891 | + <property name="geometry"> | ||
892 | + <rect> | ||
893 | + <x>185</x> | ||
894 | + <y>1025</y> | ||
895 | + <width>666</width> | ||
896 | + <height>140</height> | ||
897 | + </rect> | ||
898 | + </property> | ||
899 | + </widget> | ||
900 | + <widget class="Slider" name="humiditySlider" native="true"> | ||
901 | + <property name="geometry"> | ||
902 | + <rect> | ||
903 | + <x>185</x> | ||
904 | + <y>725</y> | ||
905 | + <width>666</width> | ||
906 | + <height>140</height> | ||
907 | + </rect> | ||
908 | + </property> | ||
909 | + </widget> | ||
969 | </widget> | 910 | </widget> |
970 | </widget> | 911 | </widget> |
971 | <customwidgets> | 912 | <customwidgets> |
@@ -985,6 +926,12 @@ QPushButton:checked { background-image: url(:/images/cook_mode/big_combi.png); } | @@ -985,6 +926,12 @@ QPushButton:checked { background-image: url(:/images/cook_mode/big_combi.png); } | ||
985 | <extends>QLabel</extends> | 926 | <extends>QLabel</extends> |
986 | <header>animatedimagebox.h</header> | 927 | <header>animatedimagebox.h</header> |
987 | </customwidget> | 928 | </customwidget> |
929 | + <customwidget> | ||
930 | + <class>Slider</class> | ||
931 | + <extends>QWidget</extends> | ||
932 | + <header>slider.h</header> | ||
933 | + <container>1</container> | ||
934 | + </customwidget> | ||
988 | </customwidgets> | 935 | </customwidgets> |
989 | <resources> | 936 | <resources> |
990 | <include location="resources.qrc"/> | 937 | <include location="resources.qrc"/> |
app/gui/oven_control/slider.cpp
@@ -116,6 +116,8 @@ void Slider::mouseMoveEvent(QMouseEvent *event) | @@ -116,6 +116,8 @@ void Slider::mouseMoveEvent(QMouseEvent *event) | ||
116 | void Slider::mousePressEvent(QMouseEvent */*event*/) | 116 | void Slider::mousePressEvent(QMouseEvent */*event*/) |
117 | { | 117 | { |
118 | isSliderDown_ = true; | 118 | isSliderDown_ = true; |
119 | + | ||
120 | + emit sliderPressed(); | ||
119 | } | 121 | } |
120 | 122 | ||
121 | void Slider::mouseReleaseEvent(QMouseEvent */*event*/) | 123 | void Slider::mouseReleaseEvent(QMouseEvent */*event*/) |
@@ -125,6 +127,8 @@ void Slider::mouseReleaseEvent(QMouseEvent */*event*/) | @@ -125,6 +127,8 @@ void Slider::mouseReleaseEvent(QMouseEvent */*event*/) | ||
125 | if (sliderPosition_ == value_) | 127 | if (sliderPosition_ == value_) |
126 | return; | 128 | return; |
127 | 129 | ||
130 | + emit sliderReleased(); | ||
131 | + | ||
128 | setValue(sliderPosition_); | 132 | setValue(sliderPosition_); |
129 | } | 133 | } |
130 | 134 |
app/gui/oven_control/slider.h
@@ -66,6 +66,8 @@ private: | @@ -66,6 +66,8 @@ private: | ||
66 | signals: | 66 | signals: |
67 | void sliderMoved(int value); | 67 | void sliderMoved(int value); |
68 | void valueChanged(int value); | 68 | void valueChanged(int value); |
69 | + void sliderPressed(); | ||
70 | + void sliderReleased(); | ||
69 | 71 | ||
70 | public slots: | 72 | public slots: |
71 | void setValue(int value); | 73 | void setValue(int value); |