summaryrefslogtreecommitdiff
path: root/library/qpeapplication.h
Unidiff
Diffstat (limited to 'library/qpeapplication.h') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/library/qpeapplication.h b/library/qpeapplication.h
index 3ef8b46..a884046 100644
--- a/library/qpeapplication.h
+++ b/library/qpeapplication.h
@@ -77,168 +77,185 @@ class QWSKeyEvent;
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 int showWidget( QWidget*, bool nomax=FALSE );
125 /* Merge setTempScreenSaverMode */ 126 /* Merge setTempScreenSaverMode */
126#ifdef QTOPIA_INTERNAL_INITAPP 127#ifdef QTOPIA_INTERNAL_INITAPP
127 void initApp( int argv, char **argv ); 128 void initApp( int argv, char **argv );
128#endif 129#endif
129 130
130 static void setKeepRunning(); 131 static void setKeepRunning();
131 bool keepRunning() const; 132 bool keepRunning() const;
132 133
133 bool keyboardGrabbed() const; 134 bool keyboardGrabbed() const;
134 135
135 int exec(); 136 int exec();
136 137
137signals: 138signals:
138 void clientMoused(); 139 void clientMoused();
139 void timeChanged(); 140 void timeChanged();
140 void clockChanged( bool pm ); 141 void clockChanged( bool pm );
141 void micChanged( bool muted ); 142 void micChanged( bool muted );
142 void volumeChanged( bool muted ); 143 void volumeChanged( bool muted );
143 void appMessage( const QCString& msg, const QByteArray& data); 144 void appMessage( const QCString& msg, const QByteArray& data);
144 void weekChanged( bool startOnMonday ); 145 void weekChanged( bool startOnMonday );
145 void dateFormatChanged( DateFormat ); 146 void dateFormatChanged( DateFormat );
146 void flush(); 147 void flush();
147 void reload(); 148 void reload();
148 /* linkChanged signal */ 149 /* linkChanged signal */
149 150
150private slots: 151private slots:
151 void systemMessage( const QCString &msg, const QByteArray &data ); 152 void systemMessage( const QCString &msg, const QByteArray &data );
152 void pidMessage( const QCString &msg, const QByteArray &data ); 153 void pidMessage( const QCString &msg, const QByteArray &data );
153 void removeSenderFromStylusDict(); 154 void removeSenderFromStylusDict();
154 void hideOrQuit(); 155 void hideOrQuit();
155 156
156protected: 157protected:
157 bool qwsEventFilter( QWSEvent * ); 158 bool qwsEventFilter( QWSEvent * );
158 void internalSetStyle( const QString &style ); 159 void internalSetStyle( const QString &style );
159 void prepareForTermination(bool willrestart); 160 void prepareForTermination(bool willrestart);
160 virtual void restart(); 161 virtual void restart();
161 virtual void shutdown(); 162 virtual void shutdown();
162 bool eventFilter( QObject *, QEvent * ); 163 bool eventFilter( QObject *, QEvent * );
163 void timerEvent( QTimerEvent * ); 164 void timerEvent( QTimerEvent * );
164 bool raiseAppropriateWindow(); 165 bool raiseAppropriateWindow();
165 virtual void tryQuit(); 166 virtual void tryQuit();
166#if QT_VERSION > 233 167#if QT_VERSION > 233
167 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!) 168 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!)
168#endif 169#endif
169private: 170private:
170#ifndef QT_NO_TRANSLATION 171#ifndef QT_NO_TRANSLATION
171 void installTranslation( const QString& baseName ); 172 void installTranslation( const QString& baseName );
172#endif 173#endif
173 void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); 174 void mapToDefaultAction( QWSKeyEvent *ke, int defKey );
174 void processQCopFile(); 175 void processQCopFile();
175 176
176#if defined(Q_WS_QWS) && !defined(QT_NO_COP) 177#if defined(Q_WS_QWS) && !defined(QT_NO_COP)
177 QCopChannel *sysChannel; 178 QCopChannel *sysChannel;
178 QCopChannel *pidChannel; 179 QCopChannel *pidChannel;
179#endif 180#endif
180 QPEApplicationData *d; 181 QPEApplicationData *d;
181 182
182 bool reserved_sh; 183 bool reserved_sh;
183 184
184 185
185 186
186}; 187};
187 188
188inline void QPEApplication::showDialog( QDialog* d, bool nomax ) 189inline void QPEApplication::showDialog( QDialog* d, bool nomax )
189{ 190{
190 QSize sh = d->sizeHint(); 191 QSize sh = d->sizeHint();
191 int w = QMAX(sh.width(),d->width()); 192 int w = QMAX(sh.width(),d->width());
192 int h = QMAX(sh.height(),d->height()); 193 int h = QMAX(sh.height(),d->height());
193 if ( !nomax 194 if ( !nomax
194 && ( w > qApp->desktop()->width()*3/4 195 && ( w > qApp->desktop()->width()*3/4
195 || h > qApp->desktop()->height()*3/4 ) ) 196 || h > qApp->desktop()->height()*3/4 ) )
196 { 197 {
197 d->showMaximized(); 198 d->showMaximized();
198 } else { 199 } else {
199 d->resize(w,h); 200 d->resize(w,h);
200 d->show(); 201 d->show();
201 } 202 }
202} 203}
203 204
204inline int QPEApplication::execDialog( QDialog* d, bool nomax ) 205inline int QPEApplication::execDialog( QDialog* d, bool nomax )
205{ 206{
206 showDialog(d,nomax); 207 showDialog(d,nomax);
207 return d->exec(); 208 return d->exec();
208} 209}
209 210
211inline int QPEApplication::showWidget( QWidget* wg, bool nomax )
212{
213 QSize sh = wg->sizeHint();
214 int w = QMAX(sh.width(),wg->width());
215 int h = QMAX(sh.height(),wg->height());
216 if ( !nomax
217 && ( w > qApp->desktop()->width()*3/4
218 || h > qApp->desktop()->height()*3/4 ) )
219 {
220 wg->showMaximized();
221 } else {
222 wg->resize(w,h);
223 wg->show();
224 }
225}
226
210enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */ 227enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */
211 228
212inline int TransToDeg ( Transformation t ) 229inline int TransToDeg ( Transformation t )
213{ 230{
214 int d = static_cast<int>( t ); 231 int d = static_cast<int>( t );
215 return d * 90; 232 return d * 90;
216} 233}
217 234
218inline Transformation DegToTrans ( int d ) 235inline Transformation DegToTrans ( int d )
219{ 236{
220 Transformation t = static_cast<Transformation>( d / 90 ); 237 Transformation t = static_cast<Transformation>( d / 90 );
221 return t; 238 return t;
222} 239}
223 240
224/* 241/*
225 * Set current rotation of Opie, and rotation for newly started apps. 242 * Set current rotation of Opie, and rotation for newly started apps.
226 * Differs from setDefaultRotation in that 1) it rotates currently running apps, 243 * Differs from setDefaultRotation in that 1) it rotates currently running apps,
227 * and 2) does not set deforient or save orientation to qpe.conf. 244 * and 2) does not set deforient or save orientation to qpe.conf.
228 */ 245 */
229 246
230inline void QPEApplication::setCurrentRotation( int r ) 247inline void QPEApplication::setCurrentRotation( int r )
231{ 248{
232 // setTransformation has been introduced in Qt/Embedded 2.3.4 snapshots 249 // setTransformation has been introduced in Qt/Embedded 2.3.4 snapshots
233 // for compatibility with the SharpROM use fallback to setDefaultTransformation() 250 // for compatibility with the SharpROM use fallback to setDefaultTransformation()
234#if QT_VERSION > 233 251#if QT_VERSION > 233
235 Transformation e = DegToTrans( r ); 252 Transformation e = DegToTrans( r );
236 ::setenv( "QWS_DISPLAY", QString( "Transformed:Rot%1:0" ).arg( r ).latin1(), 1 ); 253 ::setenv( "QWS_DISPLAY", QString( "Transformed:Rot%1:0" ).arg( r ).latin1(), 1 );
237 qApp->desktop()->qwsDisplay()->setTransformation( e ); 254 qApp->desktop()->qwsDisplay()->setTransformation( e );
238#else 255#else
239 setDefaultRotation( r ); 256 setDefaultRotation( r );
240#endif 257#endif
241} 258}
242 259
243 260
244#endif 261#endif