-rw-r--r-- | core/apps/calibrate/calibrate.cpp | 11 | ||||
-rw-r--r-- | core/launcher/shutdownimpl.cpp | 11 | ||||
-rw-r--r-- | core/launcher/shutdownimpl.h | 2 |
3 files changed, 22 insertions, 2 deletions
diff --git a/core/apps/calibrate/calibrate.cpp b/core/apps/calibrate/calibrate.cpp index b9ad73d..6d498bc 100644 --- a/core/apps/calibrate/calibrate.cpp +++ b/core/apps/calibrate/calibrate.cpp @@ -14,25 +14,25 @@ ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ #include <math.h> #include "calibrate.h" #include <qpe/resource.h> - +#include <qpe/qcopenvelope_qws.h> #include <qapplication.h> #if defined(Q_WS_QWS) || defined(_WS_QWS_) #include <qpainter.h> #include <qtimer.h> #include <qwindowsystem_qws.h> #include <qgfx_qws.h> Calibrate::Calibrate( QWidget* parent, const char * name, WFlags wf ) : QDialog( parent, name, TRUE, wf | WStyle_Tool | WStyle_Customize | WStyle_StaysOnTop ) @@ -71,26 +71,33 @@ void Calibrate::show() QWSServer::mouseHandler() ->getCalibration( &goodcd ); QWSServer::mouseHandler() ->clearCalibration(); QDialog::show(); } void Calibrate::store() { QWSServer::mouseHandler() ->calibrate( &goodcd ); } void Calibrate::hide() { - if ( isVisible() ) + if ( isVisible ( )) { store(); + + // hack - calibrate is a launcher dialog, but treated like a standalone app + { + QCopEnvelope e( "QPE/System", "closing(QString)" ); + e << QString ( "calibrate" ); + } + } QDialog::hide(); } void Calibrate::reset() { penPos = QPoint(); location = QWSPointerCalibrationData::TopLeft; crossPos = fromDevice( cd.screenPoints[ location ] ); } QPoint Calibrate::fromDevice( const QPoint &p ) { diff --git a/core/launcher/shutdownimpl.cpp b/core/launcher/shutdownimpl.cpp index b1925d9..9292bb8 100644 --- a/core/launcher/shutdownimpl.cpp +++ b/core/launcher/shutdownimpl.cpp @@ -12,24 +12,25 @@ ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ #include "shutdownimpl.h" #include <qpe/global.h> +#include <qpe/qcopenvelope_qws.h> #include <qtimer.h> #include <qprogressbar.h> #include <qpushbutton.h> #include <qbuttongroup.h> #include <qlabel.h> #include <qlayout.h> #include <qpalette.h> static void changeButtonColor ( QPushButton *btn, const QColor &col ) { @@ -156,13 +157,23 @@ void ShutdownImpl::cancelClicked ( ) void ShutdownImpl::timeout ( ) { if ( ( m_counter += 2 ) > m_progress-> totalSteps ( ) ) { m_progress-> hide ( ); m_timer-> stop ( ); emit shutdown ( m_operation ); } else m_progress-> setProgress ( m_counter ); } +void ShutdownImpl::hide ( ) +{ + if ( isVisible ( )) { + // hack - shutdown is a launcher dialog, but treated like a standalone app + QCopEnvelope e( "QPE/System", "closing(QString)" ); + e << QString ( "shutdown" ); + + } + QWidget::hide ( ); +} diff --git a/core/launcher/shutdownimpl.h b/core/launcher/shutdownimpl.h index c2ebcc7..12b859d 100644 --- a/core/launcher/shutdownimpl.h +++ b/core/launcher/shutdownimpl.h @@ -25,24 +25,26 @@ class QTimer; class QLabel; class QProgressBar; class ShutdownImpl : public QWidget { Q_OBJECT public: ShutdownImpl( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); enum Type { ShutdownSystem, RebootSystem, RestartDesktop, TerminateDesktop }; + virtual void hide ( ); + signals: void shutdown( ShutdownImpl::Type ); private slots: void buttonClicked( int ); void cancelClicked(); void timeout(); private: QTimer *m_timer; int m_counter; Type m_operation; |