/
pi_coder
/
ByteMachine
Обзор
Документация
Войти
/
pi_coder
/
ByteMachine
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/forms/main_window.h
111 строк
4 KB
pimenov-and
Восстановление функционала старой версии
28 июл 2026, 20:04
28 июл 2026, 20:04
98412d0
Код
Авторство
О чём код?
//////////////////////////////////////////////////////////////// // ByteMachine // Главное окно //////////////////////////////////////////////////////////////// #ifndef MAIN_WINDOW_H #define MAIN_WINDOW_H //============================================================== #include <QtWidgets> #include "nodes/base_node.h" #include "ui_main_window.h" //============================================================== QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE //============================================================== // Главное окно //============================================================== class MainWindow : public QMainWindow { Q_OBJECT public: // Конструктор с параметром explicit MainWindow(QWidget *parent = nullptr); // Деструктор ~MainWindow() override; private slots: // Открыть проект void slotOpenProject(); // Сохранить проект как void slotSaveProjectAs(); // Функция вызывается при изменении видимости панели узлов void slotNodesPanelVisibleChanged(bool visible); // Функция вызывается при изменении видимости панели свойств void slotSettingsPanelVisibleChanged(bool visible); // Функция вызывается при изменении видимости сетки дизайнера void slotDesignerGridVisible(bool visible); // Функция вызывается при изменении видимости панели Output void slotOutputPanelVisible(bool visible); // Функция вызывается при изменении видимости комментариев узлов void slotNodesCommentsVisibleChanged(bool visible); // Функция выбора английского языка интерфейса void slotSetEnglishLanguage(); // Функция выбора русского языка интерфейса void slotSetRussianLanguage(); // Функция выбора светлой цветовой схемы void slotSetLightColorTheme(); // Функция выбора тёмной цветовой схемы void slotSetDarkColorTheme(); // Функция вызывается при добавлении узла через панель void slotAddNodeByType(NodeTypes nodeType); private: // Функция вызывается при возникновении события void changeEvent(QEvent *event) override; // Функция вызывается при закрытия окна void closeEvent(QCloseEvent*) override; // Задание соединений void setConnections(); // Перевод интерфейса void retranslate(); // Создание виджета с настройками узла [[nodiscard]] QWidget* createNodeSettingsWidget(BaseNode *node); // Создание кнопки для тул-бара для вызова списка отмен [[nodiscard]] QPushButton* createUndoViewBtn() const; // Инициализация панели с узлами void initNodesPanel(); // Создание вкладки Standart для панели Nodes [[nodiscard]] QWidget* createStandardPage(); // Создание вкладки Visualization для панели Nodes [[nodiscard]] QWidget* createVisualizationPage(); // Создание вкладки Communication для панели Nodes [[nodiscard]] QWidget* createCommunicationPage(); // Создание вкладки Script для панели Nodes [[nodiscard]] QWidget* createScriptPage(); // Создание вкладки Other для панели Nodes [[nodiscard]] QWidget* createOtherPage(); // Получение строки со стилем виджетов для светлой цветовой схемы [[nodiscard]] QString lightColorSchemeStyleSheet() const; // Получение строки со стилем виджетов для темной цветовой схемы [[nodiscard]] QString darkColorSchemeStyleSheet() const; // Интерфейс пользователя Ui::MainWindow ui_{}; // Объект для перевода QTranslator langTranslator_{}; }; //============================================================== #endif // MAIN_WINDOW_H