Blame view

app/gui/oven_control/operationtimemain.cpp 1.94 KB
9146b87b4   고영탁   엔코더 작업 진행중
1
  #include <QKeyEvent>
6a965b9f1   고영탁   엔지니어 모드 2차 구현
2
3
4
5
6
  #include "operationtimemain.h"
  #include "ui_operationtimemain.h"
  #include "operationtimeheat.h"
  #include "operationtimemode.h"
  #include "operationtimeparts.h"
66e60ceb5   김태훈   모든 버튼에 음향 효과 추가
7
  #include "soundplayer.h"
6a965b9f1   고영탁   엔지니어 모드 2차 구현
8
14a73498f   김태훈   소스 코드 정리
9
  OperationTimeMain::OperationTimeMain(QWidget *parent) :
6a965b9f1   고영탁   엔지니어 모드 2차 구현
10
      QMainWindow(parent),
14a73498f   김태훈   소스 코드 정리
11
      ui(new Ui::OperationTimeMain)
6a965b9f1   고영탁   엔지니어 모드 2차 구현
12
13
  {
      ui->setupUi(this);
eea7d3d59   김태훈   Segmentation Faul...
14
15
16
  
      ui->clockContainer->setParent(ui->upperStack);
      setAttribute(Qt::WA_DeleteOnClose);
66e60ceb5   김태훈   모든 버튼에 음향 효과 추가
17
18
19
  
      foreach (QPushButton *button, findChildren<QPushButton *>())
          connect(button, &QPushButton::pressed, SoundPlayer::playClick);
6a965b9f1   고영탁   엔지니어 모드 2차 구현
20
  }
14a73498f   김태훈   소스 코드 정리
21
  OperationTimeMain::~OperationTimeMain()
6a965b9f1   고영탁   엔지니어 모드 2차 구현
22
23
24
  {
      delete ui;
  }
14a73498f   김태훈   소스 코드 정리
25
  void OperationTimeMain::on_btnHeatPartTime_clicked()
6a965b9f1   고영탁   엔지니어 모드 2차 구현
26
  {
14a73498f   김태훈   소스 코드 정리
27
      OperationTimeHeat* w = new OperationTimeHeat();
6a965b9f1   고영탁   엔지니어 모드 2차 구현
28
29
30
      w->setWindowModality(Qt::WindowModal);
      w->showFullScreen();
  }
14a73498f   김태훈   소스 코드 정리
31
  void OperationTimeMain::on_btnModeTime_clicked()
6a965b9f1   고영탁   엔지니어 모드 2차 구현
32
  {
14a73498f   김태훈   소스 코드 정리
33
      OperationTimeMode* w = new OperationTimeMode();
6a965b9f1   고영탁   엔지니어 모드 2차 구현
34
35
36
      w->setWindowModality(Qt::WindowModal);
      w->showFullScreen();
  }
14a73498f   김태훈   소스 코드 정리
37
  void OperationTimeMain::on_btnPartsTime_clicked()
6a965b9f1   고영탁   엔지니어 모드 2차 구현
38
  {
14a73498f   김태훈   소스 코드 정리
39
      OperationTimeParts*w = new OperationTimeParts();
6a965b9f1   고영탁   엔지니어 모드 2차 구현
40
41
42
      w->setWindowModality(Qt::WindowModal);
      w->showFullScreen();
  }
14a73498f   김태훈   소스 코드 정리
43
  void OperationTimeMain::on_backButton_clicked()
6a965b9f1   고영탁   엔지니어 모드 2차 구현
44
  {
eea7d3d59   김태훈   Segmentation Faul...
45
      close();
6a965b9f1   고영탁   엔지니어 모드 2차 구현
46
  }
9146b87b4   고영탁   엔코더 작업 진행중
47
48
49
50
51
  
  void OperationTimeMain::keyPressEvent(QKeyEvent *event)
  {
      switch (event->key())
      {
01249f413   김태훈   엔코더 방향 반전. 하드웨어가 변경됨
52
      case 0x01000032:    // Turn left
9146b87b4   고영탁   엔코더 작업 진행중
53
54
55
56
          focusPreviousChild();
          break;
      case 0x01000031:    // Push
          break;
01249f413   김태훈   엔코더 방향 반전. 하드웨어가 변경됨
57
      case 0x01000030:    // Turn right
9146b87b4   고영탁   엔코더 작업 진행중
58
59
60
61
62
63
64
65
66
          focusNextChild();
          break;
      }
  }
  
  void OperationTimeMain::keyReleaseEvent(QKeyEvent *event)
  {
      switch (event->key())
      {
01249f413   김태훈   엔코더 방향 반전. 하드웨어가 변경됨
67
      case 0x01000032:    // Turn left
9146b87b4   고영탁   엔코더 작업 진행중
68
69
70
71
72
73
74
75
76
77
          focusPreviousChild();
          break;
      case 0x01000031:    // Push
      {
          QPushButton *btn = qobject_cast<QPushButton*>(focusWidget());
          if(btn != NULL){
              btn->click();
          }
          break;
      }
01249f413   김태훈   엔코더 방향 반전. 하드웨어가 변경됨
78
      case 0x01000030:    // Turn right
9146b87b4   고영탁   엔코더 작업 진행중
79
80
81
82
          focusNextChild();
          break;
      }
  }