-rw-r--r-- | examples/menuapplet/config.in | 4 | ||||
-rw-r--r-- | examples/menuapplet/example.cpp | 78 | ||||
-rw-r--r-- | examples/menuapplet/example.h | 33 | ||||
-rw-r--r-- | examples/menuapplet/menuapplet.pro | 12 |
4 files changed, 127 insertions, 0 deletions
diff --git a/examples/menuapplet/config.in b/examples/menuapplet/config.in new file mode 100644 index 0000000..f5b4c24 --- a/dev/null +++ b/examples/menuapplet/config.in @@ -0,0 +1,4 @@ + config EXAMPLE_MENU + boolean "Menu Applet" + default "y" + depends ( LIBQPE || LIBQPE-X11 ) && LIBOPIE diff --git a/examples/menuapplet/example.cpp b/examples/menuapplet/example.cpp new file mode 100644 index 0000000..8ae77da --- a/dev/null +++ b/examples/menuapplet/example.cpp @@ -0,0 +1,78 @@ +#include "example.h" + +#include <qpe/applnk.h> +#include <qpe/resource.h> + +/* QT */ +#include <qiconset.h> +#include <qpopupmenu.h> +#include <qmessagebox.h> + + +MenuAppletExample::MenuAppletExample() + :QObject( 0, "MenuAppletExample" ) +{ +} + +MenuAppletExample::~MenuAppletExample ( ) +{} + +int MenuAppletExample::position() const +{ + return 3; +} + +QString MenuAppletExample::name() const +{ + return tr( "MenuApplet Example Name" ); +} + +QString MenuAppletExample::text() const +{ + return tr( "Click the white rabbit" ); +} + + +QIconSet MenuAppletExample::icon() const +{ + QPixmap pix; + QImage img = Resource::loadImage( "Tux" ); + if ( !img.isNull() ) + pix.convertFromImage( img.smoothScale( AppLnk::smallIconSize(), AppLnk::smallIconSize() ) ); + return pix; +} + +QPopupMenu* MenuAppletExample::popup(QWidget*) const +{ + /* no subdir */ + return 0; +} + +void MenuAppletExample::activated() +{ + QMessageBox::information(0,tr("No white rabbit found"), + tr("<qt>No white rabbit was seen near Opie." + "Only the beautiful OpieZilla is available" + "for your pleassure</qt>")); +} + + +QRESULT MenuAppletExample::queryInterface( const QUuid &uuid, QUnknownInterface **iface ) +{ + *iface = 0; + if ( uuid == IID_QUnknown ) + *iface = this; + else if ( uuid == IID_MenuApplet ) + *iface = this; + else + return QS_FALSE; + + if ( *iface ) + (*iface)->addRef(); + return QS_OK; +} + +Q_EXPORT_INTERFACE() +{ + Q_CREATE_INSTANCE( MenuAppletExample ) +} diff --git a/examples/menuapplet/example.h b/examples/menuapplet/example.h new file mode 100644 index 0000000..ec507dd --- a/dev/null +++ b/examples/menuapplet/example.h @@ -0,0 +1,33 @@ +#ifndef OPIE_EXAMPLE_MENU_APPLET_H +#define OPIE_EXAMPLE_MENU_APPLET_H + +#include <qpe/menuappletinterface.h> +#include <qobject.h> + +#include <qobject.h> + +class MenuAppletExample : public QObject, public MenuAppletInterface +{ + + Q_OBJECT + +public: + MenuAppletExample ( ); + virtual ~MenuAppletExample ( ); + + QRESULT queryInterface( const QUuid&, QUnknownInterface** ); + Q_REFCOUNT + + virtual int position() const; + + virtual QString name ( ) const; + virtual QIconSet icon ( ) const; + virtual QString text ( ) const; + /* virtual QString tr( const char* ) const; + virtual QString tr( const char*, const char* ) const; + */ + virtual QPopupMenu *popup ( QWidget *parent ) const; + virtual void activated ( ); +}; + +#endif diff --git a/examples/menuapplet/menuapplet.pro b/examples/menuapplet/menuapplet.pro new file mode 100644 index 0000000..3567a2e --- a/dev/null +++ b/examples/menuapplet/menuapplet.pro @@ -0,0 +1,12 @@ +TEMPLATE = lib +CONFIG += qt plugn warn_on release +HEADERS = example.h +SOURCES = example.cpp +TARGET = example_applet +DESTDIR = $(OPIEDIR)/plugins/applets +INCLUDEPATH += $(OPIEDIR)/include +DEPENDPATH += $(OPIEDIR)/include +LIBS += -lqpe +VERSION = 1.0.0 + +include ( $(OPIEDIR)/include.pro ) |