|
|
KContextMenuManager manages configurable context popup menus. Instead of reimplementing QWidget::mousePressEvent() or QWidget::mouseReleaseEvent() and/or QWidget::keyPressEvent(), simply create the popup menu and insert it into the context menu manager with the static function insert().
Example:
#include |
Context menus are invoked with either a special shortcut key (usually the menu key) or the right mouse button.
Menus are configurable in the [ContextMenus] group of the application's configuration file, usually in kdeglobals:
[ContextMenus] ShowOnPress=true|false |
ShowOnPress
defines whether the menu shall be shown on mouse
press or on mouse release.
The shortcut key to invoke the context menu is defined in the standard [Keys] section of the application configuration:
[Keys] ... PopupContextMenu=Menu ... |
The key can be configured with the standard keys module in the KDE control center.
If the popup menu is invoked with the keyboard shortcut, it's shown at the position of the micro focus hint of the widget ( QWidget::microFocusHint() ).
void insert ( QWidget* widget, QPopupMenu* popup )
| insert |
[static]
Makes popup
a context popup menu for widget widget
.
Ownership of the popup menu is not transferred to the context menu manager.
bool showOnButtonPress ( void )
| showOnButtonPress |
[static]
Use this method to get information about when a popup menu should be activated. This can be useful if the popup menu is to be activated from a listview.
Returns: true if the menu should be made visible on a button press or false after a button press-release sequence.