diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-02-17 00:43:50 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-02-17 00:43:50 +0000 |
commit | ceea23677c61f20759ae986bd77b0d5c4d673edb (patch) | |
tree | 3fcec1702eaf9c14d1dd736e594f5df08dab4001 /src/kbfxspinxtoolbutton.h | |
download | kbfx-ceea23677c61f20759ae986bd77b0d5c4d673edb.tar.gz kbfx-ceea23677c61f20759ae986bd77b0d5c4d673edb.zip |
Added old KDE3 version of kbfx
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/kbfx@1091549 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'src/kbfxspinxtoolbutton.h')
-rw-r--r-- | src/kbfxspinxtoolbutton.h | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/src/kbfxspinxtoolbutton.h b/src/kbfxspinxtoolbutton.h new file mode 100644 index 0000000..2c3d9bf --- /dev/null +++ b/src/kbfxspinxtoolbutton.h @@ -0,0 +1,94 @@ +/* + * Copyright (C) 2006 + * Siraj Razick <siraj@kdemail.net> + * PhobosK <phobosk@mail.kbfx.org> + * see Also AUTHORS + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Library General Public License version 2 as + * published by the Free Software Foundation + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details + * + * You should have received a copy of the GNU Library General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef KBFX_SPINX_TOOL_BUTTON_H +#define KBFX_SPINX_TOOL_BUTTON_H + +#include <qcursor.h> +#include <qimage.h> +#include <qlabel.h> +#include <qpainter.h> +#include <qpixmap.h> +#include <qtimer.h> +#include <qtoolbutton.h> +#include <qwidget.h> + +#include <kiconloader.h> +#include <kimageeffect.h> +#include <krun.h> + +#include <kbfxconfig.h> +#include <kbfxdatagroup.h> +#include <kbfxdatasource.h> +#include <kbfxplasmapixmapprovider.h> + +class KbfxSpinxToolButton:public QLabel +{ + + Q_OBJECT + public: + typedef enum{SINGLE=0,EXPANDABLE} ButtonType; + + KbfxSpinxToolButton ( QWidget * parent = 0, const char * name = 0 ); + virtual ~KbfxSpinxToolButton(); + virtual void paintEvent ( QPaintEvent * pe ); + + virtual void enterEvent ( QEvent * e ); + virtual void leaveEvent ( QEvent * l ); + virtual void mouseReleaseEvent ( QMouseEvent * me ); + /* + virtual void mousePressEvent(QMouseEvent * me); + */ + void setDataSource ( KbfxDataSource * src ); +// void setDataGroup(KbfxDataGroup * gsrc); + void setName ( QString name ) {m_name =name;} + void setExec ( QString cmd ) { m_exe = cmd;} + void setType ( KbfxSpinxToolButton::ButtonType type ) { m_type = type;} + void setIcon ( QString path ); + void setPixmaps ( QPixmap , QPixmap ); + + public slots: + void fade(); + + signals: + void clicked(); + private: + QString m_name; + QString m_exe; + QString m_icon; + QString m_tooltip; + + QPixmap m_normal; + QPixmap m_pressed; + QPixmap m_hover; + QPixmap m_current; + QPixmap m_iconPixmap; + KbfxDataSource * m_dataSource; + KbfxDataGroup * m_dataGroup; + ButtonType m_type; + bool m_statePressed; + QTimer * fade_timer; + float m_opacity; + QPixmap m_fadePix; + int m_fadeTime; +}; + +#endif |