aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/objects/KvsObject_tableWidget.h
diff options
context:
space:
mode:
authorGravatar Szymon Tomasz Stefanek2011-01-01 20:19:56 +0000
committerGravatar Szymon Tomasz Stefanek2011-01-01 20:19:56 +0000
commitc601b5a27f74b16158adafe429faefbe573e64a2 (patch)
treea3cde3206a45628f8ac86e8dfbdab70b20c3a831 /src/modules/objects/KvsObject_tableWidget.h
parentprobable compilation fix for rijndaled/crypto++ (diff)
downloadKVIrc-c601b5a27f74b16158adafe429faefbe573e64a2.tar.gz
KVIrc-c601b5a27f74b16158adafe429faefbe573e64a2.tar.bz2
KVIrc-c601b5a27f74b16158adafe429faefbe573e64a2.zip
The big rename for modules. Still some details remaining.
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@5284 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/objects/KvsObject_tableWidget.h')
-rw-r--r--src/modules/objects/KvsObject_tableWidget.h116
1 files changed, 116 insertions, 0 deletions
diff --git a/src/modules/objects/KvsObject_tableWidget.h b/src/modules/objects/KvsObject_tableWidget.h
new file mode 100644
index 000000000..a0c5df848
--- /dev/null
+++ b/src/modules/objects/KvsObject_tableWidget.h
@@ -0,0 +1,116 @@
+#ifndef _CLASS_TABLEWIDGET_H_
+#define _CLASS_TABLEWIDGET_H_
+//=============================================================================
+//
+// File : KvsObject_tableWidget.h
+// Creation date : Wed 4 Feb 2009 09:30:05 CEST by Carbone Alessandro
+//
+// This file is part of the KVIrc irc client distribution
+// Copyright (C) 2000 Krzysztof Godlewski
+// Copyright (C) 2000-2010 Szymon Stefanek (pragma at kvirc dot net)
+//
+// This program is FREE software. You can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your opinion) any later version.
+//
+// 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 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.
+//
+//=============================================================================
+
+#include "KvsObject_widget.h"
+#include "object_macros.h"
+
+#include "KviKvsRunTimeContext.h"
+
+#include <QtSql>
+#include <QTableWidgetItem>
+#include <QItemDelegate>
+#include <QAbstractItemView>
+
+class KvsObject_tableWidget;
+
+class KviCellItemDelegate : public QItemDelegate
+{
+public:
+ KviCellItemDelegate(QAbstractItemView * pWidget = 0,KvsObject_tableWidget *pParent=0);
+ ~KviCellItemDelegate();
+protected:
+// QAbstractItemView * m_pParent;
+ KvsObject_tableWidget *m_pParentScript;
+public:
+ QSize sizeHint(const QStyleOptionViewItem & option, const QModelIndex & index) const;
+ void paint(QPainter * pPainter, const QStyleOptionViewItem & option, const QModelIndex & index) const;
+};
+
+class KvsObject_tableWidget : public KvsObject_widget
+{
+ Q_OBJECT
+public:
+ KVSO_DECLARE_OBJECT(KvsObject_tableWidget)
+public:
+ QWidget * widget() { return (QWidget *)object(); };
+ bool paint(QPainter * pPainter, const QStyleOptionViewItem & option, const QModelIndex & index);
+
+protected:
+ QSqlQueryModel * model;
+ KviKvsRunTimeContext * m_pContext;
+ KviCellItemDelegate * m_pCellItemDelegate;
+protected:
+ virtual bool init(KviKvsRunTimeContext * pContext,KviKvsVariantList *pParams);
+
+ bool setText(KviKvsObjectFunctionCall *c);
+ bool setNumber(KviKvsObjectFunctionCall *c);
+ bool setToolTip(KviKvsObjectFunctionCall *c);
+ bool text(KviKvsObjectFunctionCall *c);
+ bool setIcon(KviKvsObjectFunctionCall *c);
+ bool setItemFlags(KviKvsObjectFunctionCall *c);
+
+ bool setColumnCount(KviKvsObjectFunctionCall *c);
+ bool columnCount(KviKvsObjectFunctionCall *c);
+ bool setRowCount(KviKvsObjectFunctionCall *c);
+ bool currentRow(KviKvsObjectFunctionCall *c);
+ bool currentColumn(KviKvsObjectFunctionCall *c);
+ bool itemRowColAt(KviKvsObjectFunctionCall *c);
+
+ bool rowCount(KviKvsObjectFunctionCall *c);
+
+ bool insertRow(KviKvsObjectFunctionCall *c);
+ bool insertColumn(KviKvsObjectFunctionCall *c);
+ bool removeRow(KviKvsObjectFunctionCall *c);
+ bool removeColumn(KviKvsObjectFunctionCall *c);
+
+
+ bool setHorizontalHeaderLabels(KviKvsObjectFunctionCall *c);
+ bool setVerticalHeaderLabels(KviKvsObjectFunctionCall *c);
+ bool setCellWidget(KviKvsObjectFunctionCall *c);
+
+ bool hideHorizontalHeader(KviKvsObjectFunctionCall *c);
+ bool showHorizontalHeader(KviKvsObjectFunctionCall *c);
+ bool hideVerticalHeader(KviKvsObjectFunctionCall *c);
+ bool showVerticalHeader(KviKvsObjectFunctionCall *c);
+ bool clear(KviKvsObjectFunctionCall *c);
+ bool itemEnteredEvent(KviKvsObjectFunctionCall *c);
+ bool cellActivatedEvent(KviKvsObjectFunctionCall *c);
+ bool cellDoubleClickedEvent(KviKvsObjectFunctionCall *c);
+
+ bool hideColumn(KviKvsObjectFunctionCall *c);
+ bool showColumn(KviKvsObjectFunctionCall *c);
+ bool hideRow(KviKvsObjectFunctionCall *c);
+ bool showRow(KviKvsObjectFunctionCall *c);
+ bool resizeRowsToContents(KviKvsObjectFunctionCall *c);
+ bool resizeColumnsToContents(KviKvsObjectFunctionCall *c);
+protected slots:
+ void slotItemEntered(QTableWidgetItem *);
+ void cellActivated(int iRow,int iCol);
+ void cellDoubleClicked(int iRow,int iCol);
+};
+
+#endif // !_CLASS_TABLEWIDGET_H_