Blame view

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