xtd - Reference Guide  0.1.0
Modern c++17/20 framework to create console, GUI and unit test applications on Windows, macOS, Linux, iOS and android.
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
xtd::forms::switch_button Class Reference

Represents a standard Windows switch button. More...

#include <switch_button.h>

Inheritance diagram for xtd::forms::switch_button:
Inheritance graph
[legend]
Collaboration diagram for xtd::forms::switch_button:
Collaboration graph
[legend]

Public Member Functions

 switch_button ()=default
 Initialize new instance of switch_button class. More...
 
virtual bool auto_check () const
 Gets a value indicating whether the checked and the switch_button's appearance are automatically changed when the switch_button is clicked. More...
 
virtual switch_buttonauto_check (bool auto_check)
 Sets a value indicating whether the checked and the switch_button's appearance are automatically changed when the switch_button is clicked. More...
 
virtual bool checked () const
 Gets a value indicating whether the switch_button is in the checked state. More...
 
virtual switch_buttonchecked (bool checked)
 Sets a value indicating whether the switch_button is in the checked state. More...
 
virtual bool rounded () const
 Gets a value indicating whether the switch_button is rouded appearance. More...
 
virtual switch_buttonrounded (bool value)
 Sets a value indicating whether the switch_button is rouded appearance. More...
 
- Public Member Functions inherited from xtd::forms::button_base
bool auto_ellipsis () const
 Gets a value indicating whether the ellipsis character (...) appears at the right edge of the control, denoting that the control text extends beyond the specified length of the control. More...
 
virtual button_baseauto_ellipsis (bool auto_ellipsis)
 Sets a value indicating whether the ellipsis character (...) appears at the right edge of the control, denoting that the control text extends beyond the specified length of the control. More...
 
bool auto_size () const override
 Gets a value that indicates whether the control resizes based on its contents. More...
 
controlauto_size (bool auto_size) override
 Sets a value that indicates whether the control resizes based on its contents. More...
 
virtual xtd::forms::flat_style flat_style () const
 Gets the flat style appearance of the button control. More...
 
virtual xtd::forms::button_baseflat_style (xtd::forms::flat_style flat_style)
 Sets the flat style appearance of the button control. More...
 
virtual const drawing::imageimage () const
 Gets the image that is displayed on a button control. More...
 
virtual button_baseimage (const drawing::image &value)
 Sets the image that is displayed on a button control. More...
 
virtual content_alignment image_align () const
 Gets the alignment of the image on the button control. More...
 
virtual button_baseimage_align (content_alignment value)
 Gets the alignment of the image on the button control. More...
 
virtual int32_t image_index () const
 Gets the image list index value of the image displayed on the button control. More...
 
virtual button_baseimage_index (int32_t value)
 Sets the image list index value of the image displayed on the button control. More...
 
virtual const forms::image_listimage_list () const
 Gets the image_list that contains the image displayed on a button control. More...
 
virtual forms::image_listimage_list ()
 Gets the image_list that contains the image displayed on a button control. More...
 
virtual button_baseimage_list (const forms::image_list &value)
 Sets the image_list that contains the image displayed on a button control. More...
 
virtual content_alignment text_align () const
 Gets the alignment of the text on the button control. More...
 
virtual button_basetext_align (content_alignment value)
 Gets the alignment of the text on the button control. More...
 
- Public Member Functions inherited from xtd::forms::control
 control ()
 Initializes a new instance of the control class with default settings. More...
 
 control (const std::string &text)
 Initializes a new instance of the control class with specific text. More...
 
 control (const control &parent, const std::string &text)
 nitializes a new instance of the control class as a child control, with specific text. More...
 
 control (const std::string &text, int32_t left, int32_t top, int32_t width, int32_t height)
 Initializes a new instance of the control class with specific text, size, and location. More...
 
 control (const control &parent, const std::string &text, int32_t left, int32_t top, int32_t width, int32_t height)
 Initializes a new instance of the control class as a child control, with specific text, size, and location. More...
 
