#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include #include #include #include #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