diff options
Diffstat (limited to 'sip/tqtsql/tqdatatable.sip')
-rw-r--r-- | sip/tqtsql/tqdatatable.sip | 185 |
1 files changed, 185 insertions, 0 deletions
diff --git a/sip/tqtsql/tqdatatable.sip b/sip/tqtsql/tqdatatable.sip new file mode 100644 index 0000000..5840f3e --- /dev/null +++ b/sip/tqtsql/tqdatatable.sip @@ -0,0 +1,185 @@ +// This is the SIP interface definition for TQDataTable. +// +// Copyright (c) 2007 +// Riverbank Computing Limited <[email protected]> +// +// This file is part of PyTQt. +// +// This copy of PyTQt 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. +// +// PyTQt 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 +// PyTQt; 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>TQDataTable (TQt v3+)</Title> +<Para> +<Literal>TQDataTable</Literal> is fully implemented. +</Para> +</Sect2> +%End + + +class TQDataTable : TQTable +{ +%TypeHeaderCode +#include <tqdatatable.h> +%End + +public: + TQDataTable(TQWidget* /TransferThis/ = 0,const char * = 0); + TQDataTable(TQSqlCursor *,bool = 0,TQWidget * /TransferThis/ = 0, + const char * = 0); + + virtual void addColumn(const TQString &,const TQString & = TQString::null, + int = -1,const TQIconSet & = TQIconSet()); + virtual void removeColumn(uint); + virtual void setColumn(uint,const TQString &, + const TQString & = TQString::null,int = -1, + const TQIconSet & = TQIconSet()); + + TQString nullText() const; + TQString trueText() const; + TQString 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; + TQString filter() const; + TQStringList sort() const; + + virtual void setSqlCursor(TQSqlCursor * /GetWrapper/ = 0,bool = 0,bool = 0); +%MethodCode + Py_BEGIN_ALLOW_THREADS + sipSelfWasArg ? sipCpp->TQDataTable::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 + + TQSqlCursor *sqlCursor() const; + + virtual void setNullText(const TQString &); + virtual void setTrueText(const TQString &); + virtual void setFalseText(const TQString &); + 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 TQString &); + virtual void setSort(const TQStringList &); + virtual void setSort(const TQSqlIndex &); + + enum Refresh { + RefreshData, + RefreshColumns, + RefreshAll + }; + + void refresh(Refresh); + void sortColumn(int,bool = 1,bool = 0); + TQString text(int,int) const; + TQVariant value(int,int) const; + TQSqlRecord *currentRecord() const; + + void installEditorFactory(TQSqlEditorFactory * /Transfer/); + void installPropertyMap(TQSqlPropertyMap * /Transfer/); + + int numCols() const; + int numRows() const; + void setNumCols(int); + void setNumRows(int); + bool findBuffer(const TQSqlIndex &,int = 0); + + void hideColumn(int); + void showColumn(int); + +signals: + void currentChanged(TQSqlRecord *); + void primeInsert(TQSqlRecord *); + void primeUpdate(TQSqlRecord *); + void primeDelete(TQSqlRecord *); + void beforeInsert(TQSqlRecord *); + void beforeUpdate(TQSqlRecord *); + void beforeDelete(TQSqlRecord *); + void cursorChanged(TQSql::Op); + +public slots: + virtual void find(const TQString &,bool,bool); + virtual void sortAscending(int); + virtual void sortDescending(int); + virtual void refresh(); + void setColumnWidth(int,int); + void adjustColumn(int); + void setColumnStretchable(int,bool); + void swapColumns(int,int,bool = 0); + +protected: + virtual bool insertCurrent(); + virtual bool updateCurrent(); + virtual bool deleteCurrent(); + + virtual TQSql::Confirm confirmEdit(TQSql::Op); + virtual TQSql::Confirm confirmCancel(TQSql::Op); + + virtual void handleError(const TQSqlError &); + + virtual bool beginInsert(); + virtual TQWidget *beginUpdate(int,int,bool); + + bool eventFilter(TQObject *,TQEvent *); + void keyPressEvent(TQKeyEvent *); + void resizeEvent(TQResizeEvent *); + void contentsMousePressEvent(TQMouseEvent *); + void contentsContextMenuEvent(TQContextMenuEvent *); + void endEdit(int,int,bool,bool); + + // We don't specify /Factory/ for this because the returned TQWidget + // will always have a parent which will own it. + TQWidget *createEditor(int,int,bool) const; + + void activateNextCell(); + int indexOf(uint) const; + void reset(); + void setSize(TQSqlCursor *); + void repaintCell(int,int); + void paintCell(TQPainter *,int,int,const TQRect &,bool, + const TQColorGroup &); + virtual void paintField(TQPainter *,const TQSqlField *,const TQRect &, + bool); + void drawContents(TQPainter *,int,int,int,int); + virtual int fieldAlignment(const TQSqlField *); + void columnClicked(int); + void resizeData(int); + + TQTableItem *item(int,int) const; + void setItem(int,int,TQTableItem *); + void clearCell(int,int); + void setPixmap(int,int,const TQPixmap &); + void takeItem(TQTableItem *); + +private: + TQWidget *beginEdit(int,int,bool); + + TQDataTable(const TQDataTable &); +}; |