TalanSoft Toolkits  201707
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
iWidget Struct Referenceabstract
Inheritance diagram for iWidget:
iMessageHandler iUnknown

Detailed Description

Widget interface.

Widget

virtual void Destroy ()=0
 Destroy the widget and it's children. More...
 
virtual iGraphicsGetGraphics () const =0
 Get the widget's Graphics object. {Property}. More...
 
virtual iGraphicsContextGetGraphicsContext () const =0
 Get the widget's Graphics Context. {Property}. More...
 
virtual iUIContextGetUIContext () const =0
 Get the widget's UI context. {Property}. More...
 
virtual iHStringGetClassName () const =0
 Get the widget's class. {Property}. More...
 
virtual void SetID (iHString *ahspID)=0
 Set the widget's ID. {Property}. More...
 
virtual iHStringGetID () const =0
 Get the widget's ID. {Property}. More...
 
virtual tBool SetStyle (tU32 anStyle)=0
 Set the widget's style. {Property}. More...
 
virtual tU32 GetStyle () const =0
 Get the widget's style. {Property}. More...
 
virtual void SetParent (iWidget *apParent)=0
 Set the parent widget. {Property}. More...
 
virtual iWidgetGetParent () const =0
 Get the parent widget. {Property}. More...
 
virtual void SetZOrder (eWidgetZOrder aZOrder)=0
 Set the widget's ZOrder. {Property}. More...
 
virtual eWidgetZOrder GetZOrder () const =0
 Get the widget's ZOrder. {Property}. More...
 
virtual void SetZOrderAbove (iWidget *apWidget)=0
 Place the widget above (on top of) the specified sibling widget in the ZOrder. More...
 
virtual tU32 GetDrawOrder () const =0
 Get the drawing order. {Property}. More...
 
virtual void SetAutoLayout (tWidgetAutoLayoutFlags aFlags)=0
 Set if the widget's auto layout flags. {Property}. More...
 
virtual tWidgetAutoLayoutFlags GetAutoLayout () const =0
 Get if the widget's auto layout flags. {Property}. More...
 
virtual void ComputeAutoLayout (tWidgetAutoLayoutFlags aFlags)=0
 Computer the widget children's auto layout. More...
 

Widget rectangle

virtual void SetPosition (const sVec2f &avPos)=0
 Set the widget's position. More...
 
virtual sVec2f GetPosition () const =0
 Get the widget's position. More...
 
virtual void SetSize (const sVec2f &avSize)=0
 Set the widget's size. {Property}. More...
 
virtual sVec2f GetSize () const =0
 Get the widget's size. {Property}. More...
 
virtual void SetMinimumSize (sVec2f avMinSize)=0
 Set the widget's minimum size. More...
 
virtual sVec2f GetMinimumSize () const =0
 Get the widget's minimum size. {Property}. More...
 
virtual void SetMaximumSize (sVec2f avMaxSize)=0
 Set the widget's maximum size. More...
 
virtual sVec2f GetMaximumSize () const =0
 Get the widget's maximum size. {Property}. More...
 
virtual void SetRect (const sRectf &aRect)=0
 Set the widget's rectangle. More...
 
virtual sRectf GetRect () const =0
 Get the widget's rectangle. More...
 
virtual sRectf GetWidgetRect () const =0
 Get the widget rectangle. Relative to it's own top-left corner. {Property}. More...
 
virtual sRectf GetDockFillRect () const =0
 Get the widget's dock fill rectangle. More...
 

Widget client rectangle

virtual void SetClientPosition (const sVec2f &avPos)=0
 Set the widget's client position. More...
 
virtual sVec2f GetClientPosition () const =0
 Get the widget's client position. More...
 
virtual void SetClientSize (const sVec2f &avSize)=0
 Set the widget's client size. {Property}. More...
 
virtual sVec2f GetClientSize () const =0
 Get the widget's client size. {Property}. More...
 
virtual void SetClientRect (const sRectf &aRect)=0
 Set the widget's client rectangle. More...
 
virtual sRectf GetClientRect () const =0
 Get the widget's client rectangle. More...
 
virtual sRectf ComputeFitRect (const sRectf &aRect) const =0
 Compute a rectangle that fits around the specified client rectangle. More...
 
virtual void SetFitRect (const sRectf &aRect)=0
 Set a rectangle that fits around the specified client rectangle. More...
 
virtual void SetFitSize (const sVec2f avSize)=0
 Set a rectangle that fits around the specified client size. More...
 

Widget absolute rectangle

virtual void SetAbsolutePosition (const sVec2f &avPos)=0
 Set the widget's absolute position. More...
 
virtual sVec2f GetAbsolutePosition () const =0
 Get the widget's absolute position. More...
 
virtual void SetAbsoluteRect (const sRectf &aRect)=0
 Set the widget's absolute rectangle. More...
 
virtual sRectf GetAbsoluteRect () const =0
 Get the widget's absolute rectangle. {Property}. More...
 

Widget clipped rectangle.

virtual sRectf GetClippedRect () const =0
 Get the widget's rect clipped to the parent client rectangle. More...
 
