author | mickeyl <mickeyl> | 2004-03-01 21:10:13 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2004-03-01 21:10:13 (UTC) |
commit | 77af6f58d59011e123309c82b684695508a46787 (patch) (side-by-side diff) | |
tree | 1eeb3b323bc14581af7da9fe5b58c4c611b00575 /noncore/applets/autorotateapplet | |
parent | 7b0bdb05e4ae29b2643d73e3b8f20a86a86dcccc (diff) | |
download | opie-77af6f58d59011e123309c82b684695508a46787.zip opie-77af6f58d59011e123309c82b684695508a46787.tar.gz opie-77af6f58d59011e123309c82b684695508a46787.tar.bz2 |
remove boiler plate code in favour of a template
Diffstat (limited to 'noncore/applets/autorotateapplet') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/applets/autorotateapplet/autorotate.cpp | 11 | ||||
-rw-r--r-- | noncore/applets/autorotateapplet/autorotate.h | 3 | ||||
-rw-r--r-- | noncore/applets/autorotateapplet/autorotateapplet.pro | 16 | ||||
-rw-r--r-- | noncore/applets/autorotateapplet/autorotateimpl.cpp | 42 | ||||
-rw-r--r-- | noncore/applets/autorotateapplet/autorotateimpl.h | 18 |
5 files changed, 20 insertions, 70 deletions
diff --git a/noncore/applets/autorotateapplet/autorotate.cpp b/noncore/applets/autorotateapplet/autorotate.cpp index 5152904..94be0ae 100644 --- a/noncore/applets/autorotateapplet/autorotate.cpp +++ b/noncore/applets/autorotateapplet/autorotate.cpp @@ -5,24 +5,25 @@ * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * *************************************************************************/ #include "autorotate.h" /* OPIE */ #include <opie2/odevice.h> +#include <opie2/otaskbarapplet.h> #include <qpe/applnk.h> #include <qpe/config.h> #include <qpe/resource.h> /* QT */ #include <qpainter.h> using namespace Opie; AutoRotate::AutoRotate(QWidget * parent):QWidget(parent) { setFixedWidth( AppLnk::smallIconSize() ); @@ -34,24 +35,29 @@ AutoRotate::AutoRotate(QWidget * parent):QWidget(parent) repaint(true); popupMenu = 0; show(); } AutoRotate::~AutoRotate() { if (popupMenu) { delete popupMenu; } } +int AutoRotate::position() +{ + return 7; +} + void AutoRotate::mousePressEvent(QMouseEvent *) { QPopupMenu *menu = new QPopupMenu(this); menu->insertItem( isRotateEnabled()? "Disable Rotation" : "Enable Rotation" ,1 ); QPoint p = mapToGlobal(QPoint(0, 0)); QSize s = menu->sizeHint(); int opt = menu->exec(QPoint(p.x() + (width() / 2) - (s.width() / 2), p.y() - s.height()), 0); if (opt==1) { setRotateEnabled( !isRotateEnabled() ); @@ -79,12 +85,17 @@ bool AutoRotate::isRotateEnabled() Config cfg( "qpe" ); cfg.setGroup( "Appearance" ); bool res = cfg.readBoolEntry( "rotateEnabled" ); if (res ) qDebug("Enabled"); else qDebug("Disabled"); return res; } +Q_EXPORT_INTERFACE() +{ + Q_CREATE_INSTANCE( OTaskbarAppletWrapper<AutoRotate> ); +} + diff --git a/noncore/applets/autorotateapplet/autorotate.h b/noncore/applets/autorotateapplet/autorotate.h index e05e7a0..ef322a6 100644 --- a/noncore/applets/autorotateapplet/autorotate.h +++ b/noncore/applets/autorotateapplet/autorotate.h @@ -13,26 +13,25 @@ #ifndef AUTOROTATE_H #define AUTOROTATE_H #include <qwidget.h> #include <qpixmap.h> #include <qpopupmenu.h> class AutoRotate : public QWidget { Q_OBJECT public: AutoRotate( QWidget *parent = 0 ); ~AutoRotate(); - -private slots: + static int position(); protected: void paintEvent( QPaintEvent* ); void mousePressEvent( QMouseEvent * ); private: bool isRotateEnabled(); void setRotateEnabled(bool); QPixmap enabledPm; QPixmap disabledPm; void iconShow(); QPopupMenu *popupMenu; }; diff --git a/noncore/applets/autorotateapplet/autorotateapplet.pro b/noncore/applets/autorotateapplet/autorotateapplet.pro index 0ccbeba..465b165 100644 --- a/noncore/applets/autorotateapplet/autorotateapplet.pro +++ b/noncore/applets/autorotateapplet/autorotateapplet.pro @@ -1,13 +1,13 @@ -TEMPLATE = lib +TEMPLATE = lib CONFIG += qt plugin warn_on release -HEADERS = autorotate.h autorotateimpl.h -SOURCES = autorotate.cpp autorotateimpl.cpp +HEADERS = autorotate.h +SOURCES = autorotate.cpp TARGET = autorotateapplet -DESTDIR = $(OPIEDIR)/plugins/applets -INCLUDEPATH += $(OPIEDIR)/include -DEPENDPATH += $(OPIEDIR)/include ../launcher -LIBS += -lqpe -lopiecore2 -VERSION = 1.0.0 +DESTDIR = $(OPIEDIR)/plugins/applets +INCLUDEPATH += $(OPIEDIR)/include +DEPENDPATH += $(OPIEDIR)/include ../launcher +LIBS += -lqpe -lopiecore2 +VERSION = 1.0.0 include ( $(OPIEDIR)/include.pro ) target.path = $$prefix/plugins/applets diff --git a/noncore/applets/autorotateapplet/autorotateimpl.cpp b/noncore/applets/autorotateapplet/autorotateimpl.cpp deleted file mode 100644 index 305ac50..0000000 --- a/noncore/applets/autorotateapplet/autorotateimpl.cpp +++ b/dev/null @@ -1,42 +0,0 @@ -#include "autorotate.h" -#include "autorotateimpl.h" - - -AutoRotateImpl::AutoRotateImpl() - : autoRotate(0){ - qDebug ("here"); -} - -AutoRotateImpl::~AutoRotateImpl() { - delete autoRotate; -} - -QWidget *AutoRotateImpl::applet( QWidget *parent ) { - if ( !autoRotate ) { - autoRotate = new AutoRotate( parent ); - } - return autoRotate; -} - -int AutoRotateImpl::position() const { - return 7; -} - -QRESULT AutoRotateImpl::queryInterface( const QUuid &uuid, QUnknownInterface **iface ) { - *iface = 0; - if ( uuid == IID_QUnknown ) { - *iface = this; - } else if ( uuid == IID_TaskbarApplet ) { - *iface = this; - } else - return QS_FALSE; - - if ( *iface ) { - (*iface)->addRef(); - } - return QS_OK; -} - -Q_EXPORT_INTERFACE() { - Q_CREATE_INSTANCE( AutoRotateImpl ) -} diff --git a/noncore/applets/autorotateapplet/autorotateimpl.h b/noncore/applets/autorotateapplet/autorotateimpl.h deleted file mode 100644 index fde23a9..0000000 --- a/noncore/applets/autorotateapplet/autorotateimpl.h +++ b/dev/null @@ -1,18 +0,0 @@ -#include <qpe/taskbarappletinterface.h> - -class AutoRotate; - -class AutoRotateImpl : public TaskbarAppletInterface { -public: - AutoRotateImpl(); - virtual ~AutoRotateImpl(); - - QRESULT queryInterface( const QUuid&, QUnknownInterface** ); - Q_REFCOUNT - - virtual QWidget *applet( QWidget *parent ); - virtual int position() const; - -private: - AutoRotate *autoRotate; -}; |