diff options
Diffstat (limited to 'python/pyqt/sip/qtsql/qdatatable.sip')
-rw-r--r-- | python/pyqt/sip/qtsql/qdatatable.sip | 201 |
1 files changed, 201 insertions, 0 deletions
diff --git a/python/pyqt/sip/qtsql/qdatatable.sip b/python/pyqt/sip/qtsql/qdatatable.sip new file mode 100644 index 00000000..bcb02908 --- /dev/null +++ b/python/pyqt/sip/qtsql/qdatatable.sip @@ -0,0 +1,201 @@ +// This is the SIP interface definition for QDataTable. +// +// Copyright (c) 2007 +// Riverbank Computing Limited <info@riverbankcomputing.co.uk> +// +// This file is part of PyQt. +// +// This copy of PyQt 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, or (at your option) any later +// version. +// +// PyQt is supplied 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 +// PyQt; see the file LICENSE. If not, write to the Free Software Foundation, +// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + + +%ExportedDoc +<Sect2><Title>QDataTable (Qt v3+)</Title> +<Para> +<Literal>QDataTable</Literal> is fully implemented. +</Para> +</Sect2> +%End + + +%If (Qt_3_0_0 -) + +class QDataTable : QTable +{ +%TypeHeaderCode +#include <qdatatable.h> +%End + +public: + QDataTable(QWidget* /TransferThis/ = 0,const char * = 0); + QDataTable(QSqlCursor *,bool = 0,QWidget * /TransferThis/ = 0, + const char * = 0); + + virtual void addColumn(const QString &,const QString & = QString::null, + int = -1,const QIconSet & = QIconSet()); + virtual void removeColumn(uint); + virtual void setColumn(uint,const QString &, + const QString & = QString::null,int = -1, + const QIconSet & = QIconSet()); + + QString nullText() const; + QString trueText() const; + QString falseText() const; + DateFormat dateFormat() const; + bool confirmEdits() const; + bool confirmInsert() const; + bool confirmUpdate() const; + bool confirmDelete() const; + bool confirmCancels() const; + bool autoDelete() const; + bool autoEdit() const; + QString filter() const; + QStringList sort() const; + + virtual void setSqlCursor(QSqlCursor * /GetWrapper/ = 0,bool = 0,bool = 0); +%MethodCode + Py_BEGIN_ALLOW_THREADS + sipSelfWasArg ? sipCpp->QDataTable::setSqlCursor(a0, a1, a2) : sipCpp->setSqlCursor(a0, a1, a2); + Py_END_ALLOW_THREADS + + // Transfer ownership of the cursor if the autoDelete flag is + // set. + if (a0 && a2) + sipTransferTo(a0Wrapper,sipSelf); +%End + + QSqlCursor *sqlCursor() const; + + virtual void setNullText(const QString &); + virtual void setTrueText(const QString &); + virtual void setFalseText(const QString &); + virtual void setDateFormat(const DateFormat); + virtual void setConfirmEdits(bool); + virtual void setConfirmInsert(bool); + virtual void setConfirmUpdate(bool); + virtual void setConfirmDelete(bool); + virtual void setConfirmCancels(bool); + virtual void setAutoDelete(bool); + virtual void setAutoEdit(bool); + virtual void setFilter(const QString &); + virtual void setSort(const QStringList &); + virtual void setSort(const QSqlIndex &); + + enum Refresh { + RefreshData, + RefreshColumns, + RefreshAll + }; + + void refresh(Refresh); + void sortColumn(int,bool = 1,bool = 0); + QString text(int,int) const; + QVariant value(int,int) const; + QSqlRecord *currentRecord() const; + + void installEditorFactory(QSqlEditorFactory * /Transfer/); + void installPropertyMap(QSqlPropertyMap * /Transfer/); + + int numCols() const; + int numRows() const; + void setNumCols(int); + void setNumRows(int); + bool findBuffer(const QSqlIndex &,int = 0); + +%If (Qt_3_2_0 -) + void hideColumn(int); + void showColumn(int); +%End + +signals: + void currentChanged(QSqlRecord *); + void primeInsert(QSqlRecord *); + void primeUpdate(QSqlRecord *); + void primeDelete(QSqlRecord *); + void beforeInsert(QSqlRecord *); + void beforeUpdate(QSqlRecord *); + void beforeDelete(QSqlRecord *); + void cursorChanged(QSql::Op); + +public slots: + virtual void find(const QString &,bool,bool); + virtual void sortAscending(int); + virtual void sortDescending(int); + virtual void refresh(); + void setColumnWidth(int,int); +%If (Qt_3_0_5 -) + void adjustColumn(int); + void setColumnStretchable(int,bool); +%End +%If (Qt_3_1_0 -) + void swapColumns(int,int,bool = 0); +%End + +protected: + virtual bool insertCurrent(); + virtual bool updateCurrent(); + virtual bool deleteCurrent(); + + virtual QSql::Confirm confirmEdit(QSql::Op); + virtual QSql::Confirm confirmCancel(QSql::Op); + + virtual void handleError(const QSqlError &); + + virtual bool beginInsert(); + virtual QWidget *beginUpdate(int,int,bool); + + bool eventFilter(QObject *,QEvent *); +%If (Qt_3_2_0 -) + void keyPressEvent(QKeyEvent *); +%End + void resizeEvent(QResizeEvent *); + void contentsMousePressEvent(QMouseEvent *); + void contentsContextMenuEvent(QContextMenuEvent *); + void endEdit(int,int,bool,bool); + + // We don't specify /Factory/ for this because the returned QWidget + // will always have a parent which will own it. + QWidget *createEditor(int,int,bool) const; + + void activateNextCell(); + int indexOf(uint) const; + void reset(); + void setSize(QSqlCursor *); + void repaintCell(int,int); + void paintCell(QPainter *,int,int,const QRect &,bool, + const QColorGroup &); + virtual void paintField(QPainter *,const QSqlField *,const QRect &, + bool); +%If (Qt_3_1_0 -) + void drawContents(QPainter *,int,int,int,int); +%End + virtual int fieldAlignment(const QSqlField *); + void columnClicked(int); + void resizeData(int); + + QTableItem *item(int,int) const; + void setItem(int,int,QTableItem *); + void clearCell(int,int); + void setPixmap(int,int,const QPixmap &); + void takeItem(QTableItem *); + +private: + QWidget *beginEdit(int,int,bool); + +%If (Qt_3_1_0 -) + QDataTable(const QDataTable &); +%End +}; + +%End |