]> Shamusworld >> Repos - apple2/blob - src/gui/gui.h
f5b15fbf89ab54ffb93b5dc10cb07074215926cc
[apple2] / src / gui / gui.h
1 //
2 // GUI.H
3 //
4 // Graphical User Interface support
5 //
6
7 #ifndef __GUI_H__
8 #define __GUI_H__
9
10 #include <SDL2/SDL.h>
11 #include <list>
12
13 class Menu;                                                                             // Now *this* should work, since we've got pointers...
14 class MenuItems;
15 class Element;
16
17
18 class GUI
19 {
20         public:
21                 GUI(SDL_Surface *);
22                 ~GUI();
23                 void AddMenuTitle(const char *);
24                 void AddMenuItem(const char *, Element * (* a)(void) = NULL, SDL_Scancode k = SDL_SCANCODE_UNKNOWN);
25                 void CommitItemsToMenu(void);
26                 void Run(void);
27                 void Stop(void);
28
29         private:
30 //              Menu * mainMenu;
31                 MenuItems * menuItem;
32                 std::list<Element *> windowList;
33                 bool exitGUI;
34                 bool showMouse;
35                 SDL_Rect mouse, oldMouse;
36 };
37
38 #endif  // __GUI_H__
39