// This is the SIP interface definition for TQDialog. // // Copyright (c) 2007 // Riverbank Computing Limited // // 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 TQDialog int exec This has been renamed to exec_loop in Python. 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 TQObject.deleteLater() or other techniques. %End class TQDialog : TQWidget { %TypeHeaderCode #include %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 &); };