32
32
#include < plotnavigator.hpp>
33
33
#include < style.h>
34
34
#include < pluginbase/preferences.h>
35
+ #include < gui/docking/dockablearea.h>
36
+ #include < gui/docking/dockwrapper.h>
35
37
36
38
using namespace scopy ;
37
39
using namespace datamonitor ;
@@ -41,7 +43,7 @@ MonitorPlot::MonitorPlot(QString name, uint32_t uuid, QWidget *parent)
41
43
{
42
44
layout = new QVBoxLayout ();
43
45
setLayout (layout);
44
- layout->setContentsMargins (0 , 0 , 0 , 10 );
46
+ layout->setContentsMargins (0 , 0 , 0 , 0 );
45
47
46
48
Preferences *p = Preferences::GetInstance ();
47
49
dateTimeFormat = p->get (" dataloggerplugin_date_time_format" ).toString ();
@@ -53,7 +55,18 @@ MonitorPlot::MonitorPlot(QString name, uint32_t uuid, QWidget *parent)
53
55
}
54
56
});
55
57
56
- m_plot = new PlotWidget (this );
58
+ m_dockableArea = createDockableArea (this );
59
+ QWidget *dockableAreaWidget = dynamic_cast <QWidget *>(m_dockableArea);
60
+ Style::setBackgroundColor (dockableAreaWidget, json::theme::background_subtle, true );
61
+ layout->addWidget (dockableAreaWidget);
62
+
63
+ m_monitorPlotWidget = new QWidget (this );
64
+ m_monitorPlotWidget->setSizePolicy (QSizePolicy::Expanding, QSizePolicy::Expanding);
65
+ QVBoxLayout *monitorPlotWidgetLayout = new QVBoxLayout (m_monitorPlotWidget);
66
+ monitorPlotWidgetLayout->setContentsMargins (0 , 0 , 0 , 10 );
67
+
68
+ m_plot = new PlotWidget (m_monitorPlotWidget);
69
+ m_plot->setSizePolicy (QSizePolicy::Expanding, QSizePolicy::Expanding);
57
70
58
71
auto nameLbl = m_plot->getPlotInfo ()->addLabelInfo (IP_LEFT, IP_TOP);
59
72
nameLbl->setText (m_name);
@@ -72,7 +85,7 @@ MonitorPlot::MonitorPlot(QString name, uint32_t uuid, QWidget *parent)
72
85
73
86
startTimeLabel = new QLabel (this );
74
87
75
- HoverWidget *startTime = new HoverWidget (nullptr , m_plot, this );
88
+ HoverWidget *startTime = new HoverWidget (nullptr , m_plot, m_monitorPlotWidget );
76
89
startTime->setContent (startTimeLabel);
77
90
startTime->setAnchorPos (HoverPosition::HP_TOPRIGHT);
78
91
startTime->setContentPos (HoverPosition::HP_BOTTOMLEFT);
@@ -82,9 +95,14 @@ MonitorPlot::MonitorPlot(QString name, uint32_t uuid, QWidget *parent)
82
95
83
96
setStartTime ();
84
97
setupXAxis ();
98
+
85
99
generateBufferPreviewer ();
86
100
87
- layout->addWidget (m_plot);
101
+ m_dockWidet = createDockWrapper (" Data Monitor Plot" );
102
+ m_dockWidet->setInnerWidget (m_monitorPlotWidget);
103
+ m_dockableArea->addDockWrapper (m_dockWidet);
104
+
105
+ m_monitorPlotWidget->layout ()->addWidget (m_plot);
88
106
m_plotLayout->addLayout (layout);
89
107
90
108
m_monitorCurves = new QMap<QString, MonitorPlotCurve *>();
@@ -296,7 +314,7 @@ void MonitorPlot::generateBufferPreviewer()
296
314
updateBufferPreviewer (time);
297
315
});
298
316
m_plot->navigator ()->setResetOnNewBase (false );
299
- layout->addWidget (m_bufferPreviewer);
317
+ m_monitorPlotWidget-> layout () ->addWidget (m_bufferPreviewer);
300
318
}
301
319
302
320
#include " moc_monitorplot.cpp"
0 commit comments