Skip to content

Commit c839b05

Browse files
committed
Use a struct instead of QPair for chapters
Ideally, the conversion could be moved to the struct.
1 parent 34fa2e4 commit c839b05

File tree

5 files changed

+15
-11
lines changed

5 files changed

+15
-11
lines changed

mainwindow.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1901,7 +1901,7 @@ void MainWindow::disableChaptersMenus()
19011901
ui->menuNavigateChapters->setEnabled(false);
19021902
}
19031903

1904-
void MainWindow::setChapters(QList<QPair<double, QString>> chapters)
1904+
void MainWindow::setChapters(QList<Chapter> chapters)
19051905
{
19061906
positionSlider_->clearTicks();
19071907
ui->menuNavigateChapters->clear();
@@ -1910,10 +1910,10 @@ void MainWindow::setChapters(QList<QPair<double, QString>> chapters)
19101910
return;
19111911
ui->menuNavigateChapters->setEnabled(true);
19121912
int64_t index = 0;
1913-
for (const QPair<double,QString> &chapter : chapters) {
1914-
positionSlider_->setTick(chapter.first, chapter.second);
1913+
for (const Chapter &chapter : chapters) {
1914+
positionSlider_->setTick(chapter.time, chapter.title);
19151915
QAction *action = new QAction(this);
1916-
action->setText(chapter.second);
1916+
action->setText(chapter.title);
19171917
connect (action, &QAction::triggered, this, [this,index]() {
19181918
emit chapterSelected(index);
19191919
});

mainwindow.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@ public slots:
250250
void setPlaybackState(PlaybackManager::PlaybackState state);
251251
void setPlaybackType(PlaybackManager::PlaybackType type);
252252
void disableChaptersMenus();
253-
void setChapters(QList<QPair<double,QString>> chapters);
253+
void setChapters(QList<Chapter> chapters);
254254
void setAudioTracks(QList<QPair<int64_t,QString>> tracks);
255255
void setVideoTracks(QList<QPair<int64_t,QString>> tracks);
256256
void setSubtitleTracks(QList<QPair<int64_t,QString>> tracks);

manager.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
#include <QRegularExpression>
22
#include "manager.h"
3-
#include "mpvwidget.h"
43
#include "playlistwindow.h"
5-
#include "helpers.h"
64
#include "logger.h"
75

86
using namespace Helpers;
@@ -683,7 +681,7 @@ void PlaybackManager::checkAfterPlayback()
683681

684682
void PlaybackManager::updateChapters()
685683
{
686-
QList<QPair<double,QString>> list;
684+
QList<Chapter> list;
687685

688686
if (!chapters.isEmpty()) {
689687
for (QVariant &v : chapters) {
@@ -692,7 +690,7 @@ void PlaybackManager::updateChapters()
692690
toDateFormatFixed(node["time"].toDouble(),
693691
timeShortMode ? Helpers::ShortFormat : Helpers::LongFormat),
694692
node["title"].toString());
695-
QPair<double,QString> item(node["time"].toDouble(), text);
693+
Chapter item { node["time"].toDouble(), text };
696694
list.append(item);
697695
}
698696
}

manager.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
#include <QSize>
1313
#include <QVariant>
1414
#include "helpers.h"
15+
#include "mpvwidget.h"
1516

1617
class MpvObject;
1718
class PlaylistWindow;
@@ -57,7 +58,7 @@ class PlaybackManager : public QObject
5758
void fileClosed();
5859
void typeChanged(PlaybackManager::PlaybackType type);
5960
// Transmit a map of chapter index to time,description pairs
60-
void chaptersAvailable(QList<QPair<double,QString>> chapters);
61+
void chaptersAvailable(QList<Chapter> chapters);
6162
// These signals transmit a list of (id, description) pairs
6263
void audioTracksAvailable(QList<QPair<int64_t,QString>> tracks);
6364
void videoTracksAvailable(QList<QPair<int64_t,QString>> tracks);
@@ -222,7 +223,7 @@ private slots:
222223
QMap<int64_t,TrackData> videoListData;
223224
QMap<int64_t,TrackData> audioListData;
224225
QMap<int64_t,TrackData> subtitleListData;
225-
QVariantList chapters = QVariantList();
226+
QVariantList chapters;
226227

227228
QStringList audioLangPref;
228229
QStringList subtitleLangPref;

mpvwidget.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@
1414
#include "qthelper.hpp"
1515
#include "helpers.h"
1616

17+
struct Chapter {
18+
double time;
19+
QString title;
20+
};
21+
1722
class QLayout;
1823
class QMainWindow;
1924
class QThread;

0 commit comments

Comments
 (0)