Conversation
This reverts commit 4400c7c.
| keeperObjects.push_back(factoryObjects.makeObjects[typePrimitive::CIRCLE]->create(location, radius)); | ||
| } | ||
|
|
||
| void Model::removeLast() { |
There was a problem hiding this comment.
круто, что можно удалить последний созданный элемент. а если нужно удалить не последний элемент, как быть?
| #include "view.h" | ||
| #include <stdexcept> | ||
|
|
||
| View::View(IModelSptr model, IPainterSptr painter) { |
There was a problem hiding this comment.
Обычно в представлении, если это не консольное приложение, создаются кнопки и остальные элементы интерфейса. Там же обычно можно перехватить сигналы при нажатии на кнопки или изменении текста. Возможно, логичнее в представлении не только принимать информацию об изменении модели, но и передавать события нажатия на кнопок в контроллер для обработки. Т.е. loop из контроллера скорее всего должен быть в представлении
| void Controller::commandRemoveShape() { | ||
|
|
||
| controllerModel->removeLast(); | ||
| controllerModel->notifyUpdate(); |
There was a problem hiding this comment.
возможно notifyUpdate лучше делать внутри модели, потому что контроллер не должен знать когда необходимо обновлять представление
ruscoder2013
left a comment
There was a problem hiding this comment.
В целом всё написано хорошо и понятно
No description provided.