texus / TGUI

Cross-platform modern c++ GUI

Home Page:https://tgui.eu

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Allow setting font sizes in themes

rubenwardy opened this issue · comments

Allow setting font sizes in themes

I guess I could add this. Before v0.8.7 there wasn't even a unified text size property, but now that every widget can be given a text size, it should be possible to add a renderer property as well.

The implementation could be somewhat similar to font: have a global value as a default in case no value is set in the renderer, otherwise use the value from the renderer, and allow setting an individual value with Widget::setTextSize.

Alternatively Widget::setTextSize could be replaced by the renderer property. But this brings me to an annoying debate: which values belong in the renderer or not. This isn't the only property where I have questions whether it belongs in the renderer or in the widget and it sometimes completely depends on the situation. I'm starting to wonder if it wouldn't be better to get rid of the widget and renderer separation altogether, make it a monolithic class again and just allow any property to be set via theme files.