Add Input functionality to Ultra

- Add point InSpace check to PD::Li::Math
- Add Universal AlignmentCenter flag for Horizontal and and Vertical Alignment
-  Add Fallbackfont to Layout (if you dont want to set font per object)
- Add Button Object WIP
- Rename OnHover to OnFocus and add OnUnfocus
- Move font and FontScale to ElementBase (for fallback logic etc)
- Add UpdateInput func to ElementBase
- Corectly Set fontScale in Text Rendering
- Update ecample
This commit is contained in:
2026-04-03 15:17:43 +02:00
parent af7fc026df
commit 679de3ae94
12 changed files with 195 additions and 19 deletions
+3 -2
View File
@@ -6,6 +6,7 @@ namespace Ultra {
PD_API void Text::Draw(PD::Li::Drawlist& l) {
if (!pFont) return;
l.SetFont(pFont);
l.SetFontscale(pParent->GetCanvas().VTranslateFontscale(pFontScale));
l.DrawText(pRenderspace.TopLeft(), pText.c_str(), pColor);
}
@@ -14,8 +15,8 @@ PD_API void Text::Update() {
if (!pParent) ElementBase::Update();
pRenderspace = pParent->GetCanvas().VTranslateObject(
pParent->GetTopLeft() + pPos,
pFont->GetTextBounds(pText.c_str(),
pParent->GetCanvas().VTranslateFontscale(pScale)),
pFont->GetTextBounds(
pText.c_str(), pParent->GetCanvas().VTranslateFontscale(pFontScale)),
pAlignment, true);
}
} // namespace Ultra