virtual anchor_styles anchor () const
 Gets the edges of the container to which a control is bound and determines how a control is resized with its parent. More...
 
virtual controlanchor (anchor_styles anchor)
 Gets the edges of the container to which a control is bound and determines how a control is resized with its parent. More...
 
virtual drawing::point auto_scroll_point () const
 Gets where this control is scrolled to in scroll_control_into_view(control). More...
 
virtual drawing::color back_color () const
 Gets the background color for the control. More...
 
virtual controlback_color (const drawing::color &color)
 Sets the background color for the control. More...
 
virtual const xtd::drawing::imagebackground_image () const
 Gets the background image displayed in the control. More...
 
virtual controlbackground_image (const xtd::drawing::image &background_image)
 Sets the background image displayed in the control. More...
 
virtual xtd::forms::image_layout background_image_layout () const
 Gets the background image layout as defined in the xtd::forms::image_layout enumeration. More...
 
virtual controlbackground_image_layout (xtd::forms::image_layout background_image_layout)
 Sets the background image layout as defined in the xtd::forms::image_layout enumeration. More...
 
async_result_invoke begin_invoke (delegate< void()> value)
 Executes the specified delegate asynchronously on the thread that the control's underlying handle was created on. More...
 
async_result_invoke begin_invoke (delegate< void(std::vector< std::any >)> value, const std::vector< std::any > &args)
 Executes the specified delegate asynchronously with the specified arguments, on the thread that the control's underlying handle was created on. More...
 
virtual int32_t bottom () const
 Gets the distance, in pixels, between the bottom edge of the control and the top edge of its container's client area. More...
 
virtual drawing::rectangle bounds () const
 Gets the size and location of the control including its nonclient elements, in pixels, relative to the parent control. More...
 
virtual controlbounds (const drawing::rectangle &bounds)
 Sets the size and location of the control including its nonclient elements, in pixels, relative to the parent control. More...
 
virtual void bring_to_front ()
 Brings the control to the front of the z-order. More...
 
virtual bool can_focus () const
 Gets a value indicating whether the control can receive focus. More...
 
bool can_raise_events () const override
 Determines if events can be raised on the control. More...
 
virtual bool can_select () const
 Gets a value indicating whether the control can be selected. More...
 
virtual const drawing::rectangleclient_rectangle () const
 Gets the rectangle that represents the client area of the control. More...
 
virtual const drawing::sizeclient_size () const
 Gets the height and width of the client area of the control. More...
 
virtual controlclient_size (const drawing::size &client_size)
 Sets the height and width of the client area of the control. More...
 
virtual std::string compagny_name () const
 Gets the name of the company or creator of the application containing the control. More...
 
virtual control_collectioncontrols ()
 Gets the collection of controls contained within the control. More...
 
virtual const control_collectioncontrols () const
 Gets the collection of controls contained within the control. More...
 
void create_control ()
 Forces the creation of the visible control, including the creation of the handle and any visible child controls. More...
 
drawing::graphics create_graphics () const
 Creates the xtd::drawing::graphics for the control. More...
 
virtual void create_handle ()
 Creates a handle for the control. More...
 
virtual bool created ()
 Gets a value indicating whether the control has been created. More...
 
virtual forms::cursor cursor () const
 Gets the cursor that is displayed when the mouse pointer is over the control. More...
 
virtual controlcursor (const forms::cursor &cursor)
 Sets the cursor that is displayed when the mouse pointer is over the control. More...
 
virtual drawing::color default_back_color () const
 Gets the default background color of the control. More...
 
virtual forms::cursor default_cursor () const
 Gets the default cursor for the control. More...
 
virtual drawing::font default_font () const
 Gets the default font of the control. More...
 
virtual drawing::color default_fore_color () const
 Gets the default foreground color of the control. More...
 
virtual void destroy_control ()
 Forces the destruction of the visible control, including the destruction of the handle and any visible child controls. More...
 
