kdeui Library API Documentation

KPopupMenu Class Reference

A menu with title items. More...

#include <kpopupmenu.h>

Inheritance diagram for KPopupMenu:

QPopupMenu KPanelMenu KWindowListMenu List of all members.

Signals

void aboutToShowContextMenu (KPopupMenu *menu, int menuItem, QPopupMenu *ctxMenu)

Public Member Functions

 KPopupMenu (QWidget *parent=0, const char *name=0)
 ~KPopupMenu ()
int insertTitle (const QString &text, int id=-1, int index=-1)
int insertTitle (const QPixmap &icon, const QString &text, int id=-1, int index=-1)
void changeTitle (int id, const QString &text)
void changeTitle (int id, const QPixmap &icon, const QString &text)
QString title (int id=-1) const
QPixmap titlePixmap (int id) const
void setKeyboardShortcutsEnabled (bool enable)
void setKeyboardShortcutsExecute (bool enable)
 KPopupMenu (const QString &title, QWidget *parent=0, const char *name=0) KDE_DEPRECATED
void setTitle (const QString &title) KDE_DEPRECATED
QPopupMenucontextMenu ()
const QPopupMenucontextMenu () const
void hideContextMenu ()
virtual void activateItemAt (int index)
Qt::ButtonState state () const

Static Public Member Functions

static KPopupMenucontextMenuFocus ()
static int contextMenuFocusItem ()

Protected Slots

QString underlineText (const QString &text, uint length)
void resetKeyboardVars (bool noMatches=false)
void itemHighlighted (int whichItem)
void showCtxMenu (QPoint pos)
void ctxMenuHiding ()
void ctxMenuHideShowingMenu ()

Protected Member Functions

virtual void closeEvent (QCloseEvent *)
virtual void keyPressEvent (QKeyEvent *e)
virtual void mouseReleaseEvent (QMouseEvent *e)
virtual void mousePressEvent (QMouseEvent *e)
virtual bool focusNextPrevChild (bool next)
virtual void contextMenuEvent (QContextMenuEvent *e)
virtual void hideEvent (QHideEvent *)
virtual void virtual_hook (int id, void *data)

Detailed Description

A menu with title items.

KPopupMenu is a class for menus with standard title items and keyboard accessibility for popups with many options and/or varying options. It acts identically to QPopupMenu, with the addition of insertTitle(), changeTitle(), setKeyboardShortcutsEnabled() and setKeyboardShortcutsExecute() methods.

The titles support a text string, an icon, plus user defined gradients, colors, and background pixmaps.

The keyboard search algorithm is incremental with additional underlining for user feedback.

Author:
Daniel M. Duley <mosfet@kde.org>

Hamish Rodda <rodda@kde.org>

Definition at line 123 of file kpopupmenu.h.


Constructor & Destructor Documentation

KPopupMenu::KPopupMenu QWidget parent = 0,
const char *  name = 0
 

Constructs a KPopupMenu.

Definition at line 164 of file kpopupmenu.cpp.

References resetKeyboardVars().

KPopupMenu::~KPopupMenu  ) 
 

Destructs the object.

Definition at line 172 of file kpopupmenu.cpp.

KPopupMenu::KPopupMenu const QString title,
QWidget parent = 0,
const char *  name = 0
 

end of RMB menus on menus support

Deprecated:
Obsolete method provided for backwards compatibility only.
Use the normal constructor and insertTitle instead.

Definition at line 670 of file kpopupmenu.cpp.

References insertTitle().


Member Function Documentation

int KPopupMenu::insertTitle const QString text,
int  id = -1,
int  index = -1
 

Inserts a title item with no icon.

Definition at line 183 of file kpopupmenu.cpp.

References QPopupMenu::insertItem(), QPopupMenu::setItemEnabled(), and KPopupTitle::setTitle().

Referenced by KDateTable::contentsMousePressEvent(), KPixmapRegionSelectorWidget::createPopupMenu(), KWindowListMenu::init(), KPopupMenu(), and KSystemTray::KSystemTray().

int KPopupMenu::insertTitle const QPixmap icon,
const QString text,
int  id = -1,
int  index = -1
 

Inserts a title item with the given icon and title.

Definition at line 192 of file kpopupmenu.cpp.

References QPopupMenu::insertItem(), QPopupMenu::setItemEnabled(), and KPopupTitle::setTitle().

void KPopupMenu::changeTitle int  id,
const QString text
 

Changes the title of the item at the specified id.

If a icon was previously set it is cleared.

Definition at line 202 of file kpopupmenu.cpp.

References endl(), and kdWarning().

void KPopupMenu::changeTitle int  id,
const QPixmap icon,
const QString text
 

Changes the title and icon of the title item at the specified id.

Definition at line 219 of file kpopupmenu.cpp.

References endl(), and kdWarning().

