Skip to main content

ControlDialog

The ControlDialog class is a specialized UI container derived from ControlPanel, designed to represent movable and resizable dialog windows. It supports features like constraint within parent bounds, resizability with customizable resize area, and movability through mouse interaction. These capabilities make it ideal for creating flexible, interactive dialogs in a GUI environment, such as tool windows or popup panels.

#include <interface/TellusimControls.h>

Inheritance

Constructors

ControlDialog()
explicit ControlDialog(Control *parent)
ControlDialog(Control *parent, uint32_t columns)
ControlDialog(Control *parent, uint32_t columns, float32_t x, float32_t y)

Methods

Constrained flag.

void setConstrained(bool constrained)
bool isConstrained() const

Resizable flag.

void setResizable(bool resizable)
bool isResizable() const

Moveable flag.

void setMoveable(bool moveable)
bool isMoveable() const

Resize area.

void setResizeArea(float32_t area)
float32_t getResizeArea() const

Resize alignment.

Align getResizeAlign() const
bool hasResizeAlign(Align align) const
bool hasResizeAligns(Align aligns) const

Mouse position.

void setMousePosition(Vector2f position)
const Vector2f getMousePosition() const

Updated callback.

void setUpdatedCallback(const UpdatedCallback &func)
UpdatedCallback getUpdatedCallback() const
bool isUpdated()

Types

using UpdatedCallback = Function<void(ControlDialog)>