MVC  0.0.1
icontroller.h
См. документацию.
1 #pragma once
2 
3 #include "base_types.h"
4 #include <string>
5 #include <memory>
6 
12 class IController {
13  public:
14  IController() = default;
15  virtual ~IController() = default;
16 
20  virtual void commandClear() = 0;
21 
25  virtual void commandNewPoint(const Point&) = 0;
26 
30  virtual void commandNewLine(const Point&, const Point&) = 0;
31 
35  virtual void commandNewCircle(const Point&, const int&) = 0;
36 
40  virtual void commandRemoveShape() = 0;
41 
45  virtual void commandOpenSuite(const std::string&) = 0;
46 
50  virtual void commandSaveSuite(const std::string&) = 0;
51 
52 
56  virtual void loop() = 0;
57 
61  virtual bool readCommand() = 0;
62 
63 };
64 
65 using IControllerSptr = std::shared_ptr<IController>;
base_types.h
IController::commandNewLine
virtual void commandNewLine(const Point &, const Point &)=0
Adds shape line to current model.
IController
Here is controlls the model.
Definition: icontroller.h:12
IController::~IController
virtual ~IController()=default
IController::commandSaveSuite
virtual void commandSaveSuite(const std::string &)=0
saves the model to file
IController::commandNewCircle
virtual void commandNewCircle(const Point &, const int &)=0
Adds shape circle to current model.
IController::commandClear
virtual void commandClear()=0
Clearing current model.
IController::commandOpenSuite
virtual void commandOpenSuite(const std::string &)=0
loads the model from file
IControllerSptr
std::shared_ptr< IController > IControllerSptr
Definition: icontroller.h:65
IController::commandRemoveShape
virtual void commandRemoveShape()=0
Removes last shape from current model.
IController::commandNewPoint
virtual void commandNewPoint(const Point &)=0
Adds shape Point to current model.
IController::IController
IController()=default
IController::loop
virtual void loop()=0
starts processing user commands
Point
Definition: base_types.h:6
IController::readCommand
virtual bool readCommand()=0
Reads user commands to process current model.