QString KPopupMenu::title int  id = -1  )  const
 

Returns the title of the title item at the specified id.

The default id of -1 is for backwards compatibility only, you should always specify the id.

Definition at line 236 of file kpopupmenu.cpp.

QPixmap KPopupMenu::titlePixmap int  id  )  const
 

Returns the icon of the title item at the specified id.

Definition at line 252 of file kpopupmenu.cpp.

void KPopupMenu::setKeyboardShortcutsEnabled bool  enable  ) 
 

Enables keyboard navigation by searching for the entered key sequence.

Also underlines the currently selected item, providing feedback on the search.

Defaults to off.

WARNING: calls to text() of currently keyboard-selected items will contain additional ampersand characters.

WARNING: though pre-existing keyboard shortcuts will not interfere with the operation of this feature, they may be confusing to the user as the existing shortcuts will not work.

Since:
3.1

Definition at line 477 of file kpopupmenu.cpp.

Referenced by KPanelMenu::init().

void KPopupMenu::setKeyboardShortcutsExecute bool  enable  ) 
 

Enables execution of the menu item once it is uniquely specified.

Defaults to off.

Since:
3.1

Definition at line 482 of file kpopupmenu.cpp.

void KPopupMenu::setTitle const QString title  ) 
 

Deprecated:
Obsolete method provided for backwards compatibility only.
Use insertTitle and changeTitle instead.

Definition at line 678 of file kpopupmenu.cpp.

References QPopupMenu::insertItem(), and KPopupTitle::setTitle().

QPopupMenu * KPopupMenu::contextMenu  ) 
 

Returns the context menu associated with this menu.

Since:
3.2

Definition at line 514 of file kpopupmenu.cpp.

References QPopupMenu::aboutToHide(), ctxMenuHiding(), and QPopupMenu::QPopupMenu().

const QPopupMenu * KPopupMenu::contextMenu  )  const
 

Returns the context menu associated with this menu.

Since:
3.2

Definition at line 525 of file kpopupmenu.cpp.

void KPopupMenu::hideContextMenu  ) 
 

Hides the context menu if shown.

Since:
3.2

Definition at line 530 of file kpopupmenu.cpp.

KPopupMenu * KPopupMenu::contextMenuFocus  )  [static]
 

Returns the KPopupMenu associated with the current context menu.

Since:
3.2

Definition at line 540 of file kpopupmenu.cpp.

int KPopupMenu::contextMenuFocusItem  )  [static]
 

returns the ID of the menuitem associated with the current context menu

Since:
3.2

Definition at line 535 of file kpopupmenu.cpp.

void KPopupMenu::activateItemAt int  index  )  [virtual]
 

Reimplemented for internal purposes.

Since:
3.4

Definition at line 277 of file kpopupmenu.cpp.

Referenced by keyPressEvent().

Qt::ButtonState KPopupMenu::state  )  const
 

Return the state of the mouse button and keyboard modifiers when the last menuitem was activated.

Since:
3.4

Definition at line 283 of file kpopupmenu.cpp.

Referenced by KAction::slotPopupActivated().

void KPopupMenu::aboutToShowContextMenu KPopupMenu menu,
int  menuItem,
QPopupMenu ctxMenu
[signal]
 

connect to this signal to be notified when a context menu is about to be shown

Parameters:
menu The menu that the context menu is about to be shown for
menuItem The menu item that the context menu is currently on
ctxMenu The context menu itself
Since:
3.2

Referenced by showCtxMenu().

void KPopupMenu::closeEvent QCloseEvent  )  [protected, virtual]
 

This is re-implemented for keyboard navigation.

Definition at line 270 of file kpopupmenu.cpp.

References resetKeyboardVars().

void KPopupMenu::mouseReleaseEvent QMouseEvent e  )  [protected, virtual]
 

Since:
3.4

Definition at line 505 of file kpopupmenu.cpp.

References QMouseEvent::button(), and QMouseEvent::state().

void KPopupMenu::mousePressEvent QMouseEvent e  )  [protected, virtual]
 

RMB menus on menus.

Definition at line 494 of file kpopupmenu.cpp.

QString KPopupMenu::underlineText const QString text,
uint  length
[protected, slot]
 

Since:
3.1

Definition at line 452 of file kpopupmenu.cpp.

References QString::insert().

Referenced by keyPressEvent().

void KPopupMenu::resetKeyboardVars bool  noMatches = false  )  [protected, slot]
 

Since:
3.1

Definition at line 462 of file kpopupmenu.cpp.

References QPopupMenu::changeItem(), and QPopupMenu::idAt().

Referenced by closeEvent(), focusNextPrevChild(), keyPressEvent(), and KPopupMenu().


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.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Feb 8 06:22:50 2006 by doxygen 1.4.4 written by Dimitri van Heesch, © 1997-2003