Commit 4b3780d5b634935f5cddc5e37a79aa128102078d

  • avatar
  • timo <timo @pu…p.(none)>
  • Sun Nov 15 15:13:03 CET 2009
Added QScreenControl class
  
1/*
2 * qscreencontrol.cpp
3 * author: Timo Härkönen
4 */
5
6#include "qscreencontrol.h"
7#include "qscreencontrol_p.h"
8#include "moc_qscreencontrol.cpp"
9
10namespace Maemo {
11
12QScreenControl *QScreenControl::m_instance = 0;
13
14QScreenControl *QScreenControl::instance()
15{
16 if(!m_instance) {
17 m_instance = new QScreenControl;
18 }
19
20 return m_instance;
21}
22
23QScreenControl::QScreenControl(QObject *parent) :
24 QObject(parent)
25{
26 MAEMO_INITIALIZE(QScreenControl);
27}
28
29QScreenControl::~QScreenControl()
30{
31 MAEMO_UNINITIALIZE(QScreenControl);
32}
33
34bool QScreenControl::isDisplayOn() const
35{
36 MAEMO_PRIVATE_CONST(QScreenControl);
37 return priv->isDisplayOn();
38}
39
40bool QScreenControl::isDisplayOff() const
41{
42 MAEMO_PRIVATE_CONST(QScreenControl);
43 return priv->isDisplayOff();
44}
45
46bool QScreenControl::isDisplayDimmed() const
47{
48 MAEMO_PRIVATE_CONST(QScreenControl);
49 return priv->isDisplayDimmed();
50}
51
52void QScreenControl::setDisplayOn()
53{
54 MAEMO_PRIVATE(QScreenControl);
55 priv->setDisplayOn();
56}
57
58void QScreenControl::setDisplayOff()
59{
60 MAEMO_PRIVATE(QScreenControl);
61 priv->setDisplayOff();
62}
63
64void QScreenControl::setDisplayDimmed()
65{
66 MAEMO_PRIVATE(QScreenControl);
67 priv->setDisplayDimmed();
68}
69
70void QScreenControl::setPreventBlackScreen()
71{
72 MAEMO_PRIVATE(QScreenControl);
73 priv->setPreventBlackScreen();
74}
75
76} //namespace
  
1/*
2 * qscreencontrol.h
3 * author: Timo Härkönen
4 */
5
6#ifndef QSCREENCONTROL_H
7#define QSCREENCONTROL_H
8
9#include <QObject>
10#include "../global/global.h"
11
12namespace Maemo {
13
14class QScreenControlPrivate;
15
16class QHILDONSYSTEMCAPABILITIES_SHARED_EXPORT QScreenControl : public QObject
17{
18 Q_OBJECT
19
20 MAEMO_DECLARE_PRIVATE(QScreenControl);
21
22public:
23 static QScreenControl *instance();
24 ~QScreenControl();
25 bool isDisplayOn() const;
26 bool isDisplayOff() const;
27 bool isDisplayDimmed() const;
28
29public Q_SLOTS:
30 void setDisplayOn();
31 void setDisplayOff();
32 void setDisplayDimmed();
33 void setPreventBlackScreen();
34
35Q_SIGNALS:
36 void displayStateChanged(); //TODO: fixme
37
38private:
39 QScreenControl(QObject *parent = 0);
40 static QScreenControl *m_instance;
41};
42
43} //namespace
44
45#endif
  
1/*
2 * qscreencontrol_p.h
3 * author: Timo Härkönen
4 */
5
6#ifndef QSCREENCONTROL_P_H
7#define QSCREENCONTROL_P_H
8
9#include "qscreencontrol.h"
10
11#include <QtDBus>
12#include <QtCore>
13
14#include <mce/mode-names.h>
15#include <mce/dbus-names.h>
16
17namespace Maemo {
18
19class QScreenControlPrivate
20{
21 MAEMO_DECLARE_PUBLIC(QScreenControl);
22
23public:
24 QScreenControlPrivate();
25 ~QScreenControlPrivate();
26 bool isDisplayOn() const;
27 bool isDisplayOff() const;
28 bool isDisplayDimmed() const;
29 void setDisplayOn();
30 void setDisplayOff();
31 void setDisplayDimmed();
32 void setPreventBlackScreen();
33};
34
35/** Begin private implementation **/
36
37QScreenControlPrivate::QScreenControlPrivate()
38{
39
40}
41
42QScreenControlPrivate::~QScreenControlPrivate()
43{
44
45}
46
47bool QScreenControlPrivate::isDisplayOn() const
48{
49 //TODO: fixme
50 return true;
51}
52
53bool QScreenControlPrivate::isDisplayOff() const
54{
55 //TODO: fixme
56 return false;
57}
58
59bool QScreenControlPrivate::isDisplayDimmed() const
60{
61 //TODO: fixme
62 return false;
63}
64
65void QScreenControlPrivate::setDisplayOn()
66{
67 QDBusConnection::systemBus().call(QDBusMessage::createMethodCall(MCE_SERVICE, MCE_REQUEST_PATH,
68 MCE_REQUEST_IF, MCE_DISPLAY_ON_REQ));
69}
70
71void QScreenControlPrivate::setDisplayOff()
72{
73 QDBusConnection::systemBus().call(QDBusMessage::createMethodCall(MCE_SERVICE, MCE_REQUEST_PATH,
74 MCE_REQUEST_IF, MCE_DISPLAY_OFF_REQ));
75}
76
77void QScreenControlPrivate::setDisplayDimmed()
78{
79 QDBusConnection::systemBus().call(QDBusMessage::createMethodCall(MCE_SERVICE, MCE_REQUEST_PATH,
80 MCE_REQUEST_IF, MCE_DISPLAY_DIM_REQ));
81}
82
83void QScreenControlPrivate::setPreventBlackScreen()
84{
85 QDBusConnection::systemBus().call(QDBusMessage::createMethodCall(MCE_SERVICE, MCE_REQUEST_PATH,
86 MCE_REQUEST_IF, MCE_PREVENT_BLANK_REQ));
87}
88
89} //namespace
90
91#endif
  
66
77DEFINES += QHILDONSYSTEMCAPABILITIES_LIBRARY
88
9HEADERS += qorientationinfo.h qorientationinfo_p.h
9HEADERS += qorientationinfo.h qorientationinfo_p.h qscreencontrol.h qscreencontrol_p.h
1010
11SOURCES += qorientationinfo.cpp
11SOURCES += qorientationinfo.cpp qscreencontrol.cpp
1212
1313target.path = /usr/lib
1414