PrevNextUpHome SophiaFramework UNIVERSE 5.3
SFZImageButtonControl
Responder which represents a button control to display an image .
#include <SFZImageButtonControl.h.hpp>
class SFZImageButtonControl : public SFYButtonControl;
SFMTYPEDEFRESPONDER(SFZImageButtonControl)

Inheritance diagram

 Inheritance diagram of SFZImageButtonControlClass

Collaboration diagram

 Collaboration diagram of SFZImageButtonControlClass

Description

How to use

Image button control to display an image(SFZImageButtonControl) will receive the result event [SFXEvent(SFEVT_RESPONDER_RESULT, SFP16_RESULT_OK, SFYControl::GetCurrentValue())] if the operation key set with the SFYButtonControl::SetOperateKey function is released after pressed.

[Note] Note
This result event will occur in the SFYButtonControl::HandleOperateKeyRelease function.

Figure 334. Execution Result

Execution Result

In the default implementation, the image button control is drawn as below depending on the state.

Figure 335. Expanded figure of the image button control[In the "active" or "enable" state, when not pressed]


Expanded figure of the image button control[In the "active" or "enable" state, when not pressed]

The image is drawn within the content region which is surrounded by 2 pixels border("focus frame") in the bevel region.

For more details: SFYButtonControl::DrawButton | SFYButtonControl::DrawShadow

In the "inactive" or "focus" state, the colors of the image button control's border, content, and shadow are changed.

Figure 336. Expanded figure of the image button control[in the "inactive" state]

Figure 337. Expanded figure of the image button control[In the focused state, when not pressed]

Figure 338. Expanded figure of the image button control[In the focused state, when pressed]

Reference

Image Button Control to Display an Image [SFZImageButtonControl] | State | SFYControl | SFYButtonControl | SFYImageWidget

Member

Constructor/Destructor
SFZImageButtonControl( Void )
Constructor of the SFZImageButtonControl class.
~SFZImageButtonControl( Void )
Destructor of the SFZImageButtonControl class.
Public Functions
HorizontalEnum GetHorizontalAlign( Void )
Get the horizontal alignment.
SFBImageSmpConstRef GetImage( Void )
Get the image.
VerticalEnum GetVerticalAlign( Void )
Get the vertical alignment.
static
SFZImageButtonControlSmp
NewInstance( SFCErrorPtr exception = null )
Create a new instance of this responder class.
Void SetHorizontalAlign( HorizontalEnum param )
Set the horizontal alignment to the specified value.
SFCError SetImage( SFXPathConstRef path )
Set the image to the specified value.
SFCError SetImage( SFXPathConstRef path , UInt16 id )
Set the image to the specified value.
SFCError SetImage( SFBImageSmpConstRef param )
Set the image to the specified value.
Void SetVerticalAlign( VerticalEnum param )
Set the vertical alignment 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
SFYImageWidgetSmpConstRef GetWidget( Void )
Get the widget which is contained internally for drawing an image.
Void HandleBoundOptimize( SFXRectanglePtr rectangle )
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 HandleBoundRequest( SFXRectanglePtr rectangle )
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 )
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 HandleRenderRequest( SFXGraphicsPtr graphics )
This function will be called when the (SFEVT_RESPONDER_RENDER, SFP16_RENDER_REQUEST) event is received. [Draw this responder.]
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 HandleBoundReal( Void ) (inherits from SFYControl)
This function will be called when the real 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 HandleOperateKeyRelease( Void ) (inherits from SFYButtonControl)
This function will be called when the SFEVT_KEY_RELEASE event of the operation key is received.
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 SFZImageButtonControl class.
HorizontalEnum
Constants that represent the horizontal alignment.
VerticalEnum
Constants that represent the vertical alignment.

SFZImageButtonControl::SFZImageButtonControl
Constructor of the SFZImageButtonControl class.
[ protected, explicit ]
SFZImageButtonControl(Void);

Description

