Hot Door CORE  0.7.0
Adobe® Illustrator® Plug-in Library
Public Types | Public Member Functions | Static Public Member Functions | List of all members
hdi::core::Checkbox Class Reference

Checkbox widget, which has both a checkbox "button" and a text label to its right. More...

#include <hdicoreCheckbox.h>

Inheritance diagram for hdi::core::Checkbox:
Inheritance graph
[legend]
Collaboration diagram for hdi::core::Checkbox:
Collaboration graph
[legend]

Public Types

enum  StateType { StateMixed = -1, StateOff = 0, StateOn = 1 }
 Describes the state of a checkbox.
 
- Public Types inherited from hdi::core::Widget
enum  Type {
  UnknownType = 0, BoxType = 10, ButtonType = 20, CheckboxType = 30,
  ColumnViewType = 40, ComboBoxType = 50, ColorWellType = 60, CustomType = 70,
  DividerType = 80, HierarchicalColumnViewType = 85, HierarchicalViewType = 90, LabelType = 100,
  ListViewType = 110, PopupMenuType = 120, RadioButtonType = 130, SliderType = 140,
  StepperType = 150, TextFieldType = 160, TextViewType = 170, WebViewType = 180
}
 Supported widget types.
 
typedef std::auto_ptr< ImageIDsImageIDsAP
 

Public Member Functions

 Checkbox ()
 Constructs an empty Checkbox object. More...
 
 Checkbox (const Checkbox &checkbox_)
 Constructs a new Checkbox object from an existing Checkbox object (copy constructor) More...
 
 Checkbox (const Point &loc_, const std::string &label_, const WindowType containerType_, const StateType state_=StateOff)
 Constructs a checkbox (using a StateType) and a window container type. More...
 
 Checkbox (const Point &loc_, const std::string &label_, const double width_, const StateType state_=StateOff)
 Constructs a checkbox (using a StateType) More...
 
virtual ~Checkbox ()
 Checkbox destructor. More...
 
virtual Checkboxoperator= (const Checkbox &rhs_)
 Allows one Checkbox object to be assigned from another. More...
 
virtual Checkboxclone () const
 Convenience method to clone a Checkbox object on the heap. More...
 
virtual Checkboxduplicate () const
 Convenience method to duplicate a Checkbox object, creating a new and identical UI element to the target (but not belonging to the same containing window) More...
 
virtual StateType state () const
 Gets the checkbox state. More...
 
virtual void setState (const StateType state_)
 Sets the checkbox state. More...
 
virtual void setChecked (const bool checked_)
 Alternate setter for the checkbox state. More...
 
virtual void click ()
 Simulates a click on the checkbox. More...
 
virtual Callback *const clickCallback () const
 Gets the current click callback for the checkbox. More...
 
virtual void setClickCallback (const Callback &callback_)
 Sets the click callback for the checkbox. More...
 
- Public Member Functions inherited from hdi::core::Widget
(virtual) - ~Widget
 Destructs a Widget. More...
 
(virtual PlatformWidgetPtr) - platformWidget
 Gets the platform-specific widget, around which the target object is wrapped. More...
 
(virtual bool) - isEmpty
 Gets whether the target Widget object is empty (constructed with the default ctor) More...
 
(virtual bool) - operator==
 Tests whether a given Widget object is the same as another. More...
 
(virtual bool) - operator!=
 Tests whether a given Widget object is not the same as another. More...
 
