Diffstat (limited to 'libopie2/opieui/otaskbarapplet.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opieui/otaskbarapplet.cpp | 52 |
1 files changed, 51 insertions, 1 deletions
diff --git a/libopie2/opieui/otaskbarapplet.cpp b/libopie2/opieui/otaskbarapplet.cpp index a67356d..b5268f0 100644 --- a/libopie2/opieui/otaskbarapplet.cpp +++ b/libopie2/opieui/otaskbarapplet.cpp @@ -23,10 +23,60 @@ -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#include <opie2/otaskbarapplet.h> + +#include <qpe/qpeapplication.h> +#include <qframe.h> + +using namespace Opie::Ui; + + +/** + * \todo no example yet!!! + * If you want to implement an Applet for the Opie Taskbar + * use this interface. + * The only specail thing about applets is that you need to build + * it as plugin/library and do EXPORT_OPIE_APPLET_v1( YourApplet ) + * at the bottom of your application. This takes care of + * the activation and implementing the TaskbarAppletInterface. + * You also need to add a static int position() functions to your + * application. + * \code + * class MyApplet : public OTaskBarApplet { + * public: + * static int position() { return 3: } + * void doStuff() { + * popup( myWidget ); + * } + * }; + * EXPORT_OPIE_APPLET_v1( MyApplet ) + * \endcode + * + * @author Michael Lauer + * @version 0.5 + * @see TaskbarAppletInterface + */ +OTaskbarApplet::OTaskbarApplet( QWidget* parent, const char* name ) + :QWidget( parent, name ){ + setFixedHeight( 18 ); + setFixedWidth( 14 ); +} + +OTaskbarApplet::~OTaskbarApplet(){ +} + +void OTaskbarApplet::popup( QWidget* widget ){ + QPoint curPos = mapToGlobal( QPoint( 0, 0 ) ); + int w = widget->sizeHint().width(); + int x = curPos.x() - (w/2 ); + if ( (x+w) > QPEApplication::desktop()->width() ) + x = QPEApplication::desktop()->width()-w; + widget->move( x, curPos.y()-widget->sizeHint().height() ); + widget->show(); +} -// Empty on purpose until we shipped Opie 1.0 (see otaskbarapplet.h for explanation) |