This constructor performs the initializations as follows:

  1. Set the type of this responder to "cibn".
  2. Create the SFYImageWidget instance which is internally contained as a child responder for drawing the image.
  3. Set the state of the SFYImageWidget instance to "visible" + "active" + "disable" + "unfocus".
  4. Set the horizontal alignment of the image to SFYImageWidget::DEFAULT_HORIZONTAL.
  5. Set the vertical alignment of the image to SFYImageWidget::DEFAULT_VERTICAL.

Reference

SFYResponder::SetType | SFZImageButtonControl::CodeEnum | SFYResponder::SetParent | SFYResponder::SetState | SFZImageButtonControl::SetHorizontalAlign | SFZImageButtonControl::SetVerticalAlign | SFZImageButtonControl::HorizontalEnum | SFZImageButtonControl::VerticalEnum | SFYImageWidget::NewInstance | SFYImageWidget | Type | State


SFZImageButtonControl::~SFZImageButtonControl
Destructor of the SFZImageButtonControl class.
[ protected, virtual ]
virtual ~SFZImageButtonControl(Void);

Description

This destructor does nothing.


SFZImageButtonControl::GetHorizontalAlign
Get the horizontal alignment.
[ public, const ]
HorizontalEnum GetHorizontalAlign(Void);

Return value

Value of the horizontal alignment.

Reference

SFZImageButtonControl::SetHorizontalAlign | SFZImageButtonControl::HorizontalEnum


SFZImageButtonControl::GetImage
Get the image.
[ public, const ]
SFBImageSmpConstRef GetImage(Void);

SFZImageButtonControl::GetVerticalAlign
Get the vertical alignment.
[ public, const ]
VerticalEnum GetVerticalAlign(Void);

Return value

Value of the vertical alignment.

Reference

SFZImageButtonControl::SetVerticalAlign | SFZImageButtonControl::VerticalEnum


SFZImageButtonControl::GetWidget
Get the widget which is contained internally for drawing an image.
[ protected, const ]
SFYImageWidgetSmpConstRef GetWidget(Void);

Description

This function gets the instance of the SFYImageWidget class, which is contained as a child responder internally for drawing an image.

The drawing of the image is delegated to the SFYImageWidget class.

Reference

SFYImageWidget


SFZImageButtonControl::HandleBoundOptimize
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.]
[ protected, virtual, const ]
Void HandleBoundOptimize(
    SFXRectanglePtr rectangle   // hint region and calculated region
);

Description

This function will be called when the region event [SFXEvent(SFEVT_RESPONDER_BOUND, SFP16_BOUND_OPTIMIZE, rectangle)] is received.

This function calculates the suitable rectangle size of this responder within the specified hint rectangle[i.e., rectangle element (P32 parameter) of the region event].

The suitable rectangle size is stored into the size element of the rectangle argument as a result of calculation. It is recommended not to change the origin of the rectangle argument in this function.

[Note] Region event[(SFEVT_RESPONDER_BOUND, SFP16_BOUND_OPTIMIZE) event]

If the rectangle argument of the hint region is specified, the SFYResponder::GetSuitableBound function will send the region event [SFXEvent(SFEVT_RESPONDER_BOUND, SFP16_BOUND_OPTIMIZE, rectangle)] to this responder.

Then, the SFYWidget::HandleBoundOptimize virtual function will be called.

The rectangle element (P32 parameter) of the region event is set to the hint region as an initial value.

Reference: SFYImageWidget::HandleBoundOptimize

Internal Implementation

Internal implementation of the SFZImageButtonControl::HandleBoundOptimize function is as follows:

SFYImageWidgetSmp               _widget;

/*protected virtual */Void SFZImageButtonControl::HandleBoundOptimize(SFXRectanglePtr rectangle) const
{
    rectangle->Deflate(GetShadowMargin());
    rectangle->Deflate(GetButtonMargin());
    rectangle->SetSize(_widget->GetSuitableBound(*rectangle).GetSize());
    rectangle->Inflate(GetButtonMargin());
    rectangle->Inflate(GetShadowMargin());
    return;
}// SFZImageButtonControl::HandleBoundOptimize //

Reference

