Use lv_label_set_text_static instead of lv_label_set_text for resource constrained systems

What do you want to achieve?

The SL code generation is always using lv_label_set_text for text. By default it should always use lv_label_set_text_static as that doesn’t use RAM and is way better for resource constrained systems.
I understand there may be a use case for dynamic text, but in most cases the text never changes. My personal opinion is that all text should be static by default but the user can select whether they want the text to be dynamic (or SL can work that out itself).
I notice this was requested previously in: Static/placeholder labels? keyboard navigation groups? and you were quite keen.

Do you see alternative options and workaround to achieve it?

We’re having to postporcess the squareline output to swap the API manually and it gets messy.

Mention some use cases

1 Like

You mix static and const, what is complete different. static in C language is …

Thank you for the idea. We’ll consider this as a possible upcoming SquareLine Studio feature.

This just needs to be a flag on the Label widget that exports lv_label_set_text_static instead of lv_label_set_text

Sure enough. And some mods to the project-processer and exporter code. The feature is in the ToDo list.

1 Like