virtual void destroy_handle ()
 Destroys the handle associated with the control. More...
 
virtual drawing::rectangle display_rectangle () const
 Gets the rectangle that represents the display area of the control. More...
 
virtual dock_style dock () const
 Gets or sets which control borders are docked to its parent control and determines how a control is resized with its parent. More...
 
virtual controldock (dock_style dock)
 Sets or sets which control borders are docked to its parent control and determines how a control is resized with its parent. More...
 
virtual bool double_buffered () const
 Gets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker. More...
 
virtual controldouble_buffered (bool double_buffered)
 Sets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker. More...
 
virtual bool enabled () const
 Gets a value indicating whether the control can respond to user interaction. More...
 
virtual controlenabled (bool enabled)
 Sets a value indicating whether the control can respond to user interaction. More...
 
void end_invoke (async_result_invoke async)
 Retrieves the return value of the asynchronous operation represented by the async_result_invoke passed. More...
 
bool focus ()
 Sets input focus to the control. More...
 
virtual bool focused () const
 Gets a value indicating whether the control has input focus. More...
 
virtual drawing::font font () const
 Gets the font of the text displayed by the control. More...
 
virtual controlfont (const drawing::font &font)
 Sets the font of the text displayed by the control. More...
 
virtual drawing::color fore_color () const
 Gets the foreground color of the control. More...
 
virtual controlfore_color (const drawing::color &color)
 Sets the foreground color of the control. More...
 
size_t get_child_index (intptr_t child) const
 Retrieves the index of a control within the control collection. More...
 
size_t get_child_index (intptr_t child, bool &throw_exception) const
 Retrieves the index of the specified child control within the control collection, and optionally raises an exception if the specified control is not within the control collection. More...
 
intptr_t handle () const override
 Gets the window handle that the control is bound to. More...
 
virtual int32_t height () const
 Gets the height of the control. More...
 
virtual controlheight (int32_t height)
 Sets the height of the control. More...
 
virtual void hide ()
 Conceals the control from the user. More...
 
virtual void invalidate () const
 Invalidates the entire surface of the control and causes the control to be redrawn. More...
 
virtual void invalidate (bool invalidate_children) const
 Invalidates a specific region of the control and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control. More...
 
virtual void invalidate (const drawing::rectangle &rect) const
 Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control. More...
 
virtual void invalidate (const drawing::rectangle &rect, bool invalidate_children) const
 Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control. More...
 
void invoke (delegate< void()> value)
 Executes the specified delegate on the thread that owns the control's underlying window handle. More...
 
void invoke (delegate< void(std::vector< std::any >)> value, const std::vector< std::any > &args)
 Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments. More...
 
bool is_handle_created () const
 Gets a value indicating whether the control has a handle associated with it. More...
 
virtual int32_t left () const
 Gets the distance, in pixels, between the left edge of the control and the left edge of its container's client area. More...
 
virtual controlleft (int32_t left)
 Sets the distance, in pixels, between the left edge of the control and the left edge of its container's client area. More...
 
virtual drawing::point location () const
 Gets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container. More...
 
virtual controllocation (const drawing::point &location)
 Sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container. More...
 
virtual forms::padding margin () const
 Gets the space between controls. More...
 
virtual controlmargin (const forms::padding &margin)
 Sets the space between controls. More...
 
virtual const std::string & name () const
 Gets the name of the control. More...
 
virtual controlname (const std::string &name)
 Sets the name of the control. More...
 
virtual forms::padding padding () const
 Gets padding within the control. More...
 
virtual controlpadding (const forms::padding &padding)
 Sets padding within the control. More...
 
virtual std::optional< control_refparent () const
 Gets the parent container of the control. More...
 
virtual controlparent (const control &parent)
 Sets the parent container of the control. More...
 
virtual controlparent (std::nullptr_t)
 Resets the parent container of the control. More...
 
void perform_layout ()
 Forces the control to apply layout logic to all its child controls. More...
 
