summaryrefslogtreecommitdiff
path: root/library/qpeapplication.h
Unidiff
Diffstat (limited to 'library/qpeapplication.h') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/library/qpeapplication.h b/library/qpeapplication.h
index d2782e4..b07802f 100644
--- a/library/qpeapplication.h
+++ b/library/qpeapplication.h
@@ -59,212 +59,210 @@ class QWSKeyEvent;
59 dateFormatChanged() and volumeChanged(). If the application receives 59 dateFormatChanged() and volumeChanged(). If the application receives
60 a \link qcop.html QCop\endlink message on the application's 60 a \link qcop.html QCop\endlink message on the application's
61 QPE/Application/\e{appname} channel, the appMessage() signal is 61 QPE/Application/\e{appname} channel, the appMessage() signal is
62 emitted. There are also flush() and reload() signals, which 62 emitted. There are also flush() and reload() signals, which
63 are emitted when synching begins and ends respectively - upon these 63 are emitted when synching begins and ends respectively - upon these
64 signals, the application should save and reload any data 64 signals, the application should save and reload any data
65 files that are involved in synching. Most of these signals will initially 65 files that are involved in synching. Most of these signals will initially
66 be received and unfiltered through the appMessage() signal. 66 be received and unfiltered through the appMessage() signal.
67 67
68 This class also provides a set of useful static functions. The 68 This class also provides a set of useful static functions. The
69 qpeDir() and documentDir() functions return the respective paths. 69 qpeDir() and documentDir() functions return the respective paths.
70 The grabKeyboard() and ungrabKeyboard() functions are used to 70 The grabKeyboard() and ungrabKeyboard() functions are used to
71 control whether the application takes control of the device's 71 control whether the application takes control of the device's
72 physical buttons (e.g. application launch keys). The stylus' mode of 72 physical buttons (e.g. application launch keys). The stylus' mode of
73 operation is set with setStylusOperation() and retrieved with 73 operation is set with setStylusOperation() and retrieved with
74 stylusOperation(). There are also setInputMethodHint() and 74 stylusOperation(). There are also setInputMethodHint() and
75 inputMethodHint() functions. 75 inputMethodHint() functions.
76 76
77 \ingroup qtopiaemb 77 \ingroup qtopiaemb
78*/ 78*/
79class QPEApplication : public QApplication 79class QPEApplication : public QApplication
80{ 80{
81 Q_OBJECT 81 Q_OBJECT
82public: 82public:
83 QPEApplication( int& argc, char **argv, Type=GuiClient ); 83 QPEApplication( int& argc, char **argv, Type=GuiClient );
84 ~QPEApplication(); 84 ~QPEApplication();
85 85
86 static QString qpeDir(); 86 static QString qpeDir();
87 static QString documentDir(); 87 static QString documentDir();
88 void applyStyle(); 88 void applyStyle();
89 void reset(); 89 void reset();
90 static int defaultRotation(); 90 static int defaultRotation();
91 static void setDefaultRotation(int r); 91 static void setDefaultRotation(int r);
92 static void setCurrentRotation(int r); 92 static void setCurrentRotation(int r);
93 static void setCurrentMode(int x, int y, int depth ); 93 static void setCurrentMode(int x, int y, int depth );
94 static void grabKeyboard(); 94 static void grabKeyboard();
95 static void ungrabKeyboard(); 95 static void ungrabKeyboard();
96 96
97 enum StylusMode { 97 enum StylusMode {
98 LeftOnly, 98 LeftOnly,
99 RightOnHold 99 RightOnHold
100 // RightOnHoldLeftDelayed, etc. 100 // RightOnHoldLeftDelayed, etc.
101 }; 101 };
102 static void setStylusOperation( QWidget*, StylusMode ); 102 static void setStylusOperation( QWidget*, StylusMode );
103 static StylusMode stylusOperation( QWidget* ); 103 static StylusMode stylusOperation( QWidget* );
104 104
105 enum InputMethodHint { 105 enum InputMethodHint {
106 Normal, 106 Normal,
107 AlwaysOff, 107 AlwaysOff,
108 AlwaysOn 108 AlwaysOn
109 }; 109 };
110 110
111 enum screenSaverHint { 111 enum screenSaverHint {
112 Disable = 0, 112 Disable = 0,
113 DisableLightOff = 1, 113 DisableLightOff = 1,
114 DisableSuspend = 2, 114 DisableSuspend = 2,
115 Enable = 100 115 Enable = 100
116 }; 116 };
117 117
118 static void setInputMethodHint( QWidget *, InputMethodHint ); 118 static void setInputMethodHint( QWidget *, InputMethodHint );
119 static InputMethodHint inputMethodHint( QWidget * ); 119 static InputMethodHint inputMethodHint( QWidget * );
120 120
121 void showMainWidget( QWidget*, bool nomax=FALSE ); 121 void showMainWidget( QWidget*, bool nomax=FALSE );
122 void showMainDocumentWidget( QWidget*, bool nomax=FALSE ); 122 void showMainDocumentWidget( QWidget*, bool nomax=FALSE );
123 static void showDialog( QDialog*, bool nomax=FALSE ); 123 static void showDialog( QDialog*, bool nomax=FALSE );
124 static int execDialog( QDialog*, bool nomax=FALSE ); 124 static int execDialog( QDialog*, bool nomax=FALSE );
125 static void showWidget( QWidget*, bool nomax=FALSE ); 125 static void showWidget( QWidget*, bool nomax=FALSE );
126 /* Merge setTempScreenSaverMode */ 126 /* Merge setTempScreenSaverMode */
127#ifdef QTOPIA_INTERNAL_INITAPP 127#ifdef QTOPIA_INTERNAL_INITAPP
128 void initApp( int argv, char **argv ); 128 void initApp( int argv, char **argv );
129#endif 129#endif
130 130
131 static void setKeepRunning(); 131 static void setKeepRunning();
132 bool keepRunning() const; 132 bool keepRunning() const;
133 133
134 bool keyboardGrabbed() const; 134 bool keyboardGrabbed() const;
135 135
136 int exec(); 136 int exec();
137 137
138signals: 138signals:
139 void clientMoused(); 139 void clientMoused();
140 void timeChanged(); 140 void timeChanged();
141 void clockChanged( bool pm ); 141 void clockChanged( bool pm );
142 void micChanged( bool muted ); 142 void micChanged( bool muted );
143 void volumeChanged( bool muted ); 143 void volumeChanged( bool muted );
144 void appMessage( const QCString& msg, const QByteArray& data); 144 void appMessage( const QCString& msg, const QByteArray& data);
145 void weekChanged( bool startOnMonday ); 145 void weekChanged( bool startOnMonday );
146 void dateFormatChanged( DateFormat ); 146 void dateFormatChanged( DateFormat );
147 void flush(); 147 void flush();
148 void reload(); 148 void reload();
149 /* linkChanged signal */ 149 /* linkChanged signal */
150 150
151private slots: 151private slots:
152 void systemMessage( const QCString &msg, const QByteArray &data ); 152 void systemMessage( const QCString &msg, const QByteArray &data );
153 void pidMessage( const QCString &msg, const QByteArray &data ); 153 void pidMessage( const QCString &msg, const QByteArray &data );
154 void removeSenderFromStylusDict(); 154 void removeSenderFromStylusDict();
155 void hideOrQuit(); 155 void hideOrQuit();
156 156
157protected: 157protected:
158 bool qwsEventFilter( QWSEvent * ); 158 bool qwsEventFilter( QWSEvent * );
159 void internalSetStyle( const QString &style ); 159 void internalSetStyle( const QString &style );
160 void prepareForTermination(bool willrestart); 160 void prepareForTermination(bool willrestart);
161 virtual void restart(); 161 virtual void restart();
162 virtual void shutdown(); 162 virtual void shutdown();
163 bool eventFilter( QObject *, QEvent * ); 163 bool eventFilter( QObject *, QEvent * );
164 void timerEvent( QTimerEvent * ); 164 void timerEvent( QTimerEvent * );
165 bool raiseAppropriateWindow(); 165 bool raiseAppropriateWindow();
166 virtual void tryQuit(); 166 virtual void tryQuit();
167#ifndef OPIE_NO_ERASE_RECT_HACKFIX 167#ifndef OPIE_NO_ERASE_RECT_HACKFIX
168 #if QT_VERSION > 233 168 #if QT_VERSION > 233
169 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!) 169 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!)
170 #endif 170 #endif
171#endif 171#endif
172private: 172private:
173#ifndef QT_NO_TRANSLATION 173#ifndef QT_NO_TRANSLATION
174 void installTranslation( const QString& baseName ); 174 void installTranslation( const QString& baseName );
175#endif 175#endif
176 void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); 176 void mapToDefaultAction( QWSKeyEvent *ke, int defKey );
177 void processQCopFile(); 177 void processQCopFile();
178 178
179#if defined(Q_WS_QWS) && !defined(QT_NO_COP) 179#if defined(Q_WS_QWS) && !defined(QT_NO_COP)
180 QCopChannel *sysChannel; 180 QCopChannel *sysChannel;
181 QCopChannel *pidChannel; 181 QCopChannel *pidChannel;
182#endif 182#endif
183 QPEApplicationData *d; 183 QPEApplicationData *d;
184 184
185 bool reserved_sh; 185 bool reserved_sh;
186 186
187
188
189}; 187};
190 188
191inline void QPEApplication::showDialog( QDialog* d, bool nomax ) 189inline void QPEApplication::showDialog( QDialog* d, bool nomax )
192{ 190{
193 showWidget( d, nomax ); 191 showWidget( d, nomax );
194} 192}
195 193
196inline int QPEApplication::execDialog( QDialog* d, bool nomax ) 194inline int QPEApplication::execDialog( QDialog* d, bool nomax )
197{ 195{
198 showDialog( d, nomax ); 196 showDialog( d, nomax );
199 return d->exec(); 197 return d->exec();
200} 198}
201 199
202#ifdef Q_WS_QWS 200#ifdef Q_WS_QWS
203extern Q_EXPORT QRect qt_maxWindowRect; 201extern Q_EXPORT QRect qt_maxWindowRect;
204#endif 202#endif
205 203
206inline void QPEApplication::showWidget( QWidget* wg, bool nomax ) 204inline void QPEApplication::showWidget( QWidget* wg, bool nomax )
207{ 205{
208 if ( wg->isVisible() ) 206 if ( wg->isVisible() )
209 wg->show(); 207 wg->show();
210 else 208 else
211 { 209 {
212 if ( !nomax 210 if ( !nomax
213 && ( qApp->desktop()->width() <= 320 ) ) 211 && ( qApp->desktop()->width() <= 320 ) )
214 { 212 {
215 wg->showMaximized(); 213 wg->showMaximized();
216 } else { 214 } else {
217 #ifdef Q_WS_QWS 215 #ifdef Q_WS_QWS
218 QSize desk = QSize( qApp->desktop()->width(), qApp->desktop()->height() ); 216 QSize desk = QSize( qApp->desktop()->width(), qApp->desktop()->height() );
219 #else 217 #else
220 QSize desk = QSize( qt_maxWindowRect.width(), qt_maxWindowRect.height() ); 218 QSize desk = QSize( qt_maxWindowRect.width(), qt_maxWindowRect.height() );
221 #endif 219 #endif
222 220
223 QSize sh = wg->sizeHint(); 221 QSize sh = wg->sizeHint();
224 int w = QMAX( sh.width(), wg->width() ); 222 int w = QMAX( sh.width(), wg->width() );
225 int h = QMAX( sh.height(), wg->height() ); 223 int h = QMAX( sh.height(), wg->height() );
226 // desktop widget-frame taskbar 224 // desktop widget-frame taskbar
227 w = QMIN( w, ( desk.width() - ( wg->frameGeometry().width() - wg->geometry().width() ) - 25 ) ); 225 w = QMIN( w, ( desk.width() - ( wg->frameGeometry().width() - wg->geometry().width() ) - 25 ) );
228 h = QMIN( h, ( desk.height() - ( wg->frameGeometry().height() - wg->geometry().height() ) - 25 ) ); 226 h = QMIN( h, ( desk.height() - ( wg->frameGeometry().height() - wg->geometry().height() ) - 25 ) );
229 227
230 wg->resize( w, h ); 228 wg->resize( w, h );
231 wg->show(); 229 wg->show();
232 } 230 }
233 } 231 }
234} 232}
235 233
236enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */ 234enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */
237 235
238inline int TransToDeg ( Transformation t ) 236inline int TransToDeg ( Transformation t )
239{ 237{
240 int d = static_cast<int>( t ); 238 int d = static_cast<int>( t );
241 return d * 90; 239 return d * 90;
242} 240}
243 241
244inline Transformation DegToTrans ( int d ) 242inline Transformation DegToTrans ( int d )
245{ 243{
246 Transformation t = static_cast<Transformation>( d / 90 ); 244 Transformation t = static_cast<Transformation>( d / 90 );
247 return t; 245 return t;
248} 246}
249 247
250/* 248/*
251 * Set current rotation of Opie, and rotation for newly started apps. 249 * Set current rotation of Opie, and rotation for newly started apps.
252 * Differs from setDefaultRotation in that 1) it rotates currently running apps, 250 * Differs from setDefaultRotation in that 1) it rotates currently running apps,
253 * and 2) does not set deforient or save orientation to qpe.conf. 251 * and 2) does not set deforient or save orientation to qpe.conf.
254 */ 252 */
255 253
256inline void QPEApplication::setCurrentRotation( int r ) 254inline void QPEApplication::setCurrentRotation( int r )
257{ 255{
258 // setTransformation has been introduced in Qt/Embedded 2.3.4 snapshots 256 // setTransformation has been introduced in Qt/Embedded 2.3.4 snapshots
259 // for compatibility with the SharpROM use fallback to setDefaultTransformation() 257 // for compatibility with the SharpROM use fallback to setDefaultTransformation()
260#if QT_VERSION > 233 258#if QT_VERSION > 233
261 Transformation e = DegToTrans( r ); 259 Transformation e = DegToTrans( r );
262 ::setenv( "QWS_DISPLAY", QString( "Transformed:Rot%1:0" ).arg( r ).latin1(), 1 ); 260 ::setenv( "QWS_DISPLAY", QString( "Transformed:Rot%1:0" ).arg( r ).latin1(), 1 );
263 qApp->desktop()->qwsDisplay()->setTransformation( e ); 261 qApp->desktop()->qwsDisplay()->setTransformation( e );
264#else 262#else
265 setDefaultRotation( r ); 263 setDefaultRotation( r );
266#endif 264#endif
267} 265}
268 266
269 267
270#endif 268#endif