Foundation classes for a basic GUI implementing simple widgets and events
Dependents: TouchScreenGUIDemo
Core/GUI.h@8:a460cabc85ac, 2016-04-11 (annotated)
- Committer:
- duncanFrance
- Date:
- Mon Apr 11 16:54:02 2016 +0000
- Revision:
- 8:a460cabc85ac
- Child:
- 12:63db16fea709
Added GUI for common defaults
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
duncanFrance | 8:a460cabc85ac | 1 | #ifndef SIMPLEGUI_GUI_H |
duncanFrance | 8:a460cabc85ac | 2 | #define SIMPLEGUI_GUI_H |
duncanFrance | 8:a460cabc85ac | 3 | |
duncanFrance | 8:a460cabc85ac | 4 | #include "GraphicsDisplay.h" |
duncanFrance | 8:a460cabc85ac | 5 | #include "EventDispatcher.h" |
duncanFrance | 8:a460cabc85ac | 6 | #include "FontRenderer.h" |
duncanFrance | 8:a460cabc85ac | 7 | |
duncanFrance | 8:a460cabc85ac | 8 | /** |
duncanFrance | 8:a460cabc85ac | 9 | * A singleton class to hold the framework components |
duncanFrance | 8:a460cabc85ac | 10 | **/ |
duncanFrance | 8:a460cabc85ac | 11 | class GUI { |
duncanFrance | 8:a460cabc85ac | 12 | public: |
duncanFrance | 8:a460cabc85ac | 13 | |
duncanFrance | 8:a460cabc85ac | 14 | GUI(GraphicsDisplay* display, EventDispatcher* dispatcher, FontRenderer* fontRenderer, Font* defaultFont) |
duncanFrance | 8:a460cabc85ac | 15 | : _display(display), _dispatcher(dispatcher), _renderer(fontRenderer), _font(defaultFont) |
duncanFrance | 8:a460cabc85ac | 16 | |
duncanFrance | 8:a460cabc85ac | 17 | {} |
duncanFrance | 8:a460cabc85ac | 18 | |
duncanFrance | 8:a460cabc85ac | 19 | GraphicsDisplay* display() { |
duncanFrance | 8:a460cabc85ac | 20 | return _display; |
duncanFrance | 8:a460cabc85ac | 21 | } |
duncanFrance | 8:a460cabc85ac | 22 | |
duncanFrance | 8:a460cabc85ac | 23 | EventDispatcher* eventDispatcher() { |
duncanFrance | 8:a460cabc85ac | 24 | return _dispatcher; |
duncanFrance | 8:a460cabc85ac | 25 | } |
duncanFrance | 8:a460cabc85ac | 26 | |
duncanFrance | 8:a460cabc85ac | 27 | FontRenderer* fontRenderer() { |
duncanFrance | 8:a460cabc85ac | 28 | return _renderer; |
duncanFrance | 8:a460cabc85ac | 29 | } |
duncanFrance | 8:a460cabc85ac | 30 | |
duncanFrance | 8:a460cabc85ac | 31 | Font* defaultFont() { |
duncanFrance | 8:a460cabc85ac | 32 | return _font; |
duncanFrance | 8:a460cabc85ac | 33 | } |
duncanFrance | 8:a460cabc85ac | 34 | |
duncanFrance | 8:a460cabc85ac | 35 | private: |
duncanFrance | 8:a460cabc85ac | 36 | |
duncanFrance | 8:a460cabc85ac | 37 | GraphicsDisplay* _display; |
duncanFrance | 8:a460cabc85ac | 38 | EventDispatcher* _dispatcher; |
duncanFrance | 8:a460cabc85ac | 39 | FontRenderer* _renderer; |
duncanFrance | 8:a460cabc85ac | 40 | Font* _font; |
duncanFrance | 8:a460cabc85ac | 41 | }; |
duncanFrance | 8:a460cabc85ac | 42 | #endif |