diff options
author | Timothy Pearson <[email protected]> | 2012-01-26 20:43:47 -0600 |
---|---|---|
committer | Timothy Pearson <[email protected]> | 2012-01-26 20:43:47 -0600 |
commit | 27917305452f2a55ae3be74e83b8a724248ec43f (patch) | |
tree | 0bfa420031e546c3cfba2a63e92d7d4191d885b6 /qtinterface/interface_tqt3/tqmenudata.cpp | |
parent | dc87fbcfcf77bc9bed86b9ec03aa8163a7bf15d4 (diff) | |
download | tqtinterface-27917305452f2a55ae3be74e83b8a724248ec43f.tar.gz tqtinterface-27917305452f2a55ae3be74e83b8a724248ec43f.zip |
Split out qt3 and tqt3 files
Diffstat (limited to 'qtinterface/interface_tqt3/tqmenudata.cpp')
-rw-r--r-- | qtinterface/interface_tqt3/tqmenudata.cpp | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/qtinterface/interface_tqt3/tqmenudata.cpp b/qtinterface/interface_tqt3/tqmenudata.cpp new file mode 100644 index 0000000..9aee2bb --- /dev/null +++ b/qtinterface/interface_tqt3/tqmenudata.cpp @@ -0,0 +1,82 @@ +/* + +Copyright (C) 2010 Timothy Pearson <[email protected]> + +This library 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 of the License, or (at your option) any later version. + +This library is distributed 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 +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public License +along with this library; see the file COPYING.LIB. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +Boston, MA 02110-1301, USA. + +*/ + +#include <tqt.h> +#include <tntqmenudata.h> + +#ifdef USE_QT4 + +Q3PopupMenu *QMenuItem::popup() const { + #warning "Badly broken/nonfunctional QMenuItem::popup() implementation!" + return &Q3PopupMenu(menu()); +} + +/*! + \overload + + Inserts a menu item that consists of the widget \a widget with + optional id \a id, and optional \a index position. + + Ownership of \a widget is transferred to the popup menu or to the + menu bar. + + Theoretically, any widget can be inserted into a popup menu. In + practice, this only makes sense with certain widgets. + + If a widget is not focus-enabled (see + \l{QWidget::isFocusEnabled()}), the menu treats it as a separator; + this means that the item is not selectable and will never get + focus. In this way you can, for example, simply insert a QLabel if + you need a popup menu with a title. + + If the widget is focus-enabled it will get focus when the user + traverses the popup menu with the arrow keys. If the widget does + not accept \c ArrowUp and \c ArrowDown in its key event handler, + the focus will move back to the menu when the respective arrow key + is hit one more time. This works with a QLineEdit, for example. If + the widget accepts the arrow key itself, it must also provide the + possibility to put the focus back on the menu again by calling + QWidget::focusNextPrevChild(). Futhermore, if the embedded widget + closes the menu when the user made a selection, this can be done + safely by calling: + \code + if ( isVisible() && + parentWidget() && + parentWidget()->inherits("QPopupMenu") ) + parentWidget()->close(); + \endcode + + Returns the allocated menu identifier number (\a id if \a id >= 0). + + \sa removeItem() +*/ +int QMenu::insertItem( QWidget* widget, int id, int index ) +{ + #warning "QMenuData::insertItem(QWidget* widget, int id, int index) unimplemented!" + + // New method is const QIcon*, const QString*, const QObject*, const char*, const QKeySequence*, const QMenu*, int, int + // Qt4 does not seem to support arbitrary widgets being added to menus (!!!) + // This will need to be reimplemented somehow as it is a very useful feature (e.g. Start menu text filter box) + //return insertAny( 0, 0, 0, 0, id, index, widget ); + return insertAny( 0, &QString("UNIMPLEMENTED"), widget, 0, 0, 0, id, index ); +} + +#endif // USE_QT4
\ No newline at end of file |