Provides components and systems to create an in game user interface.
Draw Ui elements. UI won't display without this. It's recommended this be your last pass.
A loaded set of fonts from a file.
A component that tags an entity as reactive to ui events. Will only work if the entity has a UiTransform component attached to it. Without this, the ui element will not generate events.
When this component is added to a UI element with a
When this component is added to a UI element
it will play sounds based on mouse interaction.
This system rearranges UI elements whenever the screen is resized using their
If this component is attached to an entity with a UiText then that UiText is editable. This component also controls how that editing works.
Loads font files, supports TrueType and some OpenType files.
A clickable button, this must be paired with a
Convenience structure for building a button
Container for all the resources the builder needs to make a new UiButton.
This system manages button mouse events. It changes images and text colors, as well as playing audio when necessary.
Ui Creator, wrapper around loading and creating a UI directly.
A ui event instance.
This resource stores the currently focused UI element.
A component with the texture to display in this entity's
This system processes the underlying UI data as needed.
Specialised UI loader
The system that generates events for
Whenever the window is resized the function in this component will be called on this entity's UiTransform, along with the new width and height of the window.
A component used to display text in this entity's UiTransform
The UiTransform represents the transformation of a ui element. Values are in pixel and the position is calculated from the bottom left of the screen to the center of the ui element's area.
Indicated where the anchor is, relative to the parent (or to the screen, if there is no parent). Follow a normal english Y,X naming.
Wrapper format for all core supported Font formats
How lines should behave when they are longer than the maximum line length.
Type used when no custom ui is desired
Indicates if the position and margins should be calculated in pixel or relative to their parent size.
Indicates if a component should be stretched.
The type of ui event. Click happens if you start and stop clicking on the same ui element.
Loadable ui components
Returns the default system font.
Returns all the handles to the system fonts.
Get the system default fonts. If unable to, gets the local square.ttf font.
Lists all installed font families on the system.
A handle to font data stored with
Identical to TtfFormat.
Prefab loader system for UI