1 |
torben |
512 |
#include "screenmanager.h" |
2 |
|
|
|
3 |
|
|
#include <stdlib.h> |
4 |
|
|
|
5 |
|
|
//public |
6 |
|
|
ScreenManager::ScreenManager() |
7 |
|
|
: screenOnTime(06,00), screenOffTime(22,00) |
8 |
|
|
{ |
9 |
|
|
QTime now = QTime::currentTime(); |
10 |
|
|
screenEnabled = (now >=screenOnTime && now < screenOffTime); |
11 |
|
|
} |
12 |
|
|
|
13 |
|
|
|
14 |
|
|
void ScreenManager::timerTick() |
15 |
|
|
{ |
16 |
|
|
QTime now = QTime::currentTime(); |
17 |
|
|
if (screenEnabled) { |
18 |
|
|
if (now >= screenOffTime) { |
19 |
|
|
disableScreen(); |
20 |
|
|
} |
21 |
|
|
} else { //screenEnabled == false |
22 |
|
|
if (now >= screenOnTime && now < screenOffTime) { |
23 |
|
|
enableScreen(); |
24 |
|
|
} |
25 |
|
|
} |
26 |
|
|
} |
27 |
|
|
|
28 |
|
|
|
29 |
|
|
//private |
30 |
|
|
void ScreenManager::disableScreen() |
31 |
|
|
{ |
32 |
torben |
525 |
int res; |
33 |
torben |
512 |
screenEnabled = false; |
34 |
torben |
525 |
res = system("xset dpms force off"); |
35 |
torben |
512 |
qDebug("disableScreen"); |
36 |
|
|
} |
37 |
|
|
|
38 |
|
|
|
39 |
|
|
void ScreenManager::enableScreen() |
40 |
|
|
{ |
41 |
torben |
525 |
int res; |
42 |
torben |
512 |
screenEnabled = true; |
43 |
torben |
525 |
res = system("xset dpms force on"); |
44 |
|
|
res = system("xset -dpms"); //disable energy star auto turn -off |
45 |
torben |
517 |
|
46 |
torben |
525 |
res = system("xset s reset");//disable screensaver |
47 |
|
|
res = system("xset s off"); |
48 |
torben |
517 |
|
49 |
torben |
512 |
qDebug("enableScreen"); |
50 |
|
|
} |