/
polytech_kolomna
/
polygon2d
Обзор
Документация
Войти
/
polytech_kolomna
/
polygon2d
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
math
src/ui/mainwnd.cpp
67 строк
2 KB
Aleksandr Mahrov
merge master
16 янв 2026, 20:30
16 янв 2026, 20:30
f31d0a8
Код
Авторство
О чём код?
#include <mainwnd.h> #include <QMenuBar> #include <QActionGroup> MainWnd::MainWnd() { m_scene = new CurveDrawerSceneView(this); createActions(); createMenus(); setCentralWidget(m_scene); show(); } void MainWnd::createActions() { m_setLineMode = new QAction(tr("Прямая")); m_setLineSegMode = new QAction(tr("Отрезок")); m_setCircleMode = new QAction(tr("Окружность")); m_setArcMode = new QAction(tr("Дуга")); m_setNoMode = new QAction(tr("Режим выделения")); m_removeSelected = new QAction(tr("Удалить выбранное")); m_clearScene = new QAction(tr("Очистить сцену")); connect(m_setLineMode, &QAction::triggered, [this] { m_scene->SetDrawingMode(DrawingMode::LINE); }); connect(m_setLineSegMode, &QAction::triggered, [this] { m_scene->SetDrawingMode(DrawingMode::LINE_SEG); }); connect(m_setCircleMode, &QAction::triggered, [this] { m_scene->SetDrawingMode(DrawingMode::CIRCLE); }); connect(m_setArcMode, &QAction::triggered, [this] { m_scene->SetDrawingMode(DrawingMode::ARC); }); connect(m_setNoMode, &QAction::triggered, [this] { m_scene->SetDrawingMode(DrawingMode::NONE); }); connect(m_removeSelected, &QAction::triggered, [this] { m_scene->DeleteSelected(); }); connect(m_clearScene, &QAction::triggered, [this] { m_scene->ClearScene(); }); } void MainWnd::createMenus() { m_menuBar = new QMenuBar(this); QMenu* fileMenu = new QMenu(tr("Файл"), this); fileMenu->addAction(tr("Открыть")); fileMenu->addAction(tr("Сохранить")); QMenu* pathMenu = new QMenu(tr("Контур"), this); pathMenu->addAction(tr("Диагностировать контур")); pathMenu->addAction(tr("Вылечить контур")); QMenu* drawMenu = new QMenu(tr("Режим рисования"), this); drawMenu->addAction(m_setLineSegMode); drawMenu->addAction(m_setLineMode); drawMenu->addAction(m_setCircleMode); drawMenu->addAction(m_setArcMode); drawMenu->addAction(m_setNoMode); QMenu* sceneMenu = new QMenu(tr("Управление сценой"), this); sceneMenu->addAction(m_removeSelected); sceneMenu->addAction(m_clearScene); m_menuBar->addMenu(fileMenu); m_menuBar->addMenu(drawMenu); m_menuBar->addMenu(pathMenu); m_menuBar->addMenu(sceneMenu); setMenuBar(m_menuBar); }