Is it possible to make it more of a 'screen manager'?
You have no idea how many different menus I might want, for instance:
Main Menu
Start Game Menu
Options Menu - with sub menus for audio/video/controls
Multiplayer Menu - with sub menus for hosting/joining/player customisation
I'm sure there are plenty of others that people can suggest.
Instead of your current functions, you would have something more like this:
ADG_menu_setup
ADG_menu_add(0)
ADG_menu_add(1)
...
ADG_menu_add(100)
Each of those numbers would be the ID of the menu that gets created and there'd be seperate functions for adding buttons or other controls to each screen.
It's likely to be quite a bit more work - I'm not oblivious to that - but it would be massively more functional, and easier for people to fit to their own use.
Edit -> Wait, I think I've misunderstood what you were posting