Commit d0ee3ccc85b152b3d6ea3a5cdc62843240234421

Authored by 고영탁
1 parent 6206812b0d
Exists in master and in 2 other branches fhd, fhd-demo

버그 수정 및 비밀 번호 입력창 개발

- 볼륨 조정 등 이미지 깨짐 수정
- 비밀번호 입력창 추가
app/gui/oven_control/config1digitsetdlg.cpp
... ... @@ -47,6 +47,7 @@ Config1DigitSetDlg::Config1DigitSetDlg(QWidget *parent, ConfigType type) :
47 47  
48 48 strTemp1.sprintf("%%0%d",setting_val.maxlen);
49 49  
  50 + ui->ctrSpBxValue->installEventFilter(this);
50 51  
51 52 }
52 53  
... ... @@ -68,3 +69,13 @@ void Config1DigitSetDlg::on_ctrBtnCancel_clicked()
68 69 {
69 70 reject();
70 71 }
  72 +
  73 +bool Config1DigitSetDlg::eventFilter(QObject *object, QEvent *event){
  74 + if (object == ui->ctrSpBxValue && event->type() == QEvent::MouseButtonRelease )
  75 + {
  76 + ui->ctrSpBxValue->selectAll();
  77 + qDebug() << "Mouse Release2";
  78 +
  79 + }
  80 + return QWidget::eventFilter(object, event);
  81 +}
... ...
app/gui/oven_control/config1digitsetdlg.h
... ... @@ -23,6 +23,8 @@ private slots:
23 23  
24 24 void on_ctrBtnCancel_clicked();
25 25  
  26 + bool eventFilter(QObject *, QEvent *);
  27 +
