summaryrefslogtreecommitdiffstats
path: root/src/kbfxspinxtoolbutton.h
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-02-17 00:43:50 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-02-17 00:43:50 +0000
commitceea23677c61f20759ae986bd77b0d5c4d673edb (patch)
tree3fcec1702eaf9c14d1dd736e594f5df08dab4001 /src/kbfxspinxtoolbutton.h
downloadkbfx-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.h94
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