Commit 1f685a2a558c9c43b5734e5330a1a5ad033970a5

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

설정 시스템 관리 기능 개발

- 파일 복사 프로그레스 바 적용
- 파일 복사 다이얼로그 추가
- 기본 설정 다운로드/업로드 기능 개발
app/gui/oven_control/config.cpp
... ... @@ -18,6 +18,7 @@
18 18 #include "confighalfenergydlg.h"
19 19 #include "config1digitsetdlg.h"
20 20 #include "configdutywashdlg.h"
  21 +#include "fileprocessor.h"
21 22  
22 23 using namespace Define;
23 24  
... ... @@ -325,6 +326,7 @@ QString Config::getTempString(int cel_temp){
325 326 void Config::execConfigWindow(QWidget *parent, Define::ConfigType idx){
326 327 QDialog *dlg;
327 328 bool bUsbDetect = false;
  329 + QString usbPath = "";
328 330 switch(idx){
329 331 case config_language:
330 332 dlg = new ConfigLanguageDlg(parent);
... ... @@ -362,21 +364,26 @@ void Config::execConfigWindow(QWidget *parent, Define::ConfigType idx){
362 364 case config_service_data_download:
363 365 case config_program_download:
364 366 case config_set_download:
365   - if(!bUsbDetect){
  367 + if(!FileProcessor::detectUSB(usbPath)){
366 368 dlg = new UsbCheckPopupDlg(parent);
367 369 dlg->exec();
368 370 }
369   - dlg = new ConfigFileProcessDlg(parent,idx);
370   - dlg->exec();
  371 + if(FileProcessor::detectUSB(usbPath)){
  372 + dlg = new ConfigFileProcessDlg(parent,idx);
  373 + dlg->exec();
  374 + }
371 375 return;
372 376 case config_set_upload:
373 377 case config_program_upload:
374   - if(!bUsbDetect){
  378 +
  379 + if(!FileProcessor::detectUSB(usbPath)){
375 380 dlg = new UsbCheckPopupDlg(parent);
376 381 dlg->exec();
377 382 }
378   - dlg = new ConfigFileProcessDlg(parent,idx,false);
379   - dlg->exec();
  383 + if(FileProcessor::detectUSB(usbPath)){
  384 + dlg = new ConfigFileProcessDlg(parent,idx,false);
  385 + dlg->exec();
  386 + }
380 387 return;
381 388 case config_set_half_energy:
382 389 dlg = new ConfigHalfEnergyDlg(parent);
... ...
app/gui/oven_control/configfileprocessdlg.cpp
1 1 #include "configfileprocessdlg.h"
2 2 #include "ui_configfileprocessdlg.h"
3 3 #include "config.h"
  4 +#include "fileprocessdlg.h"
4 5  
5 6 ConfigFileProcessDlg::ConfigFileProcessDlg(QWidget *parent, ConfigType type, bool isDown) :
6 7 QDialog(parent),
... ... @@ -12,6 +13,7 @@ ConfigFileProcessDlg::ConfigFileProcessDlg(QWidget *parent, ConfigType type, boo
12 13 setAttribute(Qt::WA_NoSystemBackground);
13 14 setAttribute(Qt::WA_TranslucentBackground);
14 15 setAttribute(Qt::WA_DeleteOnClose);
  16 + m_bIsDown = isDown;
15 17 if(type < config_invalid)
16 18 {
17 19 m_nCfgtype = type;
... ... @@ -26,6 +28,7 @@ ConfigFileProcessDlg::ConfigFileProcessDlg(QWidget *parent, ConfigType type, boo
26 28  
27 29 }
28 30 }
  31 +
29 32 }
30 33  
31 34 ConfigFileProcessDlg::~ConfigFileProcessDlg()
... ... @@ -35,11 +38,9 @@ ConfigFileProcessDlg::~ConfigFileProcessDlg()
35 38  
36 39 void ConfigFileProcessDlg::on_ctrBtnOk_clicked()
37 40 {
38   - switch(m_nCfgtype){
39   - default:
40   - break;
41   - }
42   -
  41 + QDialog *dg;
  42 + dg = new FileProcessDlg(parentWidget(),m_nCfgtype, m_bIsDown);
  43 + dg->exec();
43 44 deleteLater();
44 45 }
45 46  
... ...
app/gui/oven_control/configfileprocessdlg.h
... ... @@ -26,6 +26,7 @@ private slots:
26 26 private:
27 27 Ui::ConfigFileProcessDlg *ui;
28 28 ConfigType m_nCfgtype;
  29 + bool m_bIsDown;
29 30 };
30 31  
31 32 #endif // CONFIGFILEPROCESSDLG_H
... ...
app/gui/oven_control/configwindow.cpp
... ... @@ -9,7 +9,7 @@
9 9 #include "yesnopopupdlg.h"
10 10 #include "configdatetimedlg.h"
11 11 #include "servicepassinputdlg.h"
12   -
  12 +#include "fileprocessor.h"
13 13  
14 14  
15 15 ConfigWindow::ConfigWindow(QWidget *parent) :
... ...
app/gui/oven_control/fileprocessdlg.cpp
... ... @@ -0,0 +1,123 @@
  1 +#include <QTimer>
  2 +#include <QFile>
  3 +#include "fileprocessdlg.h"
  4 +#include "ui_fileprocessdlg.h"
  5 +#include "fileprocessor.h"
  6 +#include "ovenstatics.h"
  7 +#include <QDebug>
  8 +FileProcessDlg::FileProcessDlg(QWidget *parent, ConfigType type, bool isDown) :
  9 + QDialog(parent),
  10 + ui(new Ui::FileProcessDlg)
  11 +{
  12 + ui->setupUi(this);
  13 + setAttribute(Qt::WA_DeleteOnClose);
  14 + setAttribute(Qt::WA_TranslucentBackground);
  15 + setWindowFlags(Qt::FramelessWindowHint);
  16 +
  17 + ui->ctrWjProcess->setMinimum(0);
  18 + ui->ctrWjProcess->setMaximum(100);
  19 +
  20 + if(isDown){
  21 + QPixmap pxmap;
  22 + pxmap.load(":/images/config/102_usb_upload_icon.png");
  23 + ui->label_2->setPixmap(pxmap);
  24 + }
  25 +
  26 + switch(type){
  27 + case config_info_data_download:
  28 + QTimer::singleShot(100,this,SLOT(infodataDownload()));
  29 + break;
  30 + case config_service_data_download:
  31 + QTimer::singleShot(100,this,SLOT(servicedataDownload()));
  32 + break;
  33 + case config_program_download:
  34 + QTimer::singleShot(100,this,SLOT(programDownload()));
  35 + break;
  36 + case config_program_upload:
  37 + QTimer::singleShot(100,this,SLOT(programUpload()));
  38 + break;
  39 + case config_set_download:
  40 + QTimer::singleShot(100,this,SLOT(configDownload()));
  41 + break;
  42 + case config_set_upload:
  43 + QTimer::singleShot(100,this,SLOT(configUpload()));
  44 + break;
  45 + default:
  46 + QTimer::singleShot(200,this,SLOT(deleteLater()));
  47 + break;
  48 + }
  49 +}
  50 +
  51 +FileProcessDlg::~FileProcessDlg()
  52 +{
  53 + delete ui;
  54 +}
  55 +
  56 +void FileProcessDlg::on_ctrBtnCancel_clicked()
  57 +{
  58 + close();
  59 +}
  60 +
  61 +void FileProcessDlg::infodataDownload(){
  62 +
  63 +}
  64 +
  65 +void FileProcessDlg::servicedataDownload(){
  66 +
  67 +
  68 +}
  69 +
  70 +void FileProcessDlg::programDownload(){
  71 +
  72 +}
  73 +
  74 +void FileProcessDlg::programUpload(){
  75 +
  76 +}
  77 +
  78 +void FileProcessDlg::configDownload(){
  79 + QString strUsbPath;
  80 + if(FileProcessor::detectUSB(strUsbPath)){
  81 + strUsbPath.append("/config.ini");
  82 + qDebug() << strUsbPath;
  83 + if(QFile::copy("/prime/config/config.ini", strUsbPath)){
  84 + ui->ctrWjProcess->setValue(100);
  85 + ui->ctrLbRemainTime->setText("남은 예상 시간 : 0초");
  86 + ui->ctrLbRemainTime->setText(tr("남은 예상 시간 : 완료"));
  87 + QTimer::singleShot(1000,this,SLOT(close()));
  88 + }
  89 + else{
  90 + ui->ctrLbRemainTime->setText(tr("다운로드에 실패하였습니다."));
  91 + QTimer::singleShot(1000,this,SLOT(close()));
  92 + }
  93 + }
  94 + else{
  95 + ui->ctrLbRemainTime->setText(tr("다운로드에 실패하였습니다."));
  96 + QTimer::singleShot(1000,this,SLOT(close()));
  97 + }
  98 +}
  99 +
  100 +void FileProcessDlg::configUpload(){
  101 + QString strUsbPath;
  102 + if(FileProcessor::detectUSB(strUsbPath)){
  103 + strUsbPath.append("/config.ini");
  104 + qDebug() << strUsbPath;
  105 + QFile file("/prime/config/config.ini");
  106 + file.remove();
  107 + if(QFile::copy( strUsbPath , "/prime/config/config.ini")){
  108 + OvenStatistics* ovs = OvenStatistics::getInstance();
  109 + ovs->srvdata->loadServiceData();
  110 + ui->ctrWjProcess->setValue(100);
  111 + ui->ctrLbRemainTime->setText(tr("남은 예상 시간 : 완료"));
  112 + QTimer::singleShot(1000,this,SLOT(close()));
  113 + }
  114 + else{
  115 + ui->ctrLbRemainTime->setText(tr("업로드에 실패하였습니다."));
  116 + QTimer::singleShot(1000,this,SLOT(close()));
  117 + }
  118 + }
  119 + else{
  120 + ui->ctrLbRemainTime->setText(tr("업로드에 실패하였습니다."));
  121 + QTimer::singleShot(1000,this,SLOT(close()));
  122 + }
  123 +}
... ...
app/gui/oven_control/fileprocessdlg.h
... ... @@ -0,0 +1,48 @@
  1 +#ifndef FILEPROCESSDLG_H
  2 +#define FILEPROCESSDLG_H
  3 +
  4 +#include <QDialog>
  5 +#include "config.h"
  6 +#include "servicedata.h"
  7 +
  8 +using namespace Define;
  9 +
  10 +namespace Ui {
  11 +class FileProcessDlg;
  12 +}
  13 +
  14 +class FileProcessDlg : public QDialog
  15 +{
  16 + Q_OBJECT
  17 +
  18 + const uint8_t m_arrErrorMaxIdx[4] = {3,4,3,11};
  19 +
  20 + const char m_strInfoName[4][64] = {"Top Ignition Box\0",
  21 + "Steam Ignition Box\0","Bottom Ignition Box\0","Service Total\0"};
  22 + const uint16_t m_arrErrorIdxs[3][20] = { //서비스 에러 기록 종합은 합산
  23 + {ERROR_IDX_upper_fire_fail,ERROR_IDX_upper_pan_fail,ERROR_IDX_upper_motor_fail},
  24 + {ERROR_IDX_steam_fire_fail,ERROR_IDX_steam_pan_fail,ERROR_IDX_water_level_sensor_fail,ERROR_IDX_steam_gen_temp_high_alram},
  25 + {ERROR_IDX_lower_fire_fail,ERROR_IDX_lower_pan_fail,ERROR_IDX_lower_motor_fail}
  26 + };
  27 +
  28 +
  29 +
  30 +public:
  31 + explicit FileProcessDlg(QWidget *parent = 0, ConfigType type = config_invalid, bool isDown = true);
  32 + ~FileProcessDlg();
  33 +
  34 +private slots:
  35 + void on_ctrBtnCancel_clicked();
  36 + void infodataDownload();
  37 + void servicedataDownload();
  38 + void programDownload();
  39 + void programUpload();
  40 + void configDownload();
  41 + void configUpload();
  42 +
  43 +private:
  44 + Ui::FileProcessDlg *ui;
  45 + ConfigType m_nCfgtype;
  46 +};
  47 +
  48 +#endif // FILEPROCESSDLG_H
... ...
app/gui/oven_control/fileprocessdlg.ui
... ... @@ -0,0 +1,164 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<ui version="4.0">
  3 + <class>FileProcessDlg</class>
  4 + <widget class="QDialog" name="FileProcessDlg">
  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="windowOpacity">
  17 + <double>1.000000000000000</double>
  18 + </property>
  19 + <property name="styleSheet">
  20 + <string notr="true">#centralWidget { background-image: url(:/images/background/popup/503.png);
  21 +}
  22 +</string>
  23 + </property>
  24 + <property name="modal">
  25 + <bool>true</bool>
  26 + </property>
  27 + <widget class="QWidget" name="centralWidget" native="true">
  28 + <property name="geometry">
  29 + <rect>
  30 + <x>0</x>
  31 + <y>430</y>
  32 + <width>900</width>
  33 + <height>503</height>
  34 + </rect>
  35 + </property>
  36 + <property name="styleSheet">
  37 + <string notr="true"/>
  38 + </property>
  39 + <widget class="QWidget" name="verticalLayoutWidget">
  40 + <property name="geometry">
  41 + <rect>
  42 + <x>0</x>
  43 + <y>0</y>
  44 + <width>901</width>
  45 + <height>520</height>
  46 + </rect>
  47 + </property>
  48 + <layout class="QVBoxLayout" name="verticalLayout">
  49 + <property name="topMargin">
  50 + <number>30</number>
  51 + </property>
  52 + <property name="bottomMargin">
  53 + <number>30</number>
  54 + </property>
  55 + <item>
  56 + <widget class="QLabel" name="label_2">
  57 + <property name="text">
  58 + <string/>
  59 + </property>
  60 + <property name="pixmap">
  61 + <pixmap resource="resources.qrc">:/images/config/102_usb_download_icon.png</pixmap>
  62 + </property>
  63 + <property name="alignment">
  64 + <set>Qt::AlignCenter</set>
  65 + </property>
  66 + </widget>
  67 + </item>
  68 + <item alignment="Qt::AlignHCenter">
  69 + <widget class="FileProcessGauge" name="ctrWjProcess" native="true">
  70 + <property name="minimumSize">
  71 + <size>
  72 + <width>820</width>
  73 + <height>120</height>
  74 + </size>
  75 + </property>
  76 + <property name="maximumSize">
  77 + <size>
  78 + <width>820</width>
  79 + <height>120</height>
  80 + </size>
  81 + </property>
  82 + </widget>
  83 + </item>
  84 + <item>
  85 + <widget class="QLabel" name="ctrLbRemainTime">
  86 + <property name="minimumSize">
  87 + <size>
  88 + <width>0</width>
  89 + <height>30</height>
  90 + </size>
  91 + </property>
  92 + <property name="font">
  93 + <font>
  94 + <family>나눔바른고딕</family>
  95 + <pointsize>14</pointsize>
  96 + </font>
  97 + </property>
  98 + <property name="styleSheet">
  99 + <string notr="true">color : white;
  100 +padding-left : 65px;</string>
  101 + </property>
  102 + <property name="text">
  103 + <string>남은 예상 시간 : 1초</string>
  104 + </property>
  105 + <property name="alignment">
  106 + <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
  107 + </property>
  108 + </widget>
  109 + </item>
  110 + <item alignment="Qt::AlignRight">
  111 + <widget class="QPushButton" name="ctrBtnCancel">
  112 + <property name="sizePolicy">
  113 + <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
  114 + <horstretch>0</horstretch>
  115 + <verstretch>0</verstretch>
  116 + </sizepolicy>
  117 + </property>
  118 + <property name="minimumSize">
  119 + <size>
  120 + <width>220</width>
  121 + <height>100</height>
  122 + </size>
  123 + </property>
  124 + <property name="font">
  125 + <font>
  126 + <family>나눔바른고딕</family>
  127 + <pointsize>17</pointsize>
  128 + <weight>75</weight>
  129 + <bold>true</bold>
  130 + <underline>true</underline>
  131 + </font>
  132 + </property>
  133 + <property name="styleSheet">
  134 + <string notr="true">QPushButton{
  135 + border : none;
  136 + color : white;
  137 +}
  138 +
  139 +QPushButton::pressed, QPushButton::focus{
  140 + color : yellow;
  141 +}</string>
  142 + </property>
  143 + <property name="text">
  144 + <string>취소</string>
  145 + </property>
  146 + </widget>
  147 + </item>
  148 + </layout>
  149 + </widget>
  150 + </widget>
  151 + </widget>
  152 + <customwidgets>
  153 + <customwidget>
  154 + <class>FileProcessGauge</class>
  155 + <extends>QWidget</extends>
  156 + <header>fileprocessgauge.h</header>
  157 + <container>1</container>
  158 + </customwidget>
  159 + </customwidgets>
  160 + <resources>
  161 + <include location="resources.qrc"/>
  162 + </resources>
  163 + <connections/>
  164 +</ui>
... ...
app/gui/oven_control/fileprocessgauge.cpp
... ... @@ -0,0 +1,40 @@
  1 +#include "fileprocessgauge.h"
  2 +#include <QPainter>
  3 +#include <QDebug>
  4 +
  5 +FileProcessGauge::FileProcessGauge(QWidget *parent) : PreheatTempGauge(parent)
  6 +{
  7 + border.load(":/images/gauge/103_usb_graph_01.png");
  8 + indicator.load(":/images/gauge/103_usb_graph_02.png");
  9 + body.load(":/images/gauge/103_usb_graph_03.png");
  10 + min = 0;
  11 + max = 100;
  12 + val = 30;
  13 +}
  14 +
  15 +void FileProcessGauge::paintEvent(QPaintEvent *event){
  16 + QPainter painter(this);
  17 + painter.setBrush(Qt::NoBrush);
  18 + painter.setPen(Qt::NoPen);
  19 + QRect textRect(0,0,72,40);
  20 +
  21 + qreal percentage = (qreal) (val - min) / qMax(max - min, 1);
  22 + percentage = qBound((qreal) 0.0, percentage, (qreal) 1.0);
  23 +
  24 + QRect targetRect(
  25 + (border.size().width() - body.size().width()) / 2 + textRect.width()/2,
  26 + (border.size().height() - body.size().height()) / 2 + indicator.size().height()+textRect.height(),
  27 + body.size().width() * percentage, body.height());
  28 +
  29 + QRect sourceRect(0, 0, body.size().width() * percentage, body.height());
  30 + QFont font;
  31 + font.setFamily("나눔맑은고딕");
  32 + font.setPixelSize(30);
  33 + painter.setFont(font);
  34 + painter.setPen(Qt::white);
  35 + painter.drawPixmap(targetRect, body, sourceRect);
  36 + painter.drawPixmap(textRect.width()/ 2, textRect.height()+indicator.size().height(), border);
  37 + painter.drawPixmap(targetRect.right() - indicator.size().width() / 2, textRect.height(), indicator);
  38 + textRect.setRect(targetRect.right() - textRect.size().width()/2, textRect.top(),72,40);
  39 + painter.drawText(textRect,Qt::AlignCenter, QString("%1%").arg(val));
  40 +}
... ...
app/gui/oven_control/fileprocessgauge.h
... ... @@ -0,0 +1,16 @@
  1 +#ifndef FILEPROCESSGAUGE_H
  2 +#define FILEPROCESSGAUGE_H
  3 +
  4 +#include "preheattempgauge.h"
  5 +
  6 +class FileProcessGauge : public PreheatTempGauge
  7 +{
  8 +public:
  9 + FileProcessGauge(QWidget *parent=0);
  10 +
  11 +protected:
  12 + void paintEvent(QPaintEvent *event);
  13 +
  14 +};
  15 +
  16 +#endif // FILEPROCESSGAUGE_H
... ...
app/gui/oven_control/fileprocessor.cpp
... ... @@ -0,0 +1,41 @@
  1 +#include <QDebug>
  2 +#include "fileprocessor.h"
  3 +
  4 +FileProcessor::FileProcessor()
  5 +{
  6 +
  7 +}
  8 +
  9 +bool FileProcessor::folderExist(const QString &path){
  10 + QDir qdir(path);
  11 + qDebug() << "check path" << path;
  12 + return qdir.exists();
  13 +}
  14 +
  15 +bool FileProcessor::fileExist(const QString &path_file){
  16 + QFile qfile(path_file);
  17 + return qfile.exists();
  18 +}
  19 +
  20 +bool FileProcessor::detectUSB(QString &usbPath){
  21 + int curUsbNum=0xff;
  22 + bool usbMountErr = false;
  23 + QString checkUsbName[3] = {
  24 + "sda",
  25 + "sdb",
  26 + "sdc"
  27 + };
  28 +
  29 + for(int i =2;i >=0 ; i--){
  30 +
  31 + if(folderExist(QString("/sys/block/").append(checkUsbName[i]))){
  32 + if(folderExist(QString("/mnt/%111").arg(checkUsbName[i]))){
  33 + usbPath = QString("/mnt/%111").arg(checkUsbName[i]);
  34 + return true;
  35 + }
  36 + break;
  37 + }
  38 + }
  39 + qDebug() << "usb detect fail";
  40 + return false;
  41 +}
... ...
app/gui/oven_control/fileprocessor.h
... ... @@ -0,0 +1,16 @@
  1 +#ifndef FILEPROCESSOR_H
  2 +#define FILEPROCESSOR_H
  3 +
  4 +#include <QtCore>
  5 +
  6 +class FileProcessor
  7 +{
  8 +public:
  9 + FileProcessor();
  10 +static bool folderExist(const QString &path);
  11 +static bool fileExist(const QString &path_file);
  12 +static bool detectUSB(QString &usbpath);
  13 +
  14 +};
  15 +
  16 +#endif // FILEPROCESSOR_H
... ...
app/gui/oven_control/images/config/102_usb_download_icon.png

3.16 KB

app/gui/oven_control/images/config/102_usb_upload_icon.png

3.12 KB

app/gui/oven_control/images/gauge/103_usb_graph_01.png

578 Bytes

app/gui/oven_control/images/gauge/103_usb_graph_02.png

289 Bytes

app/gui/oven_control/images/gauge/103_usb_graph_03.png

250 Bytes

app/gui/oven_control/oven_control.pro
... ... @@ -103,7 +103,10 @@ SOURCES += main.cpp\
103 103 backlight.cpp \
104 104 dirtylevel.cpp \
105 105 washwarnicon.cpp \
106   - coretempsettingpopup.cpp
  106 + coretempsettingpopup.cpp \
  107 + fileprocessor.cpp \
  108 + fileprocessgauge.cpp \
  109 + fileprocessdlg.cpp
107 110  
108 111 HEADERS += mainwindow.h \
109 112 cook.h \
... ... @@ -196,7 +199,10 @@ HEADERS += mainwindow.h \
196 199 backlight.h \
197 200 dirtylevel.h \
198 201 washwarnicon.h \
199   - coretempsettingpopup.h
  202 + coretempsettingpopup.h \
  203 + fileprocessor.h \
  204 + fileprocessgauge.h \
  205 + fileprocessdlg.h
200 206  
201 207 FORMS += mainwindow.ui \
202 208 manualcookwindow.ui \
... ... @@ -259,7 +265,8 @@ FORMS += mainwindow.ui \
259 265 gasmodelsettingwindow.ui \
260 266 electricmodelsettingwindow.ui \
261 267 servicepassinputdlg.ui \
262   - coretempsettingpopup.ui
  268 + coretempsettingpopup.ui \
  269 + fileprocessdlg.ui
263 270  
264 271 RESOURCES += \
265 272 resources.qrc
... ...
app/gui/oven_control/resources.qrc
... ... @@ -557,5 +557,10 @@
557 557 <file>images/cook_type/meat_hide.png</file>
558 558 <file>images/cook_type/poultry_hide.png</file>
559 559 <file>images/cook_type/vegetable_hide.png</file>
  560 + <file>images/gauge/103_usb_graph_01.png</file>
  561 + <file>images/gauge/103_usb_graph_02.png</file>
  562 + <file>images/gauge/103_usb_graph_03.png</file>
  563 + <file>images/config/102_usb_upload_icon.png</file>
  564 + <file>images/config/102_usb_download_icon.png</file>
560 565 </qresource>
561 566 </RCC>
... ...
app/gui/oven_control/servicepassinputdlg.cpp
... ... @@ -30,6 +30,7 @@ void ServicePassInputDlg::on_ctrBtnOk_clicked()
30 30 connect(w,SIGNAL(destroyed(QObject*)),this,SLOT(close()));
31 31 w->setWindowModality(Qt::WindowModal);
32 32 w->show();
  33 + this->hide();
33 34 }
34 35 else {
35 36 qDebug()<< "pass incorrect " << ui->lineEdit->text();
... ...
app/gui/oven_control/usbcheckpopupdlg.cpp
1 1 #include <QTimer>
2 2 #include "usbcheckpopupdlg.h"
3 3 #include "ui_usbcheckpopupdlg.h"
  4 +#include "fileprocessor.h"
4 5  
5 6 UsbCheckPopupDlg::UsbCheckPopupDlg(QWidget *parent) :
6 7 QDialog(parent),
... ... @@ -29,7 +30,8 @@ void UsbCheckPopupDlg::on_ctrBtnYes_clicked()
29 30 }
30 31  
31 32 void UsbCheckPopupDlg::usbCheckTimerFired(){
32   - bool usbDetect = false;
  33 + QString strTemp;
  34 + bool usbDetect = FileProcessor::detectUSB(strTemp);
33 35 if(usbDetect){
34 36 accept();
35 37 }
... ...