From b310af10e5d0ea6a12f8b915a5ebbfd4ced11d77 Mon Sep 17 00:00:00 2001 From: Mark Liversedge Date: Sat, 8 Mar 2014 20:47:39 +0000 Subject: [PATCH] Update ChartBar button text .. when editing it in the chart settings --- src/ChartBar.cpp | 12 +++++++++++- src/ChartBar.h | 1 + src/HomeWindow.cpp | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/ChartBar.cpp b/src/ChartBar.cpp index 91b784d4e..322904fba 100644 --- a/src/ChartBar.cpp +++ b/src/ChartBar.cpp @@ -31,7 +31,6 @@ ChartBar::ChartBar(Context *context) : QWidget(context->mainWindow), context(con QHBoxLayout *vlayout = new QHBoxLayout(this); vlayout->setSpacing(0); vlayout->setContentsMargins(0,0,0,0); - layout = new QHBoxLayout; layout->setSpacing(2); layout->setContentsMargins(0,0,0,0); @@ -96,6 +95,17 @@ ChartBar::addWidget(QString title) signalMapper->setMapping(newbutton, buttons.count()-1); } +void +ChartBar::setText(int index, QString text) +{ + buttons[index]->setText(text); + QFontMetrics fontMetric(buttonFont); + int width = fontMetric.width(text); + buttons[index]->setWidth(width+20); + +} + + void ChartBar::clear() { diff --git a/src/ChartBar.h b/src/ChartBar.h index 22357393c..ab7edbde9 100644 --- a/src/ChartBar.h +++ b/src/ChartBar.h @@ -48,6 +48,7 @@ public slots: void clear(); void clicked(int); void removeWidget(int); + void setText(int index, QString); //void setCurrentIndex(int index); signals: diff --git a/src/HomeWindow.cpp b/src/HomeWindow.cpp index 82d86d07e..2b9f96117 100644 --- a/src/HomeWindow.cpp +++ b/src/HomeWindow.cpp @@ -216,7 +216,7 @@ HomeWindow::titleChanged() // rename the tab if (!currentStyle) { - //XXX move to scope bar tabbed->setTabText(controlStack->currentIndex(), titleEdit->text()); + chartbar->setText(controlStack->currentIndex(), titleEdit->text()); } // repaint to reflect