virtual sRectf GetAbsoluteClippedRect () const =0
 Get the widget's absolute rect clipped to the parent client rectangle. More...
 
virtual sRectf GetClippedClientRect () const =0
 Get the widget's client rect clipped to the parent client rectangle. More...
 
virtual sRectf GetAbsoluteClippedClientRect () const =0
 Get the widget's absolute client rect clipped to the parent client rectangle. More...
 

Widget relative rectangle

virtual void SetRelativePosition (const sVec2f &avPos)=0
 Set the widget's relative position. {Property}. More...
 
virtual sVec2f GetRelativePosition () const =0
 Get the widget's relative position. {Property}. More...
 
virtual void SetRelativeSize (const sVec2f &avSize)=0
 Set the widget's relative size. {Property}. More...
 
virtual sVec2f GetRelativeSize () const =0
 Get the widget's relative size. {Property}. More...
 
virtual void SetRelativeRect (const sRectf &aRect)=0
 Set the widget's relative rectangle. {Property}. More...
 
virtual sRectf GetRelativeRect () const =0
 Get the widget's relative rectangle. {Property}. More...
 

Widget padding, border and margin.

virtual void SetPadding (const sVec4f &aRect)=0
 Set the padding size. More...
 
virtual sVec4f GetPadding () const =0
 Get the padding size. {Property}. More...
 
virtual tBool GetHasPadding () const =0
 Get whether a padding is specified (non-zero). {Property}. More...
 
virtual void SetMargin (const sVec4f &aRect)=0
 Set the margin rectangle. More...
 
virtual sVec4f GetMargin () const =0
 Get the margin rectangle. {Property}. More...
 
virtual tBool GetHasMargin () const =0
 Get whether a margin is specified (non-zero). {Property}. More...
 

Input

virtual tBool SetFocus ()=0
 Ask to get the input focus. More...
 
virtual tBool MoveFocus (tBool abToPrevious)=0
 Move the focus to the previous or next widget. More...
 
virtual void SetCapture (tBool abEnable)=0
 Set the capture of the input. {Property}. More...
 
virtual tBool GetCapture () const =0
 Get the capture of the input state. {Property}. More...
 
virtual void SetExclusive (tBool abEnable)=0
 Set exclusive. {Property}. More...
 
virtual tBool GetExclusive () const =0
 Get the exclusive state. {Property}. More...
 
virtual void SetInputSubmitFlags (tU32 aSubmitFlags)=0
 Set the input submit flags. More...
 
virtual tU32 GetInputSubmitFlags () const =0
 Get the input submit flags. More...
 

Status

virtual void SetVisible (tBool abVisible)=0
 Set the widget visibility status. {Property}. More...
 
virtual tBool GetVisible () const =0
 Get the widget visibility status. {Property}. More...
 
virtual void SetEnabled (tBool abEnabled)=0
 Set the widget enabled status. {Property}. More...
 
virtual tBool GetEnabled () const =0
 Get the widget enabled status. {Property}. More...
 
virtual void SetIgnoreInput (tBool abIgnoreInput)=0
 Set the ignore input status. {Property}. More...
 
virtual tBool GetIgnoreInput () const =0
 Get the ignore input status. {Property}. More...
 
virtual void SetStatus (tBool abVisible, tBool abEnabled, tBool abIgnoreInput)=0
 Set all the status. More...
 
virtual void SetHideChildren (tBool abHideChildren)=0
 Set whether all client children of the widget are hidden. {Property}. More...
 
virtual tBool GetHideChildren () const =0
 Get whether all client children of the widget are hidden. {Property}. More...
 
virtual tBool GetIsMouseOver () const =0
 Get whether the mouse is over this widget's client area. {Property}. More...
 
virtual tBool GetIsPressed () const =0
 Get whether the main mouse button is pressed while the mouse is over the widget's client area. {Property}. More...
 
virtual tBool GetIsNcMouseOver () const =0
 Get whether the mouse is over this widget's non-client area. {Property}. More...
 
virtual tBool GetIsNcPressed () const =0
 Get whether the main mouse button is pressed while the mouse is over the widget's non-client area. {Property}. More...
 
virtual tBool GetHasFocus () const =0
 Get whether the widget has input (keyboard) focus. {Property}. More...
 
virtual tBool GetDraggingSource () const =0
 Get whether the widget is the current draggin source. {Property}. More...
 
virtual tBool GetDragging () const =0
 Get whether something is currently being dragged from this widget. {Property}. More...
 
virtual void Redraw ()=0
 Force redrawing of the widget's content. More...
 

Timer

virtual void SetTimer (tU32 anID, tF32 afTime)=0
 Set a timer. More...
 
virtual tF32 GetTimer (tU32 anID) const =0
 Get a timer. More...
 

Sinks

virtual tBool AddSink (iWidgetSink *apSink)=0
 Add a widget sink as first sink called. More...
 
virtual tBool AddPostSink (iWidgetSink *apSink)=0
 Add a widget sink as last sink called. More...
 
