washwindow.h
1.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#ifndef WASHWINDOW_H
#define WASHWINDOW_H
#include <QMainWindow>
#include <QTimer>
#include "udphandler.h"
namespace Ui {
class WashWindow;
}
class WashWindow : public QMainWindow
{
Q_OBJECT
public:
explicit WashWindow(QWidget *parent = 0);
~WashWindow();
protected:
void keyPressEvent(QKeyEvent *event);
void keyReleaseEvent(QKeyEvent *event);
private slots:
void start(int type);
void resume();
void stop();
void returnToClock();
void updateGauge();
void updateView();
void showIdle();
void showOpenDoor();
void showCloseDoor();
void showWash();
void request();
void onChanged();
void on_backButton_clicked();
void on_configButton_clicked();
void on_helpButton_clicked();
private:
Ui::WashWindow *ui;
UdpHandler *udp;
enum State {
Idle, CoolDown, OpenDoor, CloseDoor, Request, Running, Stopping,
RequestClean, RunningClean
} state = Idle;
enum AnimationState {
Stopped, ShowingOpenDoor, ShowingCloseDoor, ShowingWash
} animationState = Stopped;
bool selected;
bool opened;
bool started;
bool run;
bool canceled;
int type;
QWidget *lastFocus = NULL;
QTimer returnToClockTimer;
QWidget *pushed = NULL;
void onEncoderLeft();
void onEncoderRight();
void onEncoderClicked(QWidget *clicked);
};
#endif // WASHWINDOW_H