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

Base class for button controls. More...

#include <GUIBaseButton.h>

Inheritance diagram for CGUIBaseButton:

Public Member Functions

 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))
 
virtual eC_Bool DoClick (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoDraw ()
 
CGUICommandPtr GetCommand () const
 
CGUITextGetLabel () const
 
CGUIBaseButtonoperator= (const CGUIBaseButton &kSource)
 
virtual void ReadFromStream ()
 
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)
 
virtual void WriteToStream (const eC_Bool bWriteClassID=false)
 
- 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 Attributes

CGUICommandPtr m_pCommandObject
 Holds the attached command.
 
CGUITextm_pkLabel
 Holds the label.
 

Additional Inherited Members

- 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"
 
- 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
 

Detailed Description

Base class for button controls.

Like all the "BaseXXXXX"-Classes, this serves primarily as base-class, from which you can derive your own customized objects. For a Button implementation which uses images to visualize itself, please refer to CGUIButton.

A button is an object that looks differently depending on its state (normal, highlighted, focused, pressed or grayed-out). Typically, a button does something when it is clicked. The behavior of a button can be implemented mainly in three ways:

  • The most elegant solution is to attach a CGUICommand object to the button. The command is executed each time the button is clicked. This is also a very modular approach since commands can be changed any time, so special derived button classes can be re-used easily. See SetCommand() and constructors.
  • A less elegant and less modular approach is to derive a class from this one and re-implement DoClick(). Since the implementation will tend to be very specific, the button will not be very reusable. It is of course possible to add further attributes to make it more flexible, but this could also more easily be done with commands.
  • The last way is to simply ignore DoClick() and not attach any commands. In this case, the Guiliani framework will call the button's parent composite object's DoClick() in which it can be determined which control was clicked (by its ID, or worse, by pointer comparison). Since this will usually lead to bloated and hard-to-maintain code, it is strongly discouraged to use this approach.

    Example:

    // Create base button
    CGUIBaseButton *pBaseButton = new CGUIBaseButton(this,
    eC_FromInt(0),
    eC_FromInt(0),
    eC_FromInt(50),
    eC_FromInt(50),
    "Button1",
    NULL, // Replace the NULL with your command.
    OBJ_BT_BUTTON1);
    // Set the text of the button.
    pBaseButton->SetLabel("ok");

Constructor & Destructor Documentation

◆ CGUIBaseButton() [1/6]

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 
)

Constructs a button from relative coordinates and a text ID.

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

◆ CGUIBaseButton() [2/6]

CGUIBaseButton::CGUIBaseButton ( CGUICompositeObject *const  pParent,
const CGUIRect kRect,
const TextResource_t eTextID,
CGUICommandPtr  pCommandObject,
const ObjectHandle_t eID = NO_HANDLE 
)

Constructs a button from a rectangle and a text ID.

Parameters
pParentPointer to the designated parent object
kRectBoundary rectangle relative to parent.
eTextIDID of text string to be displayed on the button
pCommandObjectPointer to command object which will be executed in reaction to a click
eIDObject Identifier of this button (choose NO_HANDLE if none is required)

◆ CGUIBaseButton() [3/6]

CGUIBaseButton::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 
)

Constructs a button from relative coordinates and a string.

Parameters
pParentPointer to the designated parent object.
vXX-position relative to its parent object.
vYY-position relative to its parent object.
vWidthWidth of the button.
vHeightHeight of the button.
kTextText string that will be displayed on the button.
pCommandObjectPointer to command object which will be executed in reaction to a click.
eIDObject Identifier of this button

◆ CGUIBaseButton() [4/6]

CGUIBaseButton::CGUIBaseButton ( CGUICompositeObject *const  pParent,
const CGUIRect kRect,
const eC_String &  kText,
CGUICommandPtr  pCommandObject,
const ObjectHandle_t eID = NO_HANDLE 
)

Constructs a button from a rectangle and a string.

Parameters
pParentPointer to the designated parent object.
kRectBoundary rectangle relative to parent.
kTextText string that will be displayed on the button.
pCommandObjectPointer to command object which will be executed in reaction to a click.
eIDObject Identifier of this button

◆ CGUIBaseButton() [5/6]

CGUIBaseButton::CGUIBaseButton ( )

CGUIBaseButton standard constructor.

See also
CGUIObject().

◆ CGUIBaseButton() [6/6]

CGUIBaseButton::CGUIBaseButton ( const CGUIBaseButton kSource)

CGUIBaseButton copy-constructor. Command is set to NULL.

Parameters
kSourceSource object to be copied

◆ ~CGUIBaseButton()

CGUIBaseButton::~CGUIBaseButton ( void  )
virtual

Destructor, deletes command associated with DoClick()

Member Function Documentation

◆ DoButtonDown()

eC_Bool CGUIBaseButton::DoButtonDown ( const eC_Value &  vAbsX = eC_FromInt(-1),
const eC_Value &  vAbsY = eC_FromInt(-1) 
)
virtual

Called when the mouse button or finger is pressed down over an object.

