Skip to content

RickUIBuilder 0.2.0 — Button Handles & Fluent Hover State

Choose a tag to compare

@ricksolucoes ricksolucoes released this 20 Sep 00:20
· 85 commits to main since this release

RickUIBuilder 0.2.0

This release extends the RickUIBuilder Button API with explicit access to generated controls and introduces a fluent, interface-based hover state architecture while preserving the existing Button API and behavior.

Highlights

  • Added IRickUIBuilderButtonHandle.
  • Added explicit access to:
    • Container: TRectangle
    • TextLabel: TLabel
  • Added BuildHandle(AParent) to the Button Builder.
  • Preserved the existing Build(AParent): TRectangle API.
  • Removed the need for consumers to search the Button's child controls to retrieve its internal text label.
  • Added a fluent IRickUIBuilderButtonHoverState contract.
  • TRickUIBuilderButtonHoverState.New now requires no parameters.
  • Added input/output overloads for hover state configuration.
  • Preserved Owner-based lifetime management for the runtime hover behavior.
  • Preserved existing click, hover, enabled, visibility, opacity, cursor, caption, font, spacing, border and corner-radius behavior.

Button Handle

Buttons can now expose both controls created by the builder through an explicit handle:

LHandle := TRickUIBuilder.Button
  .Caption('Save')
  .BuildHandle(AParent);

LHandle.Container;
LHandle.TextLabel;

**Full Changelog**: https://github.com/ricksolucoes/RickUIBuilder/compare/0.1.0...0.2.0