virtual iWidgetSinkAddClassSink (const achar *aaszClassName)=0
 Add a new instance of a widget sink as first sink called. More...
 
virtual iWidgetSinkAddClassPostSink (const achar *aaszClassName)=0
 Add a new instance of a widget sink as last sink called. More...
 
virtual void RemoveSink (iWidgetSink *apSink)=0
 Remove a widget sink. More...
 

Children

virtual void InvalidateChildren ()=0
 Invalidate all children. More...
 
virtual tU32 GetNumChildren () const =0
 Get the number of child widgets. {Property}. More...
 
virtual tU32 GetChildIndex (iWidget *apWidget) const =0
 Get the index of the specified widget, if not a child widget return eInvalidHandle. {Property}. More...
 
virtual iWidgetGetChildFromIndex (tU32 anIndex) const =0
 Get the child widget at the specified index. {Property}. More...
 
virtual iWidgetGetChildFromID (iHString *ahspID) const =0
 Get the child widget with the specified ID. {Property}. More...
 
virtual iWidgetGetChildFromDrawOrder (tU32 anDrawOrder) const =0
 Get the child widget with the specified draw order. {Property}. More...
 
virtual iWidgetFindWidget (iHString *ahspID) const =0
 Find the first widget with the specified ID. More...
 
virtual iWidgetFindWidgetByPos (const sVec2f &avPos) const =0
 Find the top widget that intersects the specified absolute position. More...
 

Appearance

virtual void SetText (iHString *ahspText)=0
 Set the widget's text. {Property}. More...
 
virtual iHStringGetText () const =0
 Get the widget's title. {Property}. More...
 
virtual iHStringGetLocalizedText () const =0
 Get the localized text. {Property}. More...
 
virtual void SetHoverText (iHString *ahspText)=0
 Set the widget's hovering text. {Property}. More...
 
virtual iHStringGetHoverText () const =0
 Get the widget's hovering text. {Property}. More...
 
virtual ni::iWidgetCreateDefaultHoverWidget (ni::iHString *ahspHoverText)=0
 Create a default hover widget (Text only). More...
 
virtual tBool ShowHoverWidget (ni::iWidget *apWidget, const sVec2f &avAbsPos)=0
 Show a hover widget. More...
 
virtual void ResetHoverWidget (tBool abRestart)=0
 Reset the hover widget. More...
 
virtual ni::iWidgetGetHoverWidget () const =0
 Get the currently displayed hover widget. {Property}. More...
 
virtual tBool SetFont (iFont *apFont)=0
 Set the widget's font. More...
 
virtual iFontGetFont () const =0
 Get the widget's font. {Property}. More...
 
virtual tBool SetDockStyle (eWidgetDockStyle aStyle)=0
 Set the widget's dock style. {Property}. More...
 
virtual eWidgetDockStyle GetDockStyle () const =0
 Get the widget's dock style. {Property}. More...
 
virtual void SetSkin (iHString *ahspSkin)=0
 Set the widget's skin. {Property}. More...
 
virtual iHStringGetSkin () const =0
 Get the widget's skin. {Property}. More...
 
virtual void SetSkinClass (iHString *ahspSkinClass)=0
 Set the widget's skin classs. {Property}. More...
 
virtual iHStringGetSkinClass () const =0
 Get the widget's skin class. {Property}. More...
 
virtual void SetLocale (iHString *ahspLocale)=0
 Set the widget's locale. {Property}. More...
 
virtual iHStringGetLocale () const =0
 Get the widget's locale. {Property}. More...
 
virtual iHStringGetActiveLocale () const =0
 Get the locale actually used by the widget. {Property}. More...
 
virtual iFontFindSkinFont (iHString *ahspSkinClass, iHString *ahspState, iHString *ahspName) const =0
 Find the font of the specified item in the widget's skin. More...
 
virtual iOverlayFindSkinCursor (iHString *ahspSkinClass, iHString *ahspState, iHString *ahspName) const =0
 Find the cursor of the specified item in the widget's skin. More...
 
virtual iOverlayFindSkinElement (iHString *ahspSkinClass, iHString *ahspState, iHString *ahspName) const =0
 Find the element of the specified item in the widget's skin. More...
 
virtual sColor4f FindSkinColor (const sColor4f &aDefault, iHString *ahspSkinClass, iHString *ahspState, iHString *ahspName) const =0
 Find the color of the specified item in the widget's skin. More...
 
virtual iHStringFindLocalized (iHString *ahspText) const =0
 Find a localized text. More...
 

Context menu

virtual tBool SetContextMenu (iWidget *apMenu)=0
 Set the widget's context menu. More...
 
virtual iWidgetGetContextMenu () const =0
 Get the widget's context menu. {Property}. More...
 

Message

virtual tBool SendMessage (tU32 anMsg, const Var &avarA=niVarNull, const Var &avarB=niVarNull)=0
 Send a message to this widget. More...
 
virtual tBool SendCommand (iWidget *apDest, tU32 anCommand, const Var &avarExtra1=niVarNull, const Var &avarExtra2=niVarNull)=0
 Send a command to the specified widget. More...
 