Note
DoButtonDown() 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 the object in a newer and probably intermediate state that he currently does not see in this state. Thus, to calculate the relative position (where the object was pressed 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 always returns False.

Reimplemented from CGUIBehaviour.

◆ DoButtonUp()

eC_Bool CGUIBaseButton::DoButtonUp ( const eC_Value &  vAbsX = eC_FromInt(-1),
const eC_Value &  vAbsY = eC_FromInt(-1) 
)
virtual

Called when the mouse button or finger is released. The object under the mouse at the time of releasing will receive this event.

Note
DoButtonUp() 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 in this state. Thus, to calculate the relative position (where the button was released 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 mouse was released.
vAbsYY-position in screen coordinates where the mouse was released.
Returns
True The event has been handled.
False The event has not been handled. In this base implementation always returns False.

Reimplemented from CGUIBehaviour.

◆ DoClick()

eC_Bool CGUIBaseButton::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 CGUIBehaviour.

Reimplemented in CGUIMenuItem, CGUIBaseCheckBox, and CGUIBaseRadioButton.

◆ DoDraw()

eC_Bool CGUIBaseButton::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 CGUIObject.

Reimplemented in CGUIButton, CGUIMenuItem, CGUIRadioButton, CGUIIconButton, CGUIBaseCheckBox, CGUICheckBox, CGUIBlendButton, and CGUIBaseRadioButton.

◆ GetCommand()

CGUICommandPtr CGUIBaseButton::GetCommand ( ) const
inline

Returns the command object that is currently attached to this button.

Returns
The command object that is currently attached to this button, or NULL if this button does not have a command.

◆ GetLabel()

CGUIText * CGUIBaseButton::GetLabel ( ) const
Returns
A pointer to the text object that represents the caption of the button. To accomplish a "SetLabel" functionality to change the label, you can use these calls: GetLabel()->SetTextString(newString)

◆ operator=()

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

CGUIBaseButton operator= to copy the whole CGUIBaseButton. Command is set to NULL.

Parameters
kSourceSource object to be copied
Returns
Copied object

◆ ReadFromStream()

void CGUIBaseButton::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 CGUIObject.

Reimplemented in CGUIIconButton, CGUIButton, CGUIMenuItem, CGUIBaseCheckBox, CGUICheckBox, CGUIBlendButton, CGUIBaseRadioButton, and CGUIRadioButton.

◆ SetCommand()

void CGUIBaseButton::SetCommand ( CGUICommandPtr  pCommand)
inline

Attaches a command to this button. This command is executed whenever the button is clicked.

Parameters
pCommandThe command to attach to this button.

◆ SetHeight()

void CGUIBaseButton::SetHeight ( const eC_Value &  vNewHeight)
virtual

Calls base class implementation and adjusts the size of the CGUIText with the same height difference (i.e., the pixel distance of the text's bottom edge to the button's bottom edge stays the same).

Parameters
vNewHeightThe new height.

Reimplemented from CGUIObject.

◆ SetLabel() [1/2]

void CGUIBaseButton::SetLabel ( const eC_String &  kString)

Changes the label on the button to a new CGUIText with string. The attributes of the text such as its font, color, size etc. will be copied. Subsequent calls to GetLabel() will return a CGUIText object.

Parameters
kStringThe new caption of the button.
Remarks
If this button does not have a label at the time this method is called, a new CGUIText object with default attributes is created.

◆ SetLabel() [2/2]

void CGUIBaseButton::SetLabel ( const TextResource_t eTextID)

Changes the label on the button to a new CGUIText with ID. The attributes of the text such as its font, color, size etc. will be copied. Subsequent calls to GetLabel() will return a CGUIText object.

Parameters
eTextIDThe new caption of the button.
Remarks
If this button does not have a label at the time this method is called, a new CGUIText object with default attributes is created.

◆ SetText()

void CGUIBaseButton::SetText ( CGUIText pkText)

Change the internal text object. This method deletes the old text. Use this to exchange the default CGUIText control created by this control object with another (possibly user-implemented) text. If you only want to change the text content, use SetLabel().

Parameters
pkTextThe new text object.

◆ SetValue()

eC_Bool CGUIBaseButton::SetValue ( const CGUIValue rkValue)
virtual

Sets the text label of this button.

See also
CGUIText::SetTextString()
Parameters
rkValueThe CGUIValue containing the new value
Returns
Always True.

Reimplemented from CGUIObject.

Reimplemented in CGUIBaseCheckBox.

◆ SetWidth()

void CGUIBaseButton::SetWidth ( const eC_Value &  vNewWidth)
virtual

Calls base class implementation and adjusts the size of the CGUIText with the same width difference (i.e., the pixel distance of the text's right edge to the button's right edge stays the same).

Parameters
vNewWidthThe new width.

Reimplemented from CGUIObject.

◆ WriteToStream()

void CGUIBaseButton::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 CGUIObject.

Reimplemented in CGUIIconButton, CGUIButton, CGUIMenuItem, CGUIBaseCheckBox, CGUICheckBox, CGUIBlendButton, CGUIBaseRadioButton, and CGUIRadioButton.


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