diff options
author | JoergAtGithub <JoergAtGithub@worldwartweb.com> | 2020-10-28 23:51:44 +0100 |
---|---|---|
committer | JoergAtGithub <JoergAtGithub@worldwartweb.com> | 2020-10-29 00:02:17 +0100 |
commit | 03ebd56115278ef74f71fe7fcdb14a54fa741081 (patch) | |
tree | fa8003d135feea15e5c4eff8c387540e4747101e /src/library | |
parent | 6728d2bce9743df9487d1e11de672d74f16604dd (diff) |
Make SortColumnId an enum class (based on int) and use camelCase for the enum members
Diffstat (limited to 'src/library')
-rw-r--r-- | src/library/basesqltablemodel.cpp | 112 | ||||
-rw-r--r-- | src/library/basesqltablemodel.h | 2 | ||||
-rw-r--r-- | src/library/browse/browsetablemodel.cpp | 88 | ||||
-rw-r--r-- | src/library/browse/browsetablemodel.h | 2 | ||||
-rw-r--r-- | src/library/librarycontrol.cpp | 6 | ||||
-rw-r--r-- | src/library/libraryview.h | 4 | ||||
-rw-r--r-- | src/library/playlisttablemodel.cpp | 102 | ||||
-rw-r--r-- | src/library/rekordbox/rekordboxfeature.cpp | 106 | ||||
-rw-r--r-- | src/library/serato/seratoplaylistmodel.cpp | 58 | ||||
-rw-r--r-- | src/library/trackmodel.h | 83 |
10 files changed, 372 insertions, 191 deletions
diff --git a/src/library/basesqltablemodel.cpp b/src/library/basesqltablemodel.cpp index 71f9c42aec..d3a41017ce 100644 --- a/src/library/basesqltablemodel.cpp +++ b/src/library/basesqltablemodel.cpp @@ -70,40 +70,90 @@ void BaseSqlTableModel::initHeaderProperties() { void BaseSqlTableModel::initSortColumnMapping() { // Add a bijective mapping between the SortColumnIds and column indices - for (int i = 0; i < TrackModel::SortColumnId::SORTCOLUMN_ID_MAX; ++i) { + for (int i = 0; i < static_cast<int>(TrackModel::SortColumnId::sortColumnIdMax); ++i) { m_columnIndexBySortColumnId[i] = -1; } - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ARTIST] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ARTIST); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TITLE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TITLE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ALBUM] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUM); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ALBUMARTIST] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUMARTIST); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_YEAR] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_YEAR); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_GENRE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GENRE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COMPOSER] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMPOSER); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_GROUPING] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GROUPING); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TRACKNUMBER] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TRACKNUMBER); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_FILETYPE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_FILETYPE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_NATIVELOCATION] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_NATIVELOCATION); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COMMENT] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMMENT); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_DURATION] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DURATION); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_BITRATE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BITRATE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_BPM] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BPM); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_REPLAYGAIN] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_REPLAYGAIN); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_DATETIMEADDED] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DATETIMEADDED); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TIMESPLAYED] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TIMESPLAYED); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_RATING] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_RATING); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_KEY] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_KEY); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_PREVIEW] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_PREVIEW); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COLOR] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COLOR); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COVERART] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_SAMPLERATE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_SAMPLERATE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnArtist)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ARTIST); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTitle)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TITLE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnAlbum)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUM); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnAlbumArtist)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUMARTIST); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnYear)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_YEAR); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnGenre)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GENRE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnComposer)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMPOSER); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnGrouping)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GROUPING); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTrackNumber)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TRACKNUMBER); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnFileType)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_FILETYPE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnNativeLocation)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_NATIVELOCATION); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnComment)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMMENT); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnDuration)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DURATION); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnBitRate)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BITRATE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnBpm)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BPM); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnReplayGain)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_REPLAYGAIN); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnDateTimeAdded)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DATETIMEADDED); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTimesPlayed)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TIMESPLAYED); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnRating)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_RATING); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnKey)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_KEY); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnPreview)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_PREVIEW); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnColor)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COLOR); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnCoverArt)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnSampleRate)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_SAMPLERATE); m_sortColumnIdByColumnIndex.clear(); - for (int i = TrackModel::SortColumnId::SORTCOLUMN_ID_MIN; - i < TrackModel::SortColumnId::SORTCOLUMN_ID_MAX; + for (int i = static_cast<int>(TrackModel::SortColumnId::sortColumnIdMin); + i < static_cast<int>(TrackModel::SortColumnId::sortColumnIdMax); ++i) { TrackModel::SortColumnId sortColumn = static_cast<TrackModel::SortColumnId>(i); - m_sortColumnIdByColumnIndex.insert(m_columnIndexBySortColumnId[sortColumn], sortColumn); + m_sortColumnIdByColumnIndex.insert( + m_columnIndexBySortColumnId[static_cast<int>(sortColumn)], + sortColumn); } } @@ -329,15 +379,15 @@ void BaseSqlTableModel::setTable(const QString& tableName, } int BaseSqlTableModel::columnIndexFromSortColumnId(TrackModel::SortColumnId column) { - if (column == TrackModel::SortColumnId::SORTCOLUMN_INVALID) { + if (column == TrackModel::SortColumnId::sortColumnInvalid) { return -1; } - return m_columnIndexBySortColumnId[column]; + return m_columnIndexBySortColumnId[static_cast<int>(column)]; } TrackModel::SortColumnId BaseSqlTableModel::sortColumnIdFromColumnIndex(int index) { - return m_sortColumnIdByColumnIndex.value(index, TrackModel::SortColumnId::SORTCOLUMN_INVALID); + return m_sortColumnIdByColumnIndex.value(index, TrackModel::SortColumnId::sortColumnInvalid); } const QString BaseSqlTableModel::currentSearch() const { diff --git a/src/library/basesqltablemodel.h b/src/library/basesqltablemodel.h index 24a6ae8478..91cbd4d4dd 100644 --- a/src/library/basesqltablemodel.h +++ b/src/library/basesqltablemodel.h @@ -96,7 +96,7 @@ class BaseSqlTableModel : public BaseTrackTableModel { QSqlDatabase m_database; QString m_tableOrderBy; - int m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ID_MAX]; + int m_columnIndexBySortColumnId[TrackModel::SortColumnId::sortColumnIdMax]; QMap<int, TrackModel::SortColumnId> m_sortColumnIdByColumnIndex; private slots: diff --git a/src/library/browse/browsetablemodel.cpp b/src/library/browse/browsetablemodel.cpp index 85d91a7754..9f6d0e4d27 100644 --- a/src/library/browse/browsetablemodel.cpp +++ b/src/library/browse/browsetablemodel.cpp @@ -68,38 +68,66 @@ BrowseTableModel::BrowseTableModel(QObject* parent, setDefaultSort(COLUMN_FILENAME, Qt::AscendingOrder); - for (int i = 0; i < TrackModel::SortColumnId::SORTCOLUMN_ID_MAX; ++i) { + for (int i = 0; i < static_cast<int>(TrackModel::SortColumnId::sortColumnIdMax); ++i) { m_columnIndexBySortColumnId[i] = -1; } - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_FILENAME] = COLUMN_FILENAME; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ARTIST] = COLUMN_ARTIST; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TITLE] = COLUMN_TITLE; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ALBUM] = COLUMN_ALBUM; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ALBUMARTIST] = COLUMN_ALBUMARTIST; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_YEAR] = COLUMN_YEAR; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_GENRE] = COLUMN_GENRE; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COMPOSER] = COLUMN_COMPOSER; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_GROUPING] = COLUMN_GROUPING; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TRACKNUMBER] = COLUMN_TRACK_NUMBER; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_FILETYPE] = COLUMN_TYPE; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_NATIVELOCATION] = COLUMN_NATIVELOCATION; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COMMENT] = COLUMN_COMMENT; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_DURATION] = COLUMN_DURATION; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_BITRATE] = COLUMN_BITRATE; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_BPM] = COLUMN_BPM; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_REPLAYGAIN] = COLUMN_REPLAYGAIN; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_KEY] = COLUMN_KEY; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_PREVIEW] = COLUMN_PREVIEW; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_GROUPING] = COLUMN_GROUPING; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_FILE_MODIFIED_TIME] = COLUMN_FILE_MODIFIED_TIME; - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_FILE_CREATION_TIME] = COLUMN_FILE_CREATION_TIME; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnFilename)] = COLUMN_FILENAME; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnArtist)] = COLUMN_ARTIST; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTitle)] = COLUMN_TITLE; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnAlbum)] = COLUMN_ALBUM; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnAlbumArtist)] = + COLUMN_ALBUMARTIST; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnYear)] = COLUMN_YEAR; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnGenre)] = COLUMN_GENRE; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnComposer)] = COLUMN_COMPOSER; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnGrouping)] = COLUMN_GROUPING; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTrackNumber)] = + COLUMN_TRACK_NUMBER; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnFileType)] = COLUMN_TYPE; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnNativeLocation)] = + COLUMN_NATIVELOCATION; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnComment)] = COLUMN_COMMENT; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnDuration)] = COLUMN_DURATION; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnBitRate)] = COLUMN_BITRATE; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnBpm)] = COLUMN_BPM; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnReplayGain)] = + COLUMN_REPLAYGAIN; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnKey)] = COLUMN_KEY; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnPreview)] = COLUMN_PREVIEW; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnGrouping)] = COLUMN_GROUPING; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnFileModifiedTime)] = + COLUMN_FILE_MODIFIED_TIME; + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnFileCreationTime)] = + COLUMN_FILE_CREATION_TIME; m_sortColumnIdByColumnIndex.clear(); - for (int i = TrackModel::SortColumnId::SORTCOLUMN_ID_MIN; - i < TrackModel::SortColumnId::SORTCOLUMN_ID_MAX; + for (int i = static_cast<int>(TrackModel::SortColumnId::sortColumnIdMin); + i < static_cast<int>(TrackModel::SortColumnId::sortColumnIdMax); ++i) { TrackModel::SortColumnId sortColumn = static_cast<TrackModel::SortColumnId>(i); - int columnIndex = m_columnIndexBySortColumnId[sortColumn]; + int columnIndex = m_columnIndexBySortColumnId[static_cast<int>(sortColumn)]; if (columnIndex >= 0) { m_sortColumnIdByColumnIndex.insert(columnIndex, sortColumn); } @@ -135,16 +163,16 @@ BrowseTableModel::~BrowseTableModel() { } int BrowseTableModel::columnIndexFromSortColumnId(TrackModel::SortColumnId column) { - if (column < TrackModel::SortColumnId::SORTCOLUMN_ID_MIN || - column >= TrackModel::SortColumnId::SORTCOLUMN_ID_MAX) { + if (column < TrackModel::SortColumnId::sortColumnIdMin || + column >= TrackModel::SortColumnId::sortColumnIdMax) { return -1; } - return m_columnIndexBySortColumnId[column]; + return m_columnIndexBySortColumnId[static_cast<int>(column)]; } TrackModel::SortColumnId BrowseTableModel::sortColumnIdFromColumnIndex(int index) { - return m_sortColumnIdByColumnIndex.value(index, TrackModel::SortColumnId::SORTCOLUMN_INVALID); + return m_sortColumnIdByColumnIndex.value(index, TrackModel::SortColumnId::sortColumnInvalid); } const QList<int>& BrowseTableModel::searchColumns() const { diff --git a/src/library/browse/browsetablemodel.h b/src/library/browse/browsetablemodel.h index 7a33b265a2..686527348c 100644 --- a/src/library/browse/browsetablemodel.h +++ b/src/library/browse/browsetablemodel.h @@ -88,7 +88,7 @@ class BrowseTableModel final : public QStandardItemModel, public virtual TrackMo RecordingManager* m_pRecordingManager; BrowseThreadPointer m_pBrowseThread; QString m_previewDeckGroup; - int m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ID_MAX]; + int m_columnIndexBySortColumnId[TrackModel::SortColumnId::sortColumnIdMax]; QMap<int, TrackModel::SortColumnId> m_sortColumnIdByColumnIndex; }; diff --git a/src/library/librarycontrol.cpp b/src/library/librarycontrol.cpp index 7c7da463e7..b686591efb 100644 --- a/src/library/librarycontrol.cpp +++ b/src/library/librarycontrol.cpp @@ -655,12 +655,14 @@ void LibraryControl::slotSortColumn(double v) { void LibraryControl::slotSortColumnToggle(double v) { int sortColumnId = static_cast<int>(v); - if (sortColumnId == TrackModel::SortColumnId::SORTCOLUMN_CURRENTINDEX) { + if (sortColumnId == static_cast<int>(TrackModel::SortColumnId::sortColumnCurrentIndex)) { if (!m_pLibraryWidget) { return; } // Get the ID of the column with the cursor - sortColumnId = m_pLibraryWidget->getActiveView()->getColumnIdFromCurrentIndex(); + sortColumnId = + static_cast<int>(m_pLibraryWidget->getActiveView() + ->getColumnIdFromCurrentIndex()); } if (static_cast<int>(m_pSortColumn->get()) == sortColumnId) { diff --git a/src/library/libraryview.h b/src/library/libraryview.h index 514ac953b4..2e83944ba8 100644 --- a/src/library/libraryview.h +++ b/src/library/libraryview.h @@ -39,8 +39,8 @@ class LibraryView { /// 1, the view should move to the next selection in the list. virtual void moveSelection(int delta) {Q_UNUSED(delta);} - virtual int getColumnIdFromCurrentIndex() { - return TrackModel::SortColumnId::SORTCOLUMN_INVALID; + virtual TrackModel::SortColumnId getColumnIdFromCurrentIndex() { + return TrackModel::SortColumnId::sortColumnInvalid; }; /// If applicable, requests that the LibraryView changes the track color of /// the selected track. Does nothing otherwise. diff --git a/src/library/playlisttablemodel.cpp b/src/library/playlisttablemodel.cpp index 6ccfaba177..2732ba99b3 100644 --- a/src/library/playlisttablemodel.cpp +++ b/src/library/playlisttablemodel.cpp @@ -19,39 +19,87 @@ PlaylistTableModel::PlaylistTableModel(QObject* parent, void PlaylistTableModel::initSortColumnMapping() { // Add a bijective mapping between the SortColumnIds and column indices - for (int i = 0; i < TrackModel::SortColumnId::SORTCOLUMN_ID_MAX; ++i) { + for (int i = 0; i < static_cast<int>(TrackModel::SortColumnId::sortColumnIdMax); ++i) { m_columnIndexBySortColumnId[i] = -1; } - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ARTIST] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ARTIST); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TITLE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TITLE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ALBUM] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUM); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ALBUMARTIST] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUMARTIST); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_YEAR] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_YEAR); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_GENRE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GENRE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COMPOSER] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMPOSER); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_GROUPING] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GROUPING); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TRACKNUMBER] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TRACKNUMBER); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_FILETYPE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_FILETYPE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_NATIVELOCATION] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_NATIVELOCATION); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COMMENT] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMMENT); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_DURATION] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DURATION); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_BITRATE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BITRATE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_BPM] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BPM); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_REPLAYGAIN] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_REPLAYGAIN); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_DATETIMEADDED] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DATETIMEADDED); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TIMESPLAYED] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TIMESPLAYED); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_RATING] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_RATING); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_KEY] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_KEY); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_PREVIEW] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_PREVIEW); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COVERART] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_POSITION] = fieldIndex(ColumnCache::COLUMN_PLAYLISTTRACKSTABLE_POSITION); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnArtist)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ARTIST); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTitle)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TITLE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnAlbum)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUM); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnAlbumArtist)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUMARTIST); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnYear)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_YEAR); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnGenre)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GENRE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnComposer)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMPOSER); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnGrouping)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GROUPING); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTrackNumber)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TRACKNUMBER); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnFileType)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_FILETYPE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnNativeLocation)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_NATIVELOCATION); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnComment)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMMENT); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnDuration)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DURATION); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnBitRate)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BITRATE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnBpm)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BPM); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnReplayGain)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_REPLAYGAIN); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnDateTimeAdded)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DATETIMEADDED); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTimesPlayed)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TIMESPLAYED); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnRating)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_RATING); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnKey)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_KEY); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnPreview)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_PREVIEW); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnCoverArt)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnPosition)] = + fieldIndex(ColumnCache::COLUMN_PLAYLISTTRACKSTABLE_POSITION); m_sortColumnIdByColumnIndex.clear(); - for (int i = TrackModel::SortColumnId::SORTCOLUMN_ID_MIN; - i < TrackModel::SortColumnId::SORTCOLUMN_ID_MAX; + for (int i = static_cast<int>(TrackModel::SortColumnId::sortColumnIdMin); + i < static_cast<int>(TrackModel::SortColumnId::sortColumnIdMax); ++i) { TrackModel::SortColumnId sortColumn = static_cast<TrackModel::SortColumnId>(i); - m_sortColumnIdByColumnIndex.insert(m_columnIndexBySortColumnId[sortColumn], sortColumn); + m_sortColumnIdByColumnIndex.insert( + m_columnIndexBySortColumnId[static_cast<int>(sortColumn)], + sortColumn); } } diff --git a/src/library/rekordbox/rekordboxfeature.cpp b/src/library/rekordbox/rekordboxfeature.cpp index b7a0bf44ac..d9b279f4ef 100644 --- a/src/library/rekordbox/rekordboxfeature.cpp +++ b/src/library/rekordbox/rekordboxfeature.cpp @@ -1028,41 +1028,91 @@ RekordboxPlaylistModel::RekordboxPlaylistModel(QObject* parent, void RekordboxPlaylistModel::initSortColumnMapping() { // Add a bijective mapping between the SortColumnIds and column indices - for (int i = 0; i < TrackModel::SortColumnId::SORTCOLUMN_ID_MAX; ++i) { + for (int i = 0; i < static_cast<int>(TrackModel::SortColumnId::sortColumnIdMax); ++i) { m_columnIndexBySortColumnId[i] = -1; } - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ARTIST] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ARTIST); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TITLE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TITLE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ALBUM] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUM); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ALBUMARTIST] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUMARTIST); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_YEAR] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_YEAR); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_GENRE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GENRE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COMPOSER] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMPOSER); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_GROUPING] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GROUPING); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TRACKNUMBER] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TRACKNUMBER); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_FILETYPE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_FILETYPE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_NATIVELOCATION] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_NATIVELOCATION); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COMMENT] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMMENT); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_DURATION] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DURATION); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_BITRATE] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BITRATE); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_BPM] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BPM); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_REPLAYGAIN] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_REPLAYGAIN); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_DATETIMEADDED] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DATETIMEADDED); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TIMESPLAYED] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TIMESPLAYED); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_RATING] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_RATING); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_KEY] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_KEY); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_PREVIEW] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_PREVIEW); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COLOR] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COLOR); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_COVERART] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_POSITION] = fieldIndex(ColumnCache::COLUMN_PLAYLISTTRACKSTABLE_POSITION); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnArtist)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ARTIST); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTitle)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TITLE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnAlbum)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUM); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnAlbumArtist)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUMARTIST); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnYear)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_YEAR); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnGenre)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GENRE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnComposer)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMPOSER); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnGrouping)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GROUPING); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTrackNumber)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TRACKNUMBER); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnFileType)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_FILETYPE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnNativeLocation)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_NATIVELOCATION); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnComment)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMMENT); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnDuration)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DURATION); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnBitRate)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BITRATE); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnBpm)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BPM); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnReplayGain)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_REPLAYGAIN); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnDateTimeAdded)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DATETIMEADDED); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnTimesPlayed)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TIMESPLAYED); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnRating)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_RATING); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnKey)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_KEY); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnPreview)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_PREVIEW); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnColor)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COLOR); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnCoverArt)] = + fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART); + m_columnIndexBySortColumnId[static_cast<int>( + TrackModel::SortColumnId::sortColumnPosition)] = + fieldIndex(ColumnCache::COLUMN_PLAYLISTTRACKSTABLE_POSITION); m_sortColumnIdByColumnIndex.clear(); - for (int i = TrackModel::SortColumnId::SORTCOLUMN_ID_MIN; - i < TrackModel::SortColumnId::SORTCOLUMN_ID_MAX; + for (int i = static_cast<int>(TrackModel::SortColumnId::sortColumnIdMin); + i < static_cast<int>(TrackModel::SortColumnId::sortColumnIdMax); ++i) { TrackModel::SortColumnId sortColumn = static_cast<TrackModel::SortColumnId>(i); - m_sortColumnIdByColumnIndex.insert(m_columnIndexBySortColumnId[sortColumn], sortColumn); + m_sortColumnIdByColumnIndex.insert( + m_columnIndexBySortColumnId[static_cast<int>(sortColumn)], + sortColumn); } } diff --git a/src/library/serato/seratoplaylistmodel.cpp b/src/library/serato/seratoplaylistmodel.cpp index e4180d0383..303280b5db 100644 --- a/src/library/serato/seratoplaylistmodel.cpp +++ b/src/library/serato/seratoplaylistmodel.cpp @@ -14,63 +14,67 @@ SeratoPlaylistModel::SeratoPlaylistModel(QObject* parent, void SeratoPlaylistModel::initSortColumnMapping() { // Add a bijective mapping between the SortColumnIds and column indices - for (int i = 0; i < TrackModel::SortColumnId::SORTCOLUMN_ID_MAX; ++i) { + for (int i = 0; i < static_cast<int>(TrackModel::SortColumnId::sortColumnIdMax); ++i) { m_columnIndexBySortColumnId[i] = -1; } - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_ARTIST] = + m_columnIndexBySortColumnId[static_cast<int>(TrackModel::SortColumnId::sortColumnArtist)] = fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ARTIST); - m_columnIndexBySortColumnId[TrackModel::SortColumnId::SORTCOLUMN_TITLE] = + m_columnIndexBySortColumnId[static_cast<int>(TrackModel::SortColumnId::sortColumnTitle)] = fieldIndex(ColumnC |