SFYResponder::GetSuitableBound | SFYButtonControl::GetButtonMargin | SFZImageButtonControl::SetImage | SFYImageWidget::HandleBoundOptimize | SFYImageWidget | SFXEvent | Region Event[SFEVT_RESPONDER_BOUND] | Handler for the Region Event[XANDLER_DECLARE_VOIDBOUND]


SFZImageButtonControl::HandleBoundRequest
This function will be called when the (SFEVT_RESPONDER_BOUND, SFP16_BOUND_REQUEST) event is received. [Calculate the suitable rectangle size of this responder.]
[ protected, virtual, const ]
Void HandleBoundRequest(
    SFXRectanglePtr rectangle   // calculated region
);

Description

This function will be called when the region event [SFXEvent(SFEVT_RESPONDER_BOUND, SFP16_BOUND_REQUEST, rectangle)] is received.

This function calculates the suitable rectangle size of this responder.

The suitable rectangle size is stored into the size element of the rectangle argument as a result of calculation. It is recommended not to change the origin element of the rectangle argument within this function.

[Note] Region event[(SFEVT_RESPONDER_BOUND, SFP16_BOUND_REQUEST) event]

If the rectangle argument of the hint region is not specified, the SFYResponder::GetSuitableBound function will send the region event [SFXEvent(SFEVT_RESPONDER_BOUND, SFP16_BOUND_REQUEST, rectangle)] to this responder.

Then, the SFYWidget::HandleBoundRequest virtual function will be called.

The rectangle element (P32 parameter) of the region event is set to the real region as an initial value.

[Tip] Tip
Default value of the real region: SFXRectangle(0, 0, 0, 0)

Internal Implementation

Internal implementation of the SFZImageButtonControl::HandleBoundRequest function is as follows:

SFYImageWidgetSmp               _widget;

/*protected virtual */Void SFZImageButtonControl::HandleBoundRequest(SFXRectanglePtr rectangle) const
{
    rectangle->Deflate(GetShadowMargin());
    rectangle->Deflate(GetButtonMargin());
    rectangle->SetSize(_widget->GetSuitableBound().GetSize());
    rectangle->Inflate(GetButtonMargin());
    rectangle->Inflate(GetShadowMargin());
    return;
}// SFZImageButtonControl::HandleBoundRequest //

Reference

SFYResponder::GetSuitableBound | SFYImageWidget | SFXEvent | Real Region Region Event[SFEVT_RESPONDER_BOUND] | Handler for the Region Event[XANDLER_DECLARE_VOIDBOUND]


SFZImageButtonControl::HandleBoundVirtual
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.]
[ protected, virtual ]
Void HandleBoundVirtual(Void);

Description

This function will be called when the (SFEVT_RESPONDER_BOUND, SFP16_BOUND_VIRTUAL) event is received.

In case you want to perform your own processing when the virtual region is changed, override this virtual function.

The default implementation is to equalize the real region with the new local region and relocate this responder to fit into the new virtual region.

[Note] Sending the (SFEVT_RESPONDER_BOUND, SFP16_BOUND_VIRTUAL) event

The (SFEVT_RESPONDER_BOUND, SFP16_BOUND_VIRTUAL) event will occur when the virtual region is changed by calling the SFYResponder::SetRealBound or SFYResponder::SetVirtualBound function.

[Note] Another method when the virtual region is changed

Other than overriding this virtual function, it is possible to define and implement the handler for region event[XANDLER_DECLARE_VOIDBOUND], and register it into the responder.

In the processing when the virtual region is updated, this virtual function is executed first, and next the handlers for region event are executed in the registered order.

In almost all cases, the method to override this virtual function is adopted since defining, implementing and registering the handler for region event can be omitted.

Internal Implementation

Internal implementation of the SFZImageButtonControl::HandleBoundVirtual function is as follows:

SFYImageWidgetSmp               _widget;

/*protected virtual */Void SFZImageButtonControl::HandleBoundVirtual(Void)
{
    Relocate();
    return;
}// SFZImageButtonControl::HandleBoundVirtual //