xtd::drawing::point point_to_client (const xtd::drawing::point &p)
 Computes the location of the specified screen point into client coordinates. More...
 
xtd::drawing::point point_to_screen (const xtd::drawing::point &p)
 Computes the location of the specified client point into screen coordinates. More...
 
virtual bool pre_process_message (xtd::forms::message &message)
 Preprocesses keyboard or input messages within the message loop before they are dispatched. More...
 
virtual std::string product_name () const
 Gets the product name of the assembly containing the control. More...
 
bool recreating_handle () const
 Gets a value indicating whether the control is currently re-creating its handle. More...
 
virtual void refresh () const
 Forces the control to invalidate its client area and immediately redraw itself and any child controls. More...
 
void resume_layout ()
 Resumes usual layout logic. More...
 
void resume_layout (bool perform_layout)
 Resumes usual layout logic, optionally forcing an immediate layout of pending layout requests. More...
 
virtual int32_t right () const
 Gets the distance, in pixels, between the right edge of the control and the left edge of its container's client area. More...
 
intptr_t send_message (intptr_t hwnd, int32_t msg, intptr_t wparam, intptr_t lparam) const
 Send a message with specified hwnd, message, wparam and lparam. More...
 
void set_auto_size_mode (auto_size_mode auto_size_mode)
 Sets a value indicating how a control will behave when its auto_size property is enabled. More...
 
void set_bounds (int32_t x, int32_t y, int32_t width, int32_t height)
 Sets the bounds of the control to the specified location and size. More...
 
void set_bounds (int32_t x, int32_t y, int32_t width, int32_t height, bounds_specified specified)
 Sets the specified bounds of the control to the specified location and size. More...
 
virtual void show ()
 Displays the control to the user. More...
 
virtual const drawing::sizesize () const
 Gets the height and width of the control. More...
 
virtual controlsize (const drawing::size &size)
 Sets the height and width of the control. More...
 
void suspend_layout ()
 Temporarily suspends the layout logic for the control. More...
 
virtual std::any tag () const
 Gets the object that contains data about the control. More...
 
virtual controltag (std::any tag)
 Sets the object that contains data about the control. More...
 
virtual const std::string & text () const
 Gets the text associated with this control. More...
 
virtual controltext (const std::string &text)
 Sets the text associated with this control. More...
 
virtual std::string to_string () const
 Returns a string containing the name of the control, if any. More...
 
virtual int32_t top () const
 Gets the distance, in pixels, between the top edge of the control and the top edge of its container's client area. More...
 
virtual controltop (int32_t top)
 Sets the distance, in pixels, between the top edge of the control and the top edge of its container's client area. More...
 
virtual std::optional< control_reftop_level_control () const
 Gets the parent control that is not parented by another Windows Forms control. Typically, this is the outermost Form that the control is contained in. More...
 
virtual void update () const
 Causes the control to redraw the invalidated regions within its client area. More...
 
virtual bool visible () const
 Gets a value indicating whether the control and all its child controls are displayed. More...
 
virtual controlvisible (bool visible)
 Sets a value indicating whether the control and all its child controls are displayed. More...
 
virtual int32_t width () const
 Gets the width of the control. More...
 
virtual controlwidth (int32_t width)
 Sets the width of the control. More...
 

Public Attributes

event< switch_button, event_handler< control & > > checked_changed
 Occurs when the value of the checked property changes. More...
 
- Public Attributes inherited from xtd::forms::button_base
event< button_base, event_handler< control & > > image_changed
 Occurs when the value of the image property changes. More...
 
- Public Attributes inherited from xtd::forms::control
event< control, event_handler< control & > > auto_size_changed
 Occurs when the value of the auto_size property changes. More...
 
event< control, event_handler< control & > > back_color_changed
 Occurs when the value of the back_color property changes. More...
 
event< control, event_handler< control & > > background_image_changed
 Occurs when the value of the background_image property changes. More...
 
