summaryrefslogtreecommitdiffstats
path: root/src/kbfxplasmaindexview.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/kbfxplasmaindexview.h')
-rw-r--r--src/kbfxplasmaindexview.h94
1 files changed, 94 insertions, 0 deletions
diff --git a/src/kbfxplasmaindexview.h b/src/kbfxplasmaindexview.h
new file mode 100644
index 0000000..ebda368
--- /dev/null
+++ b/src/kbfxplasmaindexview.h
@@ -0,0 +1,94 @@
+/*
+ * Copyright (C) 2006
+ * Siraj Razick <[email protected]>
+ * PhobosK <[email protected]>
+ * 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_PLASMA_INDEX_VIEW_H
+#define KBFX_PLASMA_INDEX_VIEW_H
+
+#include <qcanvas.h>
+
+#include <kdebug.h>
+#include <kpopupmenu.h>
+
+#include <kbfxdatastack.h>
+#include <kbfxplasmapixmapprovider.h>
+#include <kbfxplasmapluginloader.h>
+
+#include "kbfxplasmacanvasitemwrapper.h"
+#include "kbfxplasmacanvasstack.h"
+#include "kbfxplasmacanvasview.h"
+#include "kbfxplasmaindexitem.h"
+#include "kbfxsignal.h"
+
+
+
+class KbfxPlasmaIndexView : public QCanvasView
+{
+
+ Q_OBJECT
+
+ public:
+
+ KbfxPlasmaIndexView ( QWidget * parent = 0, const char * name = 0, WFlags l = 0 );
+ virtual ~KbfxPlasmaIndexView();
+ void loadList ( KbfxDataStack * stkPtr );
+ int count() { return m_itemGroup->count() ; }
+ void setView ( KbfxPlasmaCanvasView * view );
+ virtual void contentsMouseMoveEvent ( QMouseEvent * e );
+ virtual void contentsMousePressEvent ( QMouseEvent * me );
+ virtual void contentsContextMenuEvent ( QContextMenuEvent * e ) ;
+ virtual void mouseMoveEvent ( QMouseEvent * e );
+ virtual void leaveEvent ( QEvent * e );
+ void setKbfxCanvas ( QCanvas * cnv );
+ void clearAll();
+
+ public slots:
+ void slotClicked ( KbfxPlasmaIndexItem * );
+ void contextMenuSlot ( int id );
+ void loadPlugin ( QString name,KbfxPlasmaCanvasView * );
+ void checkMousePos();
+ void clearSelection();
+
+ signals:
+ void loadRequest ( KbfxSignal signal );
+ void pluginRequest ( QString pluginName,KbfxPlasmaCanvasView * );
+ void clicked ( KbfxPlasmaIndexItem * item );
+ void expand();
+ void clearSelected();
+
+ protected:
+ void clearAllButOne ( KbfxPlasmaIndexItem * i );
+
+ private:
+
+ KbfxPlasmaCanvasGroup * m_itemGroup;
+ KbfxPlasmaCanvasGroupView * m_itemGroupList;
+ KbfxPlasmaCanvasStack * m_itemStack;
+ KbfxPlasmaIndexItem * m_currentItem;
+ KbfxPlasmaIndexItem * m_selectedItem;
+ QStringList m_pluginList;
+ QStringList m_pluginLoaded;
+ KPopupMenu * m_pluginMenu;
+ KbfxPlasmaCanvasView * m_currentView;
+ QPoint m_currentPos;
+ QTimer * m_mousePollTimer;
+};
+
+#endif