diff options
author | crupest <crupest@outlook.com> | 2020-11-08 17:45:41 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-11-08 17:45:41 +0800 |
commit | 2188845a7acffa653015a1000139ec0a9a3984bc (patch) | |
tree | 7e8ed6eca5868a0943af6fcad6467115f369987c /include/cru/platform/gui/UiApplication.hpp | |
parent | 93265251d56c91b05f160423077ce95339786f87 (diff) | |
download | cru-2188845a7acffa653015a1000139ec0a9a3984bc.tar.gz cru-2188845a7acffa653015a1000139ec0a9a3984bc.tar.bz2 cru-2188845a7acffa653015a1000139ec0a9a3984bc.zip |
...
Diffstat (limited to 'include/cru/platform/gui/UiApplication.hpp')
-rw-r--r-- | include/cru/platform/gui/UiApplication.hpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/include/cru/platform/gui/UiApplication.hpp b/include/cru/platform/gui/UiApplication.hpp index ff947dfc..ba85020a 100644 --- a/include/cru/platform/gui/UiApplication.hpp +++ b/include/cru/platform/gui/UiApplication.hpp @@ -1,12 +1,24 @@ #pragma once #include "Base.hpp" +#include "cru/common/Bitmask.hpp" + #include <chrono> #include <functional> #include <memory> #include <vector> namespace cru::platform::gui { +namespace details { +struct CreateWindowFlagTag; +} + +using CreateWindowFlag = Bitmask<details::CreateWindowFlagTag>; + +struct CreateWindowFlags { + static constexpr CreateWindowFlag NoCaptionAndBorder{0b1}; +}; + // The entry point of a ui application. struct IUiApplication : public virtual INativeResource { public: @@ -43,7 +55,12 @@ struct IUiApplication : public virtual INativeResource { virtual void CancelTimer(long long id) = 0; virtual std::vector<INativeWindow*> GetAllWindow() = 0; - virtual INativeWindow* CreateWindow(INativeWindow* parent) = 0; + + INativeWindow* CreateWindow(INativeWindow* parent) { + return this->CreateWindow(parent, CreateWindowFlag(0)); + }; + virtual INativeWindow* CreateWindow(INativeWindow* parent, + CreateWindowFlag flags) = 0; virtual cru::platform::graphics::IGraphFactory* GetGraphFactory() = 0; |