Adding extension support for LVGL project with EnumVariableTypes and StructureVariableTypes registering#952
Adding extension support for LVGL project with EnumVariableTypes and StructureVariableTypes registering#952dhugoexe wants to merge 1 commit intoeez-open:masterfrom
Conversation
…StructureVariableTypes registering
|
Do you have an extension example with which I can test it? |
|
@mvladic you can use this sample extension: https://github.com/dhugoexe/eez-extension-sample |
|
Maybe I'm missing something, but I don't see any real value of these improvements to the extensions interface. User defined structure and enumeration types can already be created in Studio and they are supported in LVGL projects. Actions are already supported by the extensions interface, but they are only available for the execution inside Studio simulator. What would be more interesting is to allow defining custom actions from the extension that would be able not only to execute inside Studio simulator but also on the target device - which means these actions should define C code that will be generated along with other generated C code. If you can explain what real problem you are solving with these changes I will reconsider to marge this PR. |
Here is a proposal for implementing extension (PEXT) support for the LVGL project.
This feature allows users to import custom actions, structure types, and enumeration types.
Note that this does not support object variable types, as they are only used for Dashboard projects.
The "eez-studio-types" package will also need to be modified in order to compile the extension upstream (before importing it into the project).
Here is a usage example within an extension:
Note that you should use a modified version of "eez-studio-types" package with corresponding interface for compilating this extension.
PS: I have also developed features for native implementation support of imported actions (for on-target execution), as well as the ability to import extensions from a Git repository (same principle as for templates), in case anyone finds this useful for the project.