IDrawable class
A class that is capable of drawing a user interface component.
IDrawables are used by IWindow objects to render. The most important method is the IDrawable::
An IDrawable::
An IDrawable can also take care of collision detection. This can be useful in buttons, for example, where the shape might not necessarily be a rectangle.
Base classes
- class UTFWinObject
Derived classes
- class ButtonDrawableRadio
- The standard IDrawable for a standard, simple radio or checkbox button component.
- class ButtonDrawableStandard
- The standard IDrawable for a standard, simple button component.
- class ComboBoxDrawable
- The standard IDrawable for a combo box component.
- class DefaultDrawable
- A class that implements all the methods of an IDrawable.
- class DialogDrawable
- The standard IDrawable for a dialog component.
- class FrameDrawable
- FrameDrawable is a procedural drawable that renders multiple frame styles depending on the current state.
- class ImageDrawable
- A standard IDrawable that renders an image.
- class ScrollbarDrawable
- The standard IDrawable for a scrollbar component.
- class SliderDrawable
- The standard IDrawable for a slider component.
- class SpinnerDrawable
- The standard IDrawable for a spinner component.
- class StdDrawable
- The standard IDrawable for user interactive components.
- class VariableWidthDrawable
- A drawable that completely fills the window of variable width with a graphic without a horizontal stretch.
Public types
- enum CollisionTypes { kDefaultCollisionType = 0x19C46FB }
Public static variables
Public functions
- 
              auto Cast(uint32_t) const -> void* override 
- 
              auto Paint(UIRenderer* pRenderer,
              const Math::Rectangle& area, const RenderParams& params) -> void pure virtual 
- Paints this drawable onto the given UIRenderer.
- 
              auto IsColliding(const Math::Rectangle& area, const Math:: Point& point, RenderParams& params) -> bool pure virtual 
- Tells whether the point specified is colliding in this drawable or not.
- auto GetDimensions(Dimensions& dst, int state, int index) -> bool pure virtual
- Used to get the dimensions of an image contained in this drawable.
- 
              auto UseCollision(uint32_t type, bool& dst) -> bool pure virtual 
- Tells whether the collision of a window should be handled by this drawable or not.
Function documentation
              void UTFWin::
            Paints this drawable onto the given UIRenderer.
| Parameters | |
|---|---|
| pRenderer | The UIRenderer where this must be drawn. | 
| area | The area of the window to draw. | 
| params | RenderParams that contain additional information (e.g. what image do draw, the current state, etc). | 
              bool UTFWin::
            Tells whether the point specified is colliding in this drawable or not.
| Parameters | |
|---|---|
| area | The area of the window that is using this drawable. | 
| point | The Point to check whether it collides or not. Its coordinates are relative to the window position. | 
| params | Additional information, probably unused. | 
This method is useful for drawables that use hitmasks.
              bool UTFWin::
            Used to get the dimensions of an image contained in this drawable.
| Parameters | |
|---|---|
| dst out | The Dimensions where the result must be written. | 
| state | The current state flags of the window. | 
| index | The index of the image whose dimensions must be returned. | 
| Returns | True if the dimensions were got, false otherwise. | 
              bool UTFWin::
            Tells whether the collision of a window should be handled by this drawable or not.
| Parameters | |
|---|---|
| type | The type, usually kDefaultCollisionType. | 
| dst out | If the collision type is supported, whether it must be handled by this drawable or not. | 
| Returns | True if the collision type is supported (even if it's not handled by this drawable), false otherwise. |