event< control, event_handler< control & > > background_image_layout_changed
 Occurs when the value of the background_image_layouot property changes. More...
 
event< control, event_handler< control & > > click
 Occurs when the control is clicked. More...
 
event< control, event_handler< control & > > client_size_changed
 Occurs when the value of the client_size property changes. More...
 
event< control, control_event_handler< control & > > control_added
 Occurs when a new control is added to the control::control_collection. More...
 
event< control, control_event_handler< control & > > control_removed
 Occurs when a new control is removed to the control::control_collection. More...
 
event< control, event_handler< control & > > cursor_changed
 Occurs when the value of the cursor property changes. More...
 
event< control, event_handler< control & > > dock_changed
 Occurs when the value of the dock property changes. More...
 
event< control, event_handler< control & > > double_click
 Occurs when the control is double-clicked. More...
 
event< control, event_handler< control & > > enabled_changed
 Occurs when the value of the enabled property changes. More...
 
event< control, event_handler< control & > > font_changed
 Occurs when the value of the font property changes. More...
 
event< control, event_handler< control & > > fore_color_changed
 Occurs when the value of the fore_color property changes. More...
 
event< control, event_handler< control & > > got_focus
 Occurs when the control receives focus. More...
 
event< control, event_handler< control & > > handle_created
 Occurs when a handle is created for the control. More...
 
event< control, event_handler< control & > > handle_destroyed
 Occurs when the control's handle is in the process of being destroyed. More...
 
event< control, key_event_handler< control & > > key_down
 Occurs when a key is pressed while the control has focus. More...
 
event< control, key_press_event_handler< control & > > key_press
 Occurs when a character. space or backspace key is pressed while the control has focus. More...
 
event< control, key_event_handler< control & > > key_up
 Occurs when a key is released while the control has focus. More...
 
event< control, event_handler< control & > > layout
 Occurs when a control should reposition its child controls. More...
 
event< control, event_handler< control & > > location_changed
 Occurs when the value of the location property changes. More...
 
event< control, event_handler< control & > > lost_focus
 Occurs when the control loses focus. More...
 
event< control, mouse_event_handler< control & > > mouse_click
 Occurs when the control is clicked by the mouse. More...
 
event< control, mouse_event_handler< control & > > mouse_double_click
 Occurs when the control is double clicked by the mouse. More...
 
event< control, mouse_event_handler< control & > > mouse_down
 Occurs when the mouse pointer is over the control and a mouse button is pressed. More...
 
event< control, event_handler< control & > > mouse_enter
 Occurs when the mouse pointer enters the control. More...
 
event< control, mouse_event_handler< control & > > mouse_horizontal_wheel
 Occurs when the mouse hoirontal wheel moves while the control has focus. More...
 
event< control, event_handler< control & > > mouse_leave
 Occurs when the mouse pointer leaves the control. More...
 
event< control, mouse_event_handler< control & > > mouse_move
 Occurs when the mouse pointer is moved over the control. More...
 
event< control, mouse_event_handler< control & > > mouse_up
 Occurs when the mouse pointer is over the control and a mouse button is released. More...
 
event< control, mouse_event_handler< control & > > mouse_wheel
 Occurs when the mouse wheel moves while the control has focus. More...
 
event< control, paint_event_handler< control & > > paint
 Occurs when the control is redrawn. More...
 
event< control, event_handler< control & > > parent_changed
 Occurs when the value of the parent property changes. More...
 
event< control, event_handler< control & > > resize
 Occurs when the control is resized. More...
 
event< control, event_handler< control & > > size_changed
 Occurs when the value of the size property changes. More...
 
event< control, event_handler< control & > > text_changed
 Occurs when the value of the text property changes. More...
 
event< control, event_handler< control & > > visible_changed
 Occurs when the value of the visible property changes. More...
 

Protected Member Functions

virtual void on_checked_changed (const event_args &e)
 Raises the checked_changed event. More...
 
void on_handle_created (const event_args &e) override
 Raises the handle_created event. More...
 
