Skip to content

Feature/led - #1

Merged
qinware merged 33 commits into
AtomUI:release/6.0from
kusarparlly:feature/led
Aug 8, 2026
Merged

Feature/led#1
qinware merged 33 commits into
AtomUI:release/6.0from
kusarparlly:feature/led

Conversation

@kusarparlly

Copy link
Copy Markdown
Contributor

Summary

This PR introduces AtomUI.Labs.Controls.Led, an experimental LED-style display control package for AtomUI applications.

The package contains two independent display models:

  • SegmentDisplay: a fourteen-segment display for numbers, Latin letters, common symbols, instrument-style readouts, and digital panel UI.
  • MatrixDisplay: a fixed 5x7 dot-matrix display for LED text panels, symbol display, glow effects, and basic marquee scenarios.

AtomUI.Labs.Controls.Led is packaged as an independent Labs control library. It depends directly on Avalonia and AtomUI.Core, without taking
dependencies on the existing AtomUI desktop control packages.

What is included

  • Independent Led control package, theme provider, and UseLed() registration entry.
  • Segment display implementation with character normalization, fourteen-segment mapping, layout, alignment, overflow handling, inactive segments,
    theme defaults, and glow rendering.
  • Matrix display implementation with 5x7 glyphs, configurable dot shape, panel border, alignment, overflow handling, Unicode fallback, glow
    rendering, and single-direction marquee support.
  • Shared Led family primitives for common input normalization and layout math, while keeping Segment and Matrix rendering models separate.
  • Gallery examples for Segment and Matrix covering basic usage, visual configuration, overflow behavior, dynamic values, glow, and marquee.
  • Documentation for the Led family design, implementation boundaries, glow strategy, matrix marquee contract, and performance validation notes.

Validation

The PR includes automated coverage for:

  • Segment character mapping, layout, measurement, rendering, theme behavior, automation, and geometry lifecycle.
  • Matrix glyph mapping, dot geometry, layout, measurement, rendering, border behavior, dynamic loading, marquee lifecycle, Unicode fallback, and
    automation.
  • Shared Led layout utilities and character normalization.
  • Glow rendering behavior and Gallery glow workbench lifecycle.

Notes

  • The package is experimental and public APIs may evolve with Labs feedback.
  • The scope is visual LED-style display controls only; it does not target hardware LED control, rich text layout, complex script shaping, or a
    single merged “universal” LED control.

@CLAassistant

CLAassistant commented Jul 31, 2026

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
1 out of 2 committers have signed the CLA.

✅ kusarparlly
❌ youname


youname seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

@qinware
qinware merged commit 18ea3f9 into AtomUI:release/6.0 Aug 8, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants