Guiliani  Version 2.4 revision 5970 (build 3)
CGUIMenuItem Class Reference

Specialization of CGUIIconButton that represents an item for the menu and menu bar. More...

#include <GUIMenuItem.h>

Inheritance diagram for CGUIMenuItem:

Public Member Functions

 CGUIMenuItem (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const eC_Value &vXFunctionIconPos, const eC_Value &vYFunctionIconPos, const eC_Value &vXSubMenuIconPos, const eC_Value &vYSubMenuIconPos, const eC_String &pkText, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIMenuItem (CGUICompositeObject *const pParent, const CGUIRect &kRect, const eC_Value &vXFunctionIconPos, const eC_Value &vYFunctionIconPos, const eC_Value &vXSubMenuIconPos, const eC_Value &vYSubMenuIconPos, const eC_String &rkText, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIMenuItem (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const eC_Value &vXFunctionIconPos, const eC_Value &vYFunctionIconPos, const eC_Value &vXSubMenuIconPos, const eC_Value &vYSubMenuIconPos, const TextResource_t &eTextID, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIMenuItem (CGUICompositeObject *const pParent, const CGUIRect &kRect, const eC_Value &vXFunctionIconPos, const eC_Value &vYFunctionIconPos, const eC_Value &vXSubMenuIconPos, const eC_Value &vYSubMenuIconPos, const TextResource_t &eTextID, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIMenuItem (const CGUIMenuItem &kSource)
 
 CGUIMenuItem ()
 
 ~CGUIMenuItem ()
 
virtual eC_Bool DoClick (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoDraw ()
 
void GetSubMenuIconImagePos (eC_Value &vSubMenuIconPosX, eC_Value &vSubMenuIconPosY) const
 
eC_Bool HasSeparator () const
 
eC_Bool IsSelected () const
 
eC_Bool IsToOpenMenu () const
 
CGUIMenuItemoperator= (const CGUIMenuItem &kSource)
 
virtual void ReadFromStream ()
 
void SetBgImages (const ImageResource_t &eItemStandard, const ImageResource_t &eItemPressed, const ImageResource_t &eItemHighlighted, const ImageResource_t &eItemGrayedOut, const ImageResource_t &eItemFocused, const ImageResource_t &eItemSelected)
 
void SetFunctionIconImages (const ImageResource_t eIconNormal, const ImageResource_t eIconPressed, const ImageResource_t eIconHighlighted, const ImageResource_t eIconGrayedOut, const ImageResource_t eIconFocussed, const ImageResource_t &eIconSelected)
 
void SetHasSeparator (eC_Bool bHasSeparator)
 
void SetSelected (const eC_Bool &bSelected)
 
void SetStandardImages ()
 Set the standard images for the background of this control.
 
void SetSubMenuIconImage (const ImageResource_t &eSubMenuIcon)
 
void SetSubMenuIconImagePos (const eC_Value &vSubMenuIconPosX, const eC_Value &vSubMenuIconPosY)
 
virtual void WriteToStream (const eC_Bool bWriteClassID=false)
 
- Public Member Functions inherited from CGUIIconButton
 CGUIIconButton (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const eC_Value &vXIconPos, const eC_Value &vYIconPos, const eC_String &pkText, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIIconButton (CGUICompositeObject *const pParent, const CGUIRect &kRect, const eC_Value &vXIconPos, const eC_Value &vYIconPos, const eC_String &rkText, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIIconButton (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const eC_Value &vXIconPos, const eC_Value &vYIconPos, const TextResource_t &eTextID, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIIconButton (CGUICompositeObject *const pParent, const CGUIRect &kRect, const eC_Value &vXIconPos, const eC_Value &vYIconPos, const TextResource_t &eTextID, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIIconButton (const CGUIIconButton &kSource)
 
 ~CGUIIconButton ()
 Destructor.
 
eC_UByte GetIconAlpha ()
 
void GetIconImages (ImageResource_t &eIconNormal, ImageResource_t &eIconPressed, ImageResource_t &eIconHighlighted, ImageResource_t &eIconGrayedOut, ImageResource_t &eIconFocussed) const
 
void GetIconPos (eC_Value &vIconPosX, eC_Value &vIconPosY) const
 
CGUIIconButtonoperator= (const CGUIIconButton &kSource)
 
void SetIconAlpha (const eC_UByte ubIconAlpha)
 
void SetIconImages (const ImageResource_t eIconNormal, const ImageResource_t eIconPressed, const ImageResource_t eIconHighlighted, const ImageResource_t eIconGrayedOut, const ImageResource_t eIconFocussed)
 
void SetIconPos (const eC_Value &vIconPosX, const eC_Value &vIconPosY)
 
- Public Member Functions inherited from CGUIButton
 CGUIButton (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const eC_String &rkText, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIButton (CGUICompositeObject *const pParent, const CGUIRect &kRect, const eC_String &rkText, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIButton (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const TextResource_t &eTextID, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIButton (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, CGUICommandPtr pCommandObject, const ImageResource_t &eBtnStandard, const ImageResource_t &eBtnPressed=DUMMY_IMAGE, const ImageResource_t &eBtnHighlighted=DUMMY_IMAGE, const ImageResource_t &eBtnGrayedOut=DUMMY_IMAGE, const ImageResource_t &eBtnFocused=DUMMY_IMAGE, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIButton (CGUICompositeObject *const pParent, const CGUIRect &kRect, const TextResource_t &eTextID, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIButton (const CGUIButton &kSource)
 
 CGUIButton ()
 
virtual ~CGUIButton ()
 
CGUIRect GetBlitRect () const
 
BlitType_t GetBlitType () const
 
void GetImages (ImageResource_t &eBtnStandard, ImageResource_t &eBtnPressed, ImageResource_t &eBtnHighlighted, ImageResource_t &eBtnGrayedOut, ImageResource_t &eBtnFocused)
 
CGUINinePatchGetNinePatch ()
 
CGUIButtonoperator= (const CGUIButton &kSource)
 
void SetBlitRect (const CGUIRect &kBlitRect)
 
void SetBlitType (const BlitType_t &eBlitType)
 
void SetImages (const ImageResource_t &eBtnStandard, const ImageResource_t &eBtnPressed, const ImageResource_t &eBtnHighlighted, const ImageResource_t &eBtnGrayedOut, const ImageResource_t &eBtnFocused)
 
void SetStandardImages ()
 
- Public Member Functions inherited from CGUIBaseButton
 CGUIBaseButton (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const TextResource_t &eTextID, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIBaseButton (CGUICompositeObject *const pParent, const CGUIRect &kRect, const TextResource_t &eTextID, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIBaseButton (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const eC_String &kText, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIBaseButton (CGUICompositeObject *const pParent, const CGUIRect &kRect, const eC_String &kText, CGUICommandPtr pCommandObject, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIBaseButton ()
 
 CGUIBaseButton (const CGUIBaseButton &kSource)
 
virtual ~CGUIBaseButton (void)
 
virtual eC_Bool DoButtonDown (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoButtonUp (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
CGUICommandPtr GetCommand () const
 
CGUITextGetLabel () const
 
CGUIBaseButtonoperator= (const CGUIBaseButton &kSource)
 
void SetCommand (CGUICommandPtr pCommand)
 
virtual void SetHeight (const eC_Value &vNewHeight)
 
void SetLabel (const eC_String &kString)
 
void SetLabel (const TextResource_t &eTextID)
 
void SetText (CGUIText *pkText)
 
virtual eC_Bool SetValue (const CGUIValue &rkValue)
 
virtual void SetWidth (const eC_Value &vNewWidth)
 
- Public Member Functions inherited from CGUIObject
 CGUIObject (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIObject (CGUICompositeObject *const pParent, const CGUIRect &kRect, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIObject ()
 
 CGUIObject (const CGUIObject &kSource)
 
virtual ~CGUIObject ()
 
void AddValueObserver (CGUIObserver *pObserver)
 
eC_Bool CalculateInvalidatedRect (CGUIRect &rRect) const
 
virtual eC_Bool ClaimFocus ()
 
virtual void CreateSnapshot (eC_UInt uiBackColor=0x00)
 
eC_Bool DataPoolConnectorExists () const
 
void DeleteSnapshot ()
 
virtual void DisableSnapshotDrawing (eC_Bool bDeleteSnapshot=true)
 
virtual eC_Bool DoDrawSnapshot ()
 
virtual void EnableSnapshotDrawing ()
 
virtual CGUIObjectFindObject (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool FocusAny ()
 
virtual eC_Bool FocusNext (CGUIObject *const pRefObj=NULL, const eC_Bool &bSubTreeOfRefObjDone=false)
 
virtual eC_Bool FocusPrevious (CGUIObject *const pRefObj=NULL, const eC_Bool &bSubTreeOfRefObjDone=false)
 
CGUIRect GetAbsRect () const
 
eC_Value GetAbsXPos () const
 
eC_Value GetAbsXPosCenter () const
 
eC_Value GetAbsXPosREdge () const
 
eC_Value GetAbsYPos () const
 
eC_Value GetAbsYPosBEdge () const
 
eC_Value GetAbsYPosCenter () const
 
eC_UByte GetAlpha () const
 
CGUIBehaviourDecoratorGetBehaviour ()
 
const CGUIBehaviourDecoratorGetBehaviour () const
 
GUIBitmapPlaneID_t GetBitmapID () const
 
CGUIBitmapPlaneGetBitmapPlane () const
 
CGUIRect GetCurrentAbsRect () const
 
eC_Value GetCurrentAbsXPos () const
 
eC_Value GetCurrentAbsXPosCenter () const
 
eC_Value GetCurrentAbsXPosREdge () const
 
eC_Value GetCurrentAbsYPos () const
 
eC_Value GetCurrentAbsYPosBEdge () const
 
eC_Value GetCurrentAbsYPosCenter () const
 
CDataPoolConnectorGetDataPoolConnector ()
 
eC_Value GetDistanceBottom () const
 
eC_Value GetDistanceRight () const
 
eC_Value GetHalfHeight () const
 
eC_Value GetHalfWidth () const
 
eC_Value GetHeight () const
 
ObjectHandle_t GetID () const
 
CGUILayouterGetLayouter ()
 
const CGUILayouterGetLayouter () const
 
ObjectHandle_t GetNeighborBottomID () const
 
ObjectHandle_t GetNeighborLeftID () const
 
ObjectHandle_t GetNeighborRightID () const
 
ObjectHandle_t GetNeighborTopID () const
 
CGUIObjectGetObjectByID (const ObjectHandle_t &eID, const eC_Bool &bOnlyVisible=false)
 
const CGUIObjectGetObjectByID (const ObjectHandle_t &eID, const eC_Bool &bOnlyVisible=false) const
 
CGUIRect GetOriginRect () const
 
CGUICompositeObjectGetParent ()
 
const CGUICompositeObjectGetParent () const
 
CGUIRect GetRelRect () const
 
eC_Value GetRelXPos () const
 
eC_Value GetRelXPosCenter () const
 
eC_Value GetRelXPosREdge () const
 
eC_Value GetRelYPos () const
 
eC_Value GetRelYPosBEdge () const
 
eC_Value GetRelYPosCenter () const
 
eC_Value GetWidth () const
 
void InvalidateArea ()
 
eC_Bool IsClickable () const
 
eC_Bool IsClickThrough () const
 
virtual eC_Bool IsCompositeObject () const
 
eC_Bool IsDescendantOf (const CGUIObject *const pAncestor) const
 
eC_Bool IsDisabled () const
 
eC_Bool IsDragable () const
 
eC_Bool IsDragged () const
 
eC_Bool IsDrawingSnapshot () const
 
eC_Bool IsFocussable () const
 
eC_Bool IsFocussed () const
 
eC_Bool IsGrayedOut () const
 
virtual eC_Bool IsHighlightable () const
 
eC_Bool IsHighlighted () const
 
eC_Bool IsInvisible () const
 
eC_Bool IsPressed () const
 
eC_Bool IsStopFocus () const
 
void NotifyValueObservers (const CGUIValue &kValue, const eC_UInt uiX=0, const eC_UInt uiY=0)
 
CGUIObjectoperator= (const CGUIObject &kSource)
 
virtual void RefreshLayout (CGUILayouter::eMovedEdges_t eMovedEdges) const
 
void RemoveValueObserver (CGUIObserver *pObserver)
 
void RenderToBitmap (eC_UInt uiBitmapID, eC_Value vXOffset=eC_FromInt(0), eC_Value vYOffset=eC_FromInt(0))
 
eC_Bool RequestFocus ()
 
void SetAlpha (eC_UByte ubAlpha)
 
void SetBehaviour (CGUIBehaviourDecorator *pBehaviour)
 
void SetClickThrough (const eC_Bool &bClickThrough)
 
virtual void SetDisabled (const eC_Bool &bDisabled)
 
virtual void SetFocussable (const eC_Bool &bFocussable)
 
virtual void SetGrayedOut (const eC_Bool &bGrayOut)
 
void SetID (const ObjectHandle_t &eID)
 
virtual void SetInvisible (const eC_Bool &bInvisible)
 
void SetLayouter (CGUILayouter *pLayouter)
 
void SetNeighborBottomID (const ObjectHandle_t eNewNeighborBottomID)
 
void SetNeighborIDs (const ObjectHandle_t eNewNeighborLeftID, const ObjectHandle_t eNewNeighborRightID, const ObjectHandle_t eNewNeighborTopID, const ObjectHandle_t eNewNeighborBottomID)
 
void SetNeighborLeftID (const ObjectHandle_t eNewNeighborLeftID)
 
void SetNeighborRightID (const ObjectHandle_t eNewNeighborRightID)
 
void SetNeighborTopID (const ObjectHandle_t eNewNeighborTopID)
 
virtual void SetParent (CGUICompositeObject *const pParent)
 
void SetRelRect (const CGUIRect &kNewRect)
 
virtual void SetRelXPos (const eC_Value &vX)
 
void SetRelXPosCenter (const eC_Value &vXCenter)
 
void SetRelXPosREdge (const eC_Value &vX)
 
virtual void SetRelYPos (const eC_Value &vY)
 
void SetRelYPosBEdge (const eC_Value &vY)
 
void SetRelYPosCenter (const eC_Value &vYCenter)
 
void SetStopFocus (const eC_Bool &bDontFocusToParent)
 
virtual eC_Bool SetValue (CDataPoolEntry &rkValue)
 
- Public Member Functions inherited from CGUIBehaviour
virtual eC_Bool DoUserEvent (CGUIEvent *const pEvent)
 
virtual void OnCreate ()
 
virtual void OnDelete ()
 
virtual void OnHide ()
 
virtual void OnShow ()
 
virtual eC_Bool DoLongClick (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoDoubleClick (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoDrag (const eC_Value &vDeltaX=eC_FromInt(-1), const eC_Value &vDeltaY=eC_FromInt(-1), const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoDragEnd (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoMouseEnter (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoMouseLeave (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoMouseMove (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual void GetFocus ()
 
virtual void LoseFocus ()
 
virtual eC_Bool Decrease ()
 
virtual eC_Bool Increase ()
 
virtual eC_Bool DoKeyDown (const GUIKeyIdentifier_t &eKeyIdentifier, const eC_UInt &uiModifiers)
 
virtual eC_Bool DoKeyUp (const GUIKeyIdentifier_t &eKeyIdentifier, const eC_UInt &uiModifiers)
 
virtual eC_Bool DoChar (const eC_UInt &uiKey, const GUIKeyIdentifier_t &eKeyIdentifier, const eC_UInt &uiModifiers)
 
virtual eC_Bool DoScrollUp (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoScrollDown (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoScrollLeft (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoScrollRight (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
- Public Member Functions inherited from CGUIStreamableObject
const eC_String & GetXMLTag () const
 
void SetXMLTag (const eC_String &kXMLTag)
 
- Public Member Functions inherited from CGUIAnimatable
virtual ~CGUIAnimatable ()
 Destructor. Removes all existing animation callbacks.
 
virtual void DoAnimate (const eC_Value &vTimes=eC_FromInt(1))
 
virtual eC_Bool IsAnimating () const
 
virtual void StartAnimation ()
 
virtual void StopAnimation ()
 

Protected Member Functions

void SetIsToOpenMenu (eC_Bool bIsToOpenMenu)
 
- Protected Member Functions inherited from CGUIObject
virtual eC_Bool CreateBitmapPlane ()
 
virtual eC_Bool FourWayNext (FourWayFocus_t eFocusDirection)
 
- Protected Member Functions inherited from CGUIStreamableObject
eC_UInt ReadStreamingHeader (const eC_UInt &uiClassVersion, const eC_UInt &uiClassMinVersion=0) const
 
void WriteStreamingFooter (const eC_Bool &bWriteClassID) const
 
void WriteStreamingHeader (const eC_Bool &bWriteClassID, const eC_Char *const pkClassIDTag, const eC_Int &iClassID, const eC_UInt &uiClassVersion) const
 

Protected Attributes

eC_Bool m_bHasSeparator
 Indicate whether there is a separator after the item.
 
eC_Bool m_bIsToOpenMenu
 Indicate whether the item has a submenu.
 
eC_Bool m_bSelected
 Indicate whether the control is selected or not.
 
ImageResource_t m_eFunctionIconSelected
 The image id of the Function icon with selected state.
 
ImageResource_t m_eItemSelected
 The image ID for the selected status.
 
ImageResource_t m_eSubMenuIconImage
 The image ID of the submenu icon.
 
eC_Value m_vSubMenuIconPosX
 X-position of SubMenu-image relative this object.
 
eC_Value m_vSubMenuIconPosY
 Y-position of SubMenu-image relative this object.
 
- Protected Attributes inherited from CGUIIconButton
ImageResource_t m_eIconFocussed
 
ImageResource_t m_eIconGrayedOut
 
ImageResource_t m_eIconHighlighted
 
ImageResource_t m_eIconNormal
 
ImageResource_t m_eIconPressed
 
eC_UByte m_ubIconAlpha
 m_ubIconAlpha stores the alpha value which is used for the icon blit in all button states.
 
eC_Value m_vIconPosX
 m_vIconPosX stores X-Position of icon. This is relative to the control.
 
eC_Value m_vIconPosY
 m_vIconPosY stores Y-Position of icon. This is relative to the control.
 
- Protected Attributes inherited from CGUIButton
BlitType_t m_eBlitType
 used blitting-type
 
ImageResource_t m_eBtnFocused
 the focused image
 
ImageResource_t m_eBtnGrayedOut
 the grayed out image
 
ImageResource_t m_eBtnHighlighted
 the highlighted image
 
ImageResource_t m_eBtnNormal
 the standard image
 
ImageResource_t m_eBtnPressed
 the pressed image
 
CGUIRect m_kBlitRect
 used blitting-rect for manual-layout
 
CGUINinePatch m_kNinePatch
 the nine patch
 
- Protected Attributes inherited from CGUIBaseButton
CGUICommandPtr m_pCommandObject
 Holds the attached command.
 
CGUITextm_pkLabel
 Holds the label.
 

Friends

class CGUIMenuBar
 
class CGUIMenuBase
 

Additional Inherited Members

- Public Types inherited from CGUIButton
enum  BlitType_t { BBT_CENTER, BBT_MANUAL_LAYOUT, BBT_STRETCH, BBT_TILED }
 enum for blitting-type More...
 
- Public Types inherited from CGUIObject
enum  FourWayFocus_t { FOCUS_LEFT, FOCUS_RIGHT, FOCUS_UP, FOCUS_DOWN }
 
- Static Public Attributes inherited from CGUIObject
static const eC_Char XMLTAG_ALPHA [] = "Alpha"
 XML tag to be used writing alpha-value into a stream.
 
static const eC_Char XMLTAG_CLICKTHROUGH [] = "ClickThrough"
 XML tag to be used writing clickthrough-state into a stream.
 
static const eC_Char XMLTAG_CONTROLCLASSID [] = "ControlClassID"
 XML tag to be used when writing a control class ID into a stream.
 
static const eC_Char XMLTAG_DISABLED [] = "Disabled"
 XML tag to be used writing disabled-state into a stream.
 
static const eC_Char XMLTAG_FOCUSSABLE [] = "Focussable"
 XML tag to be used writing focussable-state into a stream.
 
static const eC_Char XMLTAG_GRAYEDOUT [] = "GrayedOut"
 XML tag to be used writing grayedout-state into a stream.
 
static const eC_Char XMLTAG_HEIGHT [] = "Height"
 XML tag to be used writing height into a stream.
 
static const eC_Char XMLTAG_INVISIBLE [] = "Invisible"
 XML tag to be used writing invisible-state into a stream.
 
static const eC_Char XMLTAG_OBJECTID [] = "ObjectID"
 XML tag to be used writing object id into a stream.
 
static const eC_Char XMLTAG_OVERRIDDENNEIGHBORS [] = "OverriddenNeighbors"
 XML tag to be used writing overridden neighbors into a stream.
 
static const eC_Char XMLTAG_WIDTH [] = "Width"
 XML tag to be used writing width into a stream.
 
static const eC_Char XMLTAG_XPOS [] = "XPos"
 XML tag to be used writing x-position into a stream.
 
static const eC_Char XMLTAG_YPOS [] = "YPos"
 XML tag to be used writing y-position into a stream.
 
- Static Public Attributes inherited from CGUIBehaviour
static const eC_Char XMLTAG_BEHAVIOURCLASSID [] = "BehaviourClassID"
 XML tag to be used when writing a behaviour class ID into a stream.
 
- Static Public Attributes inherited from CGUIStreamableObject
static const eC_Char XMLTAG_CLASSVERSION [] = "ClassVersion"
 

Detailed Description

Specialization of CGUIIconButton that represents an item for the menu and menu bar.

This class can be used for both menu bar items (see CGUIMenuBar) and menu items (see CGUIMenu).

Each menu item may have an additional submenu icon. The submenu icon should be used to show that this menu item opens a submenu. Use SetSubMenuIconImage() to set this icon image. SetFunctionIconImages() method is applied to set the function icon of the control. SetBgImages() method is applied to set the background images of the control. Standard background images are set by default if GUI_PROP_USE_STANDARD_IMAGES property is set.

A menu item can be selected which means that it is focused or highlighted and may therefore be activated by a click or by pressing the Guiliani action key. The selected state is also used for visualizing menu items which have opened a sub-menu. SetSelected() method is applied to set the selected state of this control. Use IsSelected() to check whether the list item is currently selected.

The default alignment of the text is horizontally left and vertically centered.

DoClick() method is applied to handle the event after user clicks the control.

Example:

// Create a menu item.
CGUIMenuItem* pkMenuItem = new CGUIMenuItem(this,
eC_FromInt(0), eC_FromInt(0),
eC_FromInt(100), eC_FromInt(30),
eC_FromInt(0), eC_FromInt(0),
eC_FromInt(90), eC_FromInt(0),
"item1",
NULL, // Replace the NULL with your command.
OBJ_MENUITEM);
// Set the SubMenu-icon of the control.
// Before calling this method, please add an image id to UserImageResource.h.
// After that call GETRESMANAGER.RegisterImageResource() to register an image for image id.
pkMenuItem->SetSubMenuIconImage(ICON_SUBMENU);
// Set position of the second icon inside the control.
pkMenuItem->SetSubMenuIconImagePos(eC_FromInt(90), eC_FromInt(10));

Constructor & Destructor Documentation

◆ CGUIMenuItem() [1/6]

CGUIMenuItem::CGUIMenuItem ( CGUICompositeObject *const  pParent,
const eC_Value &  vX,
const eC_Value &  vY,
const eC_Value &  vWidth,
const eC_Value &  vHeight,
const eC_Value &  vXFunctionIconPos,
const eC_Value &  vYFunctionIconPos,
const eC_Value &  vXSubMenuIconPos,
const eC_Value &  vYSubMenuIconPos,
const eC_String &  pkText,
CGUICommandPtr  pCommandObject,
const ObjectHandle_t eID = NO_HANDLE 
)

CGUIMenuItem constructor.

Parameters
pParentPointer to the designated parent object.
vXX-position relative to its parent object.
vYY-position relative to its parent object.
vWidthWidth of the MenuItem.
vHeightHeight of the MenuItem.
vXFunctionIconPosX-position of image relative this object.
vYFunctionIconPosY-position of image relative this object.
vXSubMenuIconPosX-position of SubMenu-image relative this object.
vYSubMenuIconPosY-position of SubMenu-image relative this object.
pkTextText string that will be displayed on the MenuItem.
pCommandObjectPointer to command object which will be executed in reaction to a click.
eIDObject Identifier of this MenuItem (choose NO_HANDLE if none is required).

◆ CGUIMenuItem() [2/6]

CGUIMenuItem::CGUIMenuItem ( CGUICompositeObject *const  pParent,
const CGUIRect kRect,
const eC_Value &  vXFunctionIconPos,
const eC_Value &  vYFunctionIconPos,
const eC_Value &  vXSubMenuIconPos,
const eC_Value &  vYSubMenuIconPos,
const eC_String &  rkText,
CGUICommandPtr  pCommandObject,
const ObjectHandle_t eID = NO_HANDLE 
)

CGUIMenuItem constructor.

Parameters
pParentPointer to the designated parent object.
kRectdimensions of object with respect to parent object.
vXFunctionIconPosX-position of function icon image relative this object.
vYFunctionIconPosY-position of function icon image relative this object.
vXSubMenuIconPosX-position of SubMenu-image relative this object.
vYSubMenuIconPosY-position of SubMenu-image relative this object.
rkTextText string that will be displayed on the MenuItem.
pCommandObjectPointer to command object which will be executed in reaction to a click.
eIDObject Identifier of this MenuItem (choose NO_HANDLE if none is required).

◆ CGUIMenuItem() [3/6]

CGUIMenuItem::CGUIMenuItem ( CGUICompositeObject *const  pParent,
const eC_Value &  vX,
const eC_Value &  vY,
const eC_Value &  vWidth,
const eC_Value &  vHeight,
const eC_Value &  vXFunctionIconPos,
const eC_Value &  vYFunctionIconPos,
const eC_Value &  vXSubMenuIconPos,
const eC_Value &  vYSubMenuIconPos,
const TextResource_t eTextID,
CGUICommandPtr  pCommandObject,
const ObjectHandle_t eID = NO_HANDLE 
)

CGUIMenuItem constructor.

Parameters
pParentPointer to the designated parent object.
vXX-position relative to its parent object.
vYY-position relative to its parent object.
vWidthWidth of the MenuItem.
vHeightHeight of the MenuItem.
vXFunctionIconPosX-position of function icon image relative this object.
vYFunctionIconPosY-position of function icon image relative this object.
vXSubMenuIconPosX-position of SubMenu-image relative this object.
vYSubMenuIconPosY-position of SubMenu-image relative this object.
eTextIDID of text string to be displayed on the MenuItem.
pCommandObjectPointer to command object which will be executed in reaction to a click.
eIDObject Identifier of this MenuItem (choose NO_HANDLE if none is required).

◆ CGUIMenuItem() [4/6]

CGUIMenuItem::CGUIMenuItem ( CGUICompositeObject *const  pParent,
const CGUIRect kRect,
const eC_Value &  vXFunctionIconPos,
const eC_Value &  vYFunctionIconPos,
const eC_Value &  vXSubMenuIconPos,
const eC_Value &  vYSubMenuIconPos,
const TextResource_t eTextID,
CGUICommandPtr  pCommandObject,
const ObjectHandle_t eID = NO_HANDLE 
)

CGUIMenuItem constructor.

Parameters
pParentPointer to the designated parent object.
kRectdimensions of object with respect to parent object.
vXFunctionIconPosX-position of function icon image relative this object.
vYFunctionIconPosY-position of function icon image relative this object.
vXSubMenuIconPosX-position of SubMenu-image relative this object.
vYSubMenuIconPosY-position of SubMenu-image relative this object.
eTextIDID of text string to be displayed on the MenuItem.
pCommandObjectPointer to command object which will be executed in reaction to a click.
eIDObject Identifier of this MenuItem (choose NO_HANDLE if none is required).

◆ CGUIMenuItem() [5/6]

CGUIMenuItem::CGUIMenuItem ( const CGUIMenuItem kSource)

Copy-constructor of the CGUIMenuItem class.

Parameters
kSourceSource object to be copied.

◆ ~CGUIMenuItem()

CGUIMenuItem::~CGUIMenuItem ( )

Destructor

◆ CGUIMenuItem() [6/6]

CGUIMenuItem::CGUIMenuItem ( )

Standard constructor

See also
CGUIObject().

Member Function Documentation

◆ DoClick()

eC_Bool CGUIMenuItem::DoClick ( const eC_Value &  vAbsX = eC_FromInt(-1),
const eC_Value &  vAbsY = eC_FromInt(-1) 
)
virtual

Called when the object receives a click event. A click can e.g., be the result of a mouse click, a finger press/release sequence on touchscreens, or be triggered by a GK_ACTION keyboard event.

Note
DoClick() should work on the absolute positions of this object, that were set at the time of the passed redraw, as the user expects to click on what he sees and not to click on an object in a newer and probably intermediate state that he currently does not see. Thus, to calculate the relative position (where the mouse button was pressed and released at the same position for in a certain time span, relative to the origin of this object) from the vAbsY argument you must do it like this: vMyRelYPos = vAbsY - GetAbsYPos().
Parameters
vAbsXX-position in screen coordinates where the click occurred
vAbsYY-position in screen coordinates where the click occurred
Returns
True The event has been handled.
False The event has not been handled. In this base implementation it always returns False.

Reimplemented from CGUIBaseButton.

◆ DoDraw()

eC_Bool CGUIMenuItem::DoDraw ( )
virtual

Visualizes the object. It is forbidden to call SetRelXPos, SetRelYPos, SetWidth or SetHeight in DoDraw, i.e., it is not allowed to change the layout.

Returns
True if anything was drawn, False otherwise

Reimplemented from CGUIIconButton.

◆ GetSubMenuIconImagePos()

void CGUIMenuItem::GetSubMenuIconImagePos ( eC_Value &  vSubMenuIconPosX,
eC_Value &  vSubMenuIconPosY 
) const

Returns the position of the second icon.

Parameters
[out]vSubMenuIconPosXX Position of icon relative to control.
[out]vSubMenuIconPosYY Position of icon relative to control.

◆ HasSeparator()

eC_Bool CGUIMenuItem::HasSeparator ( ) const
inline

Return whether the menu item has a separator after it.

Returns
True if item has a separator

◆ IsSelected()

eC_Bool CGUIMenuItem::IsSelected ( ) const
inline

Return whether the menu item is currently selected.

Returns
True if selected

◆ IsToOpenMenu()

eC_Bool CGUIMenuItem::IsToOpenMenu ( ) const
inline

Return whether the menu item has a submenu.

Returns
True if item has a submenu

◆ operator=()

CGUIMenuItem & CGUIMenuItem::operator= ( const CGUIMenuItem kSource)

Operator= method of the CGUIMenuItem class.

Parameters
kSourceSource object to be copied.
Returns
Copied object.

◆ ReadFromStream()

void CGUIMenuItem::ReadFromStream ( )
virtual

Reads all object attributes from streaming file. Only for use with GUIFactory. GUIStreamingFileReader has to be set in CGUI::Init().

See also
CGUIFactory

Reimplemented from CGUIIconButton.

◆ SetBgImages()

void CGUIMenuItem::SetBgImages ( const ImageResource_t eItemStandard,
const ImageResource_t eItemPressed,
const ImageResource_t eItemHighlighted,
const ImageResource_t eItemGrayedOut,
const ImageResource_t eItemFocused,
const ImageResource_t eItemSelected 
)

Set the background images of the control.

Parameters
eItemStandardImageID of the background image in the normal status.
eItemPressedImageID of the background image in the pressed status.
eItemHighlightedImageID of the background image in the highlighted status.
eItemGrayedOutImageID of the background image in the grayedout status.
eItemFocusedImageID of the background image in the focused status.
eItemSelectedImageID of the background image in the selected status.

◆ SetFunctionIconImages()

void CGUIMenuItem::SetFunctionIconImages ( const ImageResource_t  eIconNormal,
const ImageResource_t  eIconPressed,
const ImageResource_t  eIconHighlighted,
const ImageResource_t  eIconGrayedOut,
const ImageResource_t  eIconFocussed,
const ImageResource_t eIconSelected 
)

Set the function-icon images of the control.

Parameters
eIconNormalImageID of the icon in the normal status.
eIconPressedImageID of the icon in the pressed status.
eIconHighlightedImageID of the icon in the highlighted status.
eIconGrayedOutImageID of the icon in the grayedout status.
eIconFocussedImageID of the icon in the focused status.
eIconSelectedImageID of the icon in the selected status.

◆ SetHasSeparator()

void CGUIMenuItem::SetHasSeparator ( eC_Bool  bHasSeparator)
inline

Set the bool value to indicate whether the menu item has a separator after it or not.

Parameters
bHasSeparatorNew parameter

◆ SetIsToOpenMenu()

void CGUIMenuItem::SetIsToOpenMenu ( eC_Bool  bIsToOpenMenu)
inlineprotected

If the menu item has a submenu, the parameter will may be set to true for checking whether it is to open a submenu.

Parameters
bIsToOpenMenuNew parameter

◆ SetSelected()

void CGUIMenuItem::SetSelected ( const eC_Bool &  bSelected)

Set the selected state of this control.

Parameters
bSelectedNew state

◆ SetSubMenuIconImage()

void CGUIMenuItem::SetSubMenuIconImage ( const ImageResource_t eSubMenuIcon)

Set the SubMenu-icon of the control.

Parameters
eSubMenuIconImageID of the icon when MenuItem has a sub-menu.

◆ SetSubMenuIconImagePos()

void CGUIMenuItem::SetSubMenuIconImagePos ( const eC_Value &  vSubMenuIconPosX,
const eC_Value &  vSubMenuIconPosY 
)

Function to set position of the second icon inside the control.

Parameters
vSubMenuIconPosXX Position of icon relative to control.
vSubMenuIconPosYY Position of icon relative to control.

◆ WriteToStream()

void CGUIMenuItem::WriteToStream ( const eC_Bool  bWriteClassID = false)
virtual

Writes all object attributes to the streaming file. StreamWriter has to be initialized. Only for use with GUIStreamWriter.

Parameters
bWriteClassIDThis flag is used to select if writing of ControlID, leading and trailing tags is performed. Only GUIStreamWriter and GUICompositeObject have to set this flag true.
See also
CGUIStreamWriter

Reimplemented from CGUIIconButton.

Friends And Related Function Documentation

◆ CGUIMenuBar

friend class CGUIMenuBar
friend

◆ CGUIMenuBase

friend class CGUIMenuBase
friend

Allows both of the CGUIMenu and CGUIMenuBar classes to access the private SetIsToOpenMenu method.


The documentation for this class was generated from the following files: