Photon microGUI widgets library 0.6.0
PhWidgets::Button Struct Reference

A button for initiating an action. More...

#include <Button.h>

Inheritance diagram for PhWidgets::Button:
PhWidgets::Label PhWidgets::Basic PhWidgets::Widget PhWidgets::OnOffButton PhWidgets::ToggleButton

Classes

struct  ArgColor
 Contains resource IDs for arguments of type PgColor_t. More...
 
struct  ArgPImage
 Contains resource IDs for arguments of type PhImage_t. More...
 
struct  Arguments
 Contains resource IDs for all Button arguments. More...
 
struct  ArgUnsignedChar
 Contains resource IDs for arguments of type unsigned char. More...
 
struct  ThisArgs
 Contains resource IDs for Button arguments. More...
 

Public Member Functions

 Button (int abn)
 (constructor) More...
 
 Button (PtWidget_t *wdg)
 (constructor) More...
 
 Button (const Button &other)
 (copy constructor) More...
 
Buttonoperator= (const Button &other)
 Assigns value in Button widget. More...
 
- Public Member Functions inherited from PhWidgets::Label
 Label (int abn)
 (constructor) More...
 
 Label (PtWidget_t *wdg)
 (constructor) More...
 
 Label (const Label &other)
 (copy constructor) More...
 
Labeloperator= (const Label &other)
 Assigns value in Label widget. More...
 
- Public Member Functions inherited from PhWidgets::Basic
 Basic (int abn)
 (constructor) More...
 
 Basic (PtWidget_t *wdg)
 (constructor) More...
 
 Basic (const Basic &other)
 (copy constructor) More...
 
Basicoperator= (const Basic &other)
 Assigns value in Basic widget. More...
 
void OnActivated (PtCallbackInfo_t *info)
 Raises the Basic::Activate event.
 
void OnArmed (PtCallbackInfo_t *info)
 Raises the Basic::Arm event.
 
void OnDisarmed (PtCallbackInfo_t *info)
 Raises the Basic::Disarm event.
 
void OnGotFocused (PtCallbackInfo_t *info)
 Raises the Basic::GotFocus event.
 
void OnLostFocus (PtCallbackInfo_t *info)
 Raises the Basic::LostFocus event.
 
void OnMenu (PtCallbackInfo_t *info)
 Raises the Basic::Menu event.
 
void OnRepeat (PtCallbackInfo_t *info)
 Raises the Basic::Repeat event.
 
- Public Member Functions inherited from PhWidgets::Widget
 Widget (int abn)
 (constructor) More...
 
 Widget (PtWidget_t *wdg)
 (constructor) More...
 
 Widget (const Widget &other)
 (copy constructor) More...
 
void swap (Widget &other)
 Exchanges the contents of *this and other. More...
 
Widgetoperator= (const Widget &other)
 Assigns value in Widget. More...
 
Widgetoperator= (PtWidget_t *wdg)
 Assigns value in Widget. More...
 
bool operator== (const Widget &other) const
 Compares Widgets. More...
 
bool operator!= (const Widget &other) const
 Compares Widgets. More...
 
bool operator< (const Widget &other) const
 Compares Widgets. More...
 
bool operator<= (const Widget &other) const
 Compares Widgets. More...
 
bool operator> (const Widget &other) const
 Compares Widgets. More...
 
bool operator>= (const Widget &other) const
 Compares Widgets. More...
 
PtWidget_tget () const
 Returns the stored pointer.
 
 operator PtWidget_t * ()
 Converts Widget to Photon widget pointer.
 
 operator const PtWidget_t * () const
 Converts Widget to constant Photon widget pointer.
 
void BringToFront ()
 Brings the widget to the front of the z-order. More...
 
bool Contains (const Widget &widget)
 Retrieves a value indicating whether the specified widget is a child of the widget. More...
 
bool Focus ()
 Sets input focus to the widget. More...
 
Widget GetNextWidget (const Widget &widget, bool forward=true) const
 Retrieves the next widget forward or back in the tab order of child widgets. More...
 
void Hide ()
 Conceals the widget from the user. More...
 
void Invalidate (PhRect_t rc, bool invalidateChildren=false)
 Invalidates a specific region of the widget and causes a paint message to be sent to the widget. More...
 
void Invalidate (bool invalidateChildren=false)
 Invalidates a specific region of the widget and causes a paint message to be sent to the widget. More...
 
