el h / SimpleGUI

Fork of SimpleGUI by Duncan McIntyre

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Window.h Source File

Window.h

00001 #ifndef SIMPLEGUI_WINDOW_H
00002 #define SIMPLEGUI_WINDOW_H
00003 
00004 /**
00005 * Defines an interface for classes which can contain widgets
00006 **/
00007 
00008 class Window;
00009 
00010 #include "Widget.h"
00011 #include "GraphicsContext.h"
00012 #include "LinkedList.h"
00013 
00014 class Window : public Widget {
00015     
00016 public:
00017     
00018     Window(GraphicsContext *context);
00019     
00020     /**
00021     * We are going to override these Widget methods
00022     **/
00023     virtual void attach(Widget *widget);
00024     virtual void detach(Widget *widget);   
00025     virtual void dirtyAll();
00026     
00027     virtual void handleEvent(Event e);
00028     virtual void _reenumerateHandledEvents();
00029     virtual uint16_t _getHandledEvents();
00030     
00031 protected:
00032 
00033     /**
00034     * Override to draw all the children
00035     **/
00036     virtual void _draw();
00037 
00038     LinkedList<Widget> _widgets;
00039     uint16_t _childHandledEvents;
00040     
00041     void _dirtyIntersected(Widget *w);
00042 };
00043 
00044 #endif