X-Git-Url: http://git.mutantstargoat.com?a=blobdiff_plain;f=src%2Fwindow.h;h=ee9c7a0fb08e9db4c8c09fcc3505cfe553178bb4;hb=d02747c88b1df856c5531cdc4b7af5b3ac8a0dc3;hp=040f6b578f47a1ab08333402fa9c4e95b73acf49;hpb=a43297a61d69ca5fa5bb7ae8407757da978b4dd4;p=winnie diff --git a/src/window.h b/src/window.h index 040f6b5..ee9c7a0 100644 --- a/src/window.h +++ b/src/window.h @@ -17,12 +17,14 @@ private: bool dirty; bool managed; // whether the wm manages (+decorates) this win + bool focusable; public: Window(); ~Window(); const Rect &get_rect() const; + Rect get_absolute_rect() const; bool contains_point(int ptr_x, int ptr_y); void move(int x, int y); @@ -36,7 +38,7 @@ public: */ void invalidate(); - void draw(const Rect &dirty_region); + void draw(Rect *dirty_region); void draw_children(const Rect &dirty_region); unsigned char *get_win_start_on_fb(); @@ -45,6 +47,11 @@ public: void set_managed(bool managed); bool get_managed() const; + void set_focusable(bool focusable); + bool get_focusable() const; + + bool get_dirty() const; + void set_display_callback(DisplayFuncType func); void set_keyboard_callback(KeyboardFuncType func); void set_mouse_button_callback(MouseButtonFuncType func); @@ -59,6 +66,9 @@ public: void add_child(Window *win); void remove_child(Window *win); + Window **get_children(); + int get_children_count() const; + const Window *get_parent() const; Window *get_parent();