Repository navigation
Expand file tree
/
Copy pathmain.cpp
More file actions
75 lines (61 loc) · 2.44 KB
/
Copy pathmain.cpp
File metadata and controls
75 lines (61 loc) · 2.44 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
#include <QApplication>
#include <QPushButton>
#include <QRadioButton>
#include <QVBoxLayout>
#include <QLineEdit>
#include <QWidget>
#include <QLabel>
#include <QTimer>
#include "logic.h"
#include "effects.h"
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
QWidget widget;
QVBoxLayout layout(&widget);
app.setFont(QFont("Ubuntu", 9));
app.setWindowIcon(QIcon("./images/icon.png"));
app.setStyleSheet("QPushButton, QLineEdit { border-radius: 5px; padding: 5px; }");
QLineEdit inputFieldTime;
setShadowEffect(&inputFieldTime);
layout.addWidget(&inputFieldTime);
QRadioButton radioButtonSeconds("Seconds");
QRadioButton radioButtonMinutes("Minutes");
QRadioButton radioButtonHours("Hours");
layout.addWidget(&radioButtonSeconds);
layout.addWidget(&radioButtonMinutes);
layout.addWidget(&radioButtonHours);
QPushButton buttonShutdownDevice("Shutdown device", nullptr);
buttonShutdownDevice.setStyleSheet("background-color: #3c3c3c;");
setShadowEffect(&buttonShutdownDevice);
QPushButton buttonShutdownCancel("Cancel planned shutdown", nullptr);
setShadowEffect(&buttonShutdownCancel);
buttonShutdownCancel.setStyleSheet("background-color: #3c3c3c;");
layout.addWidget(&buttonShutdownDevice);
layout.addWidget(&buttonShutdownCancel);
Logic logic(&radioButtonSeconds, &radioButtonMinutes, &radioButtonHours, &inputFieldTime);
QObject::connect(&buttonShutdownDevice, &QPushButton::clicked, [&buttonShutdownDevice, &logic]() {
if (buttonShutdownDevice.graphicsEffect()) {
delete buttonShutdownDevice.graphicsEffect();
}
logic.onClickShutdown();
QTimer::singleShot(200, [&buttonShutdownDevice]() {
setShadowEffect(&buttonShutdownDevice);
});
});
QObject::connect(&buttonShutdownCancel, &QPushButton::clicked, [&buttonShutdownCancel, &logic]() {
if (buttonShutdownCancel.graphicsEffect()) {
delete buttonShutdownCancel.graphicsEffect();
}
logic.onClickCancel();
QTimer::singleShot(200, [&buttonShutdownCancel]() {
setShadowEffect(&buttonShutdownCancel);
});
});
QLabel authorLabel("Made by Kirio ♡");
authorLabel.setFont(QFont("Ubuntu", 6));
layout.addWidget(&authorLabel);
layout.setAlignment(&authorLabel, Qt::AlignBottom | Qt::AlignRight);
widget.setFixedSize(200, 195);
widget.show();
return app.exec();
}