Blame view

app/gui/oven_control/manualcookwindow.h 3.47 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);
8c2952457   김태훈   응용 프로그램 추가
43
bb26a0523   김태훈   소스 코드 정리
44
      void onOvenUpdated(Oven *oven);
e00c6a2a9   김태훈   기능 추가 구현
45
46
47
48
      void addFavorite();
      void jumpConfig();
      void jumpFavorites();
      void jumpWash();
ea536cd1d   김태훈   적재 / 조리 중 문 열림 시간...
49
50
51
      void onMonitor1Timeout();
      void onMonitor2Timeout();
      void onMonitor3Timeout();
271dda4ae   김태훈   엔코더 구현
52
53
54
55
56
57
58
59
60
      void onEncoderLeft();
      void onEncoderRight();
      void onEncoderClicked(QWidget *clicked);
  
      void focusHumidityButton();
      void focusTempButton();
      void focusTimeButton();
      void focusInterTempButton();
      void focusAgain();
bb26a0523   김태훈   소스 코드 정리
61
62
63
64
65
66
67
68
      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   김태훈   엔코더 구현
69
70
71
72
  
      void on_humidityButton_clicked();
      void on_tempButton_clicked();
      void on_timeButton_clicked();
bb26a0523   김태훈   소스 코드 정리
73
      void on_interTempButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
74
bb26a0523   김태훈   소스 코드 정리
75
76
      void on_runStopButton_clicked();
      void on_fanButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
77
      void on_preheatButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
78
      void on_damperButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
79
      void on_humidificationButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
80
      void on_repeatButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
81
      void on_cooldownButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
82
      void on_reserveButton_clicked();
213c24135   김태훈   수동 요리 반복 추가
83
      void on_favoriteButton_clicked();
bb26a0523   김태훈   소스 코드 정리
84
85
86
      void on_goFrontStackButton_clicked();
  
      void on_backButton_clicked();
e00c6a2a9   김태훈   기능 추가 구현
87
88
89
90
      void on_configButton_clicked();
      void on_favoritesButton_clicked();
      void on_washButton_clicked();
      void on_helpButton_clicked();
8c2952457   김태훈   응용 프로그램 추가
91
a2de3cbfc   김태훈   수동 요리에 새 슬라이더 적용
92
      void on_timeSlider_valueChanged();
271dda4ae   김태훈   엔코더 구현
93
8c2952457   김태훈   응용 프로그램 추가
94
95
96
  private:
      Ui::ManualCookWindow *ui;
      Oven *oven;
bb26a0523   김태훈   소스 코드 정리
97
98
  
      QTimer startCookingTimer;
7c415d2f7   김태훈   현재 습도/온도 값을 볼 때 슬...
99
      QTimer updateViewTimer;
bb26a0523   김태훈   소스 코드 정리
100
101
102
  
      QTimer showCurrentHumidityTimer;
      QTimer showCurrentTempTimer;
d6ef50b78   김태훈   요청 사항 반영
103
      QTimer showInfoTextTimer;
8c2952457   김태훈   응용 프로그램 추가
104
105
106
107
108
  
      int humidity;
      int temp;
      int time;
      int interTemp;
097e5e14a   김태훈   프로그래밍 모드 세부 사항 구현
109
      bool lastCheckedCooking = false;
8c2952457   김태훈   응용 프로그램 추가
110
111
112
  
      bool showCurrentHumidity_ = false;
      bool showCurrentTemp_ = false;
213c24135   김태훈   수동 요리 반복 추가
113
7c415d2f7   김태훈   현재 습도/온도 값을 볼 때 슬...
114
115
116
117
118
119
120
121
122
      int lastViewHumidity;
      int lastViewTemp;
      int lastViewTime;
      int lastViewInterTemp;
      bool lastViewInterTempEnabled;
      bool lastViewCooking;
      bool lastViewDamper;
      bool lastViewHumidification;
      int lastViewFan;
271dda4ae   김태훈   엔코더 구현
123
      bool showFrontButtons = true;
ea536cd1d   김태훈   적재 / 조리 중 문 열림 시간...
124
125
126
127
128
      int monitorLevel;
      QTimer monitor1;
      QTimer monitor2;
      QTimer monitor3;
      bool monitorTriggered;
347c46873   김태훈   done 시그널을 안 쓰는 줄 ...
129
      bool cookDone;
ea536cd1d   김태훈   적재 / 조리 중 문 열림 시간...
130
213c24135   김태훈   수동 요리 반복 추가
131
132
      ManualCookSetting repeatSetting;
      bool repeat;
a2de3cbfc   김태훈   수동 요리에 새 슬라이더 적용
133
134
135
  
      int sliderToTime(int value);
      int timeToSlider(int secs);
271dda4ae   김태훈   엔코더 구현
136
137
138
139
140
141
142
143
  
      QWidget *pushed = NULL;
      QWidget *focused = NULL;
  
      QTimer focusHumidityButtonTimer;
      QTimer focusTempButtonTimer;
      QTimer focusTimeButtonTimer;
      QTimer focusInterTempButtonTimer;
8c2952457   김태훈   응용 프로그램 추가
144
145
146
  };
  
  #endif // MANUALCOOKWINDOW_H