diff options
author | Yuqian Yang <crupest@crupest.life> | 2025-09-10 01:30:59 +0800 |
---|---|---|
committer | Yuqian Yang <crupest@crupest.life> | 2025-09-10 01:30:59 +0800 |
commit | fe6e1686ce484cb0dd9a69f130e82f647c30016f (patch) | |
tree | f5e020e6a46d9a36a7952d1785cf20467e413159 /include/cru/platform/gui/xcb/Window.h | |
parent | 18e330f9f4a673da78e6503c697619ad99b4bdbf (diff) | |
download | cru-fe6e1686ce484cb0dd9a69f130e82f647c30016f.tar.gz cru-fe6e1686ce484cb0dd9a69f130e82f647c30016f.tar.bz2 cru-fe6e1686ce484cb0dd9a69f130e82f647c30016f.zip |
xcb window reparent.
Diffstat (limited to 'include/cru/platform/gui/xcb/Window.h')
-rw-r--r-- | include/cru/platform/gui/xcb/Window.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/include/cru/platform/gui/xcb/Window.h b/include/cru/platform/gui/xcb/Window.h index e09fdbfb..f9fbf735 100644 --- a/include/cru/platform/gui/xcb/Window.h +++ b/include/cru/platform/gui/xcb/Window.h @@ -18,10 +18,10 @@ class XcbWindow : public XcbResource, public virtual INativeWindow { explicit XcbWindow(XcbUiApplication* application); ~XcbWindow() override; - virtual void Close() = 0; + void Close() override; - virtual INativeWindow* GetParent() = 0; - virtual void SetParent(INativeWindow* parent) = 0; + INativeWindow* GetParent() override; + void SetParent(INativeWindow* parent) override; virtual WindowStyleFlag GetStyleFlag() = 0; virtual void SetStyleFlag(WindowStyleFlag flag) = 0; @@ -91,9 +91,11 @@ class XcbWindow : public XcbResource, public virtual INativeWindow { private: XcbUiApplication* application_; std::optional<xcb_window_t> xcb_window_; - cairo_surface_t *cairo_surface_; + cairo_surface_t* cairo_surface_; Size current_size_; + XcbWindow* parent_; + Event<std::nullptr_t> create_event_; Event<std::nullptr_t> destroy_event_; Event<std::nullptr_t> paint_event_; |