Files
RRJServer/TrayServerLMS/mainwindow.h
2025-10-21 14:40:35 +03:00

72 lines
1.9 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QTranslator>
#include <QEvent>
#include <QCloseEvent>
#include <QSystemTrayIcon>
#include <QAction>
#include "serverlmswidget.h"
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
protected:
/* Метод получения событий в главном окне приложения
* В нём будет производиться проверка события смены перевода приложения
*/
void changeEvent(QEvent * event) override;
/* Виртуальная функция родительского класса в нашем классе
* переопределяется для изменения поведения приложения,
* чтобы оно сворачивалось в трей, когда мы этого хотим
*/
void closeEvent(QCloseEvent * event) override;
public slots:
//Слот обработки смены языка
void slot_LanguageChanged(QString language);
//Слот нажатия на иконку приложения в трее
void slot_IconActivated(QSystemTrayIcon::ActivationReason reason);
//Слоты нажатия на пункты меню
void slot_Menu_ShowWindow();
void slot_Menu_HideWindow();
void slot_Menu_Exit();
signals:
//сигнал об изменении языка интерфейса
void signal_LanguageChanged(QString language);
private:
void exit();
void errorCheck();
private:
Ui::MainWindow *ui;
ServerLMSWidget* serverLMSWidget;
QTranslator qtLanguageTranslator;
//Трей
QSystemTrayIcon* trayIcon;
QMenu * menu;
QAction * action_ShowWindow;
QAction * action_HideWindow;
QAction * action_Exit;
};
#endif // MAINWINDOW_H