/*private */Void SFZImageButtonControl::Relocate(Void)
{
    SFXRectangle                                lx;

    lx.Set(GetLocalBound());
    lx.Deflate(GetShadowMargin());
    lx.Deflate(GetButtonMargin());
    if (GetStatePress()) {
        lx.Offset(GetPressOffset());
    }
    _widget->SetRealBound(lx);
    return;
}// SFZImageButtonControl::Relocate //

Reference

SFYResponder::SetRealBound | SFYResponder::SetVirtualBound | SFYImageWidget | SFXEvent | Region Event[SFEVT_RESPONDER_BOUND] | Handler for the Region Event[XANDLER_DECLARE_VOIDBOUND] | Virtual Region | Real Region | Local Region


SFZImageButtonControl::HandleRenderRequest
This function will be called when the (SFEVT_RESPONDER_RENDER, SFP16_RENDER_REQUEST) event is received. [Draw this responder.]
[ protected, virtual, const ]
Void HandleRenderRequest(
    SFXGraphicsPtr graphics   // graphic object
);

Description

This function will be called when the (SFEVT_RESPONDER_RENDER, SFP16_RENDER_REQUEST) event is received.

In case you want to perform your own drawing of this responder, override this function.

The default implementation is to draw this responder.

[Note] The method to darw a responder

In addition to overriding this virtual function, it is possible to define and implement the handler for drawing event(drawing handler)[XANDLER_DECLARE_VOIDRENDER], and register it into the responder.

Then, the overridden virtual function will be called first, and next the drawing handlers registered into the responder will be booted up in the registered order.

In almost all cases, the method to override this function is used to draw the responder since there is no need to declare and register the drawing handler.

[Note] Procedure of drawing a responder

The drawing handler will be booted up when the drawing event(SFEVT_RESPONDER_RENDER) occurs. And then the drawing handler draw the responder actually.

The drawing event will be sent to only the responders including the region to be redrawn out of the redraw regions registered into the renderer using the SFYResponder::InvokeBackward function after the SFYResponder::Render function boots up the renderer.

Here, the SFYResponder::Render function will be called at the following situations:

  1. At the end of the event loop
  2. At the applet start / resume or the end of a highest priority event handler
  3. In the callback, which is outside the event loop.

If calling the SFYResponder::Render function with specifying "true" as an argument, the drawing event will be sent to all the responders to be actually displayed on the screen which are located below the responder in the responder tree, regardless of the registration of redraw region.

Internal Implementation

Internal implementation of the SFZImageButtonControl::HandleRenderRequest function is as follows:

/*protected virtual */Void SFZImageButtonControl::HandleRenderRequest(SFXGraphicsPtr graphics) const
{
    DrawButton(graphics, DrawShadow(graphics, GetLocalBound()));
    return;
}// SFZImageButtonControl::HandleRenderRequest //

Reference

SFYButtonControl::DrawButton | SFYButtonControl::DrawShadow | SFZImageButtonControl::SetImage | SFZImageButtonControl::SetHorizontalAlign | SFZImageButtonControl::SetVerticalAlign | SFYImageWidget::HandleRenderRequest | SFYResponder::Invalidate | SFYResponder::Render | SFYResponder::InvokeBackward | SFYImageWidget | SFXEvent | Drawing Event[SFEVT_RESPONDER_RENDER] | Handler for the Drawing Event[XANDLER_DECLARE_VOIDRENDER] | Rendering | Event Loop | Responder Tree | Virtual Region | Real Region | Local Region


SFZImageButtonControl::NewInstance
Create a new instance of this responder class.
[ public, static ]
SFZImageButtonControlSmp NewInstance(
    SFCErrorPtr exception = null   // error value
);

Argument

exception

Return the error value generated inside the function.

Return value

  • If succeeds: not null pointer
  • Otherwise: null pointer

Description

This function creates a new instance of this responder class.

If succeeds, a not null pointer will be returned, and the "exception" argument is SFERR_NO_ERROR. If fails such as insufficient memory, a null pointer will be returned, and the "exception" argument holds the error value.

Example

The code to create a new instance of this responder class is as follows:

