00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef ICONBOXLABEL_H
00011 #define ICONBOXLABEL_H
00012
00013 #include <qpixmap.h>
00014 #include <qimage.h>
00015 #include <qpainter.h>
00016 #include <qstring.h>
00017 #include <qstringlist.h>
00018 #include <qtimer.h>
00019 #include <qtooltip.h>
00020
00021 #include <kiconloader.h>
00022 #include <kicondialog.h>
00023 #include <klineedit.h>
00024 #include <ksimpleconfig.h>
00025 #include <kurlrequester.h>
00026 #include <kmessagebox.h>
00027 #include <kdesktopfile.h>
00028
00029 #include "../karamba.h"
00030 #include "addicondlg.h"
00031
00036 class IconBoxLabel : public Meter
00037 {
00038 Q_OBJECT
00039
00040 public:
00041 IconBoxLabel( int ix,int iy,int is,int ia,int io, int iid );
00042 IconBoxLabel();
00043 ~IconBoxLabel();
00044
00045 void setKaramba( karamba* );
00046 void mUpdate( QPainter * );
00047 QRect getRectangle();
00048
00049 public slots:
00050 void addIcon( const QString icon, const QString tip, const QString prog );
00051 void removeIcon();
00052 void selectIcon();
00053 void readConfig();
00054 void setResizable( bool r );
00055 void dropEvent( QDropEvent *e );
00056 void mouseOver( QMouseEvent* e );
00057
00058 protected:
00059 void readDesktopFile( const QString file );
00060 void writeConfig( const QString icon, const QString tip, const QString prog );
00061
00062 private:
00063 QString themeRC;
00064 int id;
00065 int roll;
00066 int x;
00067 int y;
00068 int X;
00069 int Y;
00070 int s;
00071 int align;
00072 int w;
00073 int h;
00074 int iconId;
00075 int rightClickOver;
00076 bool resizable;
00077 karamba* myKaramba;
00078
00079 }
00080 ;
00081 #endif // ICONBOXLABEL_H