Closed davetcc closed 2 months ago
After thinking about this for a long time, IMHO there should be a couple of inbuilt "starter" themes that can be chosen in code generator, which get deployed into the theme header file (as now). Importantly, we should then document the theme builder support well enough that people can easily modify the provided template to meet their needs. @vzahradnik @Ales-Svoboda what do you think?
I agree. Currently, the logic is so complex that even I am using just the default code generated by the TcMenu generator.
I also agree.
Is your feature request related to a problem? Please describe. Themes have been a thorn in the side of designer for a long time, they expose far too much of the graphics plugin's internal workings and are exceedingly difficult to understand unless you've read the source code. This is obviously far from ideal, and a better solution is needed.
Describe the solution you'd like Now that ThemeBuilder exists, it is possible to make the designer generate themes based on theme builder, which wraps all the complexity up and provides simple, easy to understand methods, which should be easier to deal with programmatically. The simplest solution is for the existing themes to be "re-worded" into themebuilder style, which is far easier to understand and extend.
THIS ISSUE MUST NOT BE CLOSED UNTIL THE THEME BUILDER IS FULLY DOCUMENTED
Additional context See the
TcThemeBuilder
class in the TcMenuLib library. See that some examples have already been upgraded, such as PicoSDK OLED Encoder.We are open to as much feedback as possible on this.