AdaptiveBrightness/AdaptiveBrightness/main_window.hpp

37 lines
691 B
C++

#pragma once
#include <array>
#include <memory>
#include <QAction>
#include <QIcon>
#include <QMainWindow>
#include <QMenu>
#include <QSystemTrayIcon>
#include <QTimer>
#include "ui_AdaptiveBrightness.h"
class MainWindow : public QMainWindow {
Q_OBJECT
public:
MainWindow(QWidget* parent = nullptr);
~MainWindow();
private:
void loadIcons();
void nextIcon();
Ui::AdaptiveBrightnessClass m_ui;
std::array<std::unique_ptr<QIcon>, 12> m_icons;
std::size_t m_currentIcon;
bool m_visibility;
QAction* m_showHideAction = nullptr;
QMenu* m_trayIconMenu = nullptr;
QSystemTrayIcon* m_trayIcon = nullptr;
QTimer* m_timer = nullptr;
};