ec04831f5
고영탁
모델 설정 변경
|
1
|
#include <QDebug>
|
22f83e90f
김태훈
모델 설정 UI 추가
|
2
3
|
#include "gasmodelsettingwindow.h"
#include "ui_gasmodelsettingwindow.h"
|
ec04831f5
고영탁
모델 설정 변경
|
4
|
#include "yesnopopupdlg.h"
|
22f83e90f
김태훈
모델 설정 UI 추가
|
5
|
|
66e60ceb5
김태훈
모든 버튼에 음향 효과 추가
|
6
|
#include "soundplayer.h"
|
22f83e90f
김태훈
모델 설정 UI 추가
|
7
8
9
10
11
12
13
14
|
GasModelSettingWindow::GasModelSettingWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::GasModelSettingWindow)
{
ui->setupUi(this);
ui->clockContainer->setParent(ui->upperStack);
setAttribute(Qt::WA_DeleteOnClose);
|
66e60ceb5
김태훈
모든 버튼에 음향 효과 추가
|
15
16
17
|
foreach (QPushButton *button, findChildren<QPushButton *>())
connect(button, &QPushButton::pressed, SoundPlayer::playClick);
|
ec04831f5
고영탁
모델 설정 변경
|
18
19
|
Config* cfg = Config::getInstance();
|
9e1f8d093
김태훈
엔코더 구현 대비 선행 수정
|
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
Define::config_item item;
item = cfg->getConfigValue(Define::config_model);
selitem = item.d32;
switch(item.d32){
case Define::model_gas_lng_10:
ui->lng10Button->setChecked(true);
break;
case Define::model_gas_lng_20:
ui->lng20Button->setChecked(true);
break;
case Define::model_gas_lng_24:
ui->lng24Button->setChecked(true);
break;
case Define::model_gas_lng_40:
ui->lng40Button->setChecked(true);
break;
case Define::model_gas_lpg_10:
ui->lpg10Button->setChecked(true);
break;
case Define::model_gas_lpg_20:
ui->lpg20Button->setChecked(true);
break;
case Define::model_gas_lpg_24:
ui->lpg24Button->setChecked(true);
break;
case Define::model_gas_lpg_40:
ui->lpg40Button->setChecked(true);
break;
}
|
22f83e90f
김태훈
모델 설정 UI 추가
|
49
50
51
52
53
54
|
}
GasModelSettingWindow::~GasModelSettingWindow()
{
delete ui;
}
|
9e1f8d093
김태훈
엔코더 구현 대비 선행 수정
|
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
void GasModelSettingWindow::keyPressEvent(QKeyEvent *event)
{
switch (event->key())
{
case 0x01000030: // Turn left
onEncoderLeft();
break;
case 0x01000031: // Push
pushed = focusWidget();
break;
case 0x01000032: // Turn right
onEncoderRight();
break;
}
}
void GasModelSettingWindow::keyReleaseEvent(QKeyEvent *event)
{
switch (event->key())
{
case 0x01000030: // Turn left
onEncoderLeft();
break;
case 0x01000031: // Push
if (focusWidget() == pushed)
onEncoderClicked(pushed);
pushed = NULL;
break;
case 0x01000032: // Turn right
onEncoderRight();
break;
}
}
|
5cf78e0e6
김태훈
모델 설정을 환경 설정에 반영
|
89
|
void GasModelSettingWindow::setModel(Define::model_type model)
|
22f83e90f
김태훈
모델 설정 UI 추가
|
90
|
{
|
5cf78e0e6
김태훈
모델 설정을 환경 설정에 반영
|
91
92
|
Define::config_item item;
item.d32 = (int) model;
|
22f83e90f
김태훈
모델 설정 UI 추가
|
93
|
|
5cf78e0e6
김태훈
모델 설정을 환경 설정에 반영
|
94
95
96
|
Config *config = Config::getInstance();
config->setConfigValue(Define::config_model, item);
config->saveConfig();
|
22f83e90f
김태훈
모델 설정 UI 추가
|
97
|
}
|
5cf78e0e6
김태훈
모델 설정을 환경 설정에 반영
|
98
|
void GasModelSettingWindow::on_lpg10Button_clicked()
|
22f83e90f
김태훈
모델 설정 UI 추가
|
99
|
{
|
ec04831f5
고영탁
모델 설정 변경
|
100
101
|
//setModel(Define::model_gas_lpg_10);
selitem = Define::model_gas_lpg_10;
|
5cf78e0e6
김태훈
모델 설정을 환경 설정에 반영
|
102
|
}
|
22f83e90f
김태훈
모델 설정 UI 추가
|
103
|
|
5cf78e0e6
김태훈
모델 설정을 환경 설정에 반영
|
104
105
|
void GasModelSettingWindow::on_lng10Button_clicked()
{
|
ec04831f5
고영탁
모델 설정 변경
|
106
107
|
//setModel(Define::model_gas_lng_10);
selitem = Define::model_gas_lng_10;
|
22f83e90f
김태훈
모델 설정 UI 추가
|
108
109
110
111
|
}
void GasModelSettingWindow::on_lpg20Button_clicked()
{
|
ec04831f5
고영탁
모델 설정 변경
|
112
113
|
//setModel(Define::model_gas_lpg_20);
selitem = Define::model_gas_lpg_20;
|
22f83e90f
김태훈
모델 설정 UI 추가
|
114
115
116
117
|
}
void GasModelSettingWindow::on_lng20Button_clicked()
{
|
ec04831f5
고영탁
모델 설정 변경
|
118
119
|
//setModel(Define::model_gas_lng_20);
selitem = Define::model_gas_lng_20;
|
22f83e90f
김태훈
모델 설정 UI 추가
|
120
121
122
123
|
}
void GasModelSettingWindow::on_lpg24Button_clicked()
{
|
ec04831f5
고영탁
모델 설정 변경
|
124
125
|
//setModel(Define::model_gas_lpg_24);
selitem = Define::model_gas_lpg_24;
|
22f83e90f
김태훈
모델 설정 UI 추가
|
126
127
128
129
|
}
void GasModelSettingWindow::on_lng24Button_clicked()
{
|
ec04831f5
고영탁
모델 설정 변경
|
130
131
|
//setModel(Define::model_gas_lng_24);
selitem = Define::model_gas_lng_24;
|
22f83e90f
김태훈
모델 설정 UI 추가
|
132
133
134
135
|
}
void GasModelSettingWindow::on_lpg40Button_clicked()
{
|
ec04831f5
고영탁
모델 설정 변경
|
136
137
|
//setModel(Define::model_gas_lpg_40);
selitem = Define::model_gas_lpg_40;
|
22f83e90f
김태훈
모델 설정 UI 추가
|
138
139
140
141
|
}
void GasModelSettingWindow::on_lng40Button_clicked()
{
|
ec04831f5
고영탁
모델 설정 변경
|
142
143
|
//setModel(Define::model_gas_lng_40);
selitem = Define::model_gas_lng_40;
|
22f83e90f
김태훈
모델 설정 UI 추가
|
144
145
146
147
|
}
void GasModelSettingWindow::on_backButton_clicked()
{
|
ec04831f5
고영탁
모델 설정 변경
|
148
149
150
151
152
153
154
155
156
157
158
159
160
|
Config* cfg = Config::getInstance();
Define::config_item item;
item = cfg->getConfigValue(Define::config_model);
if(selitem != item.d32){
YesNoPopupDlg* yesnopop = new YesNoPopupDlg(this, tr("모델을 변경하시겠습니까?"));
yesnopop->setModal(true);
yesnopop->exec();
if(yesnopop->result() == QDialog::Accepted){
setModel((Define::model_type)selitem);
qDebug() << "saved";
}
}
|
22f83e90f
김태훈
모델 설정 UI 추가
|
161
162
|
close();
}
|
9e1f8d093
김태훈
엔코더 구현 대비 선행 수정
|
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
|
void GasModelSettingWindow::onEncoderLeft()
{
focusPreviousChild();
}
void GasModelSettingWindow::onEncoderRight()
{
focusNextChild();
}
void GasModelSettingWindow::onEncoderClicked(QWidget *clicked)
{
QPushButton *b = qobject_cast<QPushButton *>(clicked);
if (b)
b->click();
}
|