diff options
Diffstat (limited to 'Window.h')
-rw-r--r-- | Window.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/Window.h b/Window.h new file mode 100644 index 0000000..1b44439 --- /dev/null +++ b/Window.h @@ -0,0 +1,50 @@ +#ifndef WINDOW_H_ +#define WINDOW_H_ + +#include <gtk/gtk.h> +#include <gtk/gtkgl.h> +#include "Drawer.h" +#include "SidebarManager.h" +#include "EditManager.h" +#include "Level.h" + + +class WindowManager; + + +class Window { + private: + GtkWidget *window; + + EditManager editor; + + Drawer drawer; + SidebarManager sidebar; + + WindowManager *manager; + + Level level; + + // prevent shallow copy + Window(const Window &w); + const Window& operator=(const Window &w); + + static gboolean deleteEvent(GtkWidget *widget, GdkEvent *event, Window *window); + public: + Window(GdkGLConfig *glconfig, WindowManager *manager); + virtual ~Window(); + + void show(); + + void update(); + + EditManager& getEditManager() { + return editor; + } + + Level& getLevel() { + return level; + } +}; + +#endif /*WINDOW_H_*/ |