/
pi_coder
/
ByteMachine
Обзор
Документация
Войти
/
pi_coder
/
ByteMachine
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/undo/undo_remove_node.h
55 строк
2 KB
pimenov-and
Перенос функциональности из старого проекта, в основном это описания узлов
19 июл 2026, 20:13
19 июл 2026, 20:13
cb3c51b
Код
Авторство
О чём код?
//////////////////////////////////////////////////////////////// // ByteMachine // Команда отмены удаления узла //////////////////////////////////////////////////////////////// #ifndef UNDO_REMOVE_NODE_H #define UNDO_REMOVE_NODE_H //============================================================== #include <QUndoCommand> #include "nodes/base_node.h" #include "nodes/input_pin.h" #include "nodes/output_pin.h" //============================================================== class Project; //============================================================== // Команда отмены удаления узла //============================================================== class UndoRemoveNode : public QUndoCommand { public: // Конструктор с параметрами UndoRemoveNode(Project *project, const ShPtrBaseNode &node); // Деструктор ~UndoRemoveNode() override; // Функция отмены void undo() override; // Функция восстановления void redo() override; private: // Инициализация подключенных к узлу пинов void initOtherPins(); // Отключение входных пинов void disconnectInPins(); // Отключение выходных пинов void disconnectOutPins(); // Подключение входных пинов void connectInPins(); // Подлючение выходных пинов void connectOutPins(); // Проект Project *project_{nullptr}; // Узел ShPtrBaseNode node_{nullptr}; // Подключенные ко входным пинам выходные узлы ShPtrOutputPin connectOtherOutPins_[2]; // Подключенные к выходному пину QVector<ShPtrInputPin> connectOtherInPins_{}; }; //============================================================== #endif // UNDO_REMOVE_NODE_H