From 14031a0063bebf958d70e0166779e2ef7c5c9508 Mon Sep 17 00:00:00 2001 From: Mark Liversedge Date: Wed, 12 Mar 2014 13:28:01 +0000 Subject: [PATCH] Fix SEGV on add chart with Qt5 .. and also selects the first chart on the chartbar at startup. --- src/ChartBar.cpp | 6 ++++++ src/ChartBar.h | 2 +- src/HomeWindow.cpp | 8 ++++++-- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/ChartBar.cpp b/src/ChartBar.cpp index b9b966901..faec0f764 100644 --- a/src/ChartBar.cpp +++ b/src/ChartBar.cpp @@ -251,6 +251,12 @@ ChartBar::removeWidget(int index) } +void +ChartBar::setCurrentIndex(int index) +{ + clicked(index); +} + void ChartBar::clicked(int index) { diff --git a/src/ChartBar.h b/src/ChartBar.h index f28c0de9f..895d60398 100644 --- a/src/ChartBar.h +++ b/src/ChartBar.h @@ -58,7 +58,7 @@ public slots: void clicked(int); void removeWidget(int); void setText(int index, QString); - //void setCurrentIndex(int index); + void setCurrentIndex(int index); void scrollLeft(); void scrollRight(); void tidy(); diff --git a/src/HomeWindow.cpp b/src/HomeWindow.cpp index 6bdb10ccc..40f6cc662 100644 --- a/src/HomeWindow.cpp +++ b/src/HomeWindow.cpp @@ -176,7 +176,9 @@ HomeWindow::addChartFromMenu(QAction*action) } } - if (id != GcWindowTypes::None) appendChart(id); // called from Context to inset chart + if (id != GcWindowTypes::None) { + appendChart(id); // called from Context to inset chart + } } void @@ -281,6 +283,7 @@ HomeWindow::tabSelected(int index) controlStack->setCurrentIndex(index); titleEdit->setText(charts[index]->property("title").toString()); tabbed->setCurrentIndex(index); + chartbar->setCurrentIndex(index); } active = false; @@ -427,7 +430,7 @@ HomeWindow::appendChart(GcWinID id) // returns null if cancelled or closed if (newone) { addChart(newone); - newone->show(); + //newone->show() //Crash on QT5 } // now wipe it @@ -579,6 +582,7 @@ HomeWindow::addChart(GcWindow* newone) titleEdit->setText(""); } + // select the last tab just added active = false; }