π§© MENU Generator Tool¶
π Overview¶
The MENU Generator Tool is a web-based application that allows you to visually design hierarchical menus for the MENU_LIB library.
It generates ready-to-use menu.c and menu.h files compatible with the menu_t structure.
π Live tool: https://niwciu.github.io/LCD_MENU_GENERATOR_APP/
π» Source code: GitHub β LCD_MENU_GENERATOR_APP
βοΈ Usage Workflow¶
-
Open the tool
Go to the web application link above. -
Add your first menu item
Click the β+β button next to the MENU label to create the first item.
Enter the item name β it must not exceed(number of display columns - 1)characters. -
Add more items
- To add a new item on the same level, click the β+β button next to the menu title again.
-
To create a submenu, click the β+β next to an existing item.
-
Reorder items
Use the up/down arrow buttons to move items within the same menu level.
Moving items between different hierarchy levels is not supported β each item can only be reordered inside its current parent menu. -
Delete items
Click the trash icon to remove an item together with all its sub-items. -
Save your structure
Use the green Save icon (πΎ) in the top bar to export your menu as a.jsonfile. -
Load an existing menu
Use the Open icon (π) to load a previously saved.jsonstructure and edit it. -
Generate source code
Click the green icon with a pencil and page βοΈπ to generate C source code.
Two files will be generated: menu.c-
menu.h -
Enable callback generation (optional)
To include function stubs for callbacks, enable the checkbox
βEnable menu items execute callback generationβ.
Callback functions are generated only if a name is entered for that menu item. -
Export generated code
- You can copy the generated code directly from the preview.
- Or download ready
.cand.hfiles and copy them into your project.
π§ Notes¶
- The generator automatically calculates menu depth and displays the current maximum depth in the UI (
MAX MENU DEPTH: n). - It prevents creating structures that exceed the limits defined by
MAX_MENU_DEPTH. - The output files are immediately ready to be compiled together with MENU_LIB.
- Callback stubs are only added when a function name is provided in the input field.
π Related Documentation¶
Β© 2025 Niwciu β MENU_LIB
Web-based generator for creating menu structures compatible with MENU_LIB.