kdeui Library API Documentation

KActionMenu Class Reference

A KActionMenu is an action that holds a sub-menu of other actions. More...

#include <kactionclasses.h>

Inheritance diagram for KActionMenu:

Inheritance graph
[legend]
Collaboration diagram for KActionMenu:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 KActionMenu (const QString &text, QObject *parent=0, const char *name=0)
 KActionMenu (const QString &text, const QIconSet &icon, QObject *parent=0, const char *name=0)
 KActionMenu (const QString &text, const QString &icon, QObject *parent=0, const char *name=0)
 KActionMenu (QObject *parent=0, const char *name=0)
virtual void insert (KAction *, int index=-1)
virtual void remove (KAction *)
KPopupMenupopupMenu () const
void popup (const QPoint &global)
bool delayed () const
void setDelayed (bool _delayed)
bool stickyMenu () const
void setStickyMenu (bool sticky)
virtual int plug (QWidget *widget, int index=-1)

Protected Member Functions

virtual void virtual_hook (int id, void *data)

Properties

bool delayed
bool stickyMenu

Detailed Description

A KActionMenu is an action that holds a sub-menu of other actions.

insert() and remove() allow to insert and remove actions into this action-menu. Plugged in a popupmenu, it will create a submenu. Plugged in a toolbar, it will create a button with a popup menu.

This is the action used by the XMLGUI since it holds other actions. If you want a submenu for selecting one tool among many (without icons), see KSelectAction. See also setDelayed about the main action.

Definition at line 977 of file kactionclasses.h.


Member Function Documentation

bool KActionMenu::delayed  )  const
 

Returns true if this action creates a delayed popup menu when plugged in a KToolbar.

Referenced by plug().

void KActionMenu::setDelayed bool  _delayed  ) 
 

If set to true, this action will create a delayed popup menu when plugged in a KToolbar.

Otherwise it creates a normal popup. Default: delayed

Remember that if the "main" action (the toolbar button itself) cannot be clicked, then you should call setDelayed(false).

On the opposite, if the main action can be clicked, it can only happen in a toolbar: in a menu, the parent of a submenu can't be activated. To get a "normal" menu item when plugged a menu (and no submenu) use KToolBarPopupAction.

Definition at line 1664 of file kactionclasses.cpp.

References setDelayed().

Referenced by setDelayed().

bool KActionMenu::stickyMenu  )  const
 

Returns true if this action creates a sticky popup menu.

See setStickyMenu.

Referenced by plug().

void KActionMenu::setStickyMenu bool  sticky  ) 
 

If set to true, this action will create a sticky popup menu when plugged in a KToolbar.

"Sticky", means it's visible until a selection is made or the mouse is clicked elsewhere. This feature allows you to make a selection without having to press and hold down the mouse while making a selection. Default: sticky.

Definition at line 1672 of file kactionclasses.cpp.

References setStickyMenu().

Referenced by setStickyMenu().

int KActionMenu::plug QWidget widget,
int  index = -1
[virtual]
 

"Plug" or insert this action into a given widget.

This will typically be a menu or a toolbar. From this point on, you will never need to directly manipulate the item in the menu or toolbar. You do all enabling/disabling/manipulation directly with your KAction object.

Parameters:
widget The GUI element to display this action
index The position into which the action is plugged. If this is negative, the action is inserted at the end.

Reimplemented from KAction.

Definition at line 1676 of file kactionclasses.cpp.

References KActionCollection::connectHighlight(), delayed(), endl(), KToolBar::getButton(), KAction::getToolButtonID(), KToolBar::insertButton(), KGlobal::instance(), KActionCollection::instance(), KAction::isEnabled(), kdDebug(), plug(), KToolBar::setDelayedPopup(), KToolBarButton::setPopup(), stickyMenu(), KAction::text(), and KAction::whatsThis().

Referenced by plug().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kdeui Library Version 3.4.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Thu Apr 14 00:10:49 2005 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003