virtual tBool BroadcastMessage (tU32 anMsg, const Var &avarA=niVarNull, const Var &avarB=niVarNull)=0
 Send a message to this widget and its children recursivly. More...
 

Canvas.

virtual void SetCanvas (iCanvas *apCanvas)=0
 Set the VG canvas of the widget. {Property}. More...
 
virtual iCanvasGetCanvas () const =0
 Get the VG canvas of the widget. {Property}. More...
 

Serialization.

virtual tBool SerializeLayout (iDataTable *apDT, tWidgetSerializeFlags anFlags)=0
 Serialize the layout of this widget. More...
 
virtual tBool SerializeChildren (iDataTable *apDT, tWidgetSerializeFlags anFlags)=0
 Serialize the children widget. More...
 

Automated Placement Helpers

virtual tBool ApplyDockStyle (eWidgetDockStyle aStyle)=0
 Set a dock style, and then restore the previous dock style. More...
 
virtual tBool Place (const sRectf &aRect, eWidgetDockStyle aStyle, const sVec4f &avMargin)=0
 Place the widget using the specified dock style, margin and rectangle. More...
 
virtual tBool SnapInside (iWidget *apContainer, tF32 afSnapMargin)=0
 Makes sure the widget is within the bounds of the specified 'container' widget. More...
 
virtual tBool PopAt (iWidget *apContainer, const sVec2f &avAbsPos, tF32 afSnapMargin)=0
 Move the widget at the specified position making sure it is within the bounds of the specified 'container' widget. More...
 
virtual void Layout (tBool abChildren)=0
 Compute the Widget's layout. More...
 

Finger Capture

virtual void SetFingerCapture (tU32 anFinger, tBool abEnable)=0
 Set the capture of a finger's input. {Property}. More...
 
virtual tBool GetFingerCapture (tU32 anFinger) const =0
 Get the capture of a finger's input. {Property}. More...
 

Additional Inherited Members

- Public Member Functions inherited from iMessageHandler
virtual tU64 GetThreadID () const =0
 Get the message handler's owner thread. That is the thread where HandleMessage will be called. {Property}{Optional}. More...
 
virtual void HandleMessage (const tU32 anMsg, const Var &avarA, const Var &avarB)=0
 Called when a message should be handled. More...
 
- Public Member Functions inherited from iUnknown
virtual tBool IsOK () const =0
 Check if the object is valid. More...
 
virtual tI32 AddRef ()=0
 Signal that one more reference of the object has been created. More...
 
virtual tI32 Release ()=0
 Release a reference of the object. More...
 
virtual void DeleteThis ()=0
 Bypass any reference counting and delete this object. More...
 
virtual void Invalidate ()=0
 Invalidate the object. More...
 
virtual iUnknownQueryInterface (const tUUID &aIID)=0
 Query an interface. More...
 
virtual void ListInterfaces (iMutableCollection *apLst, tU32 anFlags) const =0
 Fill a UUID list containing the UUIDs of the implemented interfaces. More...
 
virtual tI32 SetNumRefs (tI32 anNumRefs)=0
 Set the reference counter directly. More...
 
virtual tI32 GetNumRefs () const =0
 Get the number of references to this object. More...
 

Member Function Documentation

virtual void Destroy ( )
pure virtual

Destroy the widget and it's children.

Remarks
Will send the eUIMessage_Destroy message and invalidate the widget.
This is not done automatically when releasing the widget, it's meant to be used to force the closing of application widgets at run-time manually.
virtual iGraphics* GetGraphics ( ) const
pure virtual

Get the widget's Graphics object. {Property}.

virtual iGraphicsContext* GetGraphicsContext ( ) const
pure virtual

Get the widget's Graphics Context. {Property}.

virtual iUIContext* GetUIContext ( ) const
pure virtual

Get the widget's UI context. {Property}.

virtual iHString* GetClassName ( ) const
pure virtual

Get the widget's class. {Property}.

virtual void SetID ( iHString ahspID)
pure virtual

Set the widget's ID. {Property}.

virtual iHString* GetID ( ) const
pure virtual

Get the widget's ID. {Property}.

virtual tBool SetStyle ( tU32  anStyle)
pure virtual

Set the widget's style. {Property}.

virtual tU32 GetStyle ( ) const
pure virtual

Get the widget's style. {Property}.

virtual void SetParent ( iWidget apParent)
pure virtual

Set the parent widget. {Property}.

virtual iWidget* GetParent ( ) const
pure virtual

Get the parent widget. {Property}.

virtual void SetZOrder ( eWidgetZOrder  aZOrder)
pure virtual

Set the widget's ZOrder. {Property}.

See also
eWidgetZOrder
virtual eWidgetZOrder GetZOrder ( ) const
pure virtual

Get the widget's ZOrder. {Property}.

virtual void SetZOrderAbove ( iWidget apWidget)
pure virtual

Place the widget above (on top of) the specified sibling widget in the ZOrder.

virtual tU32 GetDrawOrder ( ) const
pure virtual

Get the drawing order. {Property}.

