2008-03-08 08:52:38 -05:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: tglbtn.h
|
2008-10-04 07:55:28 -04:00
|
|
|
// Purpose: interface of wxBitmapToggleButton, wxToggleButton
|
2008-03-08 08:52:38 -05:00
|
|
|
// Author: wxWidgets team
|
|
|
|
// RCS-ID: $Id$
|
|
|
|
// Licence: wxWindows license
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2008-03-10 11:24:38 -04:00
|
|
|
|
2008-03-08 08:52:38 -05:00
|
|
|
/**
|
|
|
|
@class wxToggleButton
|
2008-03-08 09:43:31 -05:00
|
|
|
|
2008-10-04 07:55:28 -04:00
|
|
|
wxToggleButton is a button that stays pressed when clicked by the user.
|
|
|
|
In other words, it is similar to wxCheckBox in functionality but looks like a wxButton.
|
2008-03-08 09:43:31 -05:00
|
|
|
|
2008-03-08 08:52:38 -05:00
|
|
|
Since wxWidgets version 2.9.0 this control emits an update UI event.
|
2008-03-08 09:43:31 -05:00
|
|
|
|
2008-10-04 07:55:28 -04:00
|
|
|
You can see wxToggleButton in action in @ref page_samples_controls.
|
2008-03-08 09:43:31 -05:00
|
|
|
|
2008-03-28 12:19:12 -04:00
|
|
|
@beginEventTable{wxCommandEvent}
|
2008-04-06 10:43:04 -04:00
|
|
|
@event{EVT_TOGGLEBUTTON(id, func)}
|
2008-03-08 08:52:38 -05:00
|
|
|
Handles a toggle button click event.
|
|
|
|
@endEventTable
|
2008-03-08 09:43:31 -05:00
|
|
|
|
2008-03-08 08:52:38 -05:00
|
|
|
@library{wxcore}
|
|
|
|
@category{ctrl}
|
2008-10-13 04:05:18 -04:00
|
|
|
@appearance{togglebutton.png}
|
2008-03-08 09:43:31 -05:00
|
|
|
|
2008-03-10 11:24:38 -04:00
|
|
|
@see wxCheckBox, wxButton, wxBitmapToggleButton
|
2008-03-08 08:52:38 -05:00
|
|
|
*/
|
|
|
|
class wxToggleButton : public wxControl
|
|
|
|
{
|
|
|
|
public:
|
2008-09-01 09:48:57 -04:00
|
|
|
/**
|
|
|
|
Default constructor.
|
|
|
|
*/
|
|
|
|
wxToggleButton();
|
2008-09-21 19:13:49 -04:00
|
|
|
|
2008-03-08 08:52:38 -05:00
|
|
|
/**
|
|
|
|
Constructor, creating and showing a toggle button.
|
2008-03-20 09:45:17 -04:00
|
|
|
|
2008-03-08 09:43:31 -05:00
|
|
|
@param parent
|
2008-03-09 08:33:59 -04:00
|
|
|
Parent window. Must not be @NULL.
|
2008-03-08 09:43:31 -05:00
|
|
|
@param id
|
2008-03-09 08:33:59 -04:00
|
|
|
Toggle button identifier. The value wxID_ANY indicates a default value.
|
2008-03-08 09:43:31 -05:00
|
|
|
@param label
|
2008-03-09 08:33:59 -04:00
|
|
|
Text to be displayed next to the toggle button.
|
2008-03-08 09:43:31 -05:00
|
|
|
@param pos
|
2008-10-04 07:55:28 -04:00
|
|
|
Toggle button position.
|
|
|
|
If wxDefaultPosition is specified then a default position is chosen.
|
2008-03-08 09:43:31 -05:00
|
|
|
@param size
|
2008-10-04 07:55:28 -04:00
|
|
|
Toggle button size.
|
|
|
|
If wxDefaultSize is specified then a default size is chosen.
|
2008-03-08 09:43:31 -05:00
|
|
|
@param style
|
2008-03-09 08:33:59 -04:00
|
|
|
Window style. See wxToggleButton.
|
2008-10-04 10:52:38 -04:00
|
|
|
@param val
|
2008-03-09 08:33:59 -04:00
|
|
|
Window validator.
|
2008-03-08 09:43:31 -05:00
|
|
|
@param name
|
2008-03-09 08:33:59 -04:00
|
|
|
Window name.
|
2008-03-20 09:45:17 -04:00
|
|
|
|
2008-03-09 08:33:59 -04:00
|
|
|
@see Create(), wxValidator
|
2008-03-08 08:52:38 -05:00
|
|
|
*/
|
2008-03-08 09:43:31 -05:00
|
|
|
wxToggleButton(wxWindow* parent, wxWindowID id,
|
|
|
|
const wxString& label,
|
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
const wxSize& size = wxDefaultSize,
|
|
|
|
long style = 0,
|
2008-03-25 08:22:08 -04:00
|
|
|
const wxValidator& val = wxDefaultValidator,
|
2008-09-21 19:13:49 -04:00
|
|
|
const wxString& name = wxCheckBoxNameStr);
|
2008-03-08 08:52:38 -05:00
|
|
|
|
|
|
|
/**
|
|
|
|
Destructor, destroying the toggle button.
|
|
|
|
*/
|
2008-03-25 08:22:08 -04:00
|
|
|
virtual ~wxToggleButton();
|
2008-03-08 08:52:38 -05:00
|
|
|
|
|
|
|
/**
|
2008-10-04 07:55:28 -04:00
|
|
|
Creates the toggle button for two-step construction.
|
|
|
|
See wxToggleButton() for details.
|
2008-03-08 08:52:38 -05:00
|
|
|
*/
|
|
|
|
bool Create(wxWindow* parent, wxWindowID id,
|
|
|
|
const wxString& label,
|
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
const wxSize& size = wxDefaultSize,
|
|
|
|
long style = 0,
|
2008-03-25 08:22:08 -04:00
|
|
|
const wxValidator& val = wxDefaultValidator,
|
2008-09-21 19:13:49 -04:00
|
|
|
const wxString& name = wxCheckBoxNameStr);
|
2008-03-08 08:52:38 -05:00
|
|
|
|
|
|
|
/**
|
|
|
|
Gets the state of the toggle button.
|
2008-03-20 09:45:17 -04:00
|
|
|
|
2008-05-10 21:38:53 -04:00
|
|
|
@return Returns @true if it is pressed, @false otherwise.
|
2008-03-08 08:52:38 -05:00
|
|
|
*/
|
2008-09-27 07:21:10 -04:00
|
|
|
virtual bool GetValue() const;
|
2008-03-08 08:52:38 -05:00
|
|
|
|
|
|
|
/**
|
2008-10-04 07:55:28 -04:00
|
|
|
Sets the toggle button to the given state.
|
|
|
|
This does not cause a @c EVT_TOGGLEBUTTON event to be emitted.
|
2008-03-20 09:45:17 -04:00
|
|
|
|
2008-03-08 09:43:31 -05:00
|
|
|
@param state
|
2008-03-09 08:33:59 -04:00
|
|
|
If @true, the button is pressed.
|
2008-03-08 08:52:38 -05:00
|
|
|
*/
|
2008-09-27 07:21:10 -04:00
|
|
|
virtual void SetValue(bool state);
|
2008-03-08 08:52:38 -05:00
|
|
|
};
|
2008-03-10 11:24:38 -04:00
|
|
|
|
2008-03-25 08:22:08 -04:00
|
|
|
|
|
|
|
/**
|
|
|
|
@class wxBitmapToggleButton
|
|
|
|
|
|
|
|
wxBitmapToggleButton is a wxToggleButton
|
|
|
|
that contains a bitmap instead of text.
|
|
|
|
|
|
|
|
This control emits an update UI event.
|
|
|
|
|
2008-03-28 12:19:12 -04:00
|
|
|
@beginEventTable{wxCommandEvent}
|
2008-04-06 10:43:04 -04:00
|
|
|
@event{EVT_TOGGLEBUTTON(id, func)}
|
2008-03-25 08:22:08 -04:00
|
|
|
Handles a toggle button click event.
|
|
|
|
@endEventTable
|
|
|
|
|
|
|
|
@library{wxcore}
|
|
|
|
@category{ctrl}
|
2008-10-13 04:05:18 -04:00
|
|
|
@appearance{bitmaptogglebutton.png}
|
2008-03-25 08:22:08 -04:00
|
|
|
*/
|
|
|
|
class wxBitmapToggleButton : public wxControl
|
|
|
|
{
|
|
|
|
public:
|
2008-09-01 09:48:57 -04:00
|
|
|
/**
|
|
|
|
Default constructor.
|
|
|
|
*/
|
|
|
|
wxBitmapToggleButton();
|
2008-09-21 19:13:49 -04:00
|
|
|
|
2008-03-25 08:22:08 -04:00
|
|
|
/**
|
|
|
|
Constructor, creating and showing a toggle button with the bitmap @e label.
|
|
|
|
Internally calls Create().
|
|
|
|
*/
|
|
|
|
wxBitmapToggleButton(wxWindow* parent, wxWindowID id,
|
|
|
|
const wxBitmap& label,
|
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
const wxSize& size = wxDefaultSize,
|
|
|
|
long style = 0,
|
|
|
|
const wxValidator& val = wxDefaultValidator,
|
2008-09-21 19:13:49 -04:00
|
|
|
const wxString& name = wxCheckBoxNameStr);
|
2008-03-25 08:22:08 -04:00
|
|
|
|
|
|
|
/**
|
|
|
|
Create method for two-step construction.
|
|
|
|
*/
|
|
|
|
bool Create(wxWindow* parent, wxWindowID id,
|
|
|
|
const wxBitmap& label,
|
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
const wxSize& size = wxDefaultSize,
|
|
|
|
long style = 0,
|
|
|
|
const wxValidator& val = wxDefaultValidator,
|
2008-09-21 19:13:49 -04:00
|
|
|
const wxString& name = wxCheckBoxNameStr);
|
2008-03-25 08:22:08 -04:00
|
|
|
|
|
|
|
/**
|
|
|
|
Gets the state of the toggle button.
|
|
|
|
|
2008-05-10 21:38:53 -04:00
|
|
|
@return Returns @true if it is pressed, @false otherwise.
|
2008-03-25 08:22:08 -04:00
|
|
|
*/
|
|
|
|
virtual bool GetValue() const;
|
|
|
|
|
|
|
|
/**
|
2008-10-04 07:55:28 -04:00
|
|
|
Sets the toggle button to the given state.
|
|
|
|
This does not cause a @c EVT_TOGGLEBUTTON event to be emitted.
|
2008-03-25 08:22:08 -04:00
|
|
|
|
|
|
|
@param state
|
|
|
|
If @true, the button is pressed.
|
|
|
|
*/
|
|
|
|
virtual void SetValue(bool state);
|
|
|
|
};
|
|
|
|
|