]> git.tdb.fi Git - libs/gui.git/blobdiff - source/window.h
Convert GLWindow to use GLX 1.3
[libs/gui.git] / source / window.h
index 6f1f0d1e26bf5cd4db7d8c32cefe86b9bb26acc1..0f1dfbaf8c18ca343fbe617c6808ddfc52f800f7 100644 (file)
@@ -32,6 +32,8 @@ public:
        sigc::signal<void, int, int> signal_pointer_motion;
        sigc::signal<void, unsigned, unsigned, unsigned> signal_key_press;
        sigc::signal<void, unsigned, unsigned> signal_key_release;
+       sigc::signal<void, unsigned, unsigned> signal_resize;
+       sigc::signal<void> signal_close;
 
 protected:
        typedef ::Window Handle;
@@ -39,11 +41,12 @@ protected:
        Display *display;
        DisplayOptions options;
        Handle  window;
+       Atom    wm_delete_window;
 
        Window();
 public:
-       Window(unsigned, unsigned);
-       Window(const DisplayOptions &);
+       Window(unsigned w, unsigned h);
+       Window(const DisplayOptions &dopt);
        virtual ~Window();
 
        unsigned get_width() const  { return options.width; }
@@ -53,8 +56,10 @@ public:
        void tick();
 protected:
        void prepare();
+       void set_window(Handle wnd);
        void init();
-       void process_event(const XEvent &);
+       void process_event(const XEvent &event);
+       virtual void on_event(const XEvent &event) { (void)event; }
 
        static int x_error_handler(Display *, XErrorEvent *);
 };