virtual void SetAutoLayout ( tWidgetAutoLayoutFlags  aFlags)
pure virtual

Set if the widget's auto layout flags. {Property}.

Remarks
If a child's relative position or size is set, the relative auto layout will be set.
If a child's dock style is different of none the dock auto layout will be set.
virtual tWidgetAutoLayoutFlags GetAutoLayout ( ) const
pure virtual

Get if the widget's auto layout flags. {Property}.

virtual void ComputeAutoLayout ( tWidgetAutoLayoutFlags  aFlags)
pure virtual

Computer the widget children's auto layout.

virtual void SetPosition ( const sVec2f avPos)
pure virtual

Set the widget's position.

Remarks
For a child window the position is relative to it's parent client top-left cornet, else the position is relative to the top-left corner of the screen. {Property}
virtual sVec2f GetPosition ( ) const
pure virtual

Get the widget's position.

Remarks
For a child window the position is relative to it's parent client top-left cornet, else the position is relative to the top-left corner of the screen. {Property}
virtual void SetSize ( const sVec2f avSize)
pure virtual

Set the widget's size. {Property}.

virtual sVec2f GetSize ( ) const
pure virtual

Get the widget's size. {Property}.

virtual void SetMinimumSize ( sVec2f  avMinSize)
pure virtual

Set the widget's minimum size.

Remarks
If a component is <= 0 the limit is not enforced. {Property}
virtual sVec2f GetMinimumSize ( ) const
pure virtual

Get the widget's minimum size. {Property}.

virtual void SetMaximumSize ( sVec2f  avMaxSize)
pure virtual

Set the widget's maximum size.

Remarks
If a component is <= 0 the limit is not enforced. {Property}
virtual sVec2f GetMaximumSize ( ) const
pure virtual

Get the widget's maximum size. {Property}.

virtual void SetRect ( const sRectf aRect)
pure virtual

Set the widget's rectangle.

Remarks
For a child window the position is relative to it's parent client top-left cornet, else the position is relative to the top-left corner of the screen. {Property}
virtual sRectf GetRect ( ) const
pure virtual

Get the widget's rectangle.

Remarks
For a child window the position is relative to it's parent client top-left cornet, else the position is relative to the top-left corner of the screen. {Property}
virtual sRectf GetWidgetRect ( ) const
pure virtual

Get the widget rectangle. Relative to it's own top-left corner. {Property}.

virtual sRectf GetDockFillRect ( ) const
pure virtual

Get the widget's dock fill rectangle.

Remarks
The DockFill rectangle is where DockFill widget at the end of the draw order will be placed.
The DockFill rectangle is relative to the client area.
The DockFill rectangle is reliable only after ComputeLayout has been called. {Property}
virtual void SetClientPosition ( const sVec2f avPos)
pure virtual

Set the widget's client position.

Remarks
The position is relative to the widget's rectangle top-left corner. {Property}
virtual sVec2f GetClientPosition ( ) const
pure virtual

Get the widget's client position.

Remarks
The position is relative to the widget's rectangle top-left corner. {Property}
virtual void SetClientSize ( const sVec2f avSize)
pure virtual

Set the widget's client size. {Property}.

virtual sVec2f GetClientSize ( ) const
pure virtual

Get the widget's client size. {Property}.

virtual void SetClientRect ( const sRectf aRect)
pure virtual

Set the widget's client rectangle.

Remarks
The position is relative to the widget's rectangle top-left corner. {Property}
virtual sRectf GetClientRect ( ) const
pure virtual

Get the widget's client rectangle.

Remarks
The position is relative to the widget's rectangle top-left corner. {Property}
virtual sRectf ComputeFitRect ( const sRectf aRect) const
pure virtual

Compute a rectangle that fits around the specified client rectangle.

Parameters
aRectis the client rectangle in absolute coordinates.
Returns
The rectangle, is absolute coordinates, that fits are the specified client rectangle.
Remarks
Return a rectangle that can be used with SetAbsoluteRect.
virtual void SetFitRect ( const sRectf aRect)
pure virtual

Set a rectangle that fits around the specified client rectangle.

Parameters
aRectis the client rectangle in absolute coordinates. {Property}
virtual void SetFitSize ( const sVec2f  avSize)
pure virtual

Set a rectangle that fits around the specified client size.

Parameters
avSizeis the client size. {Property}
virtual void SetAbsolutePosition ( const sVec2f avPos)
pure virtual

Set the widget's absolute position.

Remarks
The position is relative to the screen's top-left corner. {Property}
virtual sVec2f GetAbsolutePosition ( ) const
pure virtual

Get the widget's absolute position.

Remarks
The position is relative to the screen's top-left corner. {Property}
virtual void SetAbsoluteRect ( const sRectf aRect)
pure virtual

Set the widget's absolute rectangle.

Remarks
The absolute rectangle size is the same as the widget's size. {Property}
virtual sRectf GetAbsoluteRect ( ) const
pure virtual

Get the widget's absolute rectangle. {Property}.

virtual sRectf GetClippedRect ( ) const
pure virtual

