##// END OF EJS Templates
Add const and override
perrinel -
r119:ab875bffb49d
parent child
Show More
@@ -1,24 +1,24
1 1 #ifndef SCIQLOP_IVISUALIZATIONWIDGET_H
2 2 #define SCIQLOP_IVISUALIZATIONWIDGET_H
3 3
4 4 #include "Visualization/IVisualizationWidgetVisitor.h"
5 5
6 6 #include <QString>
7 7 #include <memory>
8 8
9 9 /**
10 10 * @brief The IVisualizationWidget handles the visualization widget.
11 11 */
12 12 class IVisualizationWidget {
13 13
14 14 public:
15 15 virtual ~IVisualizationWidget() = default;
16 16
17 17 /// Initializes the plugin
18 18 virtual void accept(IVisualizationWidget *visitor) = 0;
19 19 virtual void close() = 0;
20 virtual QString name() = 0;
20 virtual QString name() const = 0;
21 21 };
22 22
23 23
24 24 #endif // SCIQLOP_IVISUALIZATIONWIDGET_H
@@ -1,39 +1,39
1 1 #ifndef SCIQLOP_VISUALIZATIONGRAPHWIDGET_H
2 2 #define SCIQLOP_VISUALIZATIONGRAPHWIDGET_H
3 3
4 4 #include "Visualization/IVisualizationWidget.h"
5 5
6 6 #include <QWidget>
7 7
8 8 #include <memory>
9 9
10 10 #include <Common/spimpl.h>
11 11
12 12 class Variable;
13 13
14 14 namespace Ui {
15 15 class VisualizationGraphWidget;
16 16 } // namespace Ui
17 17
18 18 class VisualizationGraphWidget : public QWidget, public IVisualizationWidget {
19 19 Q_OBJECT
20 20
21 21 public:
22 22 explicit VisualizationGraphWidget(QWidget *parent = 0);
23 23 virtual ~VisualizationGraphWidget();
24 24
25 25 void addVariable(std::shared_ptr<Variable> variable);
26 26
27 27 // IVisualizationWidget interface
28 void accept(IVisualizationWidget *visitor);
29 void close();
30 QString name();
28 void accept(IVisualizationWidget *visitor) override;
29 void close() override;
30 QString name() const;
31 31
32 32 private:
33 33 Ui::VisualizationGraphWidget *ui;
34 34
35 35 class VisualizationGraphWidgetPrivate;
36 36 spimpl::unique_impl_ptr<VisualizationGraphWidgetPrivate> impl;
37 37 };
38 38
39 39 #endif // SCIQLOP_VISUALIZATIONGRAPHWIDGET_H
@@ -1,39 +1,39
1 1 #ifndef SCIQLOP_VISUALIZATIONTABWIDGET_H
2 2 #define SCIQLOP_VISUALIZATIONTABWIDGET_H
3 3
4 4 #include "Visualization/IVisualizationWidget.h"
5 5
6 6 #include <QWidget>
7 7
8 8 class VisualizationZoneWidget;
9 9
10 10 namespace Ui {
11 11 class VisualizationTabWidget;
12 12 } // namespace Ui
13 13
14 14 class VisualizationTabWidget : public QWidget, public IVisualizationWidget {
15 15 Q_OBJECT
16 16
17 17 public:
18 18 explicit VisualizationTabWidget(QWidget *parent = 0);
19 19 virtual ~VisualizationTabWidget();
20 20
21 21 /// Add a zone widget
22 22 void addZone(VisualizationZoneWidget *zoneWidget);
23 23
24 24 /// Create a zone using a Variable
25 25 VisualizationZoneWidget *createZone();
26 26
27 27 /// Remove a zone
28 28 void removeZone(VisualizationZoneWidget *zone);
29 29
30 30 // IVisualizationWidget interface
31 void accept(IVisualizationWidget *visitor);
32 void close();
33 QString name();
31 void accept(IVisualizationWidget *visitor) override;
32 void close() override;
33 QString name() const override;
34 34
35 35 private:
36 36 Ui::VisualizationTabWidget *ui;
37 37 };
38 38
39 39 #endif // SCIQLOP_VISUALIZATIONTABWIDGET_H
@@ -1,42 +1,42
1 1 #ifndef SCIQLOP_VISUALIZATIONWIDGET_H
2 2 #define SCIQLOP_VISUALIZATIONWIDGET_H
3 3
4 4 #include "Visualization/IVisualizationWidget.h"
5 5
6 6 #include <QLoggingCategory>
7 7 #include <QWidget>
8 8
9 9 class VisualizationTabWidget;
10 10
11 11 Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationWidget)
12 12
13 13 namespace Ui {
14 14 class VisualizationWidget;
15 15 } // namespace Ui
16 16
17 17 class VisualizationWidget : public QWidget, public IVisualizationWidget {
18 18 Q_OBJECT
19 19
20 20 public:
21 21 explicit VisualizationWidget(QWidget *parent = 0);
22 22 virtual ~VisualizationWidget();
23 23
24 24 /// Add a zone widget
25 25 virtual void addTab(VisualizationTabWidget *tabWidget);
26 26
27 27 /// Create a tab using a Variable
28 28 VisualizationTabWidget *createTab();
29 29
30 30 /// Remove a tab
31 31 void removeTab(VisualizationTabWidget *tab);
32 32
33 33 // IVisualizationWidget interface
34 void accept(IVisualizationWidget *visitor);
35 void close();
36 QString name();
34 void accept(IVisualizationWidget *visitor) override;
35 void close() override;
36 QString name() const;
37 37
38 38 private:
39 39 Ui::VisualizationWidget *ui;
40 40 };
41 41
42 42 #endif // VISUALIZATIONWIDGET_H
@@ -1,39 +1,39
1 1 #ifndef SCIQLOP_VISUALIZATIONZONEWIDGET_H
2 2 #define SCIQLOP_VISUALIZATIONZONEWIDGET_H
3 3
4 4 #include "Visualization/IVisualizationWidget.h"
5 5
6 6 class VisualizationGraphWidget;
7 7
8 8 #include <QWidget>
9 9
10 10 namespace Ui {
11 11 class VisualizationZoneWidget;
12 12 } // Ui
13 13
14 14 class VisualizationZoneWidget : public QWidget, public IVisualizationWidget {
15 15 Q_OBJECT
16 16
17 17 public:
18 18 explicit VisualizationZoneWidget(QWidget *parent = 0);
19 19 virtual ~VisualizationZoneWidget();
20 20
21 21 /// Add a graph widget
22 22 void addGraph(VisualizationGraphWidget *graphWidget);
23 23
24 24 /// Create a graph using a Variable
25 25 VisualizationGraphWidget *createGraph();
26 26
27 27 /// Remove a graph
28 28 void removeGraph(VisualizationGraphWidget *graph);
29 29
30 30 // IVisualizationWidget interface
31 void accept(IVisualizationWidget *visitor);
32 void close();
33 QString name();
31 void accept(IVisualizationWidget *visitor) override;
32 void close() override;
33 QString name() const override;
34 34
35 35 private:
36 36 Ui::VisualizationZoneWidget *ui;
37 37 };
38 38
39 39 #endif // SCIQLOP_VISUALIZATIONZONEWIDGET_H
@@ -1,47 +1,47
1 1 #include "Visualization/VisualizationGraphWidget.h"
2 2 #include "ui_VisualizationGraphWidget.h"
3 3
4 4 #include <Variable/Variable.h>
5 5
6 6 #include <unordered_map>
7 7
8 8 struct VisualizationGraphWidget::VisualizationGraphWidgetPrivate {
9 9
10 10 // 1 variable -> n qcpplot
11 11 std::unordered_map<std::shared_ptr<Variable>, std::unique_ptr<QCPAbstractPlottable> >
12 12 m_VariableToPlotMap;
13 13 };
14 14
15 15 VisualizationGraphWidget::VisualizationGraphWidget(QWidget *parent)
16 16 : QWidget(parent),
17 17 ui(new Ui::VisualizationGraphWidget),
18 18 impl{spimpl::make_unique_impl<VisualizationGraphWidgetPrivate>()}
19 19 {
20 20 ui->setupUi(this);
21 21 }
22 22
23 23 VisualizationGraphWidget::~VisualizationGraphWidget()
24 24 {
25 25 delete ui;
26 26 }
27 27
28 28 void VisualizationGraphWidget::addVariable(std::shared_ptr<Variable> variable)
29 29 {
30 30 // todo: first check is variable contains data then check how many plot have to be created
31 31 }
32 32
33 33 void VisualizationGraphWidget::accept(IVisualizationWidget *visitor)
34 34 {
35 35 // TODO: manage the visitor
36 36 }
37 37
38 38 void VisualizationGraphWidget::close()
39 39 {
40 40 // The main view cannot be directly closed.
41 41 return;
42 42 }
43 43
44 QString VisualizationGraphWidget::name()
44 QString VisualizationGraphWidget::name() const
45 45 {
46 46 return QStringLiteral("MainView");
47 47 }
@@ -1,50 +1,49
1 1 #include "Visualization/VisualizationTabWidget.h"
2 2 #include "ui_VisualizationTabWidget.h"
3 3
4 4 #include "Visualization/VisualizationZoneWidget.h"
5 5
6 6
7 7 VisualizationTabWidget::VisualizationTabWidget(QWidget *parent)
8 8 : QWidget{parent}, ui{new Ui::VisualizationTabWidget}
9 9 {
10 10 ui->setupUi(this);
11
12 11 }
13 12
14 13 VisualizationTabWidget::~VisualizationTabWidget()
15 14 {
16 15 delete ui;
17 16 }
18 17
19 18 void VisualizationTabWidget::addZone(VisualizationZoneWidget *zoneWidget)
20 19 {
21 20 this->layout()->addWidget(zoneWidget);
22 21 }
23 22
24 23 VisualizationZoneWidget *VisualizationTabWidget::createZone()
25 24 {
26 25 auto zoneWidget = new VisualizationZoneWidget(this);
27 26 this->addZone(zoneWidget);
28 27
29 28 return zoneWidget;
30 29 }
31 30
32 31 void VisualizationTabWidget::removeZone(VisualizationZoneWidget *zone)
33 32 {
34 33 }
35 34
36 35 void VisualizationTabWidget::accept(IVisualizationWidget *visitor)
37 36 {
38 37 // TODO: manage the visitor
39 38 }
40 39
41 40 void VisualizationTabWidget::close()
42 41 {
43 42 // The main view cannot be directly closed.
44 43 return;
45 44 }
46 45
47 QString VisualizationTabWidget::name()
46 QString VisualizationTabWidget::name() const
48 47 {
49 48 return QStringLiteral("MainView");
50 49 }
@@ -1,74 +1,74
1 1 #include "Visualization/VisualizationWidget.h"
2 2 #include "Visualization/VisualizationTabWidget.h"
3 3 #include "Visualization/qcustomplot.h"
4 4
5 5 #include "ui_VisualizationWidget.h"
6 6
7 7 #include <QToolButton>
8 8
9 9 Q_LOGGING_CATEGORY(LOG_VisualizationWidget, "VisualizationWidget")
10 10
11 11 VisualizationWidget::VisualizationWidget(QWidget *parent)
12 12 : QWidget{parent}, ui{new Ui::VisualizationWidget}
13 13 {
14 14 ui->setupUi(this);
15 15
16 16 auto addTabViewButton = new QToolButton{ui->tabWidget};
17 17 addTabViewButton->setText(tr("Add View"));
18 18 addTabViewButton->setCursor(Qt::ArrowCursor);
19 19 addTabViewButton->setAutoRaise(true);
20 20 ui->tabWidget->setCornerWidget(addTabViewButton, Qt::TopRightCorner);
21 21
22 22 auto addTabView = [&]() {
23 23 auto index = ui->tabWidget->addTab(new VisualizationTabWidget(ui->tabWidget),
24 24 QString("View %1").arg(ui->tabWidget->count() + 1));
25 25 qCInfo(LOG_VisualizationWidget()) << tr("add the tab of index %1").arg(index);
26 26 };
27 27
28 28 auto removeTabView = [&](int index) {
29 29 ui->tabWidget->removeTab(index);
30 30 qCInfo(LOG_VisualizationWidget()) << tr("remove the tab of index %1").arg(index);
31 31 };
32 32
33 33 ui->tabWidget->setTabsClosable(true);
34 34
35 35 connect(addTabViewButton, &QToolButton::clicked, addTabView);
36 36 connect(ui->tabWidget, &QTabWidget::tabCloseRequested, removeTabView);
37 37 }
38 38
39 39 VisualizationWidget::~VisualizationWidget()
40 40 {
41 41 delete ui;
42 42 }
43 43
44 44 void VisualizationWidget::addTab(VisualizationTabWidget *tabWidget)
45 45 {
46 46 // NOTE: check is this method has to be deleted because of its dupplicated version visible as
47 47 // lambda function (in the constructor)
48 48 }
49 49
50 50 VisualizationTabWidget *VisualizationWidget::createTab()
51 51 {
52 52 }
53 53
54 54 void VisualizationWidget::removeTab(VisualizationTabWidget *tab)
55 55 {
56 56 // NOTE: check is this method has to be deleted because of its dupplicated version visible as
57 57 // lambda function (in the constructor)
58 58 }
59 59
60 60 void VisualizationWidget::accept(IVisualizationWidget *visitor)
61 61 {
62 62 // TODO: manage the visitor
63 63 }
64 64
65 65 void VisualizationWidget::close()
66 66 {
67 67 // The main view cannot be directly closed.
68 68 return;
69 69 }
70 70
71 QString VisualizationWidget::name()
71 QString VisualizationWidget::name() const
72 72 {
73 73 return QStringLiteral("MainView");
74 74 }
@@ -1,48 +1,48
1 1 #include "Visualization/VisualizationZoneWidget.h"
2 2 #include "ui_VisualizationZoneWidget.h"
3 3
4 4 #include "Visualization/VisualizationGraphWidget.h"
5 5
6 6 VisualizationZoneWidget::VisualizationZoneWidget(QWidget *parent)
7 7 : QWidget{parent}, ui{new Ui::VisualizationZoneWidget}
8 8 {
9 9 ui->setupUi(this);
10 10 }
11 11
12 12 VisualizationZoneWidget::~VisualizationZoneWidget()
13 13 {
14 14 delete ui;
15 15 }
16 16
17 17 void VisualizationZoneWidget::addGraph(VisualizationGraphWidget *graphWidget)
18 18 {
19 19 ui->visualizationZoneFrame->layout()->addWidget(graphWidget);
20 20 }
21 21
22 22 VisualizationGraphWidget *VisualizationZoneWidget::createGraph()
23 23 {
24 24 auto graphWidget = new VisualizationGraphWidget(this);
25 25 this->addGraph(graphWidget);
26 26
27 27 return graphWidget;
28 28 }
29 29
30 30 void VisualizationZoneWidget::removeGraph(VisualizationGraphWidget *graph)
31 31 {
32 32 }
33 33
34 34 void VisualizationZoneWidget::accept(IVisualizationWidget *visitor)
35 35 {
36 36 // TODO: manage the visitor
37 37 }
38 38
39 39 void VisualizationZoneWidget::close()
40 40 {
41 41 // The main view cannot be directly closed.
42 42 return;
43 43 }
44 44
45 QString VisualizationZoneWidget::name()
45 QString VisualizationZoneWidget::name() const
46 46 {
47 47 return QStringLiteral("MainView");
48 48 }
General Comments 0
You need to be logged in to leave comments. Login now