SFZImageButtonControlSmp _imagebutton;
SFCError error;

if ((_imagebutton = SFZImageButtonControl::NewInstance(&error)) != null) {

    ...
}

SFZImageButtonControl::SetHorizontalAlign
Set the horizontal alignment to the specified value.
[ public ]
Void SetHorizontalAlign(
    HorizontalEnum param   // 
);

Description

This function sets the horizontal alignment to the specified value.

Default: SFYImageWidget::DEFAULT_HORIZONTAL

SFYImageWidget::DEFAULT_HORIZONTAL の値は SFYImageWidget::HorizontalEnum をReferenceしてください.

Reference

SFZImageButtonControl::GetHorizontalAlign | SFZImageButtonControl::HorizontalEnum | SFYImageWidget::HorizontalEnum


SFZImageButtonControl::SetImage
Set the image to the specified value.
[ public ]
SFCError SetImage(
    SFXPathConstRef path   // file path
);
[ public ]
SFCError SetImage(
    SFXPathConstRef path   // resource file path
    UInt16 id              // resource ID
);
[ public ]
SFCError SetImage(
    SFBImageSmpConstRef param   // image object
);

Return value

  • Sucessfull: SFERR_NO_ERROR
  • Image cannot be used: SFERR_INVALID_PARAM
  • Other errors: SFERR_FAILED

Description

This function sets the image to the specified value.

The image is set directly in the argument, or read from the resource file.

This function cannot be used with the image such as the image of invalid size or the animation bitmap.

Reference

SFZImageButtonControl::GetImage | SFZImageButtonControl::SetHorizontalAlign | SFZImageButtonControl::SetVerticalAlign | SFBImage | BREW API IImage


SFZImageButtonControl::SetVerticalAlign
Set the vertical alignment to the specified value.
[ public ]
Void SetVerticalAlign(
    VerticalEnum param   // value to set
);

Description

This function sets the vertical alignment to the specified value.

Default: SFYImageWidget::DEFAULT_VERTICAL

For the value of SFYImageWidget::DEFAULT_VERTICAL, refer to SFYImageWidget::VerticalEnum.

Reference

SFZImageButtonControl::GetVerticalAlign | SFZImageButtonControl::VerticalEnum | SFYImageWidget::VerticalEnum


SFZImageButtonControl::CodeEnum
Constant that represents the SFZImageButtonControl class.
enum CodeEnum {
    CODE_TYPE = four_char_code('c', 'i', 'b', 'n')
};
SFMTYPEDEFTYPE(CodeEnum)

Reference

SFYResponder::GetType | SFYResponder::SetType


SFZImageButtonControl::HorizontalEnum
Constants that represent the horizontal alignment.
enum HorizontalEnum {
    HORIZONTAL_LEFT    = SFYImageWidget::HORIZONTAL_LEFT,   // left-aligned
    HORIZONTAL_CENTER  = SFYImageWidget::HORIZONTAL_CENTER, // center-aligned
    HORIZONTAL_RIGHT   = SFYImageWidget::HORIZONTAL_RIGHT,  // right-aligned
    DEFAULT_HORIZONTAL = SFYImageWidget::DEFAULT_HORIZONTAL // デフォルト設定 : center-aligned
};
SFMTYPEDEFTYPE(HorizontalEnum)

Reference

SFYImageWidget::HorizontalEnum


SFZImageButtonControl::VerticalEnum
Constants that represent the vertical alignment.
enum VerticalEnum {
    VERTICAL_TOP     = SFYImageWidget::VERTICAL_TOP,     // top-aligned
    VERTICAL_MIDDLE  = SFYImageWidget::VERTICAL_MIDDLE,  // center-aligned
    VERTICAL_BOTTOM  = SFYImageWidget::VERTICAL_BOTTOM,  // bottom-aligned
    DEFAULT_VERTICAL = SFYImageWidget::DEFAULT_VERTICAL  // default: center-aligned
};
SFMTYPEDEFTYPE(VerticalEnum)

Reference

SFYImageWidget::VerticalEnum