-
Notifications
You must be signed in to change notification settings - Fork 5
/
qmdisplaystate.h
188 lines (155 loc) · 5.22 KB
/
qmdisplaystate.h
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
/*!
* @file qmdisplaystate.h
* @brief Contains QmDisplayState which provides information and actions on device display state.
<p>
@copyright (C) 2009-2011 Nokia Corporation
@license LGPL Lesser General Public License
@author Antonio Aloisio <antonio.aloisio@nokia.com>
@author Ilya Dogolazky <ilya.dogolazky@nokia.com>
@author Raimo Vuonnala <raimo.vuonnala@nokia.com>
@author Timo Olkkonen <ext-timo.p.olkkonen@nokia.com>
@author Timo Rongas <ext-timo.rongas.nokia.com>
@author Ustun Ergenoglu <ext-ustun.ergenoglu@nokia.com>
@scope Nokia Meego
This file is part of SystemSW QtAPI.
SystemSW QtAPI is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License
version 2.1 as published by the Free Software Foundation.
SystemSW QtAPI is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with SystemSW QtAPI. If not, see <http://www.gnu.org/licenses/>.
</p>
*/
#ifndef QMDISPLAYSTATE_H
#define QMDISPLAYSTATE_H
#include "system_global.h"
#include <QtCore/qobject.h>
QT_BEGIN_HEADER
namespace MeeGo {
class QmDisplayStatePrivate;
/*!
* @scope Nokia Meego
*
* @class QmDisplayState
* @brief QmDisplayState Provides information and actions on device display state.
*/
class MEEGO_SYSTEM_EXPORT QmDisplayState : public QObject
{
Q_OBJECT
Q_ENUMS(DisplayState)
Q_PROPERTY(DisplayState state READ get WRITE set)
public:
//! Possible states for device display
enum DisplayState
{
Off = -1, //!< Display is off
Dimmed = 0, //!< Display is dimmed
On = 1, //!< Display is on
Unknown //!< Display state is unknown
};
public:
/*!
* Constructor
* @param parent The parent object
*/
QmDisplayState(QObject *parent = 0);
~QmDisplayState();
/*!
* @brief Gets the current display state
* @return Current display state
*/
DisplayState get() const;
/*!
* @brief Sets the current display state.
* @param state Display state new set
* @return True if a valid display state was requested, false otherwise
*/
bool set(DisplayState state);
/*!
* @brief Requests not to blank the display. Must be repeated every 60 seconds to renew request.
* Also prevents suspending.
* @return False if a blanking pause could not be requested
*/
bool setBlankingPause(void);
/*!
* @brief Cancels an earlier setBlankingPause() call.
* @return False if a blanking pause cancellation could not be requested
*/
bool cancelBlankingPause(void);
/*!
* @brief Gets the maximum brightness value that can be set.
* @return The maximum brightness value. -1 is returned in case
* of an error during retrieving value
*/
int getMaxDisplayBrightnessValue();
/*!
* @brief Gets the current brightness values of the display.
* @return The current brightness values of the display. -1, in case of
* an error.
*/
int getDisplayBrightnessValue();
/*!
* @brief Gets the current display blanking timeout in seconds.
* @return The current display blanking timeout in second. -1, in case of
* an error.
*/
int getDisplayBlankTimeout();
/*!
* @brief Gets the current display dim timeout in seconds.
* @return The current display dimming timeout in seconds. -1, in case of
* an error.
*/
int getDisplayDimTimeout();
/*!
* @brief Gets the blanking state when charging.
* @return True if blanking is not inhibited during charging, false
* otherwise.
*/
bool getBlankingWhenCharging();
/*!
* @brief Sets the display brightness value.
* @param brightness New brightness value to set. Must be between 1 and
* #getMaxDisplayBrightnessValue() .
*/
void setDisplayBrightnessValue(int brightness);
/*!
* @brief Sets the display blanking timeout.
* @param timeout Timeout to set
*/
void setDisplayBlankTimeout(int timeout);
/*!
* @brief Sets the display dimming timeout.
* @param timeout Timeout to set
*/
void setDisplayDimTimeout(int timeout);
/*!
* @brief Sets if the screen should be blanked during charging.
* @param blanking True if screen should be blanked during charging,
* #false otherwise
*/
void setBlankingWhenCharging(bool blanking);
Q_SIGNALS:
/*!
* @brief Sent when display state has changed.
* @param state Current display state
*/
void displayStateChanged(MeeGo::QmDisplayState::DisplayState state);
protected:
#if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)
void connectNotify(const QMetaMethod &signal);
void disconnectNotify(const QMetaMethod &signal);
#else
void connectNotify(const char *signal);
void disconnectNotify(const char *signal);
#endif
private:
Q_DISABLE_COPY(QmDisplayState)
MEEGO_DECLARE_PRIVATE(QmDisplayState)
};
} //MeeGo namespace
QT_END_HEADER
#endif /* QMDISPLAYSTATE_H */
// End of file