Get the widget's rect clipped to the parent client rectangle.

Remarks
The rectangle will not be clipped only if the NoClip style is specified. {Property}
virtual sRectf GetAbsoluteClippedRect ( ) const
pure virtual

Get the widget's absolute rect clipped to the parent client rectangle.

Remarks
The rectangle will not be clipped only if the NoClip style is specified. {Property}
virtual sRectf GetClippedClientRect ( ) const
pure virtual

Get the widget's client rect clipped to the parent client rectangle.

Remarks
The rectangle will not be clipped only if the NoClip style is specified. {Property}
virtual sRectf GetAbsoluteClippedClientRect ( ) const
pure virtual

Get the widget's absolute client rect clipped to the parent client rectangle.

Remarks
The rectangle will not be clipped only if the NoClip style is specified. {Property}
virtual void SetRelativePosition ( const sVec2f avPos)
pure virtual

Set the widget's relative position. {Property}.

Remarks
Will enabled the relative auto layout.
virtual sVec2f GetRelativePosition ( ) const
pure virtual

Get the widget's relative position. {Property}.

virtual void SetRelativeSize ( const sVec2f avSize)
pure virtual

Set the widget's relative size. {Property}.

Remarks
Will enabled the relative auto layout.
virtual sVec2f GetRelativeSize ( ) const
pure virtual

Get the widget's relative size. {Property}.

virtual void SetRelativeRect ( const sRectf aRect)
pure virtual

Set the widget's relative rectangle. {Property}.

Remarks
Will enabled the relative auto layout.
virtual sRectf GetRelativeRect ( ) const
pure virtual

Get the widget's relative rectangle. {Property}.

virtual void SetPadding ( const sVec4f aRect)
pure virtual

Set the padding size.

Remarks
The padding rectangle specifies the internal padding of the client area for each side of the widget. {Property}
virtual sVec4f GetPadding ( ) const
pure virtual

Get the padding size. {Property}.

virtual tBool GetHasPadding ( ) const
pure virtual

Get whether a padding is specified (non-zero). {Property}.

virtual void SetMargin ( const sVec4f aRect)
pure virtual

Set the margin rectangle.

Remarks
The margin rectangle specifies the margin for each side of the widget. {Property}
virtual sVec4f GetMargin ( ) const
pure virtual

Get the margin rectangle. {Property}.

virtual tBool GetHasMargin ( ) const
pure virtual

Get whether a margin is specified (non-zero). {Property}.

virtual tBool SetFocus ( )
pure virtual

Ask to get the input focus.

virtual tBool MoveFocus ( tBool  abToPrevious)
pure virtual

Move the focus to the previous or next widget.

virtual void SetCapture ( tBool  abEnable)
pure virtual

Set the capture of the input. {Property}.

virtual tBool GetCapture ( ) const
pure virtual

Get the capture of the input state. {Property}.

virtual void SetExclusive ( tBool  abEnable)
pure virtual

Set exclusive. {Property}.

virtual tBool GetExclusive ( ) const
pure virtual

Get the exclusive state. {Property}.

virtual void SetInputSubmitFlags ( tU32  aSubmitFlags)
pure virtual

Set the input submit flags.

See also
ni::eUIInputSubmitFlags {Property}
virtual tU32 GetInputSubmitFlags ( ) const
pure virtual

Get the input submit flags.

See also
ni::eUIInputSubmitFlags {Property}
virtual void SetVisible ( tBool  abVisible)
pure virtual

Set the widget visibility status. {Property}.

virtual tBool GetVisible ( ) const
pure virtual

Get the widget visibility status. {Property}.

virtual void SetEnabled ( tBool  abEnabled)
pure virtual

Set the widget enabled status. {Property}.

virtual tBool GetEnabled ( ) const
pure virtual

Get the widget enabled status. {Property}.

virtual void SetIgnoreInput ( tBool  abIgnoreInput)
pure virtual

Set the ignore input status. {Property}.

virtual tBool GetIgnoreInput ( ) const
pure virtual

Get the ignore input status. {Property}.

virtual void SetStatus ( tBool  abVisible,
tBool  abEnabled,
tBool  abIgnoreInput 
)
pure virtual

Set all the status.

virtual void SetHideChildren ( tBool  abHideChildren)
pure virtual

Set whether all client children of the widget are hidden. {Property}.

virtual tBool GetHideChildren ( ) const
pure virtual

Get whether all client children of the widget are hidden. {Property}.

virtual tBool GetIsMouseOver ( ) const
pure virtual

Get whether the mouse is over this widget's client area. {Property}.

virtual tBool GetIsPressed ( ) const
pure virtual

Get whether the main mouse button is pressed while the mouse is over the widget's client area. {Property}.

virtual tBool GetIsNcMouseOver ( ) const
pure virtual

Get whether the mouse is over this widget's non-client area. {Property}.

virtual tBool GetIsNcPressed ( ) const
pure virtual

Get whether the main mouse button is pressed while the mouse is over the widget's non-client area. {Property}.

virtual tBool GetHasFocus ( ) const
pure virtual

