I am looking for a library to make menu prettier in my applications.
Do you know if such thing already exist?
Here is an example: ImmersionRC RapidFire Fatshark Module UI Preview - YouTube
Also, is there some framework that helps build GUI (at the moment, I am doing everything "manually", placing each elements and putting 1 page in 1 function).
Would be curious to hear how you deal with menu and more generally GUI programming.
I have recently been working on a menu system for Arduino. It’s still in beta and needs a bit more of my time to finish it up.
It has a generator UI and some docs that are still in progress. Currently it supports hitachi character displays. Soon OLED and touch will be available. If you needed oled I could prioritise that support over network capabilities.
It also has in progesss remote control capabilities with rs232 and network multicast planned. These are on another branch and not stable at the moment.
See the following url and also my website which is linked from there:
Thanks for your help.
Your system looks really good and simple to generate the menu (structure + navigation) !
I think OLED support is probably more needed than network capabilities (and requires probably less effort to implement).
I was also looking to add some animations in the menu, like in the first post video: ImmersionRC RapidFire Fatshark Module UI Preview - YouTube
Do you plan to support such effects ?
Over the past couple of days I finished off rs232 support so my next task is to clean up the rendering for the menus.
My plan is to have a base rendering class with core editing capabilities then the various display technologies hanging off that.
I’m going work next on a basic OLED based renderer using the adagfx library. I’ve got a 0.96 inch unit hanging around so I’ll test it on that.
As the rendering class is pluggable and runs like a game engine you will be able to easily take the default and animate / adjust. Take a look at BaseRenderers.cpp/h in the embedded TcMenu directory and you’ll see where it’s heading. Probably a few weeks off though yet.
I don’t know if you noticed but I committed a refactored base renderer back onto master recently.
Also, I’ve got an in progress attempt at supporting graphical displays, which will soon be checked in. It will support any display that has a driver for AdaFruitGFX. The designer will be fixed up to generate code for such displays.
As an aside a Graphical display of a menu realistically needs a 32 bit CPU for anything like decent non laggy performance.
You could use this renderer as the starting point for your animated renderer.