MVC  0.0.1
controller.h
См. документацию.
1 #pragma once
2 
3 #include "icontroller.h"
4 #include "imodel.h"
5 #include "iview.h"
6 #include <memory>
7 
8 class Controller : public IController {
9 
10 
11  public:
13  virtual ~Controller() = default;
14 
15  void commandClear() override;
16 
17  void commandNewPoint(const Point&) override;
18 
19  void commandNewLine(const Point&, const Point&) override;
20 
21  void commandNewCircle(const Point&, const int&) override;
22 
23  void commandRemoveShape() override;
24 
25  void commandOpenSuite(const std::string&) override;
26 
27  void commandSaveSuite(const std::string&) override;
28 
29  void loop() override;
30 
31  private:
32  bool readCommand() override;
33 
34  private:
35  IModelSptr controllerModel;
36  IViewSptr controllerView;
37 };
iview.h
Controller::commandClear
void commandClear() override
Clearing current model.
Definition: controller.cpp:21
Controller::commandRemoveShape
void commandRemoveShape() override
Removes last shape from current model.
Definition: controller.cpp:45
Controller::Controller
Controller(IModelSptr, IViewSptr)
Definition: controller.cpp:5
Controller::commandOpenSuite
void commandOpenSuite(const std::string &) override
loads the model from file
Definition: controller.cpp:51
imodel.h
IModelSptr
std::shared_ptr< IModel > IModelSptr
Definition: imodel.h:63
IController
Here is controlls the model.
Definition: icontroller.h:12
Controller::commandNewPoint
void commandNewPoint(const Point &) override
Adds shape Point to current model.
Definition: controller.cpp:27
Controller
Definition: controller.h:8
Controller::commandNewCircle
void commandNewCircle(const Point &, const int &) override
Adds shape circle to current model.
Definition: controller.cpp:39
Controller::commandNewLine
void commandNewLine(const Point &, const Point &) override
Adds shape line to current model.
Definition: controller.cpp:33
Controller::~Controller
virtual ~Controller()=default
icontroller.h
IViewSptr
std::shared_ptr< IView > IViewSptr
Definition: iview.h:20
Point
Definition: base_types.h:6
Controller::commandSaveSuite
void commandSaveSuite(const std::string &) override
saves the model to file
Definition: controller.cpp:61
Controller::loop
void loop() override
starts processing user commands
Definition: controller.cpp:139