bool Realize ()
 Make the widget and its children visible and possibly interactive. More...
 
void Refresh ()
 Forces the widget to invalidate its client area and immediately redraw itself and any child widgets. More...
 
void SendToBack ()
 Sends the widget to the back of the z-order. More...
 
void SetBounds (short x, short y, unsigned short width, unsigned short height)
 Sets the bounds of the widget to the specified location and size. More...
 
void SetBounds (short x, short y)
 Sets the bounds of the widget to the specified location. More...
 
void Select ()
 Activates the widget. More...
 
void Show ()
 Displays the widget to the user. More...
 
bool Unrealize ()
 Unrealizes the widget and all its children. More...
 
void OnDestroyed (PtCallbackInfo_t *info)
 Raises the Widget::Destroyed event.
 
void OnBlocked (PtCallbackInfo_t *info)
 Raises the Widget::Blocked event.
 
void OnDragDrop (PtCallbackInfo_t *info)
 Raises the Widget::DragDrop event.
 
void OnOutbound (PtCallbackInfo_t *info)
 Raises the Widget::Outbound event.
 
void OnRealized (PtCallbackInfo_t *info)
 Raises the Widget::Realized event.
 
void OnUnrealized (PtCallbackInfo_t *info)
 Raises the Widget::Unrealized event.
 

Public Attributes

WidgetResourcesSingleton resource
 Resources of the Button. More...
 
Properties

Properties are used to simplify use of widget resources.

phproperty< Drawing::Color >::bind< Button, ArgColor::eArgColor, Arguments::arm_colorArmColor
 Gets or sets the color of the widget when the Button is armed (pressed in). More...
 
phproperty< bool >::bind< Button, ArgUnsignedChar::eArgUnsignedChar, Arguments::arm_fillArmFill
 Determines whether or not to use Button::ArmColor as the background color when the Button is armed (pressed in). More...
 
- Public Attributes inherited from PhWidgets::Label
WidgetResourcesSingleton resource
 Resources of the Label. More...
 
property< Drawing::Image >::bind< Label, &Label::getImage, &Label::setImage > Image
 Gets or sets the Image associated with this widget. More...
 
property< std::string >::bind< Label, &Label::getText, &Label::setText > Text
 Gets or sets the text associated with this widget. More...
 
property< Drawing::Font >::bind< Label, &Label::getFont, &Label::setFont > Font
 Gets or sets the font of the text displayed by the widget. More...
 
phproperty< Drawing::Color >::bind< Label, ArgColor::eArgColor, Arguments::balloon_colorBalloonColor
 Gets or sets the balloon color of the Label. More...
 
phproperty< Drawing::Color >::bind< Label, ArgColor::eArgColor, Arguments::balloon_fill_colorBalloonFillColor
 Gets or sets the balloon fill color of the Label. More...
 
property< PhWidgets::BalloonPosition::eBalloonPosition >::bind< Label, &Label::getBalloonPosition, &Label::setBalloonPosition > BalloonPosition
 Gets or sets where the balloon with the label's text pops up. More...
 
property< Drawing::ContentAlignment::eContentAlignment >::bind< Label, &Label::getTextAlign, &Label::setTextAlign > TextAlign
 Gets or sets the alignment of text in the label. More...
 
property< Drawing::ContentAlignment::eContentAlignment >::bind< Label, &Label::getTextClippedAlign, &Label::setTextClippedAlign > TextClippedAlign
 Gets or sets the alignment of text in the label if the text string is clipped. More...
 
property< PhWidgets::LabelType::eLabelType >::bind< Label, &Label::getType, &Label::setType > Type
 Gets or sets the type of information displayed by the Label. More...
 
phproperty< Drawing::Color >::bind< Label, ArgColor::eArgColor, Arguments::underline1UnderlineColor1
 Gets or sets the underline color for the first line of the Label. More...
 
phproperty< Drawing::Color >::bind< Label, ArgColor::eArgColor, Arguments::underline2UnderlineColor2
 Gets or sets the underline color for the second line of the Label. More...
 
property< PhWidgets::UnderlineType::eUnderlineType >::bind< Label, &Label::getUnderlineType, &Label::setUnderlineType > UnderlineType
 Gets or sets the type of underline. More...
 
- Public Attributes inherited from PhWidgets::Basic
WidgetResourcesSingleton resource
 Resources of the Basic. More...
 
