@@ -20,6 +20,9 @@ PlotDock::PlotDock(QWidget* parent)
20
20
ui->splitterForPlot ->restoreState (Settings::getValue (" PlotDock" , " splitterSize" ).toByteArray ());
21
21
ui->comboLineType ->setCurrentIndex (Settings::getValue (" PlotDock" , " lineType" ).toInt ());
22
22
ui->comboPointShape ->setCurrentIndex (Settings::getValue (" PlotDock" , " pointShape" ).toInt ());
23
+
24
+ // Connect signals
25
+ connect (ui->treePlotColumns , &QTreeWidget::itemChanged, this , &PlotDock::on_treePlotColumns_itemChanged);
23
26
}
24
27
25
28
PlotDock::~PlotDock ()
@@ -41,9 +44,8 @@ void PlotDock::updatePlot(SqliteTableModel* model, BrowseDataTableSettings* sett
41
44
// Store pointer to the current browse table settings in the main window
42
45
m_currentTableSettings = settings;
43
46
44
- // disconnect treeplotcolumns item changed updates
45
- disconnect (ui->treePlotColumns , SIGNAL (itemChanged (QTreeWidgetItem*,int )),
46
- this ,SLOT (on_treePlotColumns_itemChanged (QTreeWidgetItem*,int )));
47
+ // disable tree plot columns item changed updates
48
+ ui->treePlotColumns ->blockSignals (true );
47
49
48
50
m_currentPlotModel = model;
49
51
@@ -141,7 +143,7 @@ void PlotDock::updatePlot(SqliteTableModel* model, BrowseDataTableSettings* sett
141
143
142
144
ui->plotWidget ->yAxis ->setLabel (" Y" );
143
145
ui->plotWidget ->xAxis ->setLabel (" X" );
144
- connect ( ui->treePlotColumns , &QTreeWidget::itemChanged, this , &PlotDock::on_treePlotColumns_itemChanged );
146
+ ui->treePlotColumns -> blockSignals ( false );
145
147
}
146
148
147
149
// search for the x axis select
@@ -255,8 +257,7 @@ void PlotDock::updatePlot(SqliteTableModel* model, BrowseDataTableSettings* sett
255
257
void PlotDock::on_treePlotColumns_itemChanged (QTreeWidgetItem* changeitem, int column)
256
258
{
257
259
// disable change updates, or we get unwanted redrawing and weird behavior
258
- disconnect (ui->treePlotColumns , SIGNAL (itemChanged (QTreeWidgetItem*,int )),
259
- this ,SLOT (on_treePlotColumns_itemChanged (QTreeWidgetItem*,int )));
260
+ ui->treePlotColumns ->blockSignals (true );
260
261
261
262
// make sure only 1 X axis is selected
262
263
if (column == PlotColumnX)
@@ -349,17 +350,15 @@ void PlotDock::on_treePlotColumns_itemChanged(QTreeWidgetItem* changeitem, int c
349
350
}
350
351
}
351
352
352
- connect (ui->treePlotColumns , SIGNAL (itemChanged (QTreeWidgetItem*,int )),
353
- this ,SLOT (on_treePlotColumns_itemChanged (QTreeWidgetItem*,int )));
353
+ ui->treePlotColumns ->blockSignals (false );
354
354
355
355
updatePlot (m_currentPlotModel, m_currentTableSettings, false );
356
356
}
357
357
358
358
void PlotDock::on_treePlotColumns_itemDoubleClicked (QTreeWidgetItem* item, int column)
359
359
{
360
360
// disable change updates, or we get unwanted redrawing and weird behavior
361
- disconnect (ui->treePlotColumns , SIGNAL (itemChanged (QTreeWidgetItem*,int )),
362
- this ,SLOT (on_treePlotColumns_itemChanged (QTreeWidgetItem*,int )));
361
+ ui->treePlotColumns ->blockSignals (true );
363
362
364
363
if (column == PlotColumnY)
365
364
{
@@ -390,8 +389,7 @@ void PlotDock::on_treePlotColumns_itemDoubleClicked(QTreeWidgetItem* item, int c
390
389
}
391
390
}
392
391
393
- connect (ui->treePlotColumns , SIGNAL (itemChanged (QTreeWidgetItem*,int )),
394
- this ,SLOT (on_treePlotColumns_itemChanged (QTreeWidgetItem*,int )));
392
+ ui->treePlotColumns ->blockSignals (false );
395
393
396
394
updatePlot (m_currentPlotModel, m_currentTableSettings, false );
397
395
}
0 commit comments