// This is the SIP interface definition for QPopupMenu. // // Copyright (c) 2007 // Riverbank Computing Limited // // 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. %ExportedDoc QPopupMenu int exec This has been renamed exec_loop in Python. This method also causes ownership of the underlying C++ menu to be transfered to Python. This means that the C++ menu will be deleted when the Python wrapper is garbage collected. Although this is a little inconsistent, it ensures that the menu is deleted without having to explicity code it using QObject.deleteLater() or other techniques. int exec const QPoint &pos int indexAtPoint = 0 This has been renamed exec_loop in Python. This method also causes ownership of the underlying C++ menu to be transfered to Python. This means that the C++ menu will be deleted when the Python wrapper is garbage collected. Although this is a little inconsistent, it ensures that the menu is deleted without having to explicity code it using QObject.deleteLater() or other techniques. %End %If (- Qt_2_00) class QPopupMenu : QTableView, QMenuData { %TypeHeaderCode #include %End public: QPopupMenu(QWidget * /TransferThis/ = 0,const char * = 0); void popup(const QPoint &,int = 0); void updateItem(int); void setCheckable(bool); bool isCheckable() const; void setFont(const QFont &); void show(); void hide(); int exec() /PyName=exec_loop, ReleaseGIL, PreHook=__pyQtPreEventLoopHook__, PostHook=__pyQtPostEventLoopHook__/; %MethodCode // Transfer ownership back to Python (a modal menu will // probably have the main window as it's parent). This means // the Qt menu 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->QPopupMenu::exec(); Py_END_ALLOW_THREADS %End int exec(const QPoint &,int = 0) /PyName=exec_loop, ReleaseGIL, PreHook=__pyQtPreEventLoopHook__, PostHook=__pyQtPostEventLoopHook__/; %MethodCode // Transfer ownership back to Python (a modal menu will // probably have the main window as it's parent). This means // the Qt menu 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->QPopupMenu::exec(*a0,a1); Py_END_ALLOW_THREADS %End void setActiveItem(int); int idAt(int) const; %If (Qt_1_43 -) int idAt(const QPoint &) const; %End signals: void activated(int); void highlighted(int); void activatedRedirect(int); void highlightedRedirect(int); void aboutToShow(); protected: int cellHeight(int); int cellWidth(int); void paintCell(QPainter *,int,int); void paintEvent(QPaintEvent *); void mousePressEvent(QMouseEvent *); void mouseReleaseEvent(QMouseEvent *); void mouseMoveEvent(QMouseEvent *); void keyPressEvent(QKeyEvent *); void timerEvent(QTimerEvent *); private: QPopupMenu(const QPopupMenu &); void menuContentsChanged(); void menuStateChanged(); void menuInsPopup(QPopupMenu *); void menuDelPopup(QPopupMenu *); void frameChanged(); }; %End %If (Qt_2_00 -) class QPopupMenu : QFrame, QMenuData { %TypeHeaderCode #include %End public: QPopupMenu(QWidget * /TransferThis/ = 0,const char * = 0); %If (- Qt_3_0_5) void popup(const QPoint &,int = 0); %End %If (Qt_3_0_5 -) void popup(const QPoint &,int = -1); %End void updateItem(int); virtual void setCheckable(bool); bool isCheckable() const; void setFont(const QFont &); void show(); void hide(); int exec() /PyName=exec_loop, ReleaseGIL, PreHook=__pyQtPreEventLoopHook__, PostHook=__pyQtPostEventLoopHook__/; %MethodCode // Transfer ownership back to Python (a modal menu will // probably have the main window as it's parent). This means // the Qt menu 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->QPopupMenu::exec(); Py_END_ALLOW_THREADS %End int exec(const QPoint &,int = 0) /PyName=exec_loop, ReleaseGIL, PreHook=__pyQtPreEventLoopHook__, PostHook=__pyQtPostEventLoopHook__/; %MethodCode // Transfer ownership back to Python (a modal menu will // probably have the main window as it's parent). This means // the Qt menu 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->QPopupMenu::exec(*a0,a1); Py_END_ALLOW_THREADS %End virtual void setActiveItem(int); QSize sizeHint() const; int idAt(int) const; int idAt(const QPoint &) const; bool customWhatsThis() const; %If (Qt_2_1_0 -) int insertTearOffHandle(int = -1,int = -1); %End %If (Qt_2_2_0 -) void activateItemAt(int); %End %If (Qt_3_0_0 -) QRect itemGeometry(int); %End signals: void activated(int); void highlighted(int); void activatedRedirect(int); void highlightedRedirect(int); void aboutToShow(); %If (Qt_2_2_0 -) void aboutToHide(); %End protected: int itemHeight(int) const; int itemHeight(QMenuItem *) const; void drawItem(QPainter *,int,QMenuItem *,bool,int,int,int,int); void drawContents(QPainter *); void closeEvent(QCloseEvent *); void paintEvent(QPaintEvent *); void mousePressEvent(QMouseEvent *); void mouseReleaseEvent(QMouseEvent *); void mouseMoveEvent(QMouseEvent *); void keyPressEvent(QKeyEvent *); %If (Qt_2_1_0 -) void focusInEvent(QFocusEvent *); void focusOutEvent(QFocusEvent *); %End void timerEvent(QTimerEvent *); %If (Qt_3_0_0 -) void leaveEvent(QEvent *); %End void styleChange(QStyle &); %If (Qt_3_1_0 -) void enabledChange(bool); %End %If (Qt_2_1_0 -) int columns() const; bool focusNextPrevChild(bool); %End %If (Qt_3_0_0 -) int itemAtPos(const QPoint &,bool = 1) const; %End private: QPopupMenu(const QPopupMenu &); void menuContentsChanged(); void menuStateChanged(); void menuInsPopup(QPopupMenu *); void menuDelPopup(QPopupMenu *); void frameChanged(); }; %End