phproperty< Drawing::Color >::bind< Basic, Arguments< PgColor_t >::ColorResource, Arguments<>::BevelColor > BevelColor
 Gets or sets the main color of the bevel. More...
 
phproperty< Drawing::Color >::bind< Basic, Arguments< PgColor_t >::ColorResource, Arguments<>::DrawingColor > Color
 Gets or sets the foreground or drawing color for the widget. More...
 
phproperty< Drawing::Color >::bind< Basic, Arguments< PgColor_t >::ColorResource, Arguments<>::DarkBevelColor > DarkBevelColor
 Gets or sets the dark outermost color used when applying a bevel to a widget. More...
 
phproperty< Drawing::Color >::bind< Basic, Arguments< PgColor_t >::ColorResource, Arguments<>::DarkFillColor > DarkFillColor
 Gets or sets the dark color with which a gradient (if applied) goes. More...
 
phproperty< Drawing::Color >::bind< Basic, Arguments< PgColor_t >::ColorResource, Arguments<>::FillColor > FillColor
 Gets or sets the fill color for the widget. More...
 
phproperty< Drawing::Color >::bind< Basic, Arguments< PgColor_t >::ColorResource, Arguments<>::InlineColor > InlineColor
 Gets or sets the color of the inline of the border. More...
 
phproperty< Drawing::Color >::bind< Basic, Arguments< PgColor_t >::ColorResource, Arguments<>::LightBevelColor > LightBevelColor
 Gets or sets the light outermost color used when applying a bevel to a widget. More...
 
phproperty< Drawing::Color >::bind< Basic, Arguments< PgColor_t >::ColorResource, Arguments<>::LightFillColor > LightFillColor
 Gets or sets the light color with which a gradient (if applied) goes. More...
 
phproperty< unsigned short >::bind< Basic, Arguments< unsigned short >::Scalar, Arguments<>::MarginHeight > MarginHeight
 Gets or sets the amount of vertical space between the widget's canvas and the widget's border. More...
 
phproperty< unsigned short >::bind< Basic, Arguments< unsigned short >::Scalar, Arguments<>::MarginWidth > MarginWidth
 Gets or sets the amount of horizontal space between the widget's canvas and the widget's border. More...
 
phproperty< Drawing::Color >::bind< Basic, Arguments< PgColor_t >::ColorResource, Arguments<>::OutlineColor > OutlineColor
 Gets or sets the color of the outline of the border. More...
 
phbitmask< unsigned long, Flags::Basic::type >::bind< Basic, Arguments< unsigned long >::Scalar, Arguments<>::BasicFlags > BasicFlags
 Gets or sets basic flags inherited by all widgets. See Flags::Basic::type.
 
phwidgets_event< Basic, Basic::Callbacks<>::Activate > Activate
 Occurs when you release the left pointer button while pointing at an armed widget.
 
phwidgets_event< Basic, Basic::Callbacks<>::Arm > Arm
 Occurs when you press the left pointer button while pointing at the widget.
 
phwidgets_event< Basic, Basic::Callbacks<>::Disarm > Disarm
 Occurs when you release the left pointer button when not pointing at an armed widget.
 
phwidgets_event< Basic, Basic::Callbacks<>::GotFocus > GotFocus
 Occurs when a widget gets focus or its focus status changes.
 
phwidgets_event< Basic, Basic::Callbacks<>::LostFocus > LostFocus
 Occurs when a widget loses focus.
 
phwidgets_event< Basic, Basic::Callbacks<>::Menu > Menu
 Occurs when you press the right button while the pointer is on top of the widget.
 
phwidgets_event< Basic, Basic::Callbacks<>::Repeat > Repeat
 Documentation in progress...
 
- Public Attributes inherited from PhWidgets::Widget
WidgetResourcesSingleton resource
 Resources of the Widget. More...
 
property< bool >::bind< Widget, &Widget::getAllowDrop, &Widget::setAllowDrop > AllowDrop
 Gets or sets a value indicating whether the widget can accept data that the user drags onto it. More...
 
phbitmask< unsigned, Flags::Anchor::type, Flags::Anchor::All >::bind< Widget, Arguments< unsigned >::Flag, Arguments< unsigned >::AnchorFlags > Anchor
 Gets or sets flags specifying how the widget is anchored to its parent. More...
 
