Skip to content

Commit a8264e3

Browse files
facontidavidepaceholder
authored andcommitted
Remove NodeDataModel::clone() (paceholder#164)
* removed NodeDataModel::clone(), using a more classic Factory/Builder pattern. * trying to make visual studio happy * Allow the DataModelRegistry to use static method Name() if defined * use modern type_traits
1 parent 5f3d843 commit a8264e3

16 files changed

+84
-84
lines changed

examples/calculator/AdditionModel.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,6 @@ class AdditionModel : public MathOperationDataModel
2828
name() const override
2929
{ return QStringLiteral("Addition"); }
3030

31-
std::unique_ptr<NodeDataModel>
32-
clone() const override
33-
{ return std::make_unique<AdditionModel>(); }
34-
3531
private:
3632

3733
void

examples/calculator/DivisionModel.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,6 @@ class DivisionModel : public MathOperationDataModel
5656
name() const override
5757
{ return QStringLiteral("Division"); }
5858

59-
std::unique_ptr<NodeDataModel>
60-
clone() const override
61-
{ return std::make_unique<DivisionModel>(); }
62-
6359
private:
6460

6561
void

examples/calculator/ModuloModel.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,10 +67,6 @@ class ModuloModel
6767
name() const override
6868
{ return QStringLiteral("Modulo"); }
6969

70-
std::unique_ptr<NodeDataModel>
71-
clone() const override
72-
{ return std::make_unique<ModuloModel>(); }
73-
7470
public:
7571

7672
QJsonObject

examples/calculator/MultiplicationModel.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,6 @@ class MultiplicationModel : public MathOperationDataModel
2828
name() const override
2929
{ return QStringLiteral("Multiplication"); }
3030

31-
std::unique_ptr<NodeDataModel>
32-
clone() const override
33-
{ return std::make_unique<MultiplicationModel>(); }
34-
3531
private:
3632

3733
void

examples/calculator/NumberDisplayDataModel.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,6 @@ class NumberDisplayDataModel : public NodeDataModel
4040
name() const override
4141
{ return QStringLiteral("Result"); }
4242

43-
std::unique_ptr<NodeDataModel>
44-
clone() const override
45-
{ return std::make_unique<NumberDisplayDataModel>(); }
46-
4743
public:
4844

4945
unsigned int

examples/calculator/NumberSourceDataModel.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,6 @@ class NumberSourceDataModel
4343
name() const override
4444
{ return QStringLiteral("NumberSource"); }
4545

46-
std::unique_ptr<NodeDataModel>
47-
clone() const override
48-
{ return std::make_unique<NumberSourceDataModel>(); }
49-
5046
public:
5147

5248
QJsonObject

examples/calculator/SubtractionModel.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,6 @@ class SubtractionModel : public MathOperationDataModel
5757
name() const override
5858
{ return QStringLiteral("Subtraction"); }
5959

60-
std::unique_ptr<NodeDataModel>
61-
clone() const override
62-
{ return std::make_unique<SubtractionModel>(); }
63-
6460
private:
6561

6662
void

examples/connection_colors/models.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,6 @@ class NaiveDataModel : public NodeDataModel
6464
name() const override
6565
{ return QString("NaiveDataModel"); }
6666

67-
std::unique_ptr<NodeDataModel>
68-
clone() const override
69-
{ return std::make_unique<NaiveDataModel>(); }
70-
7167
public:
7268

7369
unsigned int

examples/example2/TextDisplayDataModel.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ class TextDisplayDataModel : public NodeDataModel
3535
bool
3636
captionVisible() const override { return false; }
3737

38-
QString
39-
name() const override
38+
static QString
39+
Name()
4040
{ return QString("TextDisplayDataModel"); }
4141

42-
std::unique_ptr<NodeDataModel>
43-
clone() const override
44-
{ return std::make_unique<TextDisplayDataModel>(); }
42+
QString
43+
name() const override
44+
{ return TextDisplayDataModel::Name(); }
4545

4646
public:
4747

examples/example2/TextSourceDataModel.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ class TextSourceDataModel : public NodeDataModel
3535
bool
3636
captionVisible() const override { return false; }
3737

38-
QString
39-
name() const override
38+
static QString
39+
Name()
4040
{ return QString("TextSourceDataModel"); }
4141

42-
std::unique_ptr<NodeDataModel>
43-
clone() const override
44-
{ return std::make_unique<TextSourceDataModel>(); }
42+
QString
43+
name() const override
44+
{ return TextSourceDataModel::Name(); }
4545

4646
public:
4747

0 commit comments

Comments
 (0)