-rw-r--r-- | x11/libqpe-x11/qpe/qpeapplication.cpp | 26 | ||||
-rw-r--r-- | x11/libqpe-x11/qpe/qpeapplication.h | 9 | ||||
-rw-r--r-- | x11/libqpe-x11/qt/qwindowsystem_qws.h | 19 |
3 files changed, 53 insertions, 1 deletions
diff --git a/x11/libqpe-x11/qpe/qpeapplication.cpp b/x11/libqpe-x11/qpe/qpeapplication.cpp index 6e4a96c..8785c74 100644 --- a/x11/libqpe-x11/qpe/qpeapplication.cpp +++ b/x11/libqpe-x11/qpe/qpeapplication.cpp @@ -631,8 +631,34 @@ void QPEApplication::hideOrQuit() { else quit(); } +/*! + \internal +*/ +void QPEApplication::prepareForTermination( bool willrestart ) +{ + if ( willrestart ) { + // Draw a big wait icon, the image can be altered in later revisions + // QWidget *d = QApplication::desktop(); + QImage img = Resource::loadImage( "launcher/new_wait" ); + QPixmap pix; + pix.convertFromImage( img.smoothScale( 1 * img.width(), 1 * img.height() ) ); + QLabel *lblWait = new QLabel( 0, "wait hack!", QWidget::WStyle_Customize | + QWidget::WStyle_NoBorder | QWidget::WStyle_Tool ); + lblWait->setPixmap( pix ); + lblWait->setAlignment( QWidget::AlignCenter ); + lblWait->show(); + lblWait->showMaximized(); + } +#ifndef SINGLE_APP + { QCopEnvelope envelope( "QPE/System", "forceQuit()" ); + } + processEvents(); // ensure the message goes out. + sleep( 1 ); // You have 1 second to comply. +#endif +} + #if defined(QT_QWS_IPAQ) || defined(QT_QWS_EBX) // The libraries with the skiff package (and possibly others) have // completely useless implementations of builtin new and delete that diff --git a/x11/libqpe-x11/qpe/qpeapplication.h b/x11/libqpe-x11/qpe/qpeapplication.h index 2af1c66..333f331 100644 --- a/x11/libqpe-x11/qpe/qpeapplication.h +++ b/x11/libqpe-x11/qpe/qpeapplication.h @@ -53,8 +53,16 @@ public: bool keyboardGrabbed()const; int exec(); +// QWS bits + enum screenSaverHint { + Disable = 0, + DisableLightOff = 1, + DisableSuspend = 2, + Enable = 100 + }; + signals: void clientMoused(); void timeChanged(); void clockChanged( bool pm ); @@ -77,8 +85,9 @@ private slots: void removeSenderFromStylusDict(); protected: virtual void restart(); virtual void shutdown(); + void prepareForTermination(bool willrestart); bool eventFilter( QObject*, QEvent* ); void timerEvent( QTimerEvent* ); void raiseAppropriateWindow(); virtual void tryQuit(); diff --git a/x11/libqpe-x11/qt/qwindowsystem_qws.h b/x11/libqpe-x11/qt/qwindowsystem_qws.h index 7bc43c5..2652f5f 100644 --- a/x11/libqpe-x11/qt/qwindowsystem_qws.h +++ b/x11/libqpe-x11/qt/qwindowsystem_qws.h @@ -1,7 +1,8 @@ #ifndef OPIE_QWINDOWSYSTEM_H #define OPIE_QWINDOWSYSTEM_H +class QWSScreenSaver; class QWSServer { public: QWSServer(){} ~QWSServer(){} @@ -10,9 +11,25 @@ QWSServer(){} }; static void setKeyboardFilter( KeyboardFilter* ) { } + static void setScreenSaver( QWSScreenSaver* ) { -}; + } + static void setScreenSaverInterval( int ) { + + } + static void setScreenSaverIntervals( int[] ) { + + } + static void screenSaverActivate( bool ) { + } + static void setDesktopBackground( const QImage& ) { + + } + +}; +struct QWSScreenSaver { +}; #endif |