diff options
Diffstat (limited to 'sip/tqt/tqdialog.sip')
-rw-r--r-- | sip/tqt/tqdialog.sip | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/sip/tqt/tqdialog.sip b/sip/tqt/tqdialog.sip new file mode 100644 index 0000000..aa26196 --- /dev/null +++ b/sip/tqt/tqdialog.sip @@ -0,0 +1,119 @@ +// This is the SIP interface definition for TQDialog. +// +// Copyright (c) 2007 +// Riverbank Computing Limited <info@riverbankcomputing.co.uk> +// +// 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>TQDialog</Title> +<FuncSynopsis> + <FuncDef>int <Function>exec</Function></FuncDef> + <ParamDef></ParamDef> +</FuncSynopsis> +<Para> +This has been renamed to <Literal>exec_loop</Literal> in Python. +</Para> +<Para> +This method also causes ownership of the underlying C++ dialog to be transfered +to Python. This means that the C++ dialog will be deleted when the Python +wrapper is garbage collected. Although this is a little inconsistent, it +ensures that the dialog is deleted without having to explicity code it using +<Literal>TQObject.deleteLater()</Literal> or other techniques. +</Para> +</Sect2> +%End + + +class TQDialog : TQWidget +{ +%TypeHeaderCode +#include <tqdialog.h> +%End + +public: + TQDialog(TQWidget * /TransferThis/ = 0,const char * = 0,bool = 0,WFlags = 0); + + enum DialogCode { + Rejected, + Accepted + }; + + int result() const; + + void show(); + void hide(); + void move(int,int); + void move(const TQPoint &); + void resize(int,int); + void resize(const TQSize &); + void setGeometry(int,int,int,int); + void setGeometry(const TQRect &); + + void setOrientation(Orientation); + Orientation orientation() const; + + void setExtension(TQWidget *); + TQWidget *extension() const; + + TQSize sizeHint() const; + TQSize minimumSizeHint() const; + + void setSizeGripEnabled(bool); + bool isSizeGripEnabled() const; + + void setModal(bool); + bool isModal() const; + +public slots: + int exec() /PyName=exec_loop, ReleaseGIL, + PreHook=__pyTQtPreEventLoopHook__, + PostHook=__pyTQtPostEventLoopHook__/; +%MethodCode + // Transfer ownership back to Python (a modal dialog will + // probably have the main window as it's parent). This means + // the TQt dialog will be deleted when the Python wrapper is + // garbage collected. Although this is a little inconsistent, + // it saves having to code it explicitly to avoid the memory + // leak. + sipTransferBack(sipSelf); + + Py_BEGIN_ALLOW_THREADS + sipRes = sipCpp->TQDialog::exec(); + Py_END_ALLOW_THREADS +%End + +protected slots: + virtual void done(int); + virtual void accept(); + virtual void reject(); + + void showExtension(bool); + +protected: + void setResult(int); + void keyPressEvent(TQKeyEvent *); + void closeEvent(TQCloseEvent *); + void resizeEvent(TQResizeEvent *); + void contextMenuEvent(TQContextMenuEvent *); + bool eventFilter(TQObject *,TQEvent *); + void adjustPosition(TQWidget *); + +private: + TQDialog(const TQDialog &); +}; |