Blame view

app/gui/oven_control/autocookconfigwindow.h 1.72 KB
6f96c947a   김태훈   GUI 0.1.4
1
2
3
4
5
6
7
8
9
10
  #ifndef AUTOCOOKCONFIGWINDOW_H
  #define AUTOCOOKCONFIGWINDOW_H
  
  #include <QMainWindow>
  #include <QTimer>
  #include <QPushButton>
  #include <QLabel>
  #include <QSlider>
  
  #include "oven.h"
6a81d38e4   김태훈   자동 요리 관련 로직 전면 재작성
11
12
  //#include "cook.h"
  #include "cookbook.h"
935b853a4   김태훈   새 슬라이더 적용
13
  #include "slider.h"
11c611782   김태훈   자동 요리 세부 사항 구현
14
  #include "autocookwindow.h"
6f96c947a   김태훈   GUI 0.1.4
15
16
17
18
19
20
21
22
23
24
  
  namespace Ui {
  class AutoCookConfigWindow;
  }
  
  class AutoCookConfigWindow : public QMainWindow
  {
      Q_OBJECT
  
  public:
3f52600cc   김태훈   소스 코드 구조 개선
25
      explicit AutoCookConfigWindow(QWidget *parent, Cook cook);
6f96c947a   김태훈   GUI 0.1.4
26
      ~AutoCookConfigWindow();
184bdebb4   김태훈   엔코더 구현
27
28
29
30
31
      bool eventFilter(QObject *watched, QEvent *event);
  
  protected:
      void keyPressEvent(QKeyEvent *event);
      void keyReleaseEvent(QKeyEvent *event);
6f96c947a   김태훈   GUI 0.1.4
32
33
34
  private:
      Ui::AutoCookConfigWindow *ui;
      Oven *oven;
6a81d38e4   김태훈   자동 요리 관련 로직 전면 재작성
35
      Cook cook;
6f96c947a   김태훈   GUI 0.1.4
36
6f96c947a   김태훈   GUI 0.1.4
37
38
      struct ConfigWidget {
          QPushButton *button;
6f96c947a   김태훈   GUI 0.1.4
39
40
41
          QLabel *minimum;
          QLabel *maximum;
          QLabel *current;
935b853a4   김태훈   새 슬라이더 적용
42
          Slider *slider;
6f96c947a   김태훈   GUI 0.1.4
43
44
45
      };
  
      QList<ConfigWidget> configWidgets;
184bdebb4   김태훈   엔코더 구현
46
47
48
49
50
51
52
      QTimer afterThreeSecsTimer;
  
      QWidget *pushed = NULL;
  
      void onEncoderLeft();
      void onEncoderRight();
      void onEncoderClicked(QWidget *clicked);
6f96c947a   김태훈   GUI 0.1.4
53
  private slots:
6a81d38e4   김태훈   자동 요리 관련 로직 전면 재작성
54
      void setupUi();
6f96c947a   김태훈   GUI 0.1.4
55
56
      void updateView();
      void updateConfig();
6a81d38e4   김태훈   자동 요리 관련 로직 전면 재작성
57
      void start();
f588aa273   김태훈   부가 기능 로직 추가
58
      void addFavorite();
184bdebb4   김태훈   엔코더 구현
59
      void afterThreeSecs();
11c611782   김태훈   자동 요리 세부 사항 구현
60
61
      void changeCook(Cook cook);
      void connectNewWindow(AutoCookWindow *w);
6a81d38e4   김태훈   자동 요리 관련 로직 전면 재작성
62
63
  
      void on_backButton_clicked();
e00c6a2a9   김태훈   기능 추가 구현
64
      void on_configButton_clicked();
f588aa273   김태훈   부가 기능 로직 추가
65
      void on_favoritesButton_clicked();
e00c6a2a9   김태훈   기능 추가 구현
66
      void on_washButton_clicked();
184bdebb4   김태훈   엔코더 구현
67
68
69
70
71
      void on_configButton_1_clicked();
      void on_configButton_2_clicked();
      void on_configButton_3_clicked();
      void on_configButton_4_clicked();
      void on_configButton_5_clicked();
11c611782   김태훈   자동 요리 세부 사항 구현
72
      void on_selectCookButton_clicked();
68c06e96f   김태훈   자동 요리 세부 사항 구현
73
      void on_checkCookButton_clicked();
6f96c947a   김태훈   GUI 0.1.4
74
75
76
  };
  
  #endif // AUTOCOOKCONFIGWINDOW_H