Get whether the widget has input (keyboard) focus. {Property}.

virtual tBool GetDraggingSource ( ) const
pure virtual

Get whether the widget is the current draggin source. {Property}.

virtual tBool GetDragging ( ) const
pure virtual

Get whether something is currently being dragged from this widget. {Property}.

virtual void Redraw ( )
pure virtual

Force redrawing of the widget's content.

virtual void SetTimer ( tU32  anID,
tF32  afTime 
)
pure virtual

Set a timer.

Parameters
anIDis the ID of the timer to set.
afTimeis the time in seconds after which the timer will expire. If < 0 the timer will be removed.
Remarks
When the timer expires a eUIMessage_Timer will be sent to the widget with the timer ID as parameter. {Property}
virtual tF32 GetTimer ( tU32  anID) const
pure virtual

Get a timer.

Remarks
If the ID specified is not set -1 is returned. {Property}
virtual tBool AddSink ( iWidgetSink apSink)
pure virtual

Add a widget sink as first sink called.

virtual tBool AddPostSink ( iWidgetSink apSink)
pure virtual

Add a widget sink as last sink called.

virtual iWidgetSink* AddClassSink ( const achar aaszClassName)
pure virtual

Add a new instance of a widget sink as first sink called.

virtual iWidgetSink* AddClassPostSink ( const achar aaszClassName)
pure virtual

Add a new instance of a widget sink as last sink called.

virtual void RemoveSink ( iWidgetSink apSink)
pure virtual

Remove a widget sink.

virtual void InvalidateChildren ( )
pure virtual

Invalidate all children.

virtual tU32 GetNumChildren ( ) const
pure virtual

Get the number of child widgets. {Property}.

virtual tU32 GetChildIndex ( iWidget apWidget) const
pure virtual

Get the index of the specified widget, if not a child widget return eInvalidHandle. {Property}.

virtual iWidget* GetChildFromIndex ( tU32  anIndex) const
pure virtual

Get the child widget at the specified index. {Property}.

virtual iWidget* GetChildFromID ( iHString ahspID) const
pure virtual

Get the child widget with the specified ID. {Property}.

virtual iWidget* GetChildFromDrawOrder ( tU32  anDrawOrder) const
pure virtual

Get the child widget with the specified draw order. {Property}.

Remarks
0 is the widget that is drawn first (in the background).
virtual iWidget* FindWidget ( iHString ahspID) const
pure virtual

Find the first widget with the specified ID.

Remarks
This include this widget.
virtual iWidget* FindWidgetByPos ( const sVec2f avPos) const
pure virtual

Find the top widget that intersects the specified absolute position.

Remarks
This include this widget.
virtual void SetText ( iHString ahspText)
pure virtual

Set the widget's text. {Property}.

Remarks
The widget's text is meant to store limited amount of text in a standard way.
Controls like the edit box, which edits text should use the standard text only to store the default text value - aka value when the widget is created from a datatable. Those control's edited text should provide a text_buffer property to store the edited text. SetText on those control should also reset the content of the text buffer, but GetText still returns only the text set with SetText, while GetTextBuffer returns the edited text.
virtual iHString* GetText ( ) const
pure virtual

Get the widget's title. {Property}.

virtual iHString* GetLocalizedText ( ) const
pure virtual

Get the localized text. {Property}.

virtual void SetHoverText ( iHString ahspText)
pure virtual

Set the widget's hovering text. {Property}.

Remarks
Text drawn in a label when hovering message is sent on the client area. That is the default behavior that can be overriden by intersepting the hover message.
virtual iHString* GetHoverText ( ) const
pure virtual

Get the widget's hovering text. {Property}.

virtual ni::iWidget* CreateDefaultHoverWidget ( ni::iHString ahspHoverText)
pure virtual

Create a default hover widget (Text only).

virtual tBool ShowHoverWidget ( ni::iWidget apWidget,
const sVec2f avAbsPos 
)
pure virtual

Show a hover widget.

virtual void ResetHoverWidget ( tBool  abRestart)
pure virtual

Reset the hover widget.

Parameters
abRestartif true and hover delay >=0 restarts the hover timer, else stops the timer.
virtual ni::iWidget* GetHoverWidget ( ) const
pure virtual

Get the currently displayed hover widget. {Property}.

virtual tBool SetFont ( iFont apFont)
pure virtual

Set the widget's font.

Remarks
By default if not set the skin's font will be used.
Returns
eTrue if the font is valid, else eFalse. {Property}
virtual iFont* GetFont ( ) const
pure virtual

Get the widget's font. {Property}.

virtual tBool SetDockStyle ( eWidgetDockStyle  aStyle)
pure virtual

Set the widget's dock style. {Property}.

virtual eWidgetDockStyle GetDockStyle ( ) const
pure virtual

Get the widget's dock style. {Property}.

virtual void SetSkin ( iHString ahspSkin)
pure virtual

Set the widget's skin. {Property}.

virtual iHString* GetSkin ( ) const
pure virtual

Get the widget's skin. {Property}.