phproperty< unsigned short >::bind< Widget, Arguments< unsigned short >::Scalar, Arguments< unsigned short >::BevelWidth > BevelWidth
 Gets or sets the bevel width of the widget. More...
 
property< short, property<>::ro >::bind< Widget, &Widget::getBottom > Bottom
 Gets the distance, in pixels, between the bottom edge of the widget and the top edge of its container's client area. More...
 
property< PhArea_t >::bind< Widget, &Widget::getBounds, &Widget::setBounds > Bounds
 Gets or sets the size and location of the widget including its nonclient elements, in pixels, relative to the parent widget. More...
 
property< bool, property<>::ro >::bind< Widget, &Widget::getCanFocus > CanFocus
 Gets a value indicating whether the widget can receive focus. More...
 
property< bool, property<>::ro >::bind< Widget, &Widget::getCanSelect > CanSelect
 Gets a value indicating whether the widget can be selected. More...
 
property< bool, property<>::ro >::bind< Widget, &Widget::getContainsFocus > ContainsFocus
 Gets a value indicating whether the widget, or one of its child widgets, currently has the input focus. More...
 
property< PhWidgets::Cursor >::bind< Widget, &Widget::getCursor, &Widget::setCursor > Cursor
 Gets or sets the cursor that is displayed when the mouse pointer is over the widget. More...
 
phproperty< Drawing::Color >::bind< Widget, Arguments< PgColor_t >::Color, Arguments< PgColor_t >::CursorColor > CursorColor
 Gets or sets the color of the cursor pointer when it's inside the widget. More...
 
property< bool >::bind< Widget, &Widget::getEnabled, &Widget::setEnabled > Enabled
 Gets or sets a value indicating whether the widget can respond to user interaction. More...
 
property< bool, property<>::ro >::bind< Widget, &Widget::getFocused > Focused
 Gets a value indicating whether the widget has input focus. More...
 
property< bool, property<>::ro >::bind< Widget, &Widget::hasChildren > HasChildren
 Gets a value indicating whether the widget contains one or more child widgets. More...
 
property< bool, property<>::ro >::bind< Widget, &Widget::hasParent > HasParent
 Gets a value indicating whether the widget has parent. More...
 
phproperty< unsigned short >::bind< Widget, Arguments< unsigned short >::Scalar, Arguments< unsigned short >::Height > Height
 Gets or sets the height of the widget. More...
 
property< std::string >::bind< Widget, &Widget::getHelpTopic, &Widget::setHelpTopic > HelpTopic
 Gets or sets the help topic of the widget. More...
 
property< bool, property<>::ro >::bind< Widget, &Widget::getIsRealized > IsRealized
 Gets or sets a value indicating whether the widget is realized. More...
 
property< short >::bind< Widget, &Widget::getLeft, &Widget::setLeft > Left
 Gets or sets the distance, in pixels, between the left edge of the widget and the left edge of its container's client area. More...
 
property< PhPoint_t >::bind< Widget, &Widget::getLocation, &Widget::setLocation > Location
 Gets or sets the coordinates of the upper-left corner of the widget relative to the upper-left corner of its container. More...
 
property< PtWidget_t * >::bind< Widget, &Widget::getParent, &Widget::setParent > Parent
 Gets or sets the parent container of the widget. More...
 
phproperty< PhPoint_t >::bind< Widget, Arguments< PhPoint_t >::Struct, Arguments< PhPoint_t >::Position > Position
 Gets or sets the absolute coordinates of the upper-left corner of the widget. More...
 
property< short, property<>::ro >::bind< Widget, &Widget::getRight > Right
 Gets the distance, in pixels, between the right edge of the widget and the left edge of its container's client area. More...
 
phproperty< PhDim_t >::bind< Widget, Arguments< PhDim_t >::Struct, Arguments< PhDim_t >::Dimension > Size
 Gets or sets the size of the widget. More...
 
tag_property< Widget, &Widget::getTag, &Widget::setTag > Tag
 Gets or sets the resource that contains data about the widget. More...
 
property< short >::bind< Widget, &Widget::getTop, &Widget::setTop > Top
 Gets or sets the distance, in pixels, between the top edge of the widget and the top edge of its container's client area. More...
 
property< bool >::bind< Widget, &Widget::getVisible, &Widget::setVisible > Visible
 Gets or sets a value indicating whether the widget and all its child widgets are displayed. More...
 