void on_mouse_down (const mouse_event_args &e) override
 Raises the mouse_down event. More...
 
void on_paint (paint_event_args &e) override
 Raises the paint event. More...
 
void on_resize (const event_args &e) override
 Raises the resize event. More...
 
- Protected Member Functions inherited from xtd::forms::button_base
 button_base ()
 Initializes a new instance of the ButtonBase class. More...
 
forms::create_params create_params () const override
 Gets the required creation parameters when the control handle is created. More...
 
drawing::size default_size () const override
 Gets the default size of the control. More...
 
drawing::size measure_control () const override
 Measure this control. More...
 
void on_back_color_changed (const event_args &e) override
 Raises the back_color_changed event. More...
 
void on_enabled_changed (const event_args &e) override
 Raises the enabled_changed event. More...
 
void on_font_changed (const xtd::event_args &e) override
 Raises the font_changed event. More...
 
void on_fore_color_changed (const event_args &e) override
 Raises the fore_color_changed event. More...
 
virtual void on_image_changed (const xtd::event_args &e)
 Raises the image_changed event. More...
 
void on_mouse_enter (const event_args &e) override
 Raises the mouse_enter event. More...
 
void on_mouse_leave (const event_args &e) override
 Raises the mouse_leave event. More...
 
void on_mouse_up (const mouse_event_args &e) override
 Raises the mouse_up event. More...
 
void on_parent_back_color_changed (const event_args &e) override
 Raises the parent_back_color_changed event. More...
 
void on_parent_fore_color_changed (const event_args &e) override
 Raises the parent_fore_color_changed event. More...
 
void on_text_changed (const xtd::event_args &e) override
 Raises the text_changed event. More...
 
- Protected Member Functions inherited from xtd::forms::control
virtual void def_wnd_proc (message &message)
 Sends the specified message to the default window procedure. More...
 
bool get_style (control_styles flag) const
 Retrieves the value of the specified control style bit for the control. More...
 
drawing::size measure_text () const
 Measure this control text. More...
 
virtual void on_auto_size_changed (const event_args &e)
 Raises the auto_size_changed event. More...
 
virtual void on_background_image_changed (const event_args &e)
 Raises the background_image_changed event. More...
 
virtual void on_background_image_layout_changed (const event_args &e)
 Raises the background_image_layout_changed event. More...
 
virtual void on_click (const event_args &e)
 Raises the click event. More...
 
virtual void on_client_size_changed (const event_args &e)
 Raises the client_size_changed event. More...
 
virtual void on_control_added (const control_event_args &e)
 Raises the control_added event. More...
 
virtual void on_control_removed (const control_event_args &e)
 Raises the control_removed event. More...
 
virtual void on_create_control ()
 Raises the create_control event. More...
 
virtual void on_cursor_changed (const event_args &e)
 Raises the cursor_changed event. More...
 
virtual void on_dock_changed (const event_args &e)
 Raises the dock_changed event. More...
 
virtual void on_double_click (const event_args &e)
 Raises the double_click event. More...
 
virtual void on_got_focus (const event_args &e)
 Raises the handle_created event. More...
 
virtual void on_handle_destroyed (const event_args &e)
 Raises the handle_destroyed event. More...
 
virtual void on_key_down (key_event_args &e)
 Raises the key_down event. More...
 
virtual void on_key_press (key_press_event_args &e)
 Raises the key_press event. More...
 
virtual void on_key_up (key_event_args &e)
 Raises the key_up event. More...
 
virtual void on_layout (const event_args &e)
 Raises the layout event. More...
 
virtual void on_location_changed (const event_args &e)
 Raises the location_changed event. More...
 
virtual void on_lost_focus (const event_args &e)
 Raises the lost_focus event. More...
 
virtual void on_mouse_click (const mouse_event_args &e)
 Raises the mouse_click event. More...
 
virtual void on_mouse_double_click (const mouse_event_args &e)
 Raises the mouse_double_click event. More...
 