26 28 private:
27 29 Ui::Config1DigitSetDlg *ui;
28 30 ConfigType m_nType;
... ...
app/gui/oven_control/configbacklightdlg.ui
... ... @@ -186,6 +186,16 @@ QPushButton::pressed, QPushButton::focus{
186 186 <underline>true</underline>
187 187 </font>
188 188 </property>
  189 + <property name="styleSheet">
  190 + <string notr="true">QPushButton{
  191 + border : none;
  192 + color : white;
  193 +}
  194 +
  195 +QPushButton::pressed, QPushButton::focus{
  196 + color : yellow;
  197 +}</string>
  198 + </property>
189 199 <property name="text">
190 200 <string>취소</string>
191 201 </property>
... ... @@ -211,6 +221,16 @@ QPushButton::pressed, QPushButton::focus{
211 221 <underline>true</underline>
212 222 </font>
213 223 </property>
  224 + <property name="styleSheet">
  225 + <string notr="true">QPushButton{
  226 + border : none;
  227 + color : white;
  228 +}
  229 +
  230 +QPushButton::pressed, QPushButton::focus{
  231 + color : yellow;
  232 +}</string>
  233 + </property>
214 234 <property name="text">
215 235 <string>확인</string>
216 236 </property>
... ...
app/gui/oven_control/configdatetimedlg.ui
... ... @@ -351,6 +351,9 @@ QPushButton::pressed, QPushButton::focus{
351 351 <kerning>true</kerning>
352 352 </font>
353 353 </property>
  354 + <property name="mouseTracking">
  355 + <bool>false</bool>
  356 + </property>
354 357 <property name="focusPolicy">
355 358 <enum>Qt::StrongFocus</enum>
356 359 </property>
... ... @@ -467,13 +470,8 @@ QPushButton::pressed, QPushButton::focus{
467 470 <height>600</height>
468 471 </rect>
469 472 </property>
470   - <zorder>centralwidget</zorder>
471   - <zorder>centralwidget</zorder>
472   - <zorder>centralwidget</zorder>
473 473 </widget>
474 474 </widget>
475   - <zorder>centralwidget</zorder>
476   - <zorder>keyboardwidget</zorder>
477 475 </widget>
478 476 <customwidgets>
479 477 <customwidget>
... ...
app/gui/oven_control/configmastervolumedlg.ui
... ... @@ -186,6 +186,16 @@ QPushButton::pressed, QPushButton::focus{
186 186 <underline>true</underline>
187 187 </font>
188 188 </property>
  189 + <property name="styleSheet">
  190 + <string notr="true">QPushButton{
  191 + border : none;
  192 + color : white;
  193 +}
  194 +
  195 +QPushButton::pressed, QPushButton::focus{
  196 + color : yellow;
  197 +}</string>
  198 + </property>
189 199 <property name="text">
190 200 <string>취소</string>
191 201 </property>
... ... @@ -211,6 +221,16 @@ QPushButton::pressed, QPushButton::focus{
211 221 <underline>true</underline>
212 222 </font>
213 223 </property>
  224 + <property name="styleSheet">
  225 + <string notr="true">QPushButton{
  226 + border : none;
  227 + color : white;
  228 +}
  229 +
  230 +QPushButton::pressed, QPushButton::focus{
  231 + color : yellow;
  232 +}</string>
  233 + </property>
214 234 <property name="text">
215 235 <string>확인</string>
216 236 </property>
... ...
app/gui/oven_control/configwindow.cpp
... ... @@ -8,7 +8,7 @@
8 8 #include "configinfodlg.h"
9 9 #include "yesnopopupdlg.h"
10 10 #include "configdatetimedlg.h"
11   -
  11 +#include "servicepassinputdlg.h"
12 12  
13 13  
14 14  
... ... @@ -110,9 +110,13 @@ void ConfigWindow::onConfigBtnClicked(uint16_t id){
110 110 break;
111 111 case config_enter_engineer_mode:
112 112 {
113   - EngineerMenuWindow *w = new EngineerMenuWindow(this);
114   - w->setWindowModality(Qt::WindowModal);
115   - w->showFullScreen();
  113 + dlg = new ServicePassInputDlg(this);
  114 + dlg->exec();
  115 + if(dlg->result() == QDialog::Accepted){
  116 + EngineerMenuWindow *w = new EngineerMenuWindow(this);
  117 + w->setWindowModality(Qt::WindowModal);
  118 + w->showFullScreen();
  119 + }
116 120 break;
117 121 }
118 122 case config_software_info:
... ...
app/gui/oven_control/formatterspinbox.cpp
1 1 #include <QtWidgets>
  2 +#include <QDebug>
2 3  
3 4 #include "formatterspinbox.h"
4 5  
... ... @@ -6,6 +7,7 @@ FormatterSpinBox::FormatterSpinBox(QWidget *parent)
6 7 : QSpinBox(parent)
7 8 {
8 9 m_nwidth = 2;
  10 +
9 11 }
10 12  
11 13 //! [1]
... ... @@ -27,3 +29,11 @@ FormatterSpinBox::FormatterSpinBox(QWidget *parent)
27 29 void FormatterSpinBox::setFormatterWidth(int wid){
28 30 m_nwidth = wid;
29 31 }
  32 +
  33 + void FormatterSpinBox::focusInEvent(QFocusEvent *event){
  34 + QTimer::singleShot(200,this,SLOT(selectAll()));
  35 + }
  36 +
  37 + void FormatterSpinBox::mouseReleaseEvent(QMouseEvent *event){
  38 + this->selectAll();
  39 + }
... ...
app/gui/oven_control/formatterspinbox.h
... ... @@ -19,6 +19,10 @@ public:
19 19 QString textFromValue(int value) const Q_DECL_OVERRIDE;
20 20  
21 21 void setFormatterWidth(int wid);
  22 +
  23 + void focusInEvent(QFocusEvent *event);
  24 +
  25 + void mouseReleaseEvent(QMouseEvent *event);
22 26 };
23 27  
24 28 #endif // SPINBOX_H
... ...
app/gui/oven_control/oven_control.pro
... ... @@ -98,7 +98,8 @@ SOURCES += main.cpp\
98 98 modelsettingwindow.cpp \
99 99 gasmodelsettingwindow.cpp \
100 100 electricmodelsettingwindow.cpp \
101   - system.cpp
  101 + system.cpp \
  102 + servicepassinputdlg.cpp
102 103  
103 104 HEADERS += mainwindow.h \
104 105 cook.h \
... ... @@ -186,7 +187,8 @@ HEADERS += mainwindow.h \
186 187 modelsettingwindow.h \
187 188 gasmodelsettingwindow.h \
188 189 electricmodelsettingwindow.h \
189   - system.h
  190 + system.h \
  191 + servicepassinputdlg.h
190 192  
191 193 FORMS += mainwindow.ui \
192 194 manualcookwindow.ui \
... ... @@ -247,7 +249,8 @@ FORMS += mainwindow.ui \
247 249 configfavoritebutton.ui \
248 250 modelsettingwindow.ui \
249 251 gasmodelsettingwindow.ui \
250   - electricmodelsettingwindow.ui
  252 + electricmodelsettingwindow.ui \
  253 + servicepassinputdlg.ui
251 254  
252 255 RESOURCES += \
253 256 resources.qrc
... ...
app/gui/oven_control/servicepassinputdlg.cpp
... ... @@ -0,0 +1,33 @@
  1 +#include "servicepassinputdlg.h"
  2 +#include "ui_servicepassinputdlg.h"
  3 +
  4 +#define PASS_WORD "0000"
  5 +
  6 +ServicePassInputDlg::ServicePassInputDlg(QWidget *parent) :
  7 + QDialog(parent),
  8 + ui(new Ui::ServicePassInputDlg)
  9 +{
  10 + ui->setupUi(this);
  11 + setWindowFlags(Qt::FramelessWindowHint);
  12 + setAttribute(Qt::WA_NoSystemBackground);
  13 + setAttribute(Qt::WA_TranslucentBackground);
  14 + setAttribute(Qt::WA_DeleteOnClose);
  15 +}
  16 +
  17 +ServicePassInputDlg::~ServicePassInputDlg()
  18 +{
  19 + delete ui;
  20 +}
  21 +
  22 +void ServicePassInputDlg::on_ctrBtnOk_clicked()
  23 +{
  24 + if(ui->lineEdit->text() == PASS_WORD){
  25 + accept();
  26 + }
  27 + else reject();
  28 +}
  29 +
  30 +void ServicePassInputDlg::on_ctrBtnCancel_clicked()
  31 +{
  32 + reject();
  33 +}
... ...
app/gui/oven_control/servicepassinputdlg.h
... ... @@ -0,0 +1,27 @@
  1 +#ifndef SERVICEPASSINPUTDLG_H
  2 +#define SERVICEPASSINPUTDLG_H
  3 +
  4 +#include <QDialog>
  5 +
  6 +namespace Ui {
  7 +class ServicePassInputDlg;
  8 +}
  9 +
  10 +class ServicePassInputDlg : public QDialog
  11 +{
  12 + Q_OBJECT
  13 +
  14 +public:
  15 + explicit ServicePassInputDlg(QWidget *parent = 0);
  16 + ~ServicePassInputDlg();
  17 +
  18 +private slots:
  19 + void on_ctrBtnOk_clicked();
  20 +
  21 + void on_ctrBtnCancel_clicked();
  22 +
  23 +private:
  24 + Ui::ServicePassInputDlg *ui;
  25 +};
  26 +
  27 +#endif // SERVICEPASSINPUTDLG_H
... ...
app/gui/oven_control/servicepassinputdlg.ui
... ... @@ -0,0 +1,259 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<ui version="4.0">
  3 + <class>ServicePassInputDlg</class>
  4 + <widget class="QDialog" name="ServicePassInputDlg">
  5 + <property name="geometry">
  6 + <rect>
  7 + <x>0</x>
  8 + <y>0</y>
  9 + <width>900</width>
  10 + <height>1600</height>
  11 + </rect>
  12 + </property>
  13 + <property name="windowTitle">
  14 + <string>Dialog</string>
  15 + </property>
  16 + <property name="styleSheet">
  17 + <string notr="true">#ConfigDateTimeDlg{
  18 + /*background-color : transparent;*/
  19 +}
  20 +
  21 +#centralwidget{
  22 + background-image : url(:/images/background/popup/913.png);
  23 +}
  24 +
  25 +QLabel {
  26 + color : white;
  27 +}
  28 +QLineEdit{
  29 + background-color : transparent;
  30 + color : white;
  31 +}
  32 +
  33 +QSpinBox{
  34 + background-color : transparent;
  35 + color : white;
  36 +}
  37 +
  38 +QPushButton{
  39 + border-color : transparent;
  40 + background-color : transparent;
  41 + color : white;
  42 +}
  43 +QPushButton::pressed, QPushButton::focus{
  44 + color : yellow;
  45 +}</string>
  46 + </property>
  47 + <widget class="QWidget" name="centralwidget" native="true">
  48 + <property name="geometry">
  49 + <rect>
  50 + <x>0</x>
  51 + <y>425</y>
  52 + <width>900</width>
  53 + <height>1025</height>
  54 + </rect>
  55 + </property>
  56 + <widget class="QWidget" name="verticalLayoutWidget">
  57 + <property name="geometry">
  58 + <rect>
  59 + <x>0</x>
  60 + <y>0</y>
  61 + <width>901</width>
  62 + <height>441</height>
  63 + </rect>
  64 + </property>
  65 + <layout class="QVBoxLayout" name="verticalLayout" stretch="0,0,6,4">
  66 + <property name="spacing">
  67 + <number>0</number>
  68 + </property>
  69 + <property name="sizeConstraint">
  70 + <enum>QLayout::SetDefaultConstraint</enum>
  71 + </property>
  72 + <property name="topMargin">
  73 + <number>30</number>
  74 + </property>
  75 + <item>
  76 + <widget class="QLabel" name="ctrLbTitle_2">
  77 + <property name="maximumSize">
  78 + <size>
  79 + <width>16777215</width>
  80 + <height>94</height>
  81 + </size>
  82 + </property>
  83 + <property name="font">
  84 + <font>
  85 + <family>나눔고딕</family>
  86 + <pointsize>18</pointsize>
  87 + <weight>75</weight>
  88 + <bold>true</bold>
  89 + </font>
  90 + </property>
  91 + <property name="styleSheet">
  92 + <string notr="true">color : white;</string>
  93 + </property>
  94 + <property name="text">
  95 + <string/>
  96 + </property>
  97 + <property name="pixmap">
  98 + <pixmap resource="resources.qrc">:/images/config/051_password_icon.png</pixmap>
  99 + </property>
  100 + <property name="alignment">
  101 + <set>Qt::AlignCenter</set>
  102 + </property>
  103 + </widget>
  104 + </item>
  105 + <item>
  106 + <widget class="QLabel" name="ctrLbTitle">
  107 + <property name="maximumSize">
  108 + <size>
  109 + <width>16777215</width>
  110 + <height>40</height>
  111 + </size>
  112 + </property>
  113 + <property name="font">
  114 + <font>
  115 + <family>나눔고딕</family>
  116 + <pointsize>10</pointsize>
  117 + <weight>75</weight>
  118 + <bold>true</bold>
  119 + </font>
  120 + </property>
  121 + <property name="styleSheet">
  122 + <string notr="true">color : white;</string>
  123 + </property>
  124 + <property name="text">
  125 + <string>서비스</string>
  126 + </property>
  127 + <property name="alignment">
  128 + <set>Qt::AlignCenter</set>
  129 + </property>
  130 + </widget>
  131 + </item>
  132 + <item>
  133 + <layout class="QGridLayout" name="gridLayout_2" columnstretch="94">
  134 + <property name="leftMargin">
  135 + <number>20</number>
  136 + </property>
  137 + <property name="topMargin">
  138 + <number>30</number>
  139 + </property>
  140 + <property name="rightMargin">
  141 + <number>20</number>
  142 + </property>
  143 + <property name="horizontalSpacing">
  144 + <number>13</number>
  145 + </property>
  146 + <property name="verticalSpacing">
  147 + <number>0</number>
  148 + </property>
  149 + <item row="0" column="0">
  150 + <widget class="QLineEdit" name="lineEdit">
  151 + <property name="font">
  152 + <font>
  153 + <pointsize>30</pointsize>
  154 + </font>
  155 + </property>
  156 + <property name="styleSheet">
  157 + <string notr="true"> QLineEdit[echoMode=&quot;2&quot;] {
  158 + lineedit-password-character: 8251;
  159 + }</string>
  160 + </property>
  161 + <property name="inputMask">
  162 + <string>9999</string>
  163 + </property>
  164 + <property name="echoMode">
  165 + <enum>QLineEdit::Password</enum>
  166 + </property>
  167 + <property name="alignment">
  168 + <set>Qt::AlignCenter</set>
  169 + </property>
  170 + </widget>
  171 + </item>
  172 + </layout>
  173 + </item>
  174 + <item>
  175 + <layout class="QGridLayout" name="gridLayout" columnstretch="1,1,1,1,1,1">
  176 + <property name="leftMargin">
  177 + <number>10</number>
  178 + </property>
  179 + <property name="rightMargin">
  180 + <number>10</number>
  181 + </property>
  182 + <property name="bottomMargin">
  183 + <number>0</number>
  184 + </property>
  185 + <item row="0" column="5">
  186 + <widget class="QPushButton" name="ctrBtnCancel">
  187 + <property name="sizePolicy">
  188 + <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
  189 + <horstretch>0</horstretch>
  190 + <verstretch>0</verstretch>
  191 + </sizepolicy>
  192 + </property>
  193 + <property name="font">
  194 + <font>
  195 + <family>나눔고딕</family>
  196 + <pointsize>12</pointsize>
  197 + <underline>true</underline>
  198 + </font>
  199 + </property>
  200 + <property name="text">
  201 + <string>취소</string>
  202 + </property>
  203 + <property name="flat">
  204 + <bool>true</bool>
  205 + </property>
  206 + </widget>
  207 + </item>
  208 + <item row="0" column="4">
  209 + <widget class="QPushButton" name="ctrBtnOk">
  210 + <property name="sizePolicy">
  211 + <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
  212 + <horstretch>0</horstretch>
  213 + <verstretch>0</verstretch>
  214 + </sizepolicy>
  215 + </property>
  216 + <property name="font">
  217 + <font>
  218 + <family>나눔고딕</family>
  219 + <pointsize>12</pointsize>
  220 + <underline>true</underline>
  221 + </font>
  222 + </property>
  223 + <property name="text">
  224 + <string>확인</string>
  225 + </property>
  226 + <property name="flat">
  227 + <bool>true</bool>
  228 + </property>
  229 + </widget>
  230 + </item>
  231 + </layout>
  232 + </item>
  233 + </layout>
  234 + </widget>
  235 + <widget class="KeyboardWidget" name="keyboardwidget" native="true">
  236 + <property name="geometry">
  237 + <rect>
  238 + <x>0</x>
  239 + <y>425</y>
  240 + <width>900</width>
  241 + <height>600</height>
  242 + </rect>
  243 + </property>
  244 + </widget>
  245 + </widget>
  246 + </widget>
  247 + <customwidgets>
  248 + <customwidget>
  249 + <class>KeyboardWidget</class>
  250 + <extends>QWidget</extends>
  251 + <header>keyboardwidget.h</header>
  252 + <container>1</container>
  253 + </customwidget>
  254 + </customwidgets>
  255 + <resources>
  256 + <include location="resources.qrc"/>
  257 + </resources>
  258 + <connections/>
  259 +</ui>
... ...