Blame view

app/gui/oven_control/manualcookwindow.h 3.49 KB
8c2952457   김태훈   응용 프로그램 추가
1
2
3
4
  #ifndef MANUALCOOKWINDOW_H
  #define MANUALCOOKWINDOW_H
  
  #include <QMainWindow>
271dda4ae   김태훈   엔코더 구현
5
  #include <QKeyEvent>
8c2952457   김태훈   응용 프로그램 추가
6
7
8
  
  #include "oven.h"
  #include "udphandler.h"
f588aa273   김태훈   부가 기능 로직 추가
9
  #include "cookhistory.h"
8c2952457   김태훈   응용 프로그램 추가
10
11
12
13
14
15
16
17
18
19
  
  namespace Ui {
  class ManualCookWindow;
  }
  
  class ManualCookWindow : public QMainWindow
  {
      Q_OBJECT
  
  public:
d0cfbd177   김태훈   GUI V0.1.10 (이 버전...
20
      explicit ManualCookWindow(QWidget *parent, Define::Mode mode);
f588aa273   김태훈   부가 기능 로직 추가
21
      explicit ManualCookWindow(QWidget *parent, ManualCookSetting setting);
8c2952457   김태훈   응용 프로그램 추가
22
      ~ManualCookWindow();
271dda4ae   김태훈   엔코더 구현
23
24
25
  protected:
      void keyPressEvent(QKeyEvent *event);
      void keyReleaseEvent(QKeyEvent *event);
8c2952457   김태훈   응용 프로그램 추가
26
  signals:
8c2952457   김태훈   응용 프로그램 추가
27
      void cookStopRequested();
347c46873   김태훈   done 시그널을 안 쓰는 줄 ...
28
      void done();
8c2952457   김태훈   응용 프로그램 추가
29
30
  
  public slots:
8c2952457   김태훈   응용 프로그램 추가
31
32
  
  private slots:
bb26a0523   김태훈   소스 코드 정리
33
      void setupAnimation();
d0cfbd177   김태훈   GUI V0.1.10 (이 버전...
34
      void setOvenDefault(Define::Mode mode);
bb26a0523   김태훈   소스 코드 정리
35
36
      void start();
      void stop();
7c415d2f7   김태훈   현재 습도/온도 값을 볼 때 슬...
37
      void updateView();
8c2952457   김태훈   응용 프로그램 추가
38
39
40
41
      void showCurrentHumidity();
      void hideCurrentHumidity();
      void showCurrentTemp();
      void hideCurrentTemp();
10d2268c2   김태훈   V1.5.01
42
      void showInfoText(QString text, QString icon);
16ef5d842   김태훈   V2.0.01
43
      void startKeepWarm();
8c2952457   김태훈   응용 프로그램 추가
44
bb26a0523   김태훈   소스 코드 정리
45
      void onOvenUpdated(Oven *oven);
e00c6a2a9   김태훈   기능 추가 구현
46
47
48
49
      void addFavorite();
      void jumpConfig();
      void jumpFavorites();
      void jumpWash();
ea536cd1d   김태훈   적재 / 조리 중 문 열림 시간...
50
51
52
      void onMonitor1Timeout();
      void onMonitor2Timeout();
      void onMonitor3Timeout();
271dda4ae   김태훈   엔코더 구현
53
54
55
56
57
58
59
60
61
      void onEncoderLeft();
      void onEncoderRight();
      void onEncoderClicked(QWidget *clicked);
  
      void focusHumidityButton();
      void focusTempButton();
      void focusTimeButton();
      void focusInterTempButton();
      void focusAgain();
bb26a0523   김태훈   소스 코드 정리
62
63
64
65
66
67
68
69
      void on_steamButton_clicked();
      void on_combiButton_clicked();
      void on_dryheatButton_clicked();
  
      void on_humidityButton_pressed();
      void on_humidityButton_released();
      void on_tempButton_pressed();
      void on_tempButton_released();
271dda4ae   김태훈   엔코더 구현
70
71
72
73
  
      void on_humidityButton_clicked();
      void on_tempButton_clicked();
      void on_timeButton_clicked();
bb26a0523   김태훈   소스 코드 정리
74
      void on_interTempButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
75
bb26a0523   김태훈   소스 코드 정리
76
77
      void on_runStopButton_clicked();
      void on_fanButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
78
      void on_preheatButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
79
      void on_damperButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
80
      void on_humidificationButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
81
      void on_repeatButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
82
      void on_cooldownButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
83
      void on_reserveButton_clicked();
213c24135   김태훈   수동 요리 반복 추가
84
      void on_favoriteButton_clicked();
bb26a0523   김태훈   소스 코드 정리
85
86
87
      void on_goFrontStackButton_clicked();
  
      void on_backButton_clicked();
e00c6a2a9   김태훈   기능 추가 구현
88
89
90
91
      void on_configButton_clicked();
      void on_favoritesButton_clicked();
      void on_washButton_clicked();
      void on_helpButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
92
a2de3cbfc   김태훈   수동 요리에 새 슬라이더 적용
93
      void on_timeSlider_valueChanged();
271dda4ae   김태훈   엔코더 구현
94
8c2952457   김태훈   응용 프로그램 추가
95
96
97
  private:
      Ui::ManualCookWindow *ui;
      Oven *oven;
bb26a0523   김태훈   소스 코드 정리
98
99
  
      QTimer startCookingTimer;
7c415d2f7   김태훈   현재 습도/온도 값을 볼 때 슬...
100
      QTimer updateViewTimer;
bb26a0523   김태훈   소스 코드 정리
101
102
103
  
      QTimer showCurrentHumidityTimer;
      QTimer showCurrentTempTimer;
d6ef50b78   김태훈   요청 사항 반영
104
      QTimer showInfoTextTimer;
8c2952457   김태훈   응용 프로그램 추가
105
106
107
108
109
  
      int humidity;
      int temp;
      int time;
      int interTemp;
097e5e14a   김태훈   프로그래밍 모드 세부 사항 구현
110
      bool lastCheckedCooking = false;
8c2952457   김태훈   응용 프로그램 추가
111
112
113
  
      bool showCurrentHumidity_ = false;
      bool showCurrentTemp_ = false;
213c24135   김태훈   수동 요리 반복 추가
114
7c415d2f7   김태훈   현재 습도/온도 값을 볼 때 슬...
115
116
117
118
119
120
121
122
123
      int lastViewHumidity;
      int lastViewTemp;
      int lastViewTime;
      int lastViewInterTemp;
      bool lastViewInterTempEnabled;
      bool lastViewCooking;
      bool lastViewDamper;
      bool lastViewHumidification;
      int lastViewFan;
271dda4ae   김태훈   엔코더 구현
124
      bool showFrontButtons = true;
ea536cd1d   김태훈   적재 / 조리 중 문 열림 시간...
125
126
127
128
129
      int monitorLevel;
      QTimer monitor1;
      QTimer monitor2;
      QTimer monitor3;
      bool monitorTriggered;
347c46873   김태훈   done 시그널을 안 쓰는 줄 ...
130
      bool cookDone;
ea536cd1d   김태훈   적재 / 조리 중 문 열림 시간...
131
213c24135   김태훈   수동 요리 반복 추가
132
133
      ManualCookSetting repeatSetting;
      bool repeat;
a2de3cbfc   김태훈   수동 요리에 새 슬라이더 적용
134
135
136
  
      int sliderToTime(int value);
      int timeToSlider(int secs);
271dda4ae   김태훈   엔코더 구현
137
138
139
140
141
142
143
144
  
      QWidget *pushed = NULL;
      QWidget *focused = NULL;
  
      QTimer focusHumidityButtonTimer;
      QTimer focusTempButtonTimer;
      QTimer focusTimeButtonTimer;
      QTimer focusInterTempButtonTimer;
8c2952457   김태훈   응용 프로그램 추가
145
146
147
  };
  
  #endif // MANUALCOOKWINDOW_H