(virtual Type- type
 Gets the type of the widget. More...
 
(virtual Window *const) - window
 Gets the parent window of the widget. More...
 
(virtual Rect- frame
 Gets the widget frame. More...
 
(virtual void) - setFrame
 Sets the widget frame. More...
 
(virtual void) - offset
 Offsets the widget from its current location by the given amounts. More...
 
(virtual std::string) - text
 Gets the current text value of the widget. More...
 
(virtual void) - setText
 Sets the current text value of the widget. More...
 
(virtual bool) - enabled
 Gets whether the widget is enabled. More...
 
(virtual void) - setEnabled
 Enables or disables the widget. More...
 
(virtual bool) - visible
 Gets whether the widget is visible. More...
 
(virtual void) - setVisible
 Shows or hides the widget. More...
 
(virtual void) - setOrigin
 Convenience method to set just the origin of the target widget's frame. More...
 
(virtual void) - setSize
 Convenience method to set just the size of the target widget's frame. More...
 
(virtual void) - setWidth
 Convenience method to set just the width of the target widget's frame. More...
 
(virtual void) - setHeight
 Convenience method to set just the height of the target widget's frame. More...
 
(virtual bool) - hasFocus
 Gets whether the widget currently has focus. More...
 
(virtual void) - focus
 Forces the widget to have focus, taking it from any other focused widget of the same window. More...
 
(virtual void) - blur
 Removes focus from the widget. More...
 
(virtual std::string) - tooltip
 Gets the tool tip string for the widget. More...
 
(virtual void) - setTooltip
 Sets the tool tip string for the widget. More...
 
(virtual void) - update
 Force the widget to update (i.e. cause it to redraw) More...
 

Static Public Member Functions

static double idealWidth (const std::string &text_, const double height_, const WindowType containerType_)
 Gets the ideal width for a checkbox, given its label and a known height. More...
 
- Static Public Member Functions inherited from hdi::core::Widget
(static bool) + isCoreWidget
 Gets whether the given platform widget is a hdi_core widget. More...
 
(static std::auto_ptr< Widget >) + lastClickedWidget
 Gets the last widget that received a click event (either by the user or programmatically) More...
 
(static std::auto_ptr< Widget >) + lastValueChangingWidget
 Gets the last widget that received a value changing event (either by the user or programmatically) More...
 
(static std::auto_ptr< Widget >) + lastValueChangedWidget
 Gets the last widget that received a value changed event (either by the user or programmatically) More...
 
(static bool) + forceIdeographicFontSize
 Gets whether widgets should use an ideographically appropriate font size for widget text on Windows (whether or not the Illustrator locale dictates one should be used) More...
 
(static void) + setForceIdeographicFontSize
 Sets whether widgets should use an ideographically appropriate font size for widget text on Windows (whether or not the Illustrator locale dictates one should be used) More...
 

Additional Inherited Members

- Protected Member Functions inherited from hdi::core::Widget
(void *) - _impl
 Internal use only. More...
 
() - Widget
 Constructs an empty Widget object. More...
 
() - Widget
 Constructs a new Widget object from an existing Widget object (copy constructor) More...
 
() - Widget
 Internal use only. More...
 
(virtual Widget &) - operator=
 Internal use only. More...
 
- Protected Attributes inherited from hdi::core::Widget
void * _data
 Private implementation data.
 

Detailed Description

Checkbox widget, which has both a checkbox "button" and a text label to its right.

Constructor & Destructor Documentation

hdi::core::Checkbox::Checkbox ( )

Constructs an empty Checkbox object.

Author
GW
Date
09/2013
Note
To test if a Checkbox object is empty, call isEmpty (hdi::core::Widget) on it
Empty Checkbox objects do not relate to any actual UI widget; they are designed to be "receivers" of some other Checkbox object via the overloaded assignment operator. Empty Checkbox objects are useless until such time (though it is safe to call any of their methods).
hdi::core::Checkbox::Checkbox ( const Checkbox checkbox_)

Constructs a new Checkbox object from an existing Checkbox object (copy constructor)

Author
GW
Date
09/2013
Parameters
checkbox_Existing Checkbox object
hdi::core::Checkbox::Checkbox ( const Point loc_,
const std::string &  label_,
const WindowType  containerType_,
const StateType  state_ = StateOff 
)
explicit

Constructs a checkbox (using a StateType) and a window container type.

Author
GW
Date
09/2013
Parameters
loc_Top-left location of the checkbox
label_String for the checkbox, as UTF-8
containerType_Type of window that will contain the widget
state_Initial checkbox state
Note
The containerType_ argument is necessary for this constructor because it computes the ideal width for the new checkbox from the initial checkbox label string. However, Illustrator uses different font sizes for different types of windows, and we can't correctly compute the width without knowing what font size to use.
hdi::core::Checkbox::Checkbox ( const Point loc_,
const std::string &  label_,
const double  width_,
const StateType  state_ = StateOff 
)
explicit

Constructs a checkbox (using a StateType)

Author
GW
Date
09/2013
Parameters
loc_Top-left location of the checkbox
label_String for the checkbox, as UTF-8
width_Width of the checkbox and its label
state_Initial checkbox state
virtual hdi::core::Checkbox::~Checkbox ( )
virtual

Checkbox destructor.

Author
GW
Date
09/2013

Member Function Documentation

virtual void hdi::core::Checkbox::click ( )
virtual

Simulates a click on the checkbox.

Author
GW
Date
09/2013
virtual Callback* const hdi::core::Checkbox::clickCallback ( ) const
virtual

Gets the current click callback for the checkbox.

Author
GW
Date
09/2013
Returns
A pointer to the currently registered click callback
virtual Checkbox* hdi::core::Checkbox::clone ( ) const
virtual

Convenience method to clone a Checkbox object on the heap.

Author
GW
Date
10/2013
Returns
A pointer to the new Checkbox object
Note
If you subclass Checkbox, you MUST overload this method yourself! If you don't and/or your clone() method does not return an instance of your Checkbox subclass, you will experience "object slicing" when adding the widget to a window.
Warning
The caller must manage the memory for the returned Checkbox object.

Implements hdi::core::Widget.

virtual Checkbox* hdi::core::Checkbox::duplicate ( ) const
virtual

Convenience method to duplicate a Checkbox object, creating a new and identical UI element to the target (but not belonging to the same containing window)

Author
GW
Date
11/2013
Returns
A pointer to the new Checkbox object (and new UI element)
Warning
The caller must manage the memory for the returned Checkbox object.

Implements hdi::core::Widget.

static double hdi::core::Checkbox::idealWidth ( const std::string &  text_,
const double  height_,
const WindowType  containerType_ 
)
static

Gets the ideal width for a checkbox, given its label and a known height.

Author
GW
Date
09/2013
Parameters
text_Checkbox label, as UTF-8
height_Known height into which the checkbox must fit
containerType_Type of window for the widget (because font sizes differ)
Returns
Ideal width for the given text to fit into the given height
virtual Checkbox& hdi::core::Checkbox::operator= ( const Checkbox rhs_)
virtual

Allows one Checkbox object to be assigned from another.

Author
GW
Date
10/2013
Parameters
rhs_Righthand side of the = operator; the object to copy values from
Returns
The target Checkbox object, but with its value updated to match that of rhs_
virtual void hdi::core::Checkbox::setChecked ( const bool  checked_)
virtual

Alternate setter for the checkbox state.

Author
GW
Date
09/2013
Parameters
checked_true if the checkbox is checked, false otherwise
Note
If you need to set a mixed state, use the other setter
virtual void hdi::core::Checkbox::setClickCallback ( const Callback callback_)
virtual

Sets the click callback for the checkbox.

Author
GW
Date
09/2013
Parameters
callback_New callback for when the checkbox is clicked
virtual void hdi::core::Checkbox::setState ( const StateType  state_)
virtual

Sets the checkbox state.

Author
GW
Date
09/2013
Parameters
state_New checkbox state
virtual StateType hdi::core::Checkbox::state ( ) const
virtual

Gets the checkbox state.

Author
GW
Date
09/2013
Returns
Current checkbox state