virtual void SetSkinClass ( iHString ahspSkinClass)
pure virtual

Set the widget's skin classs. {Property}.

Remarks
If not specified it's the widget's class name.
virtual iHString* GetSkinClass ( ) const
pure virtual

Get the widget's skin class. {Property}.

virtual void SetLocale ( iHString ahspLocale)
pure virtual

Set the widget's locale. {Property}.

virtual iHString* GetLocale ( ) const
pure virtual

Get the widget's locale. {Property}.

virtual iHString* GetActiveLocale ( ) const
pure virtual

Get the locale actually used by the widget. {Property}.

Remarks
This will get the parent's locale if no locale is specified on this widget.
virtual iFont* FindSkinFont ( iHString ahspSkinClass,
iHString ahspState,
iHString ahspName 
) const
pure virtual

Find the font of the specified item in the widget's skin.

virtual iOverlay* FindSkinCursor ( iHString ahspSkinClass,
iHString ahspState,
iHString ahspName 
) const
pure virtual

Find the cursor of the specified item in the widget's skin.

virtual iOverlay* FindSkinElement ( iHString ahspSkinClass,
iHString ahspState,
iHString ahspName 
) const
pure virtual

Find the element of the specified item in the widget's skin.

virtual sColor4f FindSkinColor ( const sColor4f aDefault,
iHString ahspSkinClass,
iHString ahspState,
iHString ahspName 
) const
pure virtual

Find the color of the specified item in the widget's skin.

virtual iHString* FindLocalized ( iHString ahspText) const
pure virtual

Find a localized text.

virtual tBool SetContextMenu ( iWidget apMenu)
pure virtual

Set the widget's context menu.

See also
ni::eUIMessage::eUIMessage_ContextMenu {Property}
Remarks
The parent of the menu wont be changed.
virtual iWidget* GetContextMenu ( ) const
pure virtual

Get the widget's context menu. {Property}.

virtual tBool SendMessage ( tU32  anMsg,
const Var avarA = niVarNull,
const Var avarB = niVarNull 
)
pure virtual

Send a message to this widget.

virtual tBool SendCommand ( iWidget apDest,
tU32  anCommand,
const Var avarExtra1 = niVarNull,
const Var avarExtra2 = niVarNull 
)
pure virtual

Send a command to the specified widget.

virtual tBool BroadcastMessage ( tU32  anMsg,
const Var avarA = niVarNull,
const Var avarB = niVarNull 
)
pure virtual

Send a message to this widget and its children recursivly.

virtual void SetCanvas ( iCanvas apCanvas)
pure virtual

Set the VG canvas of the widget. {Property}.

virtual iCanvas* GetCanvas ( ) const
pure virtual

Get the VG canvas of the widget. {Property}.

virtual tBool SerializeLayout ( iDataTable apDT,
tWidgetSerializeFlags  anFlags 
)
pure virtual

Serialize the layout of this widget.

virtual tBool SerializeChildren ( iDataTable apDT,
tWidgetSerializeFlags  anFlags 
)
pure virtual

Serialize the children widget.

Remarks
The Children data table passed can contain a _regex_filter regular expression (iRegex) property.
virtual tBool ApplyDockStyle ( eWidgetDockStyle  aStyle)
pure virtual

Set a dock style, and then restore the previous dock style.

Remarks
This is useful to set position of widgets relative to their parent.
virtual tBool Place ( const sRectf aRect,
eWidgetDockStyle  aStyle,
const sVec4f avMargin 
)
pure virtual

Place the widget using the specified dock style, margin and rectangle.

Parameters
aRectis the parent-relative rectangle which specify the 'starting' position of the widget, if the size/pos is <= 1.0 the coordinates are assumed to be relative to the widget's parent.
aStyledock style to use the place the widget.
avMarginis the size of the margin to use to place the widget.
virtual tBool SnapInside ( iWidget apContainer,
tF32  afSnapMargin 
)
pure virtual

Makes sure the widget is within the bounds of the specified 'container' widget.

Parameters
apContainerthe container widget, if null the root widget.
afSnapMarginthe distance margin below which the widget will be snapped to the container's inner border
virtual tBool PopAt ( iWidget apContainer,
const sVec2f avAbsPos,
tF32  afSnapMargin 
)
pure virtual

Move the widget at the specified position making sure it is within the bounds of the specified 'container' widget.

Parameters
apContainerthe container widget, if null the root widget.
avAbsPosthe position where the widget should be placed
afSnapMarginthe distance margin below which the widget will be snapped to the container's inner border
virtual void Layout ( tBool  abChildren)
pure virtual

Compute the Widget's layout.

Parameters
abChildrenif true compute all the children's layout recursively.
Remarks
This method shouldn't be called manually in general ; it recomputes the layout only if a request has been set, which happens when the widget size changes and other various events.
virtual void SetFingerCapture ( tU32  anFinger,
tBool  abEnable 
)
pure virtual

Set the capture of a finger's input. {Property}.

virtual tBool GetFingerCapture ( tU32  anFinger) const
pure virtual

Get the capture of a finger's input. {Property}.