ControlRect
The ControlRect class extends the Control class and is designed for managing rectangular UI elements with customizable properties such as color, texture, stroke style, and gradients. It provides methods for setting control modes, pipelines, filters, and wrapping modes, as well as controlling mipmaps and anisotropy for texture handling. The class supports texture properties like scale, flip, and projection, and allows for defining texture coordinates and names. Additionally, it includes various callbacks for interaction handling, such as inside, pressed, released, and clicked events, along with support for fullscreen mode, radius, and blending parameters. The ControlRect class also integrates with canvas elements, enabling the rendering of rectangular shapes and meshes with flexible visual configurations.
#include <interface/TellusimControls.h>
Inheritance
- Inherits from Control
Constructors
ControlRect()
explicit ControlRect(Control *parent)
ControlRect(Control *parent, Texture &texture)
ControlRect(Control *parent, const char *name)
ControlRect(Control *parent, Mode mode)
Methods
Callback flag.
void setCallback(bool callback)
bool getCallback() const
Fullscreen flag.
void setFullscreen(bool fullscreen)
bool isFullscreen() const
Control mode.
void setMode(Mode mode)
Mode getMode() const
Control pipeline.
void setPipeline(Pipeline &pipeline)
void setPipeline(Pipeline &pipeline, const DrawCallback &func)
Pipeline getPipeline() const
Control radius.
void setRadius(float32_t radius)
float32_t getRadius() const
Control color.
void setColor(Color color)
void setColor(float32_t r, float32_t g, float32_t b, float32_t a)
const Color getColor() const
Stroke style.
void setStrokeStyle(StrokeStyle style)
const StrokeStyle getStrokeStyleConst() const
const StrokeStyle getStrokeStyle() const
StrokeStyle getStrokeStyle()
Gradient style.
void setGradientStyle(GradientStyle style)
const GradientStyle getGradientStyleConst() const
const GradientStyle getGradientStyle() const
GradientStyle getGradientStyle()
Control mipmap.
void setMipmap(float32_t mipmap)
float32_t getMipmap() const
Filter mode.
void setFilter(Filter filter)
Filter getFilter() const
void setAnisotropy(uint32_t anisotropy)
uint32_t getAnisotropy() const
Wrapping mode.
void setWrapMode(WrapMode mode)
WrapMode getWrapMode() const
Blending parameters.
void setBlend(BlendOp op, BlendFunc src, BlendFunc dest)
BlendOp getBlendOp() const
BlendFunc getBlendSrcFunc() const
BlendFunc getBlendDestFunc() const
Texture pointer.
void setTexture(Texture &texture, bool linear = false)
Texture getTexture() const
bool getTextureLinear() const
Texture name.
void setTextureName(const char *name)
void setTextureName(const String &name)
String getTextureName() const
Texture scale.
void setTextureScale(float32_t scale_x, float32_t scale_y)
float32_t getTextureScaleX() const
float32_t getTextureScaleY() const
Texture orientation.
void setTextureFlip(bool flip_x, bool flip_y)
bool getTextureFlipX() const
bool getTextureFlipY() const
Texture projection.
void setTextureProj(bool projection)
bool getTextureProj() const
Texture coordinates.
void setTexCoord(Rect texcoord)
void setTexCoord(float32_t left, float32_t right, float32_t bottom, float32_t top)
const Rect getTexCoord() const
Inside callback.
void setInsideCallback(const InsideCallback &func)
InsideCallback getInsideCallback() const
Pressed callback.
void setPressedCallback(const PressedCallback &func)
PressedCallback getPressedCallback() const
Released callback.
void setReleasedCallback(const ReleasedCallback &func)
ReleasedCallback getReleasedCallback() const
Clicked callback.
void setClickedCallback(const ClickedCallback &func)
void setClicked2Callback(const ClickedCallback &func)
void setClickedRightCallback(const ClickedCallback &func)
ClickedCallback getClickedCallback() const
ClickedCallback getClicked2Callback() const
ClickedCallback getClickedRightCallback() const
Canvas elements.
CanvasRect getCanvasRect()
CanvasMesh getCanvasMesh()
Types
using InsideCallback = Function<bool(ControlRect, float32_t x, float32_t y)>
using PressedCallback = Function<void(ControlRect, float32_t x, float32_t y)>
using ReleasedCallback = Function<void(ControlRect, float32_t x, float32_t y)>
using ClickedCallback = Function<void(ControlRect)>