@@ -1,8 +1,11 | |||
|
1 | 1 | #ifndef SCIQLOP_VISUALIZATIONWIDGET_H |
|
2 | 2 | #define SCIQLOP_VISUALIZATIONWIDGET_H |
|
3 | 3 | |
|
4 | #include <QLoggingCategory> | |
|
4 | 5 | #include <QWidget> |
|
5 | 6 | |
|
7 | Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationWidget) | |
|
8 | ||
|
6 | 9 | namespace Ui { |
|
7 | 10 | class VisualizationWidget; |
|
8 | 11 | } // namespace Ui |
@@ -1,10 +1,40 | |||
|
1 | 1 | #include "visualization/VisualizationWidget.h" |
|
2 | 2 | #include "ui_VisualizationWidget.h" |
|
3 | #include "visualization/VisualizationTabWidget.h" | |
|
4 | ||
|
5 | #include <QDebug> | |
|
6 | #include <QToolButton> | |
|
7 | ||
|
8 | #include "iostream" | |
|
9 | ||
|
10 | Q_LOGGING_CATEGORY(LOG_VisualizationWidget, "VisualizationWidget") | |
|
3 | 11 | |
|
4 | 12 | VisualizationWidget::VisualizationWidget(QWidget *parent) |
|
5 | 13 | : QWidget(parent), ui(new Ui::VisualizationWidget) |
|
6 | 14 | { |
|
7 | 15 | ui->setupUi(this); |
|
16 | ||
|
17 | auto *addTabViewButton = new QToolButton(ui->tabWidget); | |
|
18 | addTabViewButton->setText("Add View"); | |
|
19 | addTabViewButton->setCursor(Qt::ArrowCursor); | |
|
20 | addTabViewButton->setAutoRaise(true); | |
|
21 | ui->tabWidget->setCornerWidget(addTabViewButton, Qt::TopRightCorner); | |
|
22 | ||
|
23 | auto addTabView = [&](bool checked) { | |
|
24 | auto index = ui->tabWidget->addTab(new VisualizationTabWidget(ui->tabWidget), | |
|
25 | QString("View %1").arg(ui->tabWidget->count() + 1)); | |
|
26 | qCInfo(LOG_VisualizationWidget()) << tr("add the tab of index %1").arg(index); | |
|
27 | }; | |
|
28 | ||
|
29 | auto removeTabView = [&](int index) { | |
|
30 | ui->tabWidget->removeTab(index); | |
|
31 | qCInfo(LOG_VisualizationWidget()) << tr("remove the tab of index %1").arg(index); | |
|
32 | }; | |
|
33 | ||
|
34 | ui->tabWidget->setTabsClosable(true); | |
|
35 | ||
|
36 | connect(addTabViewButton, &QToolButton::clicked, addTabView); | |
|
37 | connect(ui->tabWidget, &QTabWidget::tabCloseRequested, removeTabView); | |
|
8 | 38 | } |
|
9 | 39 | |
|
10 | 40 | VisualizationWidget::~VisualizationWidget() |
@@ -19,20 +19,23 | |||
|
19 | 19 | <property name="currentIndex"> |
|
20 | 20 | <number>0</number> |
|
21 | 21 | </property> |
|
22 |
<widget class=" |
|
|
22 | <widget class="VisualizationTabWidget" name="firstView"> | |
|
23 | 23 | <attribute name="title"> |
|
24 | 24 | <string>View 1</string> |
|
25 | 25 | </attribute> |
|
26 | 26 | </widget> |
|
27 | <widget class="QWidget" name="secondView"> | |
|
28 | <attribute name="title"> | |
|
29 | <string>+</string> | |
|
30 | </attribute> | |
|
31 | </widget> | |
|
32 | 27 | </widget> |
|
33 | 28 | </item> |
|
34 | 29 | </layout> |
|
35 | 30 | </widget> |
|
31 | <customwidgets> | |
|
32 | <customwidget> | |
|
33 | <class>VisualizationTabWidget</class> | |
|
34 | <extends>QWidget</extends> | |
|
35 | <header location="global">visualization/VisualizationTabWidget.h</header> | |
|
36 | <container>1</container> | |
|
37 | </customwidget> | |
|
38 | </customwidgets> | |
|
36 | 39 | <resources/> |
|
37 | 40 | <connections/> |
|
38 | 41 | </ui> |
General Comments 0
You need to be logged in to leave comments.
Login now