Saturday, January 01, 2022

Glimmer DSL for LibUI Non-Native Custom Controls

One of Glimmer DSL for LibUI's greatest assets is that it renders native GUIs (graphical user interfaces) on every platform. That means that cross-platform desktop applications written with it are in fact native on Mac, Windows, and Linux, conforming to each operating system's GUI standards and ensuring high usability through a predictable look and feel for non-computer-savvy users. On top of that, native GUI controls ensure higher productivity in software delivery as software engineers spend less time tweaking the GUI and more time delivering software features for their user needs.

That said, there might be cases where there is a need for non-native GUI controls like needing to render very large GUI controls for people with vision disabilities and the elderly or needing to build applications with brand new visual concepts like traffic control management apps and diagramming tools. 

Thankfully, the majority of native GUI toolkits offer non-native control support too, and Glimmer DSL for LibUI is no exception! You can build any non-native GUI control you want on top of the vector-graphic-based `area` control and have it look similar on all platforms.

In fact, I added a new example to version 0.4.20 called Area-Based Custom Controls that demonstrates building custom labels and custom buttons with unusually large sizes and special non-native fonts/colors.

Code for defining non-native controls:


Code for consuming non-native controls:


Mac







Windows







Linux

Happy Glimmering!

No comments: