Mercurial > minori
view include/gui/window.h @ 128:859d2a957940
cmake: set CXX_STANDARD to 17
builds: get wget on linux, don't attempt to mount binfmt_misc on win32/64
I'd prefer staying on C++11, but if constexpr is just so damn sexy...
author | Paper <mrpapersonic@gmail.com> |
---|---|
date | Thu, 09 Nov 2023 02:28:22 -0500 |
parents | ab191e28e69d |
children | c8375765f0fc |
line wrap: on
line source
#ifndef __window_h #define __window_h #include "core/config.h" #include <QMainWindow> #include <memory> /* *could* be forward-declared, but this causes any file that #includes this to have to #include these as well due to unique_ptr */ #include <QWidget> #include <QStackedWidget> #include <QCloseEvent> #include "gui/widgets/sidebar.h" class MainWindow final : public QMainWindow { Q_OBJECT public: MainWindow(QWidget* parent = nullptr); void SetActivePage(QWidget* page); void CreateBars(); void AddMainWidgets(); void RetranslateUI(); void AsyncSynchronize(QStackedWidget* stack); void changeEvent(QEvent* event) override; void showEvent(QShowEvent* event) override; void closeEvent(QCloseEvent* event) override; private: std::unique_ptr<QWidget> main_widget = nullptr; std::unique_ptr<QStackedWidget> stack = nullptr; std::unique_ptr<SideBar> sidebar = nullptr; }; #endif // __window_h