diff options
Diffstat (limited to 'src/theme_builder/components')
| -rw-r--r-- | src/theme_builder/components/MainWindow.cpp | 19 | ||||
| -rw-r--r-- | src/theme_builder/components/MainWindow.hpp | 22 |
2 files changed, 41 insertions, 0 deletions
diff --git a/src/theme_builder/components/MainWindow.cpp b/src/theme_builder/components/MainWindow.cpp new file mode 100644 index 00000000..3d521d44 --- /dev/null +++ b/src/theme_builder/components/MainWindow.cpp @@ -0,0 +1,19 @@ +#include "MainWindow.hpp" + +namespace cru::theme_builder { +using namespace cru::ui; +using namespace cru::ui::controls; +using namespace cru::platform::gui; + +MainWindow::MainWindow() { + window_ = Window::Create(); + window_->GetNativeWindow()->SetTitle(u"CruUI Theme Builder"); +} + +MainWindow::~MainWindow() { delete window_; } + +void MainWindow::Show() { + window_->GetNativeWindow()->SetVisibility(WindowVisibilityType::Show); + window_->GetNativeWindow()->SetToForeground(); +} +} // namespace cru::theme_builder diff --git a/src/theme_builder/components/MainWindow.hpp b/src/theme_builder/components/MainWindow.hpp new file mode 100644 index 00000000..fd7f7996 --- /dev/null +++ b/src/theme_builder/components/MainWindow.hpp @@ -0,0 +1,22 @@ +#pragma once +#include "cru/ui/components/Component.hpp" +#include "cru/ui/controls/Window.hpp" + +namespace cru::theme_builder { +class MainWindow : public ui::components::Component { + public: + MainWindow(); + + CRU_DELETE_COPY(MainWindow) + CRU_DELETE_MOVE(MainWindow) + + ~MainWindow() override; + + ui::controls::Control* GetRootControl() override { return window_; } + + void Show(); + + private: + ui::controls::Window* window_; +}; +} // namespace cru::theme_builder |
