8c2952457
김태훈
응용 프로그램 추가
|
1
2
3
4
5
6
|
#include "manualcookwindow.h"
#include "ui_manualcookwindow.h"
#include <QSignalMapper>
#include <QTimer>
#include <QtDebug>
|
ac60b5cec
김태훈
음향 효과 일부 적용 및 소스 ...
|
7
|
#include "soundplayer.h"
|
05f2a7552
김태훈
image 관리 구조 변경
|
8
|
#include "preheatpopup.h"
|
cfc2fcc35
김태훈
쿨다운 팝업 추가
|
9
|
#include "cooldownpopup.h"
|
f588aa273
김태훈
부가 기능 로직 추가
|
10
11
12
|
#include "cookhistory.h"
#include "favoritenamepopup.h"
#include "confirmpopup.h"
|
2bfd3a050
김태훈
환경 설정 대응
|
13
14
|
#include "stringer.h"
#include "config.h"
|
d35b8bcdf
김태훈
수동 요리의 중심 요리 설정 화...
|
15
|
#include "coretempsettingpopup.h"
|
05f2a7552
김태훈
image 관리 구조 변경
|
16
|
|
bb26a0523
김태훈
소스 코드 정리
|
17
|
#include <QTime>
|
d0cfbd177
김태훈
GUI V0.1.10 (이 버전...
|
18
|
ManualCookWindow::ManualCookWindow(QWidget *parent, Define::Mode mode) :
|
8c2952457
김태훈
응용 프로그램 추가
|
19
|
QMainWindow(parent),
|
3f52600cc
김태훈
소스 코드 구조 개선
|
20
|
ui(new Ui::ManualCookWindow)
|
8c2952457
김태훈
응용 프로그램 추가
|
21
22
|
{
ui->setupUi(this);
|
6f96c947a
김태훈
GUI 0.1.4
|
23
|
ui->clockContainer->setParent(ui->upperStack);
|
cfc2fcc35
김태훈
쿨다운 팝업 추가
|
24
|
ui->closeDoorWidget->setParent(ui->upperStack);
|
6f96c947a
김태훈
GUI 0.1.4
|
25
|
setAttribute(Qt::WA_DeleteOnClose);
|
3f52600cc
김태훈
소스 코드 구조 개선
|
26
|
oven = Oven::getInstance();
|
8c2952457
김태훈
응용 프로그램 추가
|
27
|
connect(oven, SIGNAL(changed(Oven*)), this, SLOT(onOvenUpdated(Oven*)));
|
8c2952457
김태훈
응용 프로그램 추가
|
28
29
30
|
connect(ui->humiditySlider, SIGNAL(valueChanged(int)), oven, SLOT(setHumidity(int)));
connect(ui->tempSlider, SIGNAL(valueChanged(int)), oven, SLOT(setTemp(int)));
connect(ui->timeSlider, SIGNAL(valueChanged(int)), oven, SLOT(setTime(int)));
|
bb26a0523
김태훈
소스 코드 정리
|
31
32
|
connect(ui->timeSlider, SIGNAL(valueChanged(int)), &startCookingTimer, SLOT(start()));
connect(ui->timeSlider, SIGNAL(valueChanged(int)), this, SLOT(updateLabels()));
|
8c2952457
김태훈
응용 프로그램 추가
|
33
34
35
36
37
38
|
connect(ui->interTempSlider, SIGNAL(valueChanged(int)), oven, SLOT(setInterTemp(int)));
connect(ui->humiditySlider, SIGNAL(sliderMoved(int)), this, SLOT(updateLabels()));
connect(ui->tempSlider, SIGNAL(sliderMoved(int)), this, SLOT(updateLabels()));
connect(ui->timeSlider, SIGNAL(sliderMoved(int)), this, SLOT(updateLabels()));
connect(ui->interTempSlider, SIGNAL(sliderMoved(int)), this, SLOT(updateLabels()));
|
8c2952457
김태훈
응용 프로그램 추가
|
39
|
|
bb26a0523
김태훈
소스 코드 정리
|
40
41
42
43
44
45
46
47
48
49
50
|
startCookingTimer.setSingleShot(true);
startCookingTimer.setInterval(3000);
connect(&startCookingTimer, SIGNAL(timeout()), SLOT(start()));
showCurrentHumidityTimer.setSingleShot(true);
showCurrentHumidityTimer.setInterval(3000);
connect(&showCurrentHumidityTimer, SIGNAL(timeout()), SLOT(showCurrentHumidity()));
showCurrentTempTimer.setSingleShot(true);
showCurrentTempTimer.setInterval(3000);
connect(&showCurrentTempTimer, SIGNAL(timeout()), SLOT(showCurrentTemp()));
|
8c2952457
김태훈
응용 프로그램 추가
|
51
|
|
bb26a0523
김태훈
소스 코드 정리
|
52
|
oven->setDefault(mode);
|
d35b8bcdf
김태훈
수동 요리의 중심 요리 설정 화...
|
53
54
|
checkTimeTimer.setInterval(100);
connect(&checkTimeTimer, SIGNAL(timeout()), SLOT(checkTime()));
|
2bfd3a050
김태훈
환경 설정 대응
|
55
|
checkTimeTimer.start();
|
bbd7d8f29
김태훈
버튼 음향 추가
|
56
|
foreach (QPushButton *button, findChildren<QPushButton *>())
|
bbd7d8f29
김태훈
버튼 음향 추가
|
57
|
connect(button, &QPushButton::pressed, SoundPlayer::playClick);
|
d35b8bcdf
김태훈
수동 요리의 중심 요리 설정 화...
|
58
59
|
QTimer::singleShot(0, this, SLOT(setupAnimation()));
|
bb26a0523
김태훈
소스 코드 정리
|
60
|
}
|
f588aa273
김태훈
부가 기능 로직 추가
|
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
ManualCookWindow::ManualCookWindow(QWidget *parent, ManualCookSetting setting)
: ManualCookWindow(parent, setting.mode)
{
oven->setHumidity(setting.humidity);
oven->setTemp(setting.temp);
oven->setTime(setting.time);
oven->setFan(setting.fan);
oven->setInterTempEnabled(setting.coreTempEnabled);
oven->setInterTemp(setting.coreTemp);
startCookingTimer.start();
onOvenUpdated(oven);
}
|
bb26a0523
김태훈
소스 코드 정리
|
75
76
77
78
79
80
81
|
ManualCookWindow::~ManualCookWindow()
{
delete ui;
}
void ManualCookWindow::setupAnimation()
{
|
cfc2fcc35
김태훈
쿨다운 팝업 추가
|
82
83
84
85
86
87
88
89
90
91
|
ui->openDoorAnimation->load(":/images/animation/door_big_09.png");
ui->openDoorAnimation->load(":/images/animation/door_big_08.png");
ui->openDoorAnimation->load(":/images/animation/door_big_07.png");
ui->openDoorAnimation->load(":/images/animation/door_big_06.png");
ui->openDoorAnimation->load(":/images/animation/door_big_05.png");
ui->openDoorAnimation->load(":/images/animation/door_big_04.png");
ui->openDoorAnimation->load(":/images/animation/door_big_03.png");
ui->openDoorAnimation->load(":/images/animation/door_big_02.png");
ui->openDoorAnimation->load(":/images/animation/door_big_01.png");
ui->openDoorAnimation->start(300);
|
8c2952457
김태훈
응용 프로그램 추가
|
92
93
94
95
|
}
void ManualCookWindow::checkTime()
{
|
2bfd3a050
김태훈
환경 설정 대응
|
96
|
if (!ui->timeSlider->isSliderDown())
|
8c2952457
김태훈
응용 프로그램 추가
|
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
|
{
bool old = ui->timeSlider->blockSignals(true);
ui->timeSlider->setSliderPosition(oven->time());
ui->timeSlider->blockSignals(old);
updateLabels();
}
}
void ManualCookWindow::showCurrentHumidity()
{
showCurrentHumidity_ = true;
updateLabels();
}
void ManualCookWindow::hideCurrentHumidity()
{
showCurrentHumidity_ = false;
updateLabels();
}
void ManualCookWindow::showCurrentTemp()
{
showCurrentTemp_ = true;
updateLabels();
}
void ManualCookWindow::hideCurrentTemp()
{
showCurrentTemp_ = false;
updateLabels();
}
void ManualCookWindow::updateLabels()
{
QString buf;
int humidity;
if (showCurrentHumidity_)
humidity = oven->currentHumidity();
else if (ui->humiditySlider->isSliderDown())
humidity = ui->humiditySlider->sliderPosition();
else
humidity = oven->humidity();
ui->humidityLabel->setText(buf.sprintf("%d%%", humidity));
int temp;
if (showCurrentTemp_)
temp = oven->currentTemp();
else if (ui->tempSlider->isSliderDown())
temp = ui->tempSlider->sliderPosition();
else
temp = oven->temp();
|
2bfd3a050
김태훈
환경 설정 대응
|
151
|
ui->tempLabel->setText(Stringer::temperature(temp, Stringer::fontSize14));
|
8c2952457
김태훈
응용 프로그램 추가
|
152
|
|
2bfd3a050
김태훈
환경 설정 대응
|
153
|
int msecs;
|
8c2952457
김태훈
응용 프로그램 추가
|
154
|
if (ui->timeSlider->isSliderDown())
|
2bfd3a050
김태훈
환경 설정 대응
|
155
|
msecs = ui->timeSlider->sliderPosition() * 1000;
|
8c2952457
김태훈
응용 프로그램 추가
|
156
|
else
|
2bfd3a050
김태훈
환경 설정 대응
|
157
|
msecs = oven->msecs();
|
8c2952457
김태훈
응용 프로그램 추가
|
158
|
|
2bfd3a050
김태훈
환경 설정 대응
|
159
|
ui->timeLabel->setText(Stringer::remainingTime(msecs, Stringer::fontSize14));
|
8c2952457
김태훈
응용 프로그램 추가
|
160
161
162
163
164
165
166
167
|
if (oven->interTempEnabled())
{
int interTemp;
if (ui->interTempSlider->isSliderDown())
interTemp = ui->interTempSlider->sliderPosition();
else
interTemp = oven->interTemp();
|
2bfd3a050
김태훈
환경 설정 대응
|
168
|
ui->interTempLabel->setText(Stringer::temperature(interTemp, Stringer::fontSize14));
|
8c2952457
김태훈
응용 프로그램 추가
|
169
170
|
}
else
|
2bfd3a050
김태훈
환경 설정 대응
|
171
|
ui->interTempLabel->setText(Stringer::unusedTemperature(Stringer::fontSize14));
|
8c2952457
김태훈
응용 프로그램 추가
|
172
|
}
|
8c2952457
김태훈
응용 프로그램 추가
|
173
174
|
void ManualCookWindow::onOvenUpdated(Oven *oven)
{
|
8c2952457
김태훈
응용 프로그램 추가
|
175
176
|
switch (oven->mode())
{
|
d0cfbd177
김태훈
GUI V0.1.10 (이 버전...
|
177
|
case Define::DryMode:
|
8c2952457
김태훈
응용 프로그램 추가
|
178
|
ui->dryheatButton->setChecked(true);
|
8c2952457
김태훈
응용 프로그램 추가
|
179
|
break;
|
d0cfbd177
김태훈
GUI V0.1.10 (이 버전...
|
180
|
case Define::SteamMode:
|
8c2952457
김태훈
응용 프로그램 추가
|
181
|
ui->steamButton->setChecked(true);
|
8c2952457
김태훈
응용 프로그램 추가
|
182
|
break;
|
d0cfbd177
김태훈
GUI V0.1.10 (이 버전...
|
183
|
case Define::CombiMode:
|
8c2952457
김태훈
응용 프로그램 추가
|
184
|
ui->combiButton->setChecked(true);
|
8c2952457
김태훈
응용 프로그램 추가
|
185
186
187
188
189
190
191
192
|
break;
default:
break;
}
bool old;
old = ui->humiditySlider->blockSignals(true);
ui->humiditySlider->setValue(oven->humidity());
|
d0cfbd177
김태훈
GUI V0.1.10 (이 버전...
|
193
|
ui->humiditySlider->setEnabled(oven->mode() == Define::CombiMode);
|
8c2952457
김태훈
응용 프로그램 추가
|
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
|
ui->humiditySlider->blockSignals(old);
old = ui->tempSlider->blockSignals(true);
ui->tempSlider->setRange(oven->minTemp(), oven->maxTemp());
ui->tempSlider->setValue(oven->temp());
ui->tempSlider->blockSignals(old);
if (!ui->timeSlider->isSliderDown())
{
old = ui->timeSlider->blockSignals(true);
ui->timeSlider->setValue(oven->time());
ui->timeSlider->blockSignals(old);
}
// ui->interTempButton->setChecked(oven->interTempEnabled());
if (oven->interTempEnabled())
ui->interTempButton->setStyleSheet("\
|
6f96c947a
김태훈
GUI 0.1.4
|
211
|
QPushButton {\
|
05f2a7552
김태훈
image 관리 구조 변경
|
212
|
image: url(:/images/slider_icon/core_temp_enabled.png);\
|
8c2952457
김태훈
응용 프로그램 추가
|
213
|
}\
|
6f96c947a
김태훈
GUI 0.1.4
|
214
|
QPushButton:pressed {\
|
05f2a7552
김태훈
image 관리 구조 변경
|
215
|
image: url(:/images/slider_icon/core_temp_ov.png);\
|
8c2952457
김태훈
응용 프로그램 추가
|
216
217
218
|
}");
else
ui->interTempButton->setStyleSheet("\
|
6f96c947a
김태훈
GUI 0.1.4
|
219
|
QPushButton {\
|
05f2a7552
김태훈
image 관리 구조 변경
|
220
|
image: url(:/images/slider_icon/core_temp.png);\
|
8c2952457
김태훈
응용 프로그램 추가
|
221
|
}\
|
6f96c947a
김태훈
GUI 0.1.4
|
222
|
QPushButton:pressed {\
|
05f2a7552
김태훈
image 관리 구조 변경
|
223
|
image: url(:/images/slider_icon/core_temp_ov.png);\
|
8c2952457
김태훈
응용 프로그램 추가
|
224
225
226
227
228
229
230
|
}");
old = ui->interTempSlider->blockSignals(true);
ui->interTempSlider->setEnabled(oven->interTempEnabled());
ui->interTempSlider->setRange(oven->minInterTemp(), oven->maxInterTemp());
ui->interTempSlider->setValue(oven->interTemp());
ui->interTempSlider->blockSignals(old);
|
c598b01b2
김태훈
GUI 업데이트
|
231
232
|
if (oven->cooking())
ui->runStopButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
233
|
"border-image: url(:/images/manual_button/stop.png)");
|
c598b01b2
김태훈
GUI 업데이트
|
234
235
|
else
ui->runStopButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
236
|
"border-image: url(:/images/manual_button/run.png)");
|
c598b01b2
김태훈
GUI 업데이트
|
237
238
239
|
if (oven->damper())
ui->damperButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
240
|
"background-image: url(:/images/manual_button/damper_open.png)");
|
c598b01b2
김태훈
GUI 업데이트
|
241
242
|
else
ui->damperButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
243
|
"background-image: url(:/images/manual_button/damper_close.png)");
|
c598b01b2
김태훈
GUI 업데이트
|
244
245
246
|
if (oven->humidification())
ui->humidificationButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
247
|
"background-image: url(:/images/manual_button/side_nozzle_open.png)");
|
c598b01b2
김태훈
GUI 업데이트
|
248
249
|
else
ui->humidificationButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
250
|
"background-image: url(:/images/manual_button/side_nozzle_close.png)");
|
8c2952457
김태훈
응용 프로그램 추가
|
251
252
253
254
255
|
switch (oven->fan())
{
case 1:
ui->fanButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
256
|
"background-image: url(:/images/manual_button/fan_1.png)");
|
8c2952457
김태훈
응용 프로그램 추가
|
257
258
259
|
break;
case 2:
ui->fanButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
260
|
"background-image: url(:/images/manual_button/fan_2.png)");
|
8c2952457
김태훈
응용 프로그램 추가
|
261
262
263
|
break;
case 3:
ui->fanButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
264
|
"background-image: url(:/images/manual_button/fan_3.png)");
|
8c2952457
김태훈
응용 프로그램 추가
|
265
266
267
|
break;
case 4:
ui->fanButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
268
|
"background-image: url(:/images/manual_button/fan_4.png)");
|
8c2952457
김태훈
응용 프로그램 추가
|
269
270
271
|
break;
case 5:
ui->fanButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
272
|
"background-image: url(:/images/manual_button/fan_5.png)");
|
8c2952457
김태훈
응용 프로그램 추가
|
273
274
275
|
break;
default:
ui->fanButton->setStyleSheet(
|
05f2a7552
김태훈
image 관리 구조 변경
|
276
|
"background-image: url(:/images/manual_button/fan_1.png)");
|
8c2952457
김태훈
응용 프로그램 추가
|
277
278
|
break;
}
|
cfc2fcc35
김태훈
쿨다운 팝업 추가
|
279
280
281
282
|
if (oven->paused() && !oven->cooldown() && oven->door())
ui->upperStack->setCurrentIndex(1);
else
ui->upperStack->setCurrentIndex(0);
|
8c2952457
김태훈
응용 프로그램 추가
|
283
284
|
updateLabels();
}
|
d0cfbd177
김태훈
GUI V0.1.10 (이 버전...
|
285
|
void ManualCookWindow::setOvenDefault(Define::Mode mode)
|
8c2952457
김태훈
응용 프로그램 추가
|
286
|
{
|
bb26a0523
김태훈
소스 코드 정리
|
287
288
289
|
stop();
oven->setDefault(mode);
|
bb26a0523
김태훈
소스 코드 정리
|
290
291
292
293
|
}
void ManualCookWindow::start()
{
|
bbd7d8f29
김태훈
버튼 음향 추가
|
294
295
|
if (oven->cooking())
return;
|
ac60b5cec
김태훈
음향 효과 일부 적용 및 소스 ...
|
296
|
SoundPlayer::playStart();
|
f588aa273
김태훈
부가 기능 로직 추가
|
297
298
299
300
301
302
|
if (oven->time() > 0)
{
if (startCookingTimer.isActive())
startCookingTimer.stop();
oven->startCooking();
|
f588aa273
김태훈
부가 기능 로직 추가
|
303
304
305
306
307
308
309
310
311
312
313
314
|
ManualCookSetting s;
s.mode = oven->mode();
s.humidity = oven->humidity();
s.temp = oven->temp();
s.time = oven->time();
s.fan = oven->fan();
s.coreTempEnabled = oven->interTempEnabled();
s.coreTemp = oven->interTemp();
CookHistory::record(s);
}
|
bb26a0523
김태훈
소스 코드 정리
|
315
316
317
318
|
}
void ManualCookWindow::stop()
{
|
ac60b5cec
김태훈
음향 효과 일부 적용 및 소스 ...
|
319
320
|
if (oven->cooking())
SoundPlayer::playStop();
|
bb26a0523
김태훈
소스 코드 정리
|
321
322
|
oven->stop();
startCookingTimer.stop();
|
bb26a0523
김태훈
소스 코드 정리
|
323
324
325
326
|
}
void ManualCookWindow::on_steamButton_clicked()
{
|
d0cfbd177
김태훈
GUI V0.1.10 (이 버전...
|
327
|
setOvenDefault(Define::SteamMode);
|
bb26a0523
김태훈
소스 코드 정리
|
328
329
330
331
|
}
void ManualCookWindow::on_combiButton_clicked()
{
|
d0cfbd177
김태훈
GUI V0.1.10 (이 버전...
|
332
|
setOvenDefault(Define::CombiMode);
|
bb26a0523
김태훈
소스 코드 정리
|
333
334
335
336
|
}
void ManualCookWindow::on_dryheatButton_clicked()
{
|
d0cfbd177
김태훈
GUI V0.1.10 (이 버전...
|
337
|
setOvenDefault(Define::DryMode);
|
bb26a0523
김태훈
소스 코드 정리
|
338
339
340
341
342
343
344
345
346
347
348
|
}
void ManualCookWindow::on_humidityButton_pressed()
{
showCurrentHumidityTimer.start();
}
void ManualCookWindow::on_humidityButton_released()
{
if (showCurrentHumidityTimer.isActive())
showCurrentHumidityTimer.stop();
|
c598b01b2
김태훈
GUI 업데이트
|
349
|
else
|
bb26a0523
김태훈
소스 코드 정리
|
350
|
hideCurrentHumidity();
|
8c2952457
김태훈
응용 프로그램 추가
|
351
|
}
|
bb26a0523
김태훈
소스 코드 정리
|
352
|
void ManualCookWindow::on_tempButton_pressed()
|
8c2952457
김태훈
응용 프로그램 추가
|
353
|
{
|
bb26a0523
김태훈
소스 코드 정리
|
354
355
|
showCurrentTempTimer.start();
}
|
8c2952457
김태훈
응용 프로그램 추가
|
356
|
|
bb26a0523
김태훈
소스 코드 정리
|
357
358
359
360
361
362
363
364
365
366
367
368
369
|
void ManualCookWindow::on_tempButton_released()
{
if (showCurrentTempTimer.isActive())
showCurrentTempTimer.stop();
else
hideCurrentTemp();
}
void ManualCookWindow::on_interTempButton_clicked()
{
if (oven->interTempEnabled())
oven->setInterTempEnabled(false);
else
|
d35b8bcdf
김태훈
수동 요리의 중심 요리 설정 화...
|
370
371
372
373
|
{
CoreTempSettingPopup *p = new CoreTempSettingPopup(this);
p->show();
}
|
8c2952457
김태훈
응용 프로그램 추가
|
374
|
}
|
bb26a0523
김태훈
소스 코드 정리
|
375
|
void ManualCookWindow::on_runStopButton_clicked()
|
8c2952457
김태훈
응용 프로그램 추가
|
376
|
{
|
bb26a0523
김태훈
소스 코드 정리
|
377
|
if (oven->cooking())
|
bb26a0523
김태훈
소스 코드 정리
|
378
|
stop();
|
8c2952457
김태훈
응용 프로그램 추가
|
379
|
else
|
f588aa273
김태훈
부가 기능 로직 추가
|
380
|
start();
|
bb26a0523
김태훈
소스 코드 정리
|
381
382
383
384
385
386
387
388
389
|
}
void ManualCookWindow::on_fanButton_clicked()
{
int fan = oven->fan() + 1;
if (fan > oven->maxFan())
fan = oven->minFan();
oven->setFan(fan);
|
8c2952457
김태훈
응용 프로그램 추가
|
390
391
392
393
|
}
void ManualCookWindow::on_preheatButton_clicked()
{
|
bb26a0523
김태훈
소스 코드 정리
|
394
|
startCookingTimer.stop();
|
4fc65fb81
김태훈
GUI V0.1.6(이 버전으로...
|
395
|
|
05f2a7552
김태훈
image 관리 구조 변경
|
396
397
398
|
PreheatPopup *p = new PreheatPopup(this, oven);
p->setWindowModality(Qt::WindowModal);
p->showFullScreen();
|
8c2952457
김태훈
응용 프로그램 추가
|
399
400
401
402
|
}
void ManualCookWindow::on_damperButton_clicked()
{
|
c598b01b2
김태훈
GUI 업데이트
|
403
404
|
if (oven->damper())
oven->closeDamper();
|
8c2952457
김태훈
응용 프로그램 추가
|
405
|
else
|
c598b01b2
김태훈
GUI 업데이트
|
406
|
oven->openDamper();
|
8c2952457
김태훈
응용 프로그램 추가
|
407
408
409
410
|
}
void ManualCookWindow::on_humidificationButton_clicked()
{
|
c598b01b2
김태훈
GUI 업데이트
|
411
412
|
if (oven->humidification())
oven->stopHumidification();
|
8c2952457
김태훈
응용 프로그램 추가
|
413
|
else
|
c598b01b2
김태훈
GUI 업데이트
|
414
|
oven->startHumidification();
|
8c2952457
김태훈
응용 프로그램 추가
|
415
416
417
418
|
}
void ManualCookWindow::on_repeatButton_clicked()
{
|
8c2952457
김태훈
응용 프로그램 추가
|
419
|
|
8c2952457
김태훈
응용 프로그램 추가
|
420
421
422
423
|
}
void ManualCookWindow::on_cooldownButton_clicked()
{
|
bb26a0523
김태훈
소스 코드 정리
|
424
|
startCookingTimer.stop();
|
cfc2fcc35
김태훈
쿨다운 팝업 추가
|
425
426
427
428
|
CooldownPopup *p = new CooldownPopup(this, oven);
p->setWindowModality(Qt::WindowModal);
p->showFullScreen();
|
8c2952457
김태훈
응용 프로그램 추가
|
429
430
431
432
|
}
void ManualCookWindow::on_reserveButton_clicked()
{
|
8c2952457
김태훈
응용 프로그램 추가
|
433
|
|
8c2952457
김태훈
응용 프로그램 추가
|
434
435
436
437
|
}
void ManualCookWindow::on_favoritesButton_clicked()
{
|
f588aa273
김태훈
부가 기능 로직 추가
|
438
439
440
441
442
|
if (oven->cooking())
return;
ConfirmPopup *p = new ConfirmPopup(this, tr("즐겨찾기 항목에 추가하시겠습니까?"));
p->showFullScreen();
|
8c2952457
김태훈
응용 프로그램 추가
|
443
|
|
f588aa273
김태훈
부가 기능 로직 추가
|
444
445
446
447
448
449
450
|
connect(p, SIGNAL(accepted()), SLOT(addFavorite()));
if (startCookingTimer.isActive())
{
startCookingTimer.stop();
connect(p, SIGNAL(rejected()), &startCookingTimer, SLOT(start()));
}
|
8c2952457
김태훈
응용 프로그램 추가
|
451
|
}
|
bb26a0523
김태훈
소스 코드 정리
|
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
|
void ManualCookWindow::on_goBackStackButton_clicked()
{
ui->buttonStack->setCurrentIndex(1);
}
void ManualCookWindow::on_goFrontStackButton_clicked()
{
ui->buttonStack->setCurrentIndex(0);
}
void ManualCookWindow::on_backButton_clicked()
{
stop();
close();
}
|
f588aa273
김태훈
부가 기능 로직 추가
|
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
|
void ManualCookWindow::addFavorite()
{
ManualCookSetting s;
s.mode = oven->mode();
s.humidity = oven->humidity();
s.temp = oven->temp();
s.time = oven->time();
s.fan = oven->fan();
s.coreTempEnabled = oven->interTempEnabled();
s.coreTemp = oven->interTemp();
FavoriteNamePopup *p = new FavoriteNamePopup(this, s);
p->showFullScreen();
}
|