Making a menu and basic GUI library

Short synopsis: There is a library that makes it easy to make a menu with many pages and choices that can trigger an action, if you are interested tell me down here.

I've just finished programming a library, originally meant to display a menu on an LCD, that manages the pages and items in a menu, the navigation in the menu, and that calls for a function(attached to the item like in an Interrupt).The library also displays the page and manages the "scrolling" of a page, so on a 2 ROW LCD you can have all the choises you might want.

I would like to ask if someone is interested in such library, otherwise there is no use to publishing it.

I know that there is another library that does that but before I started making my own I tried multiple times to use that one but it didnt work for me....

Anyway, the idea of the library is to: declare a menu, add pages to the menu and voices to the pages, and then write a function to be called when the said element is "activated". Then in the loop you just print the menu object, that will show the current page based on the size you gave it.

The voices are showed as one per row, you can move Up or Down, considering also the aforementioned scrolling in case you want to show more things, that you can. A cursor and other graphical elements show were you are, and when you activate one element you can either move to another element,page, turn on a led, or design a more complex subMenu(you click your way to a value,click it, then use the UP button to change the value, click it again and then move somewhere else).

If someone is interested, I will post, well, the library, some examples, and eventually ask for suggestions/improvments. Currently the only lenguages are english and italiano(mostly), And of course the library and examples are well commented.

Thanks, bye.

ondsinet: I would like to ask if someone is interested in such library, otherwise there is no use to publishing it.

That's a bit like a supermarket saying they don't stock CornFlakes because nobody buys them.

Publish it here and then you can figure if people find it useful.


Here it is, the menu library.

The usage is explained in the example, as is are the needed circuit and components.

As of now, for it to work you need to have installed the LinkedList library, but I’m working to make it stand alone (the pages won’t be contained by a dinamic array anymore, but I don’t think anybody needs that). (5.87 KB)