-rw-r--r-- | core/applets/suspendapplet/suspend.cpp | 74 | ||||
-rw-r--r-- | core/applets/suspendapplet/suspend.h | 47 | ||||
-rw-r--r-- | core/applets/suspendapplet/suspendapplet.pro | 25 |
3 files changed, 146 insertions, 0 deletions
diff --git a/core/applets/suspendapplet/suspend.cpp b/core/applets/suspendapplet/suspend.cpp new file mode 100644 index 0000000..5966a84 --- a/dev/null +++ b/core/applets/suspendapplet/suspend.cpp @@ -0,0 +1,74 @@ +#include <qpe/resource.h> +#include <qpe/qcopenvelope_qws.h> + +#include <qiconset.h> +#include <qpopupmenu.h> + +#include "suspend.h" + + +SuspendApplet::SuspendApplet ( ) + : QObject ( 0, "SuspendApplet" ), ref ( 0 ) +{ +} + +SuspendApplet::~SuspendApplet ( ) +{ +} + +int SuspendApplet::position ( ) const +{ + return 0; +} + +QString SuspendApplet::name ( ) const +{ + return tr( "Suspend shortcut" ); +} + +QString SuspendApplet::text ( ) const +{ + return tr( "Suspend" ); +} + +QIconSet SuspendApplet::icon ( ) const +{ + QPixmap pix; + QImage img = Resource::loadImage ( "Shutdown" ); + + if ( !img. isNull ( )) + pix. convertFromImage ( img. smoothScale ( 16, 16 )); + return pix; +} + +QPopupMenu *SuspendApplet::popup ( QWidget * ) const +{ + return 0; +} + +void SuspendApplet::activated ( ) +{ + // suspend + QCopEnvelope ( "QPE/Desktop", "suspend()" ); +} + + +QRESULT SuspendApplet::queryInterface ( const QUuid &uuid, QUnknownInterface **iface ) +{ + *iface = 0; + if ( uuid == IID_QUnknown ) + *iface = this; + else if ( uuid == IID_MenuApplet ) + *iface = this; + + if ( *iface ) + (*iface)-> addRef ( ); + return QS_OK; +} + +Q_EXPORT_INTERFACE( ) +{ + Q_CREATE_INSTANCE( SuspendApplet ) +} + + diff --git a/core/applets/suspendapplet/suspend.h b/core/applets/suspendapplet/suspend.h new file mode 100644 index 0000000..629430d --- a/dev/null +++ b/core/applets/suspendapplet/suspend.h @@ -0,0 +1,47 @@ +/********************************************************************** +** Copyright (C) 2000 Trolltech AS. All rights reserved. +** +** This file is part of Qtopia Environment. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** 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. +** +**********************************************************************/ +#ifndef __OPIE_SUSPEND_APPLET_H__ +#define __OPIE_SUSPEND_APPLET_H__ + +#include <qpe/menuappletinterface.h> + +class SuspendApplet : public QObject, public MenuAppletInterface +{ +public: + SuspendApplet ( ); + virtual ~SuspendApplet ( ); + + QRESULT queryInterface( const QUuid&, QUnknownInterface** ); + Q_REFCOUNT + + virtual int position() const; + + virtual QString name ( ) const; + virtual QIconSet icon ( ) const; + virtual QString text ( ) const; + virtual QPopupMenu *popup ( QWidget *parent ) const; + + virtual void activated ( ); + +private: + ulong ref; +}; + +#endif diff --git a/core/applets/suspendapplet/suspendapplet.pro b/core/applets/suspendapplet/suspendapplet.pro new file mode 100644 index 0000000..44ff273 --- a/dev/null +++ b/core/applets/suspendapplet/suspendapplet.pro @@ -0,0 +1,25 @@ +TEMPLATE = lib +CONFIG += qt warn_on release +HEADERS = suspend.h +SOURCES = suspend.cpp +TARGET = suspendapplet +DESTDIR = $(OPIEDIR)/plugins/applets +INCLUDEPATH += $(OPIEDIR)/include +DEPENDPATH += $(OPIEDIR)/include +LIBS += -lqpe +VERSION = 1.0.0 + +TRANSLATIONS = ../../../i18n/de/libsuspendapplet.ts \ + ../../../i18n/en/libsuspendapplet.ts \ + ../../../i18n/es/libsuspendapplet.ts \ + ../../../i18n/fr/libsuspendapplet.ts \ + ../../../i18n/hu/libsuspendapplet.ts \ + ../../../i18n/ja/libsuspendapplet.ts \ + ../../../i18n/ko/libsuspendapplet.ts \ + ../../../i18n/no/libsuspendapplet.ts \ + ../../../i18n/pl/libsuspendapplet.ts \ + ../../../i18n/pt/libsuspendapplet.ts \ + ../../../i18n/pt_BR/libsuspendapplet.ts \ + ../../../i18n/sl/libsuspendapplet.ts \ + ../../../i18n/zh_CN/libsuspendapplet.ts \ + ../../../i18n/zh_TW/libsuspendapplet.ts |