property< std::set< PhWidgets::Widget >, property<>::ro >::bind< Widget, &Widget::getWidgets > Widgets
 Gets the list of widgets contained within the widget. More...
 
phproperty< unsigned short >::bind< Widget, Arguments< unsigned short >::Scalar, Arguments< unsigned short >::Width > Width
 Gets or sets the width of the widget. More...
 
phbitmask< unsigned long, Flags::Extended::type >::bind< Widget, Arguments< unsigned long >::Flag, Arguments< unsigned long >::ExtendedFlags > ExtendedFlags
 Gets or sets extended flags inherited by all widgets. See Flags::Extended::type.
 
phbitmask< long, Flags::type >::bind< Widget, Arguments< long >::Flag, Arguments< long >::Flags > WidgetFlags
 Gets or sets flags inherited by all widgets. More...
 
phbitmask< long, Flags::Resize::type >::bind< Widget, Arguments< long >::Flag, Arguments< long >::Resiztype > Resiztype
 Gets or sets flags to control a widget's resize policy. See Flags::Resize::type.

 
phwidgets_event< Widget, Widget::Callbacks<>::Destroyed > Destroyed
 Occurs when the widget is destroyed.
 
phwidgets_event< Widget, Widget::Callbacks<>::Blocked > Blocked
 Occurs when the widget is blocked.
 
phwidgets_event< Widget, Widget::Callbacks<>::DragAndDrop > DragDrop
 Occurs when a drag-and-drop operation is completed.
 
phwidgets_event< Widget, Widget::Callbacks<>::IsDestroyed > IsDestroyed
 Occurs when the widget's resources are being released.
 
phwidgets_event< Widget, Widget::Callbacks<>::Outbound > Outbound
 Occurs when you press the pointer button on the widget and then move out of the "hot spot" with the button still depressed.
 
phwidgets_event< Widget, Widget::Callbacks<>::Realized > Realized
 Occurs when the widget is realized.
 
phwidgets_event< Widget, Widget::Callbacks<>::Unrealized > Unrealized
 Occurs when the widget is unrealized.
 

Additional Inherited Members

- Public Types inherited from PhWidgets::Widget
typedef phevent::ph_callback_t callback_t
 An event handler that is raised when an event occur.
 
- Static Public Member Functions inherited from PhWidgets::Widget
static void Update ()
 Causes the Photon microGUI to redraw the all invalidated regions. More...
 

Detailed Description

A button for initiating an action.

The Button class draws a button. Buttons let you initiate an action within your application; clicking a button invokes an application callback.

Constructor & Destructor Documentation

◆ Button() [1/3]

PhWidgets::Button::Button ( int  abn)
explicit

(constructor)

Constructs a Button widget by ID.

Parameters
[in]abnID given by PhAB to widget (like 'ABN_WIDGET_NAME').

◆ Button() [2/3]

PhWidgets::Button::Button ( PtWidget_t wdg)
explicit

(constructor)

Constructs a Button widget by pointer to widget.

Parameters
[in]wdgpointer to Photon widget.

◆ Button() [3/3]

PhWidgets::Button::Button ( const Button other)

(copy constructor)

Constructs a Button widget by copy.

Parameters
[in]otheranother Button widget to be used as source to initialize the elements of the container with.

Member Function Documentation

◆ operator=()

Button & PhWidgets::Button::operator= ( const Button other)

Assigns value in Button widget.

Replaces the contents of the Button widget.

Parameters
[in]otheranother Button widget to use as data source.

Member Data Documentation

◆ ArmColor

phproperty<Drawing::Color>::bind<Button, ArgColor::eArgColor, Arguments::arm_color> PhWidgets::Button::ArmColor

Gets or sets the color of the widget when the Button is armed (pressed in).

Property Value

Drawing::Color

A Drawing::Color that represents the arm color of the widget.

Remarks
Color will change only if Button::ArmFill property is set to true.
See also

◆ ArmFill

phproperty<bool>::bind<Button, ArgUnsignedChar::eArgUnsignedChar, Arguments::arm_fill> PhWidgets::Button::ArmFill

Determines whether or not to use Button::ArmColor as the background color when the Button is armed (pressed in).

Property Value

bool

true if the Button::ArmColor is used; false if the Button::ArmColor is not used.

See also

◆ resource

WidgetResourcesSingleton PhWidgets::Button::resource

Resources of the Button.

See also

The documentation for this struct was generated from the following file: