summaryrefslogtreecommitdiff
path: root/library/qpeapplication.h
Unidiff
Diffstat (limited to 'library/qpeapplication.h') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/library/qpeapplication.h b/library/qpeapplication.h
index 7f74510..82954d0 100644
--- a/library/qpeapplication.h
+++ b/library/qpeapplication.h
@@ -1,188 +1,197 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. 2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of the Qtopia Environment. 4** This file is part of the Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20#ifndef __QPE_APPLICATION_H__ 20#ifndef __QPE_APPLICATION_H__
21#define __QPE_APPLICATION_H__ 21#define __QPE_APPLICATION_H__
22 22
23 23
24#include <qglobal.h> 24#include <qglobal.h>
25#include <qapplication.h> 25#include <qapplication.h>
26#include <qdialog.h> 26#include <qdialog.h>
27#include <qwsdisplay_qws.h> 27#include <qwsdisplay_qws.h>
28#if defined(_WS_QWS_) && !defined(Q_WS_QWS) 28#if defined(_WS_QWS_) && !defined(Q_WS_QWS)
29#define Q_WS_QWS 29#define Q_WS_QWS
30#endif 30#endif
31#include "qpedecoration_qws.h" 31#include "qpedecoration_qws.h"
32#include "timestring.h" 32#include "timestring.h"
33 33
34#if ( defined Q_WS_QWS || defined( _WS_QWS_ ) ) && !defined( QT_NO_COP )
35#include <qpe/qcopenvelope_qws.h>
36#endif
37
34class QCopChannel; 38class QCopChannel;
35class QPEApplicationData; 39class QPEApplicationData;
36class QWSEvent; 40class QWSEvent;
37class QWSKeyEvent; 41class QWSKeyEvent;
38 42
39 43
40class QPEApplication : public QApplication 44class QPEApplication : public QApplication
41{ 45{
42 Q_OBJECT 46 Q_OBJECT
43public: 47public:
44 QPEApplication( int& argc, char **argv, Type=GuiClient ); 48 QPEApplication( int& argc, char **argv, Type=GuiClient );
45 ~QPEApplication(); 49 ~QPEApplication();
46 50
47 static QString qpeDir(); 51 static QString qpeDir();
48 static QString documentDir(); 52 static QString documentDir();
49 void applyStyle(); 53 void applyStyle();
50 static int defaultRotation(); 54 static int defaultRotation();
51 static void setDefaultRotation(int r); 55 static void setDefaultRotation(int r);
52 static void setCurrentRotation(int r); 56 static void setCurrentRotation(int r);
53 static void grabKeyboard(); 57 static void grabKeyboard();
54 static void ungrabKeyboard(); 58 static void ungrabKeyboard();
55 59
56 enum StylusMode { 60 enum StylusMode {
57 LeftOnly, 61 LeftOnly,
58 RightOnHold 62 RightOnHold
59 // RightOnHoldLeftDelayed, etc. 63 // RightOnHoldLeftDelayed, etc.
60 }; 64 };
61 static void setStylusOperation( QWidget*, StylusMode ); 65 static void setStylusOperation( QWidget*, StylusMode );
62 static StylusMode stylusOperation( QWidget* ); 66 static StylusMode stylusOperation( QWidget* );
63 67
64 enum InputMethodHint { 68 enum InputMethodHint {
65 Normal, 69 Normal,
66 AlwaysOff, 70 AlwaysOff,
67 AlwaysOn 71 AlwaysOn
68 }; 72 };
69 73
70 enum screenSaverHint { 74 enum screenSaverHint {
71 Disable = 0, 75 Disable = 0,
72 DisableLightOff = 1, 76 DisableLightOff = 1,
73 DisableSuspend = 2, 77 DisableSuspend = 2,
74 Enable = 100 78 Enable = 100
75 }; 79 };
76 80
77 static void setInputMethodHint( QWidget *, InputMethodHint ); 81 static void setInputMethodHint( QWidget *, InputMethodHint );
78 static InputMethodHint inputMethodHint( QWidget * ); 82 static InputMethodHint inputMethodHint( QWidget * );
79 83
80 void showMainWidget( QWidget*, bool nomax=FALSE ); 84 void showMainWidget( QWidget*, bool nomax=FALSE );
81 void showMainDocumentWidget( QWidget*, bool nomax=FALSE ); 85 void showMainDocumentWidget( QWidget*, bool nomax=FALSE );
82 static void showDialog( QDialog*, bool nomax=FALSE ); 86 static void showDialog( QDialog*, bool nomax=FALSE );
83 static int execDialog( QDialog*, bool nomax=FALSE ); 87 static int execDialog( QDialog*, bool nomax=FALSE );
84 88
85 static void setKeepRunning(); 89 static void setKeepRunning();
86 bool keepRunning() const; 90 bool keepRunning() const;
87 91
88 bool keyboardGrabbed() const; 92 bool keyboardGrabbed() const;
89 93
90 int exec(); 94 int exec();
91 95
92signals: 96signals:
93 void clientMoused(); 97 void clientMoused();
94 void timeChanged(); 98 void timeChanged();
95 void clockChanged( bool pm ); 99 void clockChanged( bool pm );
96 void micChanged( bool muted ); 100 void micChanged( bool muted );
97 void volumeChanged( bool muted ); 101 void volumeChanged( bool muted );
98 void appMessage( const QCString& msg, const QByteArray& data); 102 void appMessage( const QCString& msg, const QByteArray& data);
99 void weekChanged( bool startOnMonday ); 103 void weekChanged( bool startOnMonday );
100 void dateFormatChanged( DateFormat ); 104 void dateFormatChanged( DateFormat );
101 void flush(); 105 void flush();
102 void reload(); 106 void reload();
103 107
104private slots: 108private slots:
105 void systemMessage( const QCString &msg, const QByteArray &data ); 109 void systemMessage( const QCString &msg, const QByteArray &data );
106 void pidMessage( const QCString &msg, const QByteArray &data ); 110 void pidMessage( const QCString &msg, const QByteArray &data );
107 void removeSenderFromStylusDict(); 111 void removeSenderFromStylusDict();
108 void hideOrQuit(); 112 void hideOrQuit();
109 113
110protected: 114protected:
111 bool qwsEventFilter( QWSEvent * ); 115 bool qwsEventFilter( QWSEvent * );
112 void internalSetStyle( const QString &style ); 116 void internalSetStyle( const QString &style );
113 void prepareForTermination(bool willrestart); 117 void prepareForTermination(bool willrestart);
114 virtual void restart(); 118 virtual void restart();
115 virtual void shutdown(); 119 virtual void shutdown();
116 bool eventFilter( QObject *, QEvent * ); 120 bool eventFilter( QObject *, QEvent * );
117 void timerEvent( QTimerEvent * ); 121 void timerEvent( QTimerEvent * );
118 bool raiseAppropriateWindow(); 122 bool raiseAppropriateWindow();
119 virtual void tryQuit(); 123 virtual void tryQuit();
120 124
121 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!) 125 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!)
122 126
123private: 127private:
124 void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); 128 void mapToDefaultAction( QWSKeyEvent *ke, int defKey );
125 129
126#if defined(Q_WS_QWS) && !defined(QT_NO_COP) 130#if defined(Q_WS_QWS) && !defined(QT_NO_COP)
127 QCopChannel *sysChannel; 131 QCopChannel *sysChannel;
128 QCopChannel *pidChannel; 132 QCopChannel *pidChannel;
129#endif 133#endif
130 QPEApplicationData *d; 134 QPEApplicationData *d;
131 135
132 bool reserved_sh; 136 bool reserved_sh;
133 137
134 138
135 139
136}; 140};
137 141
138inline void QPEApplication::showDialog( QDialog* d, bool nomax ) 142inline void QPEApplication::showDialog( QDialog* d, bool nomax )
139{ 143{
140 QSize sh = d->sizeHint(); 144 QSize sh = d->sizeHint();
141 int w = QMAX(sh.width(),d->width()); 145 int w = QMAX(sh.width(),d->width());
142 int h = QMAX(sh.height(),d->height()); 146 int h = QMAX(sh.height(),d->height());
143 if ( !nomax 147 if ( !nomax
144 && ( w > qApp->desktop()->width()*3/4 148 && ( w > qApp->desktop()->width()*3/4
145 || h > qApp->desktop()->height()*3/4 ) ) 149 || h > qApp->desktop()->height()*3/4 ) )
146 { 150 {
147 d->showMaximized(); 151 d->showMaximized();
148 } else { 152 } else {
149 d->resize(w,h); 153 d->resize(w,h);
150 d->show(); 154 d->show();
151 } 155 }
152} 156}
153 157
154inline int QPEApplication::execDialog( QDialog* d, bool nomax ) 158inline int QPEApplication::execDialog( QDialog* d, bool nomax )
155{ 159{
156 showDialog(d,nomax); 160 showDialog(d,nomax);
157 return d->exec(); 161 return d->exec();
158} 162}
159 163
160enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */ 164enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */
161 165
162inline void QPEApplication::setCurrentRotation( int r ) 166inline void QPEApplication::setCurrentRotation( int r )
163{ 167{
168 if ( qApp->type() != GuiServer ) {
169 QCopEnvelope e( "QPE/System", "setCurrentRotation(int)" );
170 e << r;
171 return;
172 }
164 Transformation e; 173 Transformation e;
165 174
166 switch (r) { 175 switch (r) {
167 case 0: 176 case 0:
168 e = Rot0; 177 e = Rot0;
169 break; 178 break;
170 case 90: 179 case 90:
171 e = Rot90; 180 e = Rot90;
172 break; 181 break;
173 case 180: 182 case 180:
174 e = Rot180; 183 e = Rot180;
175 break; 184 break;
176 case 270: 185 case 270:
177 e = Rot270; 186 e = Rot270;
178 break; 187 break;
179 default: 188 default:
180 return; 189 return;
181 } 190 }
182 191
183 qDebug("calling qApp->desktop()->qwsDisplay()->setTransformation( %d )\n", e); 192 qDebug("calling qApp->desktop()->qwsDisplay()->setTransformation( %d )\n", e);
184 qApp->desktop()->qwsDisplay()->setTransformation( e ); 193 qApp->desktop()->qwsDisplay()->setTransformation( e );
185} 194}
186 195
187 196
188#endif 197#endif