// Copyright (C) 2023-2024 Stdware Collections // SPDX-License-Identifier: Apache-2.0 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include namespace QWK { class WidgetWindowAgent; class StyleAgent; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = nullptr); ~MainWindow() override; enum Theme { Dark, Light, }; Q_ENUM(Theme) Q_SIGNALS: void themeChanged(); protected: bool event(QEvent *event) override; private: void installWindowAgent(); void loadStyleSheet(Theme theme); Theme currentTheme{}; QWK::WidgetWindowAgent *windowAgent; }; #endif // MAINWINDOW_H