SophiaFramework UNIVERSE 5.3 |
#include <SFYCheckboxControl.h.hpp>
class SFYCheckboxControl : public SFYButtonControl;
SFMTYPEDEFRESPONDER(SFYCheckboxControl)
How to use
SFYCheckboxControl is the abstract base class to define and implement a user-defined check box control.
In SFYCheckboxControl, functions to draw the check box, switch the checked state and manage the operation key are implemented by default. Several handlers with default behaviour are also implemented as virtual functions.
The operation key is set with the SFYButtonControl::SetOperateKey function. By default, the operation key is set to the SELECT key.
Events and their handlers
In SFYCheckboxControl, the following handlers(virtual functions) are registered for the key event[SFEVT_KEY] on the operation key, the region event[SFEVT_RESPONDER_BOUND], and the drawing event[SFEVT_RESPONDER_RENDER].
In a check box control inheriting from SFYCheckboxControl, the following handlers(virtual functions) are booted up first.
Table 205. Events and their Handlers
Event | Handler(Virtual function) | Default behaviour | Override |
---|---|---|---|
SFEVT_KEY event of the operation key set with SFYButtonControl::SetOperateKey | SFYButtonControl::HandleOperateKey | - | Optional |
SFEVT_KEY_PRESS event of the operation key set with SFYButtonControl::SetOperateKey | SFYButtonControl::HandleOperateKeyPress | - | Optional |
SFEVT_KEY_RELEASE event of the operation key set with SFYButtonControl::SetOperateKey | SFYCheckboxControl::HandleOperateKeyRelease | Send the result event of switching the checked state *1 | Optional |
(SFEVT_RESPONDER_BOUND, SFP16_BOUND_REQUEST) event | SFYWidget::HandleBoundRequest | - | Recommended |
(SFEVT_RESPONDER_BOUND, SFP16_BOUND_OPTIMIZE) event | SFYWidget::HandleBoundOptimize | - | Recommended |
(SFEVT_RESPONDER_BOUND, SFP16_BOUND_REAL) event | SFYControl::HandleBoundReal | Equalize the virtual region with the real region *2 | Optional |
(SFEVT_RESPONDER_BOUND, SFP16_BOUND_VIRTUAL) event | SFYWidget::HandleBoundVirtual | - | Optional |
(SFEVT_RESPONDER_BOUND, SFP16_BOUND_GLOBAL) event | SFYWidget::HandleBoundGlobal | - | Optional |
(SFEVT_RESPONDER_RENDER, SFP16_RENDER_REQUEST) event | SFYWidget::HandleRenderRequest | - | Optional |
* "-" in the default behaviour column represents that nothing is implemented.
NOTE | |
---|---|
*1. After switching the checked state, execute SFYResponder::InvokeForward(SFXEvent(SFEVT_RESPONDER_RESULT, SFP16_RESULT_OK, GetCurrentValue()), false). *2. Execute SFYResponder::SetVirtualBound(SFXRectangle(SFXGrid::ZeroInstance(), GetRealBound().GetSize())). In other words, equalize the virtual region with the real region. |
The code to make a user-defined check box control is as follows:
Example 860. Declaration
SFMTYPEDEFRESPONDER(USRCheckboxControl) class USRCheckboxControl: public SFYCheckboxControl { SFMSEALRESPONDER(USRCheckboxControl) SFMRESPONDERINSTANTIATEFIVE(USRCheckboxControl, SFYCheckboxControl, SFYButtonControl, SFYControl, SFYWidget, SFYResponder) public: // define responder type // small alphabet and symbol must not be used since they are reserved for SophiaFramework UNIVERSE enum CodeEnum { CODE_TYPE = four_char_code('U', 'C', 'H', 'K') }; SFMTYPEDEFTYPE(CodeEnum) public: static USRCheckboxControlSmp NewInstance(SFCErrorPtr exception = null); protected: explicit USRCheckboxControl(Void) static_throws; virtual ~USRCheckboxControl(Void); // virtual functions defined in the parent class and recommended to be implemented virtual Void HandleBoundRequest(SFXRectanglePtr rectangle) const; virtual Void HandleBoundOptimize(SFXRectanglePtr rectangle) const; virtual Void HandleBoundVirtual(Void); virtual Void HandleRenderRequest(SFXGraphicsPtr graphics) const; };
Example 861. Implementation
USRCheckboxControl::USRCheckboxControl(Void) static_throws { if (static_try()) { // set the responder type SetType(CODE_TYPE); // since check box control's label doesn't have background, set transparent mode to "true" SetPropertyTransparent(true); // here describe the initialization } } USRCheckboxControl::~USRCheckboxControl(Void) { // here describe the finalization } USRCheckboxControlSmp USRCheckboxControl::NewInstance(SFCErrorPtr exception) { return static_pointer_cast<USRCheckboxControl>(Factory(::new USRCheckboxControl, exception)); } Void USRCheckboxControl::HandleBoundRequest(SFXRectanglePtr rectangle) const { // calculate the suitable check box control size // set the rectangle argument to the calculated suitable check box control size // for the rectangle argument, it is recommended to set only its size and not to change its origin in this function return; } Void USRCheckboxControl::HandleBoundOptimize(SFXRectanglePtr rectangle) const { // calculate the suitable check box control size within rectangular region given by the rectangle argument // set the rectangle argument to the calculated suitable check box control size // for the rectangle argument, it is recommended to set only its size and not to change its origin in this function return; } Void USRCheckboxControl::HandleBoundVirtual(Void) { // here describe the size recalculation if necessary when the virtual region is changed return; } Void USRCheckboxControl::HandleRenderRequest(SFXGraphicsPtr graphics) const { SFXGrid grid; // in case of using function of SFYCheckboxControl class to draw check box and shadow [i.e., SFYCheckboxControl::DrawButton**()/DrawShadow**()/DrawCheckmark**()], // draw check box and shadow as below // _height variable is hight of check box // _origin variable is origin of check box // * these variable is calculated with font hight used for label if (_height >= 28) { grid.Set(DrawShadow28(graphics, _origin)); DrawButton27(graphics, grid); grid.Add(3, 3); DrawCheckmark21(graphics, grid); } else if (_height >= 14) { grid.Set(DrawShadow14(graphics, _origin)); DrawButton13(graphics, grid); grid.Add(2, 2); DrawCheckmark09(graphics, grid); } // draw check box control's label return; }
Abstract Class that Represents a Check Box Control[SFYCheckboxControl] | SFYControl | SFYButtonControl | SFZCheckboxControl | SFZRadiobuttonControl | Key Event[SFEVT_KEY] | Region Event[SFEVT_RESPONDER_BOUND] | Drawing Event[SFEVT_RESPONDER_RENDER]
Constructor/Destructor |
---|
SFYCheckboxControl( Void ) Constructor of the SFYCheckboxControl class.
|
~SFYCheckboxControl( Void ) Destructor of the SFYCheckboxControl class.
|
Public Functions | |
---|---|
SFXRGBColorConstRef |
GetCheckmarkColor( Void ) Get the color of check mark of this check box control.
|
Void |
SetCheckmarkColor(
SFXRGBColorConstRef param
) Set the color of the check mark to the specified value.
|
Void |
ClearHandler( Void )
(inherits from SFYResponder)
Unregister all handlers from this responder.
|
Void |
ClearTracer( Void )
(inherits from SFYResponder)
Unregister all dispatching rules from the tracer of this responder.
|
SFCError |
Distribute(
SFXEventConstRef event
, BoolPtr result = null
)
(inherits from SFYResponder)
Distribute the specified event.
|
SFXRGBColorConstRef |
GetBackgroundColor( Void )
(inherits from SFYWidget)
Get the background color.
|
SFXBevelColorConstRef |
GetButtonColor( Void )
(inherits from SFYButtonControl)
Get the bevel color of bevel region within this button.
|
SFYResponderSmp |
GetChildBack( Void )
(inherits from SFYResponder)
Get the backmost child responder of this responder,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildBack(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the backmost child responder of this responder,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildBack(
UInt32 id
)
(inherits from SFYResponder)
Get the backmost child responder of this responder,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildBack(
UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the backmost child responder of this responder,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildBackward(
SInt32 index
)
(inherits from SFYResponder)
Get the child responder of this responder at the specified position from the back side,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildBackward(
SInt32 index
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the child responder of this responder at the specified position from the back side,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildBackward(
SInt32 index
, UInt32 id
)
(inherits from SFYResponder)
Get the child responder of this responder at the specified position from the back side,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildBackward(
SInt32 index
, UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the child responder of this responder at the specified position from the back side,
which matches the specified search condition.
|
SInt32 |
GetChildCount( Void )
(inherits from SFYResponder)
Get the number of child responders of this responder,
which match the specified search condition.
|
SInt32 |
GetChildCount(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the number of child responders of this responder,
which match the specified search condition.
|
SInt32 |
GetChildCount(
UInt32 id
)
(inherits from SFYResponder)
Get the number of child responders of this responder,
which match the specified search condition.
|
SInt32 |
GetChildCount(
UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the number of child responders of this responder,
which match the specified search condition.
|
SFYResponderSmp |
GetChildForward(
SInt32 index
)
(inherits from SFYResponder)
Get the child responder of this responder at the specified position from the front side,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildForward(
SInt32 index
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the child responder of this responder at the specified position from the front side,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildForward(
SInt32 index
, UInt32 id
)
(inherits from SFYResponder)
Get the child responder of this responder at the specified position from the front side,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildForward(
SInt32 index
, UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the child responder of this responder at the specified position from the front side,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildFront( Void )
(inherits from SFYResponder)
Get the foremost child responder of this responder,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildFront(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the foremost child responder of this responder,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildFront(
UInt32 id
)
(inherits from SFYResponder)
Get the foremost child responder of this responder,
which matches the specified search condition.
|
SFYResponderSmp |
GetChildFront(
UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the foremost child responder of this responder,
which matches the specified search condition.
|
SInt32 |
GetCurrentValue( Void )
(inherits from SFYControl)
Get the current value of this control.
|
SFYDistributerPtr |
GetDistributer( Void )
(inherits from SFYResponder)
Get the distributer bound with this responder.
|
SFXBevelColorConstRef |
GetFocusColor( Void )
(inherits from SFYButtonControl)
Get the bevel color of frame margin of this button control in the "focus" state.
|
SFYResponderSmp |
GetFrame( Void )
(inherits from SFYResponder)
Get the frame which has been attached to this responder.
|
SFXRectangle |
GetGlobalBound( Void )
(inherits from SFYResponder)
Get the globle region of this responder.
|
UInt32 |
GetID( Void )
(inherits from SFYResponder)
Get the ID of this responder instance.
|
SFXRectangle |
GetLocalBound( Void )
(inherits from SFYResponder)
Get the local region of this responder.
|
SInt32 |
GetMaximumValue( Void )
(inherits from SFYControl)
Get the maximum value of this control.
|
SInt32 |
GetMinimumValue( Void )
(inherits from SFYControl)
Get the minimum value of this control.
|
SInt32 |
GetNthBackward( Void )
(inherits from SFYResponder)
Get the position counted from the back side of this responder among a group of sibling responders,
which match the specified search condition.
|
SInt32 |
GetNthBackward(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the position counted from the back side of this responder among a group of sibling responders,
which match the specified search condition.
|
SInt32 |
GetNthBackward(
UInt32 id
)
(inherits from SFYResponder)
Get the position counted from the back side of this responder among a group of sibling responders,
which match the specified search condition.
|
SInt32 |
GetNthBackward(
UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the position counted from the back side of this responder among a group of sibling responders,
which match the specified search condition.
|
SInt32 |
GetNthForward( Void )
(inherits from SFYResponder)
Get the position counted from the front side of this responder among a group of sibling responders,
which match the specified search condition.
|
SInt32 |
GetNthForward(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the position counted from the front side of this responder among a group of sibling responders,
which match the specified search condition.
|
SInt32 |
GetNthForward(
UInt32 id
)
(inherits from SFYResponder)
Get the position counted from the front side of this responder among a group of sibling responders,
which match the specified search condition.
|
SInt32 |
GetNthForward(
UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Get the position counted from the front side of this responder among a group of sibling responders,
which match the specified search condition.
|
AVKType |
GetOperateKey( Void )
(inherits from SFYButtonControl)
Get the operation key of the button control.
|
SFYResponderSmp |
GetParent( Void )
(inherits from SFYResponder)
Get the parent responder of this responder.
|
Bool |
GetPropertyTransparent( Void )
(inherits from SFYResponder)
Get the transparency attribute of this responder.
|
SFXRectangleConstRef |
GetRealBound( Void )
(inherits from SFYResponder)
Get the real region of this responder.
|
VoidPtr |
GetReference( Void )
(inherits from SFYResponder)
Get the reference of this responder.
|
SFYRendererPtr |
GetRenderer( Void )
(inherits from SFYResponder)
Get the renderer bound with this responder.
|
SFYResponderSmp |
GetRoot( Void )
(inherits from SFYResponder)
Get the root responder.
|
SFXRGBColorConstRef |
GetShadowColor( Void )
(inherits from SFYButtonControl)
Get the shadow color of this button control.
|
Bool |
GetStateActive(
Bool inherit = false
)
(inherits from SFYResponder)
Get the active state of this responder.
|
Bool |
GetStateEnable(
Bool inherit = false
)
(inherits from SFYResponder)
Get the enable state of this responder.
|
Bool |
GetStateFocus(
Bool inherit = false
)
(inherits from SFYResponder)
Get the focus state of this responder.
|
Bool |
GetStatePress( Void )
(inherits from SFYButtonControl)
Get the value of flag indicating whether or not this button is pressed.
|
Bool |
GetStateValid(
Bool inherit = false
)
(inherits from SFYResponder)
Get the valid state of this responder.
|
Bool |
GetStateVisible(
Bool inherit = false
)
(inherits from SFYResponder)
Get the visible state of this responder.
|
SFXRectangle |
GetSuitableBound( Void )
(inherits from SFYResponder)
Get the suitable region of this responder.
|
SFXRectangle |
GetSuitableBound(
SFXRectangleConstRef rectangle
)
(inherits from SFYResponder)
Get the suitable region of this responder.
|
SFXRectangle |
GetSuitableBound(
SFXRectangleConstRef param
, HorizontalEnum horizontal
, VerticalEnum vertical
)
(inherits from SFYResponder)
Get the suitable region of this responder.
|
SFXMargin |
GetSuitableMargin( Void )
(inherits from SFYResponder)
Get the suitable frame margin region of this responder.
|
SFCType |
GetType( Void )
(inherits from SFYResponder)
Get the type of this responder class.
|
SFXRectangleConstRef |
GetVirtualBound( Void )
(inherits from SFYResponder)
Get the virtual region of this responder.
|
Bool |
HasFrame( Void )
(inherits from SFYResponder)
Check whether or not this responder is a content-responder.
|
Void |
Initialize( Void )
(inherits from SFYResponder)
Initialize this responder.
|
Bool |
IsBack( Void )
(inherits from SFYResponder)
Check whether or not this responder is the backmost responder among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsBack(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Check whether or not this responder is the backmost responder among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsBack(
UInt32 id
)
(inherits from SFYResponder)
Check whether or not this responder is the backmost responder among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsBack(
UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Check whether or not this responder is the backmost responder among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsFrame( Void )
(inherits from SFYResponder)
Check whether or not this responder is an attachment-frame.
|
Bool |
IsFront( Void )
(inherits from SFYResponder)
Check whether or not this responder is the foremost responder among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsFront(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Check whether or not this responder is the foremost responder among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsFront(
UInt32 id
)
(inherits from SFYResponder)
Check whether or not this responder is the foremost responder among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsFront(
UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Check whether or not this responder is the foremost responder among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsNthBackward(
SInt32 index
)
(inherits from SFYResponder)
Check whether or not this responder is at the specified position from the back side among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsNthBackward(
SInt32 index
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Check whether or not this responder is at the specified position from the back side among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsNthBackward(
SInt32 index
, UInt32 id
)
(inherits from SFYResponder)
Check whether or not this responder is at the specified position from the back side among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsNthBackward(
SInt32 index
, UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Check whether or not this responder is at the specified position from the back side among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsNthForward(
SInt32 index
)
(inherits from SFYResponder)
Check whether or not this responder is at the specified position from the front side among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsNthForward(
SInt32 index
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Check whether or not this responder is at the specified position from the front side among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsNthForward(
SInt32 index
, UInt32 id
)
(inherits from SFYResponder)
Check whether or not this responder is at the specified position from the front side among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsNthForward(
SInt32 index
, UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Check whether or not this responder is at the specified position from the front side among a group of the sibling responders
which match the specified search condition.
|
Bool |
IsRoot( Void )
(inherits from SFYResponder)
Check whether or not this responder is the root responder.
|
SFCError |
Recover( Void )
(inherits from SFYResponder)
Recover the intersection region between this responder and the responder space by using the saved bitmap to restore the device bitmap.
|
SFCError |
RegisterHandler(
SFXEventRangeConstRef range
, SFYHandler::RuleRecConstRef rule
)
(inherits from SFYResponder)
Register specified handlers into this responder.
|
SFCError |
RegisterHandler(
SFXEventRangeConstRef range
, SFYHandler::HandlerSPP spp
, VoidPtr reference
)
(inherits from SFYResponder)
Register specified handlers into this responder.
|
SFCError |
RegisterHandler(
SFXEventRangeConstPtr range
, SFYHandler::RuleRecConstPtr rule
, SInt32 length
)
(inherits from SFYResponder)
Register specified handlers into this responder.
|
SFCError |
RegisterHandler(
SFXEventRangeConstPtr range
, SFYHandler::HandlerSPPConstPtr spp
, VoidPtrConstPtr reference
, SInt32 length
)
(inherits from SFYResponder)
Register specified handlers into this responder.
|
SFCError |
RegisterTracer(
SFXEventRangeConstRef range
, SFYTracer::RuleRecConstRef rule
)
(inherits from SFYResponder)
Register specified dispatching rules into the tracer of this responder.
|
SFCError |
RegisterTracer(
SFXEventRangeConstRef range
, SFYTracer::OrderEnum order
, SFYTracer::StateEnum state
, Bool overload
)
(inherits from SFYResponder)
Register specified dispatching rules into the tracer of this responder.
|
SFCError |
RegisterTracer(
SFXEventRangeConstPtr range
, SFYTracer::RuleRecConstPtr rule
, SInt32 length
)
(inherits from SFYResponder)
Register specified dispatching rules into the tracer of this responder.
|
SFCError |
RegisterTracer(
SFXEventRangeConstPtr range
, SFYTracer::OrderEnumConstPtr order
, SFYTracer::StateEnumConstPtr state
, BoolConstPtr overload
, SInt32 length
)
(inherits from SFYResponder)
Register specified dispatching rules into the tracer of this responder.
|
SFCError |
Render(
Bool force = false
)
(inherits from SFYResponder)
Boot up the renderer for redrawing this responder and its descendant responders.
|
Void |
SetBackgroundColor(
SFXRGBColorConstRef param
)
(inherits from SFYWidget)
Set the background color to the specified value.
|
Void |
SetButtonColor(
SFXBevelColorConstRef param
)
(inherits from SFYButtonControl)
Set the bevel color of bevel region within this button to the specified value.
|
Void |
SetCurrentValue(
SInt32 param
)
(inherits from SFYControl)
Set the current value of this control to the specified value.
|
Void |
SetDistributer(
SFYDistributerPtr param
)
(inherits from SFYResponder)
Bind this responder with the specified distributer.
|
Void |
SetFocusColor(
SFXBevelColorConstRef param
)
(inherits from SFYButtonControl)
Set the bevel color of frame margin of this button control in the "focus" state to the specified value.
|
SFCError |
SetFrame(
SFYResponderSmpConstRef param
)
(inherits from SFYResponder)
Attach the specified frame to this frame.
|
Void |
SetID(
UInt32 param
)
(inherits from SFYResponder)
Set the ID value of this responder to the specified value.
|
Void |
SetMaximumValue(
SInt32 param
)
(inherits from SFYControl)
Set the maximum value of the control to the specified value.
|
Void |
SetMinimumValue(
SInt32 param
)
(inherits from SFYControl)
Set the minimum value of the control to the specified value.
|
Void |
SetOperateKey(
AVKType param
)
(inherits from SFYButtonControl)
Set the operation key of this button control to the specified value.
|
SFCError |
SetParent(
SFYResponderSmpConstRef param
)
(inherits from SFYResponder)
Set the parent responder of this responder to the specified responder.
|
Void |
SetProperty(
Bool transparent
)
(inherits from SFYResponder)
Set the property of this responder to the specified value.
|
Void |
SetPropertyTransparent(
Bool param
)
(inherits from SFYResponder)
Set the transparency attribute of this responder to the specified value.
|
Void |
SetRealBound(
SFXRectangleConstRef param
)
(inherits from SFYResponder)
Set the real region of this responder to the specified region.
|
Void |
SetReference(
VoidPtr param
)
(inherits from SFYResponder)
Set the reference value of this responder to the specified value.
|
Void |
SetRenderer(
SFYRendererPtr param
)
(inherits from SFYResponder)
Bind this responder with the specified renderer.
|
Void |
SetShadowColor(
SFXRGBColorConstRef param
)
(inherits from SFYButtonControl)
Set the shadow color of this button control to the specified value.
|
Void |
SetState(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Set all states of this responder to specified values together.
|
Void |
SetStateActive(
Bool param
)
(inherits from SFYResponder)
Set the active state of this responder to the specified value.
|
Void |
SetStateEnable(
Bool param
)
(inherits from SFYResponder)
Set the enable state of this responder to the specified value.
|
Void |
SetStateFocus(
Bool param
)
(inherits from SFYResponder)
Set the focus state of this responder to the specified value.
|
Void |
SetStatePress(
Bool param
)
(inherits from SFYButtonControl)
Set the flag indicating whether or not this button is pressed to the specified value.
|
Void |
SetStateVisible(
Bool param
)
(inherits from SFYResponder)
Set the visible state of this responder to the specified value.
|
Void |
SetVirtualBound(
SFXRectangleConstRef param
)
(inherits from SFYResponder)
Set the virtual region of this responder to the specified value.
|
SFCError |
Snapshot(
SFBBitmapSmpConstRef bitmap
)
(inherits from SFYResponder)
Get a snapshot image of the intersection region between this responder and the responder space by using the saved bitmap.
|
Void |
Terminate( Void )
(inherits from SFYResponder)
Terminate this responder.
|
Void |
ToBack( Void )
(inherits from SFYResponder)
Move this responder to the backmost position among a group of the sibling responders
which match the specified search condition.
|
Void |
ToBack(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Move this responder to the backmost position among a group of the sibling responders
which match the specified search condition.
|
Void |
ToBack(
UInt32 id
)
(inherits from SFYResponder)
Move this responder to the backmost position among a group of the sibling responders
which match the specified search condition.
|
Void |
ToBack(
UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Move this responder to the backmost position among a group of the sibling responders
which match the specified search condition.
|
Void |
ToFront( Void )
(inherits from SFYResponder)
Move this responder to the foremost position among a group of the sibling responders
which match the specified search condition.
|
Void |
ToFront(
Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Move this responder to the foremost position among a group of the sibling responders
which match the specified search condition.
|
Void |
ToFront(
UInt32 id
)
(inherits from SFYResponder)
Move this responder to the foremost position among a group of the sibling responders
which match the specified search condition.
|
Void |
ToFront(
UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Move this responder to the foremost position among a group of the sibling responders
which match the specified search condition.
|
Void |
ToNthBackward(
SInt32 index
)
(inherits from SFYResponder)
Move this responder to the specified position from the back side among a group of the sibling responders
which match the specified search condition.
|
Void |
ToNthBackward(
SInt32 index
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Move this responder to the specified position from the back side among a group of the sibling responders
which match the specified search condition.
|
Void |
ToNthBackward(
SInt32 index
, UInt32 id
)
(inherits from SFYResponder)
Move this responder to the specified position from the back side among a group of the sibling responders
which match the specified search condition.
|
Void |
ToNthBackward(
SInt32 index
, UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Move this responder to the specified position from the back side among a group of the sibling responders
which match the specified search condition.
|
Void |
ToNthForward(
SInt32 index
)
(inherits from SFYResponder)
Move this responder to the specified position from the front side among a group of the sibling responders
which match the specified search condition.
|
Void |
ToNthForward(
SInt32 index
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Move this responder to the specified position from the front side among a group of the sibling responders
which match the specified search condition.
|
Void |
ToNthForward(
SInt32 index
, UInt32 id
)
(inherits from SFYResponder)
Move this responder to the specified position from the front side among a group of the sibling responders
which match the specified search condition.
|
Void |
ToNthForward(
SInt32 index
, UInt32 id
, Bool visible
, Bool active
, Bool enable
, Bool focus
)
(inherits from SFYResponder)
Move this responder to the specified position from the front side among a group of the sibling responders
which match the specified search condition.
|
Void |
UnregisterHandler(
SFXEventRangeConstRef range
, SFYHandler::RuleRecConstRef rule
)
(inherits from SFYResponder)
Unregister the handler from this responder which matches the specified condition.
|
Void |
UnregisterHandler(
SFXEventRangeConstRef range
, SFYHandler::HandlerSPP spp
, VoidPtr reference
)
(inherits from SFYResponder)
Unregister the handler from this responder which matches the specified condition.
|
Void |
UnregisterHandler(
SFXEventRangeConstPtr range
, SFYHandler::RuleRecConstPtr rule
, SInt32 length
)
(inherits from SFYResponder)
Unregister the handler from this responder which matches the specified condition.
|
Void |
UnregisterHandler(
SFXEventRangeConstPtr range
, SFYHandler::HandlerSPPConstPtr spp
, VoidPtrConstPtr reference
, SInt32 length
)
(inherits from SFYResponder)
Unregister the handler from this responder which matches the specified condition.
|
Void |
UnregisterTracer(
SFXEventRangeConstRef range
)
(inherits from SFYResponder)
Unregister the dispatching rule from the tracer of this responder which matches the specified condition.
|
Void |
UnregisterTracer(
SFXEventRangeConstPtr range
, SInt32 length
)
(inherits from SFYResponder)
Unregister the dispatching rule from the tracer of this responder which matches the specified condition.
|
T const & |
static_catch(
Void
)
(inherits from static_exception)
Get the current exception.
|
Protected Functions | |
---|---|
Void |
DrawButton13(
SFXGraphicsPtr graphics
, SFXGridConstRef grid
) Draw the 13x13 pixel button of this check box control.
|
Void |
DrawButton27(
SFXGraphicsPtr graphics
, SFXGridConstRef grid
) Draw the 27x27 pixel button of this check box control.
|
Void |
DrawCheckmark09(
SFXGraphicsPtr graphics
, SFXGridConstRef grid
) Draw the 9x9 pixel check mark of this check box control.
|
Void |
DrawCheckmark21(
SFXGraphicsPtr graphics
, SFXGridConstRef grid
) Draw the 21x21 pixel check mark of this check box control.
|
SFXGrid |
DrawShadow14(
SFXGraphicsPtr graphics
, SFXGridConstRef grid
) Draw the 14x14 pixel shadow of this check box control.
|
SFXGrid |
DrawShadow28(
SFXGraphicsPtr graphics
, SFXGridConstRef grid
) Draw the 28x28 pixel shadow of this check box control.
|
Void |
HandleOperateKeyRelease( Void ) This function will be called when the SFEVT_KEY_RELEASE event of the operation key is received.
|
Void |
DrawButton(
SFXGraphicsPtr graphics
, SFXRectangleConstRef rectangle
)
(inherits from SFYButtonControl)
Draw the bevel region of this button control.
|
SFXRectangle |
DrawShadow(
SFXGraphicsPtr graphics
, SFXRectangleConstRef rectangle
)
(inherits from SFYButtonControl)
Draw the shadow region of this button control.
|
static SFYResponderSmp |
Factory(
SFYResponderPtr responder
, SFCErrorPtr exception = null
)
(inherits from SFYResponder)
This function is used to implement the NewInstance function.
|
static SFXMarginConstRef |
GetButtonMargin( Void )
(inherits from SFYButtonControl)
Get the margin region of this button control.
|
static SFXGridConstRef |
GetPressOffset( Void )
(inherits from SFYButtonControl)
Get the press offset of this button control.
|
static SFXMarginConstRef |
GetShadowMargin( Void )
(inherits from SFYButtonControl)
Get the margin of shadow region of this button control.
|
SFYResponderSmp |
GetThis( Void )
(inherits from SFYResponder)
Get the smart pointer of this responder.
|
Void |
HandleBoundGlobal(
SFXRectangleConstRef rectangle
)
(inherits from SFYWidget)
This function will be called when the global region is changed.
|
Void |
HandleBoundOptimize(
SFXRectanglePtr rectangle
)
(inherits from SFYWidget)
This function will be called when the (SFEVT_RESPONDER_BOUND, SFP16_BOUND_OPTIMIZE) event is received.
[Calculate the suitable rectangle size of this responder within the specified hint rectangle.]
|
Void |
HandleBoundReal( Void )
(inherits from SFYControl)
This function will be called when the real region is changed.
|
Void |
HandleBoundRequest(
SFXRectanglePtr rectangle
)
(inherits from SFYWidget)
This function will be called when the (SFEVT_RESPONDER_BOUND, SFP16_BOUND_REQUEST) event is received.
[Calculate the suitable rectangle size of this responder.]
|
Void |
HandleBoundVirtual( Void )
(inherits from SFYWidget)
This function will be called when the (SFEVT_RESPONDER_BOUND, SFP16_BOUND_VIRTUAL) event is received.
[Perform the processing when the virtual region is changed.]
|
Void |
HandleOperateKey( Void )
(inherits from SFYButtonControl)
This function will be called when the SFEVT_KEY event of the operation key is received.
|
Void |
HandleOperateKeyPress( Void )
(inherits from SFYButtonControl)
This function will be called when the SFEVT_KEY_PRESS event of the operation key is received.
|
Void |
HandleRenderRequest(
SFXGraphicsPtr graphics
)
(inherits from SFYWidget)
This function will be called when the (SFEVT_RESPONDER_RENDER, SFP16_RENDER_REQUEST) event is received.
[Draw this responder.]
|
Void |
Invalidate( Void )
(inherits from SFYResponder)
Register the specified redraw region of this responder.
|
Void |
Invalidate(
SFXRectangleConstRef param
)
(inherits from SFYResponder)
Register the specified redraw region of this responder.
|
Void |
InvokeBackward(
SFXEventConstRef event
, Bool overload
, BoolPtr result = null
)
(inherits from SFYResponder)
Call the handlers for the specified event from the end of the handler list registered into this responder.
|
Void |
InvokeForward(
SFXEventConstRef event
, Bool overload
, BoolPtr result = null
)
(inherits from SFYResponder)
Call the handlers for the specified event from the head of the handler list registered into this responder.
|
Void |
SetType(
SFCType param
)
(inherits from SFYResponder)
Set the Type value of this responder to the specified 4-character value.
|
Void |
static_throw(
static_exception< T > const & param
)
(inherits from static_exception)
Set an exception.
|
Void |
static_throw(
T const & param
)
(inherits from static_exception)
Set an exception.
|
Bool |
static_try(
Void
)
(inherits from static_exception)
Confirm whether or not the exception is retained.
|
Types |
---|
CodeEnum Constant that represents the SFYCheckboxControl class.
|
HorizontalEnum
(inherits from SFYResponder)
Constants that represent the horizontal alignment.
|
VerticalEnum
(inherits from SFYResponder)
Constants that represent the vertical alignment.
|
[ protected, explicit ] SFYCheckboxControl(Void);
This constructor performs the initializations as follows:
SFYResponder::SetType | SFYCheckboxControl::CodeEnum | SFYControl::SetMaximumValue | SFYCheckboxControl::SetCheckmarkColor | SFXRGBColor | Type
[ protected, virtual ] virtual ~SFYCheckboxControl(Void);
This destructor does nothing.
[ protected, const ] Void DrawButton13( SFXGraphicsPtr graphics // graphic object SFXGridConstRef grid // left-top coordinate );
This function draws the 13x13 button of this check box control.
In case you want to perform your own processing, override this function.
The default implementation is to draw the 13x13 pixel button of this check box control.
Tip | |
---|---|
This function will be called in the SFZCheckboxControl::HandleRenderRequest function. |
Internal implementation of the SFYCheckboxControl::DrawButton13 function is as follows:
/*protected */Void SFYCheckboxControl::DrawButton13(SFXGraphicsPtr graphics, SFXGridConstRef grid) const { static SFXRectangle::AtomRecConst rectangle[] = { {{ 0, 0}, {13, 13}}, {{ 2, 2}, { 9, 9}} }; RenderButton(graphics, grid, atomic_cast(rectangle)); return; }// SFYCheckboxControl::DrawButton13 // /*private */Void SFYCheckboxControl::RenderButton(SFXGraphicsPtr graphics, SFXGridConstRef grid, SFXRectangleConst rectangle[2]) const { SFXBevelColor bevel; SFXRGBColorConstRef base(GetButtonColor().GetBase()); SFXRGBColor rgb; graphics->SetTranslate(-grid); bevel.Set((GetStateFocus(true)) ? (GetFocusColor()) : (GetButtonColor())); rgb.Set(base); if (!GetStateActive(true)) { bevel.SetLight(bevel.GetBase()); bevel.SetDark(bevel.GetBase()); } if (GetStatePress()) { if (base.GetBrightness() > 0x7F) { bevel.SubRGB(0x11); rgb.SubRGB(0x11); } else { bevel.AddRGB(0x11); rgb.AddRGB(0x11); } } graphics->FillBevelRectangle(rectangle[0], bevel); graphics->FillRectangle(rectangle[1], rgb); graphics->SetTranslate(grid); return; }// SFYCheckboxControl::RenderButton //
[ protected, const ] Void DrawButton27( SFXGraphicsPtr graphics // graphic object SFXGridConstRef grid // left-top coordinate );
This function draws the 27x27 button of this check box control.
In case you want to perform your own processing, override this function.
The default implementation is to draw the 27x27 pixel button of this check box control.
Tip | |
---|---|
This function will be called in the SFZCheckboxControl::HandleRenderRequest function. |
Internal implementation of the SFYCheckboxControl::DrawButton27 function is as follows:
/*protected */Void SFYCheckboxControl::DrawButton27(SFXGraphicsPtr graphics, SFXGridConstRef grid) const { static SFXRectangle::AtomRecConst rectangle[] = { {{ 0, 0}, {27, 27}}, {{ 2, 2}, {23, 23}} }; RenderButton(graphics, grid, atomic_cast(rectangle)); return; }// SFYCheckboxControl::DrawButton27 // /*private */Void SFYCheckboxControl::RenderButton(SFXGraphicsPtr graphics, SFXGridConstRef grid, SFXRectangleConst rectangle[2]) const { SFXBevelColor bevel; SFXRGBColorConstRef base(GetButtonColor().GetBase()); SFXRGBColor rgb; graphics->SetTranslate(-grid); bevel.Set((GetStateFocus(true)) ? (GetFocusColor()) : (GetButtonColor())); rgb.Set(base); if (!GetStateActive(true)) { bevel.SetLight(bevel.GetBase()); bevel.SetDark(bevel.GetBase()); } if (GetStatePress()) { if (base.GetBrightness() > 0x7F) { bevel.SubRGB(0x11); rgb.SubRGB(0x11); } else { bevel.AddRGB(0x11); rgb.AddRGB(0x11); } } graphics->FillBevelRectangle(rectangle[0], bevel); graphics->FillRectangle(rectangle[1], rgb); graphics->SetTranslate(grid); return; }// SFYCheckboxControl::RenderButton //
[ protected, const ] Void DrawCheckmark09( SFXGraphicsPtr graphics // graphic object SFXGridConstRef grid // left-top coordinate );
This function draws the 9x9 pixel check mark of this check box control.
In case you want to perform your own processing, override this function.
The default implementation is to draw the 9x9 pixel check mark of this check box control.
Tip | |
---|---|
This function will be called in the SFZCheckboxControl::HandleRenderRequest function. |
Internal implementation of the SFYCheckboxControl::DrawCheckmark09 function is as follows:
/*protected */Void SFYCheckboxControl::DrawCheckmark09(SFXGraphicsPtr graphics, SFXGridConstRef grid) const { static SFXLine::AtomRecConst line[] = { {{ 0, 5}, { 2, 7}}, {{ 3, 6}, { 8, 1}}, {{ 0, 6}, { 2, 8}}, {{ 3, 7}, { 8, 2}} }; RenderCheckmark(graphics, grid, atomic_cast(line)); return; }// SFYCheckboxControl::DrawCheckmark09 // /*private */Void SFYCheckboxControl::RenderCheckmark(SFXGraphicsPtr graphics, SFXGridConstRef grid, SFXLineConst line[4]) const { SFXRGBColor rgb; Bool checkmarkBright; if (GetCurrentValue()) { graphics->SetTranslate(-grid); rgb.Set(_color.checkmark); checkmarkBright = _color.checkmark.GetBrightness() > 0x7F; if (!GetStateActive(true)) { (checkmarkBright) ? rgb.SubRGB(0x44) : rgb.AddRGB(0x44); } graphics->SetForeColor(rgb); graphics->DrawLine(line[0]); graphics->DrawLine(line[1]); (checkmarkBright) ? rgb.SubRGB(0x44) : rgb.AddRGB(0x44); graphics->SetForeColor(rgb); graphics->DrawLine(line[2]); graphics->DrawLine(line[3]); graphics->SetTranslate(grid); } return; }// SFYCheckboxControl::RenderCheckmark //
[ protected, const ] Void DrawCheckmark21( SFXGraphicsPtr graphics // graphic object SFXGridConstRef grid // left-top coordinate );
This function draws the 21x21 pixel check mark of this check box control.
In case you want to perform your own processing, override this function.
The default implementation is to draw the 21x21 pixel check mark of this check box control.
Tip | |
---|---|
This function will be called in the SFZCheckboxControl::HandleRenderRequest function. |
Internal implementation of the SFYCheckboxControl::DrawCheckmark21 function is as follows:
/*protected */Void SFYCheckboxControl::DrawCheckmark21(SFXGraphicsPtr graphics, SFXGridConstRef grid) const { static SFXLine::AtomRecConst line[] = { {{ 0, 15}, { 4, 19}}, {{ 5, 18}, {20, 3}}, {{ 0, 16}, { 4, 20}}, {{ 5, 19}, {20, 4}} }; RenderCheckmark(graphics, grid, atomic_cast(line)); return; }// SFYCheckboxControl::DrawCheckmark21 // /*private */Void SFYCheckboxControl::RenderCheckmark(SFXGraphicsPtr graphics, SFXGridConstRef grid, SFXLineConst line[4]) const { SFXRGBColor rgb; Bool checkmarkBright; if (GetCurrentValue()) { graphics->SetTranslate(-grid); rgb.Set(_color.checkmark); checkmarkBright = _color.checkmark.GetBrightness() > 0x7F; if (!GetStateActive(true)) { (checkmarkBright) ? rgb.SubRGB(0x44) : rgb.AddRGB(0x44); } graphics->SetForeColor(rgb); graphics->DrawLine(line[0]); graphics->DrawLine(line[1]); (checkmarkBright) ? rgb.SubRGB(0x44) : rgb.AddRGB(0x44); graphics->SetForeColor(rgb); graphics->DrawLine(line[2]); graphics->DrawLine(line[3]); graphics->SetTranslate(grid); } return; }// SFYCheckboxControl::RenderCheckmark //
[ protected, const ] SFXGrid DrawShadow14( SFXGraphicsPtr graphics // graphic object SFXGridConstRef grid // left-top coordinate );
This function draws the 14x14 pixel shadow of this check box control.
In case you want to perform your own processing, override this function.
The default implementation is to draw the 14x14 pixel shadow of this check box control.
Tip | |
---|---|
This function will be called in the SFZCheckboxControl::HandleRenderRequest function. |
Internal implementation of the SFYCheckboxControl::DrawShadow14 function is as follows:
/*protected */SFXGrid SFYCheckboxControl::DrawShadow14(SFXGraphicsPtr graphics, SFXGridConstRef grid) const { static SFXLine::AtomRecConst line[][2] = { {{{13, 0}, {13, 13}}, {{ 0, 13}, {13, 13}}}, {{{ 0, 0}, {13, 0}}, {{ 0, 0}, { 0, 13}}} }; SFXGrid result(grid); if (GetStatePress()) { RenderShadow(graphics, grid, atomic_cast(line[1])); result.Add(1, 1); } else { RenderShadow(graphics, grid, atomic_cast(line[0])); result.Add(0, 0); } return result; }// SFYCheckboxControl::DrawShadow14 // /*private */Void SFYCheckboxControl::RenderShadow(SFXGraphicsPtr graphics, SFXGridConstRef grid, SFXLineConst line[2]) const { SFXRGBColor rgb; graphics->SetTranslate(-grid); rgb.Set(GetShadowColor()); if (!GetStateActive(true)) { (rgb.GetBrightness() > 0x7F) ? rgb.SubRGB(0x44) : rgb.AddRGB(0x44); } graphics->SetForeColor(rgb); graphics->DrawLine(line[0]); graphics->DrawLine(line[1]); graphics->SetTranslate(grid); return; }// SFYCheckboxControl::RenderShadow //
[ protected, const ] SFXGrid DrawShadow28( SFXGraphicsPtr graphics // graphic object SFXGridConstRef grid // left-top coordinate );
This function draws the 28x28 pixel shadow of this check box control.
In case you want to perform your own processing, override this function.
The default implementation is to draw the 28x28 pixel shadow of this check box control.
Tip | |
---|---|
This function will be called in the SFZCheckboxControl::HandleRenderRequest function. |
Internal implementation of the SFYCheckboxControl::DrawShadow28 function is as follows:
/*protected */SFXGrid SFYCheckboxControl::DrawShadow28(SFXGraphicsPtr graphics, SFXGridConstRef grid) const { static SFXLine::AtomRecConst line[][2] = { {{{27, 0}, {27, 27}}, {{ 0, 27}, {27, 27}}}, {{{ 0, 0}, {27, 0}}, {{ 0, 0}, { 0, 27}}} }; SFXGrid result(grid); if (GetStatePress()) { RenderShadow(graphics, grid, atomic_cast(line[1])); result.Add(1, 1); } else { RenderShadow(graphics, grid, atomic_cast(line[0])); result.Add(0, 0); } return result; }// SFYCheckboxControl::DrawShadow28 // /*private */Void SFYCheckboxControl::RenderShadow(SFXGraphicsPtr graphics, SFXGridConstRef grid, SFXLineConst line[2]) const { SFXRGBColor rgb; graphics->SetTranslate(-grid); rgb.Set(GetShadowColor()); if (!GetStateActive(true)) { (rgb.GetBrightness() > 0x7F) ? rgb.SubRGB(0x44) : rgb.AddRGB(0x44); } graphics->SetForeColor(rgb); graphics->DrawLine(line[0]); graphics->DrawLine(line[1]); graphics->SetTranslate(grid); return; }// SFYCheckboxControl::RenderShadow //
[ public, const ] SFXRGBColorConstRef GetCheckmarkColor(Void);
[ protected, virtual ] Void HandleOperateKeyRelease(Void);
This function will be called when the SFEVT_KEY_RELEASE event(key event[SFEVT_KEY]) of the operaion key set with the SFYButtonControl::SetOperateKey function is received.
In case you want to perform your own processing, override this function.
The default implementation is to send the SFXEvent(SFEVT_RESPONDER_RESULT, SFP16_RESULT_OK, current value) event, of which the current value can be obtained by calling the SFYControl::GetCurrentValue function.
Internal implementation of the SFYCheckboxControl::HandleOperateKeyRelease function is as follows:
/*protected virtual */Void SFYCheckboxControl::HandleOperateKeyRelease(Void) { SetCurrentValue(!GetCurrentValue()); InvokeForward(SFXEvent(SFEVT_RESPONDER_RESULT, SFP16_RESULT_OK, GetCurrentValue()), false); return; }// SFYCheckboxControl::HandleOperateKeyRelease //
[ public ] Void SetCheckmarkColor( SFXRGBColorConstRef param // value to set );
This function sets the color(SFXRGBColor) of the check mark to the specified value.
Default: SFXRGBColor(0x00, 0x00, 0x00, 0x00)[black color].
enum CodeEnum { CODE_TYPE = four_char_code('.', 'c', 'h', 'k') }; SFMTYPEDEFTYPE(CodeEnum)
Copyright(c) 2002 - 2024 Sophia Cradle Incorporated All Rights Reserved. |