From 8ac321e7658fb91665d0b6eb7820f67b857f3532 Mon Sep 17 00:00:00 2001 From: Mark Liversedge Date: Fri, 6 May 2016 08:22:16 +0100 Subject: [PATCH] R Chart Initial Splitter Sizes .. some users get confused, so make the splitter sit in the middle (ish) to help them .. need to still fixup save/restore splitter position to chart config. --- src/Charts/RChart.cpp | 22 ++++++++++++++++++++++ src/Charts/RChart.h | 5 +++++ src/Gui/GcWindowRegistry.cpp | 1 - 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/Charts/RChart.cpp b/src/Charts/RChart.cpp index 5367a24ee..c636a9dcc 100644 --- a/src/Charts/RChart.cpp +++ b/src/Charts/RChart.cpp @@ -300,6 +300,7 @@ RChart::RChart(Context *context, bool ridesummary) : GcChartWindow(context), con leftsplitter->addWidget(script); console = new RConsole(context, this); + console->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); leftsplitter->addWidget(console); splitter = new QSplitter(Qt::Horizontal, this); @@ -313,6 +314,11 @@ RChart::RChart(Context *context, bool ridesummary) : GcChartWindow(context), con canvas->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); splitter->addWidget(canvas); + // make splitter reasonable + QList sizes; + sizes << 300 << 500; + splitter->setSizes(sizes); + if (ridesummary) { connect(this, SIGNAL(rideItemChanged(RideItem*)), this, SLOT(runScript())); @@ -332,6 +338,7 @@ RChart::RChart(Context *context, bool ridesummary) : GcChartWindow(context), con // not starting script = NULL; + splitter = NULL; console = NULL; canvas = NULL; } @@ -353,6 +360,21 @@ RChart::setScript(QString string) text = string; } +QString +RChart::getState() const +{ + //XXX FIXME + //if (rtool && splitter) return QString(splitter->saveState()); + //else return ""; +} + +void +RChart::setState(QString b) +{ + //XXX FIXME + //if (rtool && splitter && b != "") splitter->restoreState(QByteArray(b.toLatin1())); +} + void RChart::runScript() diff --git a/src/Charts/RChart.h b/src/Charts/RChart.h index ccf9b028a..6e2bf154e 100644 --- a/src/Charts/RChart.h +++ b/src/Charts/RChart.h @@ -26,6 +26,7 @@ #include #include #include +#include #include #include "GoldenCheetah.h" @@ -80,6 +81,7 @@ class RChart : public GcChartWindow { Q_OBJECT Q_PROPERTY(QString script READ getScript WRITE setScript USER true) + Q_PROPERTY(QString state READ getState WRITE setState USER true) public: RChart(Context *context, bool ridesummary); @@ -92,6 +94,9 @@ class RChart : public GcChartWindow { QString getScript() const; void setScript(QString); + QString getState() const; + void setState(QString); + public slots: void runScript(); diff --git a/src/Gui/GcWindowRegistry.cpp b/src/Gui/GcWindowRegistry.cpp index e1880c4ac..9a475e314 100644 --- a/src/Gui/GcWindowRegistry.cpp +++ b/src/Gui/GcWindowRegistry.cpp @@ -152,7 +152,6 @@ GcWindow * GcWindowRegistry::newGcWindow(GcWinID id, Context *context) { GcWindow *returning = NULL; - int idx; switch(id) { case GcWindowTypes::Aerolab: returning = new AerolabWindow(context); break;