Emit error signal when login fails
[situare] / src / engine / mceprivate.h
1 /*
2    Situare - A location system for Facebook
3    Copyright (C) 2010  Ixonos Plc. Authors:
4
5        Jussi Laitinen - jussi.laitinen@ixonos.com
6
7    Situare is free software; you can redistribute it and/or
8    modify it under the terms of the GNU General Public License
9    version 2 as published by the Free Software Foundation.
10
11    Situare is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15
16    You should have received a copy of the GNU General Public License
17    along with Situare; if not, write to the Free Software
18    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,
19    USA.
20 */
21
22 #ifndef MCEPRIVATE_H
23 #define MCEPRIVATE_H
24
25 #include <QtDBus/QDBusInterface>
26 #include <QtDBus/QDBusMessage>
27
28 class MCE;
29
30 /**
31 * @brief MCEPrivate class.
32 *
33 * Mode Control Entity (MCE) controls phone and listens changes in phone state.
34 */
35 class MCEPrivate : public QObject
36 {
37     Q_OBJECT
38
39 public:
40     /**
41     * @brief Constructor.
42     *
43     * @param parent QObject
44     */
45     MCEPrivate(QObject *parent);
46
47 /*******************************************************************************
48  * MEMBER FUNCTIONS AND SLOTS
49  ******************************************************************************/
50 public:
51     /**
52     * @brief Is the display on.
53     *
54     * @return true if on, false if off.
55     */
56     bool isDisplayOn();
57
58     /**
59     * @brief Vibrates the phone for short time.
60     *
61     * Uses pre-defined vibration pattern.
62     */
63     void vibrationFeedback();
64
65 private:
66     /**
67     * @brief Is the touchscreen vibration enabled.
68     *
69     * Reads settings from file.
70     * @return true if enabled, false otherwise
71     */
72     bool isTouchscreenVibrationEnabled();
73
74 private slots:
75     /**
76     * @brief Slot for display state changed.
77     *
78     * @return message QDBusMessage
79     */
80     void displayStateChanged(const QDBusMessage &message);
81
82     /**
83     * @brief Display state error.
84     *
85     * @param error QDBusError
86     */
87     void displayStateError(const QDBusError &error);
88
89     /**
90     * @brief Sets display state.
91     *
92     * @param state display state
93     */
94     void setDisplayState(const QString &state);
95
96     /**
97     * @brief Stops vibration.
98     */
99     void stopVibration();
100
101 /*******************************************************************************
102  * DATA MEMBERS
103  ******************************************************************************/
104 private:
105     bool m_displayOn;                   ///< Flag for display on/off
106     QDBusInterface *m_dBusInterface;    ///< D-Bus interface
107     MCE *m_parent;                      ///< Parent object
108 };
109
110 #endif // MCEPRIVATE_H