summaryrefslogtreecommitdiff
path: root/library/qpeapplication.h
Unidiff
Diffstat (limited to 'library/qpeapplication.h') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.h43
1 files changed, 24 insertions, 19 deletions
diff --git a/library/qpeapplication.h b/library/qpeapplication.h
index 9ea7e9d..8c85ad0 100644
--- a/library/qpeapplication.h
+++ b/library/qpeapplication.h
@@ -174,84 +174,89 @@ private:
174 void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); 174 void mapToDefaultAction( QWSKeyEvent *ke, int defKey );
175 void processQCopFile(); 175 void processQCopFile();
176 176
177#if defined(Q_WS_QWS) && !defined(QT_NO_COP) 177#if defined(Q_WS_QWS) && !defined(QT_NO_COP)
178 QCopChannel *sysChannel; 178 QCopChannel *sysChannel;
179 QCopChannel *pidChannel; 179 QCopChannel *pidChannel;
180#endif 180#endif
181 QPEApplicationData *d; 181 QPEApplicationData *d;
182 182
183 bool reserved_sh; 183 bool reserved_sh;
184 184
185 185
186 186
187}; 187};
188 188
189inline void QPEApplication::showDialog( QDialog* d, bool nomax ) 189inline void QPEApplication::showDialog( QDialog* d, bool nomax )
190{ 190{
191 showWidget( d, nomax ); 191 showWidget( d, nomax );
192} 192}
193 193
194inline int QPEApplication::execDialog( QDialog* d, bool nomax ) 194inline int QPEApplication::execDialog( QDialog* d, bool nomax )
195{ 195{
196 showDialog( d, nomax ); 196 showDialog( d, nomax );
197 return d->exec(); 197 return d->exec();
198} 198}
199 199
200#ifdef Q_WS_QWS 200#ifdef Q_WS_QWS
201extern Q_EXPORT QRect qt_maxWindowRect; 201extern Q_EXPORT QRect qt_maxWindowRect;
202#endif 202#endif
203 203
204inline void QPEApplication::showWidget( QWidget* wg, bool nomax ) 204inline void QPEApplication::showWidget( QWidget* wg, bool nomax )
205{ 205{
206 if ( !nomax 206 if ( wg->isVisible() )
207 && ( qApp->desktop()->width() <= 320 ) )
208 {
209 wg->showMaximized();
210 } else {
211 #ifdef Q_WS_QWS
212 QSize desk = QSize( qApp->desktop()->width(), qApp->desktop()->height() );
213 #else
214 QSize desk = QSize( qt_maxWindowRect.width(), qt_maxWindowRect.height() );
215 #endif
216
217 QSize sh = wg->sizeHint();
218 int w = QMAX( sh.width(), wg->width() );
219 int h = QMAX( sh.height(), wg->height() );
220 // desktop widget-frame taskbar
221 w = QMIN( w, ( desk.width() - ( wg->frameGeometry().width() - wg->geometry().width() ) - 25 ) );
222 h = QMIN( h, ( desk.height() - ( wg->frameGeometry().height() - wg->geometry().height() ) - 25 ) );
223
224 wg->resize( w, h );
225 wg->show(); 207 wg->show();
208 else
209 {
210 if ( !nomax
211 && ( qApp->desktop()->width() <= 320 ) )
212 {
213 wg->showMaximized();
214 } else {
215 #ifdef Q_WS_QWS
216 QSize desk = QSize( qApp->desktop()->width(), qApp->desktop()->height() );
217 #else
218 QSize desk = QSize( qt_maxWindowRect.width(), qt_maxWindowRect.height() );
219 #endif
220
221 QSize sh = wg->sizeHint();
222 int w = QMAX( sh.width(), wg->width() );
223 int h = QMAX( sh.height(), wg->height() );
224 // desktop widget-frame taskbar
225 w = QMIN( w, ( desk.width() - ( wg->frameGeometry().width() - wg->geometry().width() ) - 25 ) );
226 h = QMIN( h, ( desk.height() - ( wg->frameGeometry().height() - wg->geometry().height() ) - 25 ) );
227
228 wg->resize( w, h );
229 wg->show();
230 }
226 } 231 }
227} 232}
228 233
229enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */ 234enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */
230 235
231inline int TransToDeg ( Transformation t ) 236inline int TransToDeg ( Transformation t )
232{ 237{
233 int d = static_cast<int>( t ); 238 int d = static_cast<int>( t );
234 return d * 90; 239 return d * 90;
235} 240}
236 241
237inline Transformation DegToTrans ( int d ) 242inline Transformation DegToTrans ( int d )
238{ 243{
239 Transformation t = static_cast<Transformation>( d / 90 ); 244 Transformation t = static_cast<Transformation>( d / 90 );
240 return t; 245 return t;
241} 246}
242 247
243/* 248/*
244 * Set current rotation of Opie, and rotation for newly started apps. 249 * Set current rotation of Opie, and rotation for newly started apps.
245 * Differs from setDefaultRotation in that 1) it rotates currently running apps, 250 * Differs from setDefaultRotation in that 1) it rotates currently running apps,
246 * 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.
247 */ 252 */
248 253
249inline void QPEApplication::setCurrentRotation( int r ) 254inline void QPEApplication::setCurrentRotation( int r )
250{ 255{
251 // setTransformation has been introduced in Qt/Embedded 2.3.4 snapshots 256 // setTransformation has been introduced in Qt/Embedded 2.3.4 snapshots
252 // for compatibility with the SharpROM use fallback to setDefaultTransformation() 257 // for compatibility with the SharpROM use fallback to setDefaultTransformation()
253#if QT_VERSION > 233 258#if QT_VERSION > 233
254 Transformation e = DegToTrans( r ); 259 Transformation e = DegToTrans( r );
255 ::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 );
256 qApp->desktop()->qwsDisplay()->setTransformation( e ); 261 qApp->desktop()->qwsDisplay()->setTransformation( e );
257#else 262#else