MEikMenuObserver Class Reference

#include <mw/eikmobs.h>

class MEikMenuObserver : public MEikCommandObserver

Inherits from

Public Member Enumerations
enumTMenuType { EMenuPane, EMenuBar }
Public Member Functions
virtual IMPORT_C TBoolCheckHotKeyNotDimmedL(TInt)
virtual IMPORT_C CCoeControl *CreateCustomCommandControlL(TInt)
virtual IMPORT_C voidDynInitMenuBarL(TInt, CEikMenuBar *)
virtual IMPORT_C voidDynInitMenuPaneL(TInt, CEikMenuPane *)
virtual IMPORT_C voidHandleAttemptDimmedSelectionL(TInt)
virtual IMPORT_C voidHandleSideBarMenuL(TInt, const TPoint &, TInt, const CEikHotKeyTable *)
virtual IMPORT_C voidOfferKeyToAppL(const TKeyEvent &, TEventCode)
virtual IMPORT_C voidRestoreMenuL(CCoeControl *, TInt, TMenuType)
pure virtual voidSetEmphasis(CCoeControl *, TBool)
Protected Member Functions
MEikMenuObserver()
Inherited Functions
MEikCommandObserver::MEikCommandObserver()
MEikCommandObserver::ProcessCommandL(TInt)

Detailed Description

Menu observer interface.

Menu observers cooperate with menu bars and menu panes, initialising them before display and responding to menu events appropriately. CEikAppUi implements MEikMenuObserver, so these functions may be implemented on an application's App UI.

Member Enumeration Documentation

Enum TMenuType

Menu types

EnumeratorValueDescription
EMenuPane

Menu pane.

EMenuBar

Menu bar.

Constructor & Destructor Documentation

MEikMenuObserver ( )

IMPORT_CMEikMenuObserver()[protected]

Constructor for MEikMenuObserver

Member Function Documentation

CheckHotKeyNotDimmedL ( TInt )

IMPORT_C TBoolCheckHotKeyNotDimmedL(TIntaCommandId)[virtual]

Determines whether a command should be passed to the application.

Applications can choose whether to respond to a hotkey event that corresponds to a dimmed item. This function is called when a recognised key press is offered to a menu bar or a menu pane to determine whether to send the corresponding command.

Parameters
aCommandIdThe command corresponding to the selected hotkey.
Return Value
ETrue if the command should be passed to the application. This is the default. EFalse if the command should not be passed to the application.

CreateCustomCommandControlL ( TInt )

IMPORT_C CCoeControl *CreateCustomCommandControlL(TIntaControlType)[virtual]

Reimplemented from MEikCommandObserver::CreateCustomCommandControlL(TInt)

Parameters
aControlTypeA custom control ID.

DynInitMenuBarL ( TInt, CEikMenuBar * )

IMPORT_C voidDynInitMenuBarL(TIntaResourceId,
CEikMenuBar *aMenuBar
)[virtual]

As DynInitMenuPaneL(), but for menu bars.

Parameters
aMenuBarThe in-memory representation of the menu bar.

DynInitMenuPaneL ( TInt, CEikMenuPane * )

IMPORT_C voidDynInitMenuPaneL(TIntaResourceId,
CEikMenuPane *aMenuPane
)[virtual]

Dynamically initialises a menu pane.

The Uikon framework calls this function, if it is implemented in a menu's observer, immediately before the menu pane is activated.

Typically this function should inquire the value of application data, and initialise menu items accordingly. This includes dimming menu items, changing their text, setting the state of checked items and radio buttons and dynamically adding items to a menu.

Parameters
aMenuPaneThe in-memory representation of the menu pane.

HandleAttemptDimmedSelectionL ( TInt )

IMPORT_C voidHandleAttemptDimmedSelectionL(TIntaCommandId)[virtual]

Responds to a user's attempt to select a dimmed item by displaying a message (CEikonEnv::InfoMsg()) to indicate the item is unavailable.

Parameters
aCommandIdCommand ID for the menu item.

HandleSideBarMenuL ( TInt, const TPoint &, TInt, const CEikHotKeyTable * )

IMPORT_C voidHandleSideBarMenuL(TIntaResourceId,
const TPoint &aPos,
TIntaModifiers,
const CEikHotKeyTable *aTable
)[virtual]

This function is invoked by CEikMenuBar's input handling functions.

It may be overridden to handle displaying menus launched from the side bar.

Parameters
aResourceIdResource ID identifying the menu to launch.
aPosPosition of the menu's reference point. For sidebar menus, this is the top-right corner.
aModifiersKey modifiers held when the menu was invoked.
aTableThe menu bar's hotkey items.

OfferKeyToAppL ( const TKeyEvent &, TEventCode )

IMPORT_C voidOfferKeyToAppL(const TKeyEvent &aKeyEvent,
TEventCodeaType
)[virtual]

Called if a key which is not used by the menu is pressed while the observer's menu is displaying.

Parameters
aKeyEventThe key event the menu is offering to the app.
aTypeEvent code type.

RestoreMenuL ( CCoeControl *, TInt, TMenuType )

IMPORT_C voidRestoreMenuL(CCoeControl *aMenuControl,
TIntaResourceId,
TMenuTypeaType
)[virtual]

Restores the menu window aMenuWindow.

Parameters
aMenuControlThe menu window to be restored.
aResourceIdThe menu's ID.
aTypeThe type of menu being restored.

SetEmphasis ( CCoeControl *, TBool )

voidSetEmphasis(CCoeControl *aMenuControl,
TBoolaEmphasis
)[pure virtual]

Called by the Uikon framework to handle the emphasising or de-emphasising of a menu window.

CEikMenuBar objects call this on their observer to emphasise themselves when they are displayed, and de-emphasise themselves when they stop displaying.

Parameters
aMenuControlThe menu control.
aEmphasisETrue to emphasize the menu, EFalse otherwise.