From 053bd6ca6983e903e64b675fbf45dc886a419838 Mon Sep 17 00:00:00 2001 From: Mark Liversedge Date: Sun, 6 Nov 2011 19:34:46 +0000 Subject: [PATCH] Train View controls in Toolbar Updated the realtime view (Train) to put the realtime controls in the toolbar and removed the old realtime controls chart. They only appear in Train view. Additionally, the workout list and media list are now in the sidebar under 'Workout Library'. Finally, the first device configured is always selected at startup, but this is a temporary change until the realtime device wizard is coded to set a default device. --- src/GcToolBar.cpp | 12 +- src/GcWindowRegistry.cpp | 3 +- src/MainWindow.cpp | 13 ++ src/MainWindow.h | 2 + src/MetricAggregator.cpp | 8 +- src/TrainTool.cpp | 246 +++++++++++++++++--------------- src/TrainTool.h | 18 +-- src/application.qrc | 6 + src/images/library.png | Bin 0 -> 3635 bytes src/images/oxygen/back.png | Bin 0 -> 9595 bytes src/images/oxygen/equalizer.png | Bin 0 -> 12831 bytes src/images/oxygen/ffwd.png | Bin 0 -> 9434 bytes src/images/oxygen/fwd.png | Bin 0 -> 9606 bytes src/images/oxygen/pause.png | Bin 0 -> 9156 bytes src/images/oxygen/play.png | Bin 0 -> 9005 bytes src/images/oxygen/rewind.png | Bin 0 -> 9446 bytes src/images/oxygen/stop.png | Bin 0 -> 8964 bytes src/xml/train-layout.xml | 36 ++--- 18 files changed, 186 insertions(+), 158 deletions(-) create mode 100644 src/images/library.png create mode 100644 src/images/oxygen/back.png create mode 100644 src/images/oxygen/equalizer.png create mode 100644 src/images/oxygen/ffwd.png create mode 100644 src/images/oxygen/fwd.png create mode 100644 src/images/oxygen/pause.png create mode 100644 src/images/oxygen/play.png create mode 100644 src/images/oxygen/rewind.png create mode 100644 src/images/oxygen/stop.png diff --git a/src/GcToolBar.cpp b/src/GcToolBar.cpp index 69d077ab3..44bb6613e 100644 --- a/src/GcToolBar.cpp +++ b/src/GcToolBar.cpp @@ -132,17 +132,17 @@ GcToolBar::eventFilter(QObject *, QEvent *e) GcToolButton::GcToolButton(QWidget *parent, QAction *action) : QWidget(parent), action(action) { setContentsMargins(0, 0, 0, 0); - QHBoxLayout *layout = new QHBoxLayout(this); - layout->setSpacing(5); - layout->setContentsMargins(10,0,10,0); // spacing either side - setLayout(layout); + QHBoxLayout *mlayout = new QHBoxLayout(this); + mlayout->setSpacing(5); + mlayout->setContentsMargins(10,0,10,0); // spacing either side + setLayout(mlayout); QLabel *iconlabel = new QLabel(action->iconText(), this); iconlabel->setPixmap(action->icon().pixmap(18,18)); // titchy - layout->addWidget(iconlabel); + mlayout->addWidget(iconlabel); label = new QLabel(action->iconText(), this); - layout->addWidget(label); + mlayout->addWidget(label); //XXX quick hack if (action->iconText() == "Analysis") selected = true; diff --git a/src/GcWindowRegistry.cpp b/src/GcWindowRegistry.cpp index 59def5263..c655be83e 100644 --- a/src/GcWindowRegistry.cpp +++ b/src/GcWindowRegistry.cpp @@ -77,7 +77,6 @@ GcWindowRegistry GcWindows[] = { { "Performance Manager",GcWindowTypes::PerformanceManager }, { "Collection TreeMap",GcWindowTypes::TreeMap }, { "Aerolab Chung Analysis",GcWindowTypes::Aerolab }, - { "Realtime Controls", GcWindowTypes::RealtimeControls }, { "Realtime Dial",GcWindowTypes::DialWindow }, { "Realtime Plot",GcWindowTypes::RealtimePlot }, { "Workout Plot",GcWindowTypes::WorkoutPlot }, @@ -125,7 +124,7 @@ GcWindowRegistry::newGcWindow(GcWinID id, MainWindow *main) //XXX mainWindow wil #endif case GcWindowTypes::DialWindow: returning = new DialWindow(main); break; case GcWindowTypes::MetadataWindow: returning = new MetadataWindow(main); break; - case GcWindowTypes::RealtimeControls: returning = new TrainTool(main, main->home); break; + case GcWindowTypes::RealtimeControls: returning = new GcWindow(); break; case GcWindowTypes::RealtimePlot: returning = new RealtimePlotWindow(main); break; case GcWindowTypes::WorkoutPlot: returning = new WorkoutPlotWindow(main); break; case GcWindowTypes::BingMap: returning = new BingMap(main); break; diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp index 63aef992e..22b672d8b 100644 --- a/src/MainWindow.cpp +++ b/src/MainWindow.cpp @@ -198,6 +198,11 @@ MainWindow::MainWindow(const QDir &home) : toolbar = new GcToolBar(this); toolbar->addStretch(); + trainTool = new TrainTool(this, home); + trainTool->hide(); + toolbar->addWidget(trainTool->getToolbarButtons()); + toolbar->addStretch(); + // home QIcon homeIcon(":images/toolbar/main/home.png"); homeAct = new QAction(homeIcon, tr("Home"), this); @@ -242,6 +247,9 @@ MainWindow::MainWindow(const QDir &home) : toolbar->addStretch(); + +toolbar->addStretch(); + /*---------------------------------------------------------------------- * Sidebar *--------------------------------------------------------------------*/ @@ -386,6 +394,7 @@ MainWindow::MainWindow(const QDir &home) : toolBox->addItem(listView, QIcon(":images/activity.png"), "Activity History"); toolBox->addItem(_rideMetadata, QIcon(":images/metadata.png"), "Activity Details"); toolBox->addItem(intervalSplitter, QIcon(":images/stopwatch.png"), "Activity Intervals"); + toolBox->addItem(trainTool->controls(), QIcon(":images/library.png"), "Workout Library"); toolBox->addItem(masterControls, QIcon(":images/settings.png"), "Chart Settings"); #if 0 // XXX NOT YET IMPLEMENTED toolBox->addItem(new AthleteTool(QFileInfo(home.path()).path(), this), QIcon(":images/toolbar/main/athlete.png"), "Athletes"); @@ -924,6 +933,7 @@ MainWindow::selectAnalysis() views->setCurrentIndex(0); analWindow->selected(); // tell it! currentWindow = analWindow; + trainTool->getToolbarButtons()->hide(); } void @@ -933,6 +943,7 @@ MainWindow::selectTrain() views->setCurrentIndex(1); trainWindow->selected(); // tell it! currentWindow = trainWindow; + trainTool->getToolbarButtons()->show(); } void @@ -942,6 +953,7 @@ MainWindow::selectDiary() views->setCurrentIndex(2); diaryWindow->selected(); // tell it! currentWindow = diaryWindow; + trainTool->getToolbarButtons()->hide(); } void @@ -951,6 +963,7 @@ MainWindow::selectHome() views->setCurrentIndex(3); homeWindow->selected(); // tell it! currentWindow = homeWindow; + trainTool->getToolbarButtons()->hide(); } void MainWindow::selectAthlete() diff --git a/src/MainWindow.h b/src/MainWindow.h index 2d0fc41e9..40239fa41 100644 --- a/src/MainWindow.h +++ b/src/MainWindow.h @@ -58,6 +58,7 @@ class GcToolBar; class GcBubble; class LionFullScreen; class QTFullScreen; +class TrainTool; extern QList mainwindows; // keep track of all the MainWindows we have open @@ -300,6 +301,7 @@ class MainWindow : public QMainWindow GcToolBar *toolbar; QDockWidget *dock; QAction *homeAct, *diaryAct, *analysisAct, *measuresAct, *trainAct, *athleteAct, *helpAct, *configAct; + TrainTool *trainTool; QStackedWidget *views; QAction *sideView; diff --git a/src/MetricAggregator.cpp b/src/MetricAggregator.cpp index 6948af2f3..b70b58b7b 100644 --- a/src/MetricAggregator.cpp +++ b/src/MetricAggregator.cpp @@ -190,9 +190,11 @@ void MetricAggregator::refreshMetrics() // add a ride (after import / download) void MetricAggregator::addRide(RideItem*ride) { - importRide(main->home, ride->ride(), ride->fileName, main->zones()->getFingerprint(), true); - RideFileCache updater(main, home.absolutePath() + "/" + ride->fileName, ride->ride(), true); // update cpx etc - dataChanged(); // notify models/views + if (ride && ride->ride()) { + importRide(main->home, ride->ride(), ride->fileName, main->zones()->getFingerprint(), true); + RideFileCache updater(main, home.absolutePath() + "/" + ride->fileName, ride->ride(), true); // update cpx etc + dataChanged(); // notify models/views + } } bool MetricAggregator::importRide(QDir path, RideFile *ride, QString fileName, unsigned long fingerprint, bool modify) diff --git a/src/TrainTool.cpp b/src/TrainTool.cpp index 3edd2b785..a3cd38458 100644 --- a/src/TrainTool.cpp +++ b/src/TrainTool.cpp @@ -54,19 +54,9 @@ TrainTool::TrainTool(MainWindow *parent, const QDir &home) : GcWindow(parent), h QVBoxLayout *cl = new QVBoxLayout(c); setControls(c); - QHBoxLayout *mainLayout = new QHBoxLayout(this); - setLayout(mainLayout); - cl->setSpacing(0); cl->setContentsMargins(0,0,0,0); - //setLineWidth(1); - //setMidLineWidth(0); - //setFrameStyle(QFrame::Plain | QFrame::Sunken); - mainLayout->setSpacing(0); - mainLayout->setContentsMargins(3,3,3,3); - setContentsMargins(0,0,0,0); - #if 0 // not in this release .. or for a while TBH serverTree = new QTreeWidget; serverTree->setFrameStyle(QFrame::NoFrame); @@ -116,80 +106,98 @@ TrainTool::TrainTool(MainWindow *parent, const QDir &home) : GcWindow(parent), h allWorkouts->setText(0, tr("Workout Library")); workoutTree->expandItem(allWorkouts); - QVBoxLayout *panel = new QVBoxLayout; - panel->setSpacing(0); - panel->setContentsMargins(0,0,0,0); + // TOOLBAR BUTTONS ETC + QHBoxLayout *toolbuttons=new QHBoxLayout; + toolbuttons->setSpacing(0); + toolbuttons->setContentsMargins(0,0,0,0); - QHBoxLayout *labels = new QHBoxLayout; - labels->setSpacing(0); - labels->setContentsMargins(0,0,0,0); - stress = new QLabel(this); - intensity = new QLabel(this); - labels->addWidget(stress, Qt::AlignVCenter|Qt::AlignCenter); - labels->addWidget(intensity, Qt::AlignVCenter|Qt::AlignCenter); - panel->addLayout(labels); + QIcon rewIcon(":images/oxygen/rewind.png"); + QPushButton *rewind = new QPushButton(rewIcon, "", this); + rewind->setFocusPolicy(Qt::NoFocus); + rewind->setIconSize(QSize(24,24)); + rewind->setAutoFillBackground(false); + rewind->setAutoDefault(false); + rewind->setFlat(true); + rewind->setStyleSheet("background-color: rgba( 255, 255, 255, 0% ); border: 0px;"); + toolbuttons->addWidget(rewind); - // Make this labels easier to read - QColor background = GColor(CRIDEPLOTBACKGROUND); - QColor foreground = GColor(CPLOTMARKER); - QString sh = QString("QLabel { background: %1; color: %2; font-weight: bold; text-align: center; }") - .arg(background.name()) - .arg(foreground.name()); - stress->setStyleSheet(sh); - intensity->setStyleSheet(sh); + QIcon stopIcon(":images/oxygen/stop.png"); + QPushButton *stop = new QPushButton(stopIcon, "", this); + stop->setFocusPolicy(Qt::NoFocus); + stop->setIconSize(QSize(24,24)); + stop->setAutoFillBackground(false); + stop->setAutoDefault(false); + stop->setFlat(true); + stop->setStyleSheet("background-color: rgba( 255, 255, 255, 0% ); border: 0px;"); + toolbuttons->addWidget(stop); - QHBoxLayout *buttons = new QHBoxLayout; - buttons->setSpacing(0); - buttons->setContentsMargins(0,0,0,0); + QIcon playIcon(":images/oxygen/play.png"); + play = new QPushButton(playIcon, "", this); + play->setFocusPolicy(Qt::NoFocus); + play->setIconSize(QSize(24,24)); + play->setAutoFillBackground(false); + play->setAutoDefault(false); + play->setFlat(true); + play->setStyleSheet("background-color: rgba( 255, 255, 255, 0% ); border: 0px;"); + toolbuttons->addWidget(play); - startButton = new QPushButton(tr("Start"), this); - startButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); - pauseButton = new QPushButton(tr("Pause"), this); - pauseButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); - stopButton = new QPushButton(tr("Stop"), this); - stopButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); - plusButton = new QPushButton(tr(">"), this); - plusButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); - plusButton->setFixedWidth(20); - minusButton = new QPushButton(tr("<"), this); - minusButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); - minusButton->setFixedWidth(20); - QVBoxLayout *updownLayout = new QVBoxLayout; - updownLayout->setSpacing(0); - updownLayout->setContentsMargins(0,0,0,0); - updownLayout->addWidget(plusButton); - updownLayout->addWidget(minusButton); - intensitySlider = new QSlider(Qt::Vertical, this); + QIcon fwdIcon(":images/oxygen/ffwd.png"); + QPushButton *forward = new QPushButton(fwdIcon, "", this); + forward->setFocusPolicy(Qt::NoFocus); + forward->setIconSize(QSize(24,24)); + forward->setAutoFillBackground(false); + forward->setAutoDefault(false); + forward->setFlat(true); + forward->setStyleSheet("background-color: rgba( 255, 255, 255, 0% ); border: 0px;"); + toolbuttons->addWidget(forward); + + intensitySlider = new QSlider(Qt::Horizontal, this); + intensitySlider->setAutoFillBackground(false); + intensitySlider->setFocusPolicy(Qt::NoFocus); intensitySlider->setMinimum(50); intensitySlider->setMaximum(150); intensitySlider->setValue(100); + toolbuttons->addWidget(intensitySlider); -#ifdef Q_OS_MAC - // the mac styling of buttons is freaking annoying - // It overrides any attempt to compact, which is - // exactly what we need to do, so instead we use - // the plastique style on them to get around it - QCleanlooksStyle *style = new QCleanlooksStyle(); - startButton->setStyle(style); - pauseButton->setStyle(style); - stopButton->setStyle(style); - plusButton->setStyle(style); - minusButton->setStyle(style); -#endif + QPalette pal; + stress = new QLabel(this); + stress->setAutoFillBackground(false); + stress->setFixedWidth(100); + stress->setAlignment(Qt::AlignCenter | Qt::AlignVCenter); + pal.setColor(stress->foregroundRole(), Qt::white); + stress->setPalette(pal); + intensity = new QLabel(this); + intensity->setAutoFillBackground(false); + intensity->setFixedWidth(100); + intensity->setAlignment(Qt::AlignCenter | Qt::AlignVCenter); + pal.setColor(intensity->foregroundRole(), Qt::white); + intensity->setPalette(pal); + + toolbuttons->addWidget(stress, Qt::AlignVCenter|Qt::AlignCenter); + toolbuttons->addWidget(intensity, Qt::AlignVCenter|Qt::AlignCenter); + + toolbarButtons = new QWidget(this); + toolbarButtons->setContentsMargins(0,0,0,0); + toolbarButtons->setFocusPolicy(Qt::NoFocus); + toolbarButtons->setAutoFillBackground(false); + toolbarButtons->setStyleSheet("background-color: rgba( 255, 255, 255, 0% ); border: 0px;"); + toolbarButtons->setLayout(toolbuttons); + + toolbarButtons->hide(); + + connect(play, SIGNAL(clicked()), this, SLOT(Start())); + connect(stop, SIGNAL(clicked()), this, SLOT(Stop())); + connect(forward, SIGNAL(clicked()), this, SLOT(FFwd())); + connect(rewind, SIGNAL(clicked()), this, SLOT(Rewind())); + connect(intensitySlider, SIGNAL(valueChanged(int)), this, SLOT(adjustIntensity())); + + // not used but kept in case re-instated in the future recordSelector = new QCheckBox(this); recordSelector->setText(tr("Save workout data")); recordSelector->setChecked(Qt::Checked); recordSelector->hide(); // we don't let users change this for now - buttons->addWidget(startButton); - buttons->addWidget(pauseButton); - buttons->addWidget(stopButton); - panel->addLayout(buttons); - mainLayout->addLayout(panel); - mainLayout->addLayout(updownLayout); - mainLayout->addWidget(intensitySlider); - trainSplitter = new QSplitter; trainSplitter->setHandleWidth(1); trainSplitter->setFrameStyle(QFrame::NoFrame); @@ -215,14 +223,6 @@ TrainTool::TrainTool(MainWindow *parent, const QDir &home) : GcWindow(parent), h #endif connect(main, SIGNAL(configChanged()), this, SLOT(configChanged())); - // connect train tool buttons! - connect(startButton, SIGNAL(clicked()), this, SLOT(Start())); - connect(pauseButton, SIGNAL(clicked()), this, SLOT(Pause())); - connect(stopButton, SIGNAL(clicked()), this, SLOT(Stop())); - connect(plusButton, SIGNAL(clicked()), this, SLOT(FFwd())); - connect(minusButton, SIGNAL(clicked()), this, SLOT(Rewind())); - connect(intensitySlider, SIGNAL(valueChanged(int)), this, SLOT(adjustIntensity())); - // add a watch on all directories QVariant workoutDir = appsettings->value(NULL, GC_WORKOUTDIR); watcher = boost::shared_ptr(new QFileSystemWatcher()); @@ -299,6 +299,10 @@ TrainTool::configChanged() device->setText(0, Devices.at(i).name); } } + // select the first device + if (Devices.count()) { + deviceTree->setCurrentItem(allDevices->child(0)); + } // WORKOUTS // zap whats there @@ -344,21 +348,6 @@ TrainTool::configChanged() useMetricUnits = (unit.toString() == "Metric"); } -/*---------------------------------------------------------------------- - * Buttons! - *----------------------------------------------------------------------*/ - -void -TrainTool::setStartText(QString string) -{ - startButton->setText(string); -} -void -TrainTool::setPauseText(QString string) -{ - pauseButton->setText(string); -} - /*---------------------------------------------------------------------- * Race Server Selected *----------------------------------------------------------------------*/ @@ -427,8 +416,7 @@ TrainTool::workoutTreeWidgetSelectionChanged() // which one is selected? if (currentWorkout() == NULL || currentWorkout()->type() != WORKOUT_TYPE) { main->notifyErgFileSelected(NULL); - stress->setText("TSS:"); - intensity->setText("IF:"); + setLabels(); return; } @@ -453,9 +441,6 @@ TrainTool::workoutTreeWidgetSelectionChanged() QVariant workoutDir = appsettings->value(this, GC_WORKOUTDIR); QString fileName = workoutDir.toString() + "/" + currentWorkout()->text(0); // filename - // Get users CP for relative watts calculations - QDate today = QDate::currentDate(); - ergFile = new ErgFile(fileName, mode, FTP, main); if (ergFile->isValid()) { @@ -591,14 +576,50 @@ void TrainTool::setStreamController() void TrainTool::Start() // when start button is pressed { - if (status&RT_RUNNING) { - newLap(); + static QIcon playIcon(":images/oxygen/play.png"); + static QIcon pauseIcon(":images/oxygen/pause.png"); + + if (status&RT_PAUSED && deviceController != NULL) { + + // UN PAUSE! + play->setIcon(playIcon); + + session_time.start(); + lap_time.start(); + status &=~RT_PAUSED; + deviceController->restart(); + gui_timer->start(REFRESHRATE); + if (status & RT_STREAMING) stream_timer->start(STREAMRATE); + if (status & RT_RECORDING) disk_timer->start(SAMPLERATE); + load_period.restart(); + if (status & RT_WORKOUT) load_timer->start(LOADRATE); // tell the world - main->notifyNewLap(); + main->notifyUnPause(); + + } else if (status&RT_RUNNING && deviceController != NULL) { + + // Pause! + play->setIcon(playIcon); + + session_elapsed_msec += session_time.elapsed(); + lap_elapsed_msec += lap_time.elapsed(); + deviceController->pause(); + status |=RT_PAUSED; + gui_timer->stop(); + if (status & RT_STREAMING) stream_timer->stop(); + if (status & RT_RECORDING) disk_timer->stop(); + if (status & RT_WORKOUT) load_timer->stop(); + load_msecs += load_period.restart(); + + // tell the world + main->notifyPause(); } else { + // START! + play->setIcon(pauseIcon); + // open the controller if it is selected setDeviceController(); if (deviceController == NULL) return; @@ -614,8 +635,6 @@ void TrainTool::Start() // when start button is pressed //setStreamController(); if (streamController != NULL) status |= RT_STREAMING; - setStartText(tr("Lap")); - load_period.restart(); session_time.start(); session_elapsed_msec = 0; @@ -651,7 +670,6 @@ void TrainTool::Start() // when start button is pressed } } - // stream if (status & RT_STREAMING) { stream_timer->start(STREAMRATE); @@ -675,7 +693,6 @@ void TrainTool::Pause() // pause capture to recalibrate lap_time.start(); status &=~RT_PAUSED; deviceController->restart(); - setPauseText(tr("Pause")); gui_timer->start(REFRESHRATE); if (status & RT_STREAMING) stream_timer->start(STREAMRATE); if (status & RT_RECORDING) disk_timer->start(SAMPLERATE); @@ -690,7 +707,6 @@ void TrainTool::Pause() // pause capture to recalibrate session_elapsed_msec += session_time.elapsed(); lap_elapsed_msec += lap_time.elapsed(); deviceController->pause(); - setPauseText(tr("Un-Pause")); status |=RT_PAUSED; gui_timer->stop(); if (status & RT_STREAMING) stream_timer->stop(); @@ -710,7 +726,6 @@ void TrainTool::Stop(int deviceStatus) // when stop button is pressed if ((status&RT_RUNNING) == 0) return; status &= ~RT_RUNNING; - setStartText(tr("Start")); // wipe connection deviceController->stop(); @@ -862,6 +877,7 @@ void TrainTool::newLap() lap_time.restart(); lap_elapsed_msec = 0; + main->notifyNewLap(); } // can be called from the controller @@ -947,7 +963,6 @@ void TrainTool::diskUpdate() << "," << (displayLap + displayWorkoutLap) << "," << Altitude << "," << "\n"; - } //---------------------------------------------------------------------- @@ -1081,21 +1096,24 @@ void TrainTool::setLabels() { if (main->currentErgFile()) { + intensitySlider->show(); + if (main->currentErgFile()->format == CRS) { - stress->setText(QString("Ele: %1").arg(main->currentErgFile()->ELE, 0, 'f', 0)); - intensity->setText(QString("Grade: %1 %").arg(main->currentErgFile()->GRADE, 0, 'f', 1)); + stress->setText(QString("Elevation %1").arg(main->currentErgFile()->ELE, 0, 'f', 0)); + intensity->setText(QString("Grade %1 %").arg(main->currentErgFile()->GRADE, 0, 'f', 1)); } else { - stress->setText(QString("TSS: %1").arg(main->currentErgFile()->TSS, 0, 'f', 0)); - intensity->setText(QString("IF: %1").arg(main->currentErgFile()->IF, 0, 'f', 3)); + stress->setText(QString("TSS %1").arg(main->currentErgFile()->TSS, 0, 'f', 0)); + intensity->setText(QString("IF %1").arg(main->currentErgFile()->IF, 0, 'f', 3)); } } else { - stress->setText("TSS:"); - intensity->setText("IF:"); + intensitySlider->hide(); + stress->setText(""); + intensity->setText(""); } } diff --git a/src/TrainTool.h b/src/TrainTool.h index 2a3d84f03..34002feb1 100644 --- a/src/TrainTool.h +++ b/src/TrainTool.h @@ -88,10 +88,6 @@ class TrainTool : public GcWindow int selectedDeviceNumber(); int selectedServerNumber(); - // button meanings are changed by the windows - void setStartText(QString); - void setPauseText(QString); - // set labels when ergfile selected etc void setLabels(); @@ -109,6 +105,9 @@ class TrainTool : public GcWindow // this QTabWidget *trainTabs; + // get the panel + QWidget *getToolbarButtons() { return toolbarButtons; } + signals: void deviceSelected(); @@ -155,6 +154,8 @@ class TrainTool : public GcWindow MainWindow *main; QSplitter *trainSplitter; + QWidget *toolbarButtons; + QTreeWidget *workoutTree; QTreeWidget *deviceTree; QTreeWidget *serverTree; @@ -168,13 +169,8 @@ class TrainTool : public GcWindow QTreeWidgetItem *workout; QTreeWidgetItem *media; - // those buttons - QPushButton *startButton, - *pauseButton, - *stopButton, - *plusButton, - *minusButton; - + // Panel buttons + QPushButton *play; QLabel *stress, *intensity; QSlider *intensitySlider; int lastAppliedIntensity;// remember how we scaled last time diff --git a/src/application.qrc b/src/application.qrc index 3e1c8b01f..78fd6dbd4 100644 --- a/src/application.qrc +++ b/src/application.qrc @@ -48,6 +48,7 @@ images/stopwatch.png images/settings.png images/addchart.png + images/library.png translations/gc_fr.qm translations/gc_ja.qm translations/gc_it.qm @@ -62,6 +63,11 @@ xml/diary-layout.xml xml/analysis-layout.xml html/ltm-summary.html + images/oxygen/play.png + images/oxygen/pause.png + images/oxygen/stop.png + images/oxygen/ffwd.png + images/oxygen/rewind.png images/toolbar/close-icon.png images/toolbar/save.png images/toolbar/search.png diff --git a/src/images/library.png b/src/images/library.png new file mode 100644 index 0000000000000000000000000000000000000000..b787b2e3396f8d146dc6006705f3ff3580e417db GIT binary patch literal 3635 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 literal 0 HcmV?d00001 diff --git a/src/images/oxygen/back.png b/src/images/oxygen/back.png new file mode 100644 index 0000000000000000000000000000000000000000..64cff200f6a8276bae5c930854148330ad5a41c1 GIT binary patch literal 9595 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 KRxVSt3HcB7+LvYk literal 0 HcmV?d00001 diff --git a/src/images/oxygen/equalizer.png b/src/images/oxygen/equalizer.png new file mode 100644 index 0000000000000000000000000000000000000000..6f0670174afa78849ba519e04ae9eba78207ee36 GIT binary patch literal 12831 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 literal 0 HcmV?d00001 diff --git a/src/images/oxygen/fwd.png b/src/images/oxygen/fwd.png new file mode 100644 index 0000000000000000000000000000000000000000..33a99e1345a052ae48c5b14aaceb511ca75badd5 GIT binary patch literal 9606 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 kyI!+y`mkbwK`t_=@>{!&LE|`gb|8_q|z~I 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 literal 0 HcmV?d00001 diff --git a/src/xml/train-layout.xml b/src/xml/train-layout.xml index fcbe5b394..27a9713c5 100644 --- a/src/xml/train-layout.xml +++ b/src/xml/train-layout.xml @@ -62,7 +62,7 @@ - + @@ -79,7 +79,7 @@ - + @@ -87,26 +87,6 @@ - - - - - - - - - - - - - - - - - - - - @@ -119,4 +99,16 @@ + + + + + + + + + + + +