3457F / 3303F-Off-Season-FR

0 stars 0 forks source link

Display Features - Create Wrapper Classes For LVGL #10

Open CodeMyGame1 opened 5 months ago

CodeMyGame1 commented 5 months ago

Problem: Although LVGL, as the name states, is lightweight and versatile, this also comes at the expense of removing many high-level functionalities. This makes LVGL very unwieldy to use when coding and debugging (increasing the chance of making an error on mundane LVGL tasks, rather than on actual GUI functionality), as well as confusing to understand—in the context of a codebase—when used to tackle such a (relatively) large-scale problem (that is, having an all-in-one brain GUI; refer to #1). Significance: While this barebones approach may seem to make LVGL look unusable, this low-level implementation also allows for vast flexibility and customization, which we can leverage with wrapper classes that build on top of LVGL functions. Solution: Development of a solution to this issue has already started, but I would like to nevertheless lay out my goals for its implementation. As part of solving this issue, we should (including, but not limited to the following):

note that, in addition to implementing the wrapper classes themselves, additional functions that need to be part of the wrapper classes may be specified and mentioned in the comments of this issue; they are all expected to be added before the issue is resolved