Blame view

app/gui/oven_control/keepwarmpopup.cpp 1.65 KB
6a81d38e4   김태훈   자동 요리 관련 로직 전면 재작성
1
2
  #include "keepwarmpopup.h"
  #include "ui_keepwarmpopup.h"
9e1f8d093   김태훈   엔코더 구현 대비 선행 수정
3
  #include <QKeyEvent>
af27778be   김태훈   HACCP 구현
4
  #include "haccp.h"
6a81d38e4   김태훈   자동 요리 관련 로직 전면 재작성
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
  KeepWarmPopup::KeepWarmPopup(QWidget *parent) :
      QWidget(parent),
      ui(new Ui::KeepWarmPopup)
  {
      ui->setupUi(this);
  
      setAttribute(Qt::WA_DeleteOnClose);
  
      connect(&updateViewTimer, SIGNAL(timeout()), SLOT(updateView()));
      updateViewTimer.start(100);
  
      startTime.start();
  }
  
  KeepWarmPopup::~KeepWarmPopup()
  {
af27778be   김태훈   HACCP 구현
21
      HACCP::done();
6a81d38e4   김태훈   자동 요리 관련 로직 전면 재작성
22
23
      delete ui;
  }
9e1f8d093   김태훈   엔코더 구현 대비 선행 수정
24
25
26
27
  void KeepWarmPopup::keyPressEvent(QKeyEvent *event)
  {
      switch (event->key())
      {
01249f413   김태훈   엔코더 방향 반전. 하드웨어가 변경됨
28
      case 0x01000032:    // Turn left
9e1f8d093   김태훈   엔코더 구현 대비 선행 수정
29
30
31
32
33
          onEncoderLeft();
          break;
      case 0x01000031:    // Push
          pushed = focusWidget();
          break;
01249f413   김태훈   엔코더 방향 반전. 하드웨어가 변경됨
34
      case 0x01000030:    // Turn right
9e1f8d093   김태훈   엔코더 구현 대비 선행 수정
35
36
37
38
39
40
41
42
43
          onEncoderRight();
          break;
      }
  }
  
  void KeepWarmPopup::keyReleaseEvent(QKeyEvent *event)
  {
      switch (event->key())
      {
01249f413   김태훈   엔코더 방향 반전. 하드웨어가 변경됨
44
      case 0x01000032:    // Turn left
9e1f8d093   김태훈   엔코더 구현 대비 선행 수정
45
46
47
48
49
50
51
52
          onEncoderLeft();
          break;
      case 0x01000031:    // Push
          if (focusWidget() == pushed)
              onEncoderClicked(pushed);
  
          pushed = NULL;
          break;
01249f413   김태훈   엔코더 방향 반전. 하드웨어가 변경됨
53
      case 0x01000030:    // Turn right
9e1f8d093   김태훈   엔코더 구현 대비 선행 수정
54
55
56
57
58
59
60
61
62
63
64
65
66
67
          onEncoderRight();
          break;
      }
  }
  
  void KeepWarmPopup::onEncoderLeft()
  {
  
  }
  
  void KeepWarmPopup::onEncoderRight()
  {
  
  }
90bfa5248   김태훈   엔코더 기능 누락
68
  void KeepWarmPopup::onEncoderClicked(QWidget */*clicked*/)
9e1f8d093   김태훈   엔코더 구현 대비 선행 수정
69
  {
90bfa5248   김태훈   엔코더 기능 누락
70
      close();
9e1f8d093   김태훈   엔코더 구현 대비 선행 수정
71
  }
6a81d38e4   김태훈   자동 요리 관련 로직 전면 재작성
72
73
74
75
76
77
78
79
80
81
82
83
  void KeepWarmPopup::updateView()
  {
      int elapsed = startTime.elapsed() / 1000;
      ui->timeLabel->setText(QString("%1:%2")
                             .arg(elapsed / 60, 2, 10, QLatin1Char('0'))
                             .arg(elapsed % 60, 2, 10, QLatin1Char('0')));
  }
  
  void KeepWarmPopup::on_stopButton_clicked()
  {
      close();
  }