virtual void on_mouse_horizontal_wheel (const mouse_event_args &e)
 Raises the mouse_horizontal_wheel event. More...
 
virtual void on_mouse_move (const mouse_event_args &e)
 Raises the mouse_move event. More...
 
virtual void on_mouse_wheel (const mouse_event_args &e)
 Raises the mouse_wheel event. More...
 
virtual void on_parent_changed (const event_args &e)
 Raises the parent_changed event. More...
 
virtual void on_parent_cursor_changed (const event_args &e)
 Raises the parent_cursor_changed event. More...
 
virtual void on_parent_font_changed (const event_args &e)
 Raises the parent_font_changed event. More...
 
virtual void on_size_changed (const event_args &e)
 Raises the size_changed event. More...
 
virtual void on_visible_changed (const event_args &e)
 Raises the visible_changed event. More...
 
virtual void recreate_handle ()
 Forces the re-creation of the handle for the control. More...
 
virtual void set_bounds_core (int32_t x, int32_t y, int32_t width, int32_t height, bounds_specified specified)
 Performs the work of setting the specified bounds of this control. More...
 
virtual void set_client_size_core (int32_t width, int32_t height)
 Sets the size of the client area of the control. More...
 
void set_style (control_styles flag, bool value)
 Sets a specified control_styles flag to either true or false. More...
 
virtual void wnd_proc (message &m)
 Processes Windows messages. More...
 
- Protected Member Functions inherited from xtd::forms::component
 component ()=default
 Initialises a new instance of the compnent class. More...
 
bool design_mode () const
 Gets a value that indicates whether the component is currently in design mode. More...
 

Additional Inherited Members

- Public Types inherited from xtd::forms::control
using control_collection = layout::arranged_element_collection< control_ref >
 Represents a collection of controls. More...
 
- Static Public Member Functions inherited from xtd::forms::control
template<typename control_t >
static std::unique_ptr< control_t > create (const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
 A factory to create a specified control with specified location ,size back_color and fore_color. More...
 
template<typename control_t >
static std::unique_ptr< control_t > create (const control &parent, const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
 A factory to create a specified control with specified parent, location ,size back_color and fore_color. More...
 
template<typename control_t >
static std::unique_ptr< control_t > create (const std::string &text, const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
 A factory to create a specified control with specified text, location ,size back_color and fore_color. More...
 
template<typename control_t >
static std::unique_ptr< control_t > create (const control &parent, const std::string &text, const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
 A factory to create a specified control with specified parent, text, location ,size back_color and fore_color. More...
 
static std::optional< control_reffrom_child_handle (intptr_t handle)
 Retrieves the control that contains the specified handle. More...
 
static std::optional< control_reffrom_handle (intptr_t handle)
 Returns the control that is currently associated with the specified handle. More...
 
static forms::keys modifier_keys ()
 Gets a value indicating which of the modifier keys (SHIFT, CTRL, and ALT) is in a pressed state. More...
 
static forms::mouse_buttons mouse_buttons ()
 Gets a value indicating which of the mouse buttons is in a pressed state. More...
 

Detailed Description

Represents a standard Windows switch button.

Library
xtd.forms
Examples
The following code example demonstrate the use of switch button control.
#include <xtd/xtd>
using namespace std;
using namespace xtd;
using namespace xtd::forms;
class form1 : public form {
public:
form1() {
text("Switch button example");
switch_button1.auto_check(false);
switch_button1.parent(*this);
switch_button1.location({50, 30});
switch_button1.click += [&] {
//switch_button1.checked(!switch_button1.checked());
};
switch_button2.parent(*this);
switch_button2.location({50, 70});
switch_button2.checked_changed += [&] {
label1.text(strings::format("switch: {}", switch_button2.checked() ? "On" : "Off"));
};
switch_button2.checked(true);
label1.parent(*this);
label1.location({50, 110});
label1.auto_size(true);
}
private:
switch_button switch_button1;
switch_button switch_button2;
label label1;
};
int main() {
application::run(form1());
}
Windows
switch_button_w.png

switch_button_wd.png
macOS
switch_button_m.png

switch_button_md.png
Gnome
switch_button_g.png

switch_button_gd.png
Examples:
switch_button.cpp.

Constructor & Destructor Documentation

◆ switch_button()

xtd::forms::switch_button::switch_button ( )
default

Initialize new instance of switch_button class.

Member Function Documentation

◆ auto_check() [1/2]

virtual bool xtd::forms::switch_button::auto_check ( ) const
inlinevirtual

Gets a value indicating whether the checked and the switch_button's appearance are automatically changed when the switch_button is clicked.

Returns
true if the checked value and the appearance of the control are automatically changed on the click event; otherwise, false. The default value is true.
Remarks
If auto_check is set to false, you will need to add code to update the checked in the click event handler.

◆ auto_check() [2/2]

virtual switch_button& xtd::forms::switch_button::auto_check ( bool  auto_check)
inlinevirtual

Sets a value indicating whether the checked and the switch_button's appearance are automatically changed when the switch_button is clicked.

Parameters
auto_checktrue if the checked value and the appearance of the control are automatically changed on the click event; otherwise, false. The default value is true.
Returns
Current switch_button instance.
Remarks
If auto_check is set to false, you will need to add code to update the checked in the click event handler.

◆ checked() [1/2]

virtual bool xtd::forms::switch_button::checked ( ) const
inlinevirtual

Gets a value indicating whether the switch_button is in the checked state.

Returns
true if the switch_button is in the checked state; otherwise, false. The default value is false.

◆ checked() [2/2]

virtual switch_button& xtd::forms::switch_button::checked ( bool  checked)
inlinevirtual

Sets a value indicating whether the switch_button is in the checked state.

Parameters
checkedtrue if the switch_button is in the checked state; otherwise, false. The default value is false.
Returns
Current switch_button instance.

◆ on_checked_changed()

virtual void xtd::forms::switch_button::on_checked_changed ( const event_args e)
inlineprotectedvirtual

Raises the checked_changed event.

Parameters
eAn event_args that contains the event data.
Remarks
Raising an event invokes the event handler through a delegate.
The on_checked_changed method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.

◆ on_handle_created()

void xtd::forms::switch_button::on_handle_created ( const event_args e)
inlineoverrideprotectedvirtual

Raises the handle_created event.

Parameters
eAn xtd::event_args that contains the event data.

Reimplemented from xtd::forms::control.

◆ on_mouse_down()

void xtd::forms::switch_button::on_mouse_down ( const mouse_event_args e)
inlineoverrideprotectedvirtual

Raises the mouse_down event.

Parameters
eAn xtd::event_args that contains the event data.

Reimplemented from xtd::forms::button_base.

◆ on_paint()

void xtd::forms::switch_button::on_paint ( paint_event_args e)
inlineoverrideprotectedvirtual

Raises the paint event.

Parameters
eAn xtd::event_args that contains the event data.

Reimplemented from xtd::forms::control.

◆ on_resize()

void xtd::forms::switch_button::on_resize ( const event_args e)
inlineoverrideprotectedvirtual

Raises the resize event.

Parameters
eAn xtd::event_args that contains the event data.

Reimplemented from xtd::forms::button_base.

◆ rounded() [1/2]

virtual bool xtd::forms::switch_button::rounded ( ) const
inlinevirtual

Gets a value indicating whether the switch_button is rouded appearance.

Returns
true if the switch_button is in the rounded appearance; otherwise, false. The default value is true.

◆ rounded() [2/2]

virtual switch_button& xtd::forms::switch_button::rounded ( bool  value)
inlinevirtual

Sets a value indicating whether the switch_button is rouded appearance.

Parameters
valuetrue if the switch_button is in the rounded appearance; otherwise, false. The default value is true.
Returns
Current switch_button instance.

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