From ac6df08046f38d278c7d59330bb7354b6d013963 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Sat, 13 Jun 2020 20:41:07 +0000 Subject: added 'jump to track dialog' optimization (#998) git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@9408 90c681e8-e032-0410-971d-27865f9a5e38 --- src/qmmpui/forms/jumptotrackdialog.ui | 14 +++++++++++++- src/qmmpui/jumptotrackdialog.cpp | 17 +++++++++++++++-- src/qmmpui/jumptotrackdialog_p.h | 3 +-- 3 files changed, 29 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/qmmpui/forms/jumptotrackdialog.ui b/src/qmmpui/forms/jumptotrackdialog.ui index 2aec05b05..0c2ca2003 100644 --- a/src/qmmpui/forms/jumptotrackdialog.ui +++ b/src/qmmpui/forms/jumptotrackdialog.ui @@ -28,7 +28,16 @@ 6 - + + 0 + + + 0 + + + 0 + + 0 @@ -54,6 +63,9 @@ QAbstractItemView::SelectRows + + true + diff --git a/src/qmmpui/jumptotrackdialog.cpp b/src/qmmpui/jumptotrackdialog.cpp index 064848acb..75a52a0dc 100644 --- a/src/qmmpui/jumptotrackdialog.cpp +++ b/src/qmmpui/jumptotrackdialog.cpp @@ -39,7 +39,6 @@ JumpToTrackDialog::JumpToTrackDialog(PlayListModel *model, QWidget* parent) m_model = model; m_pl_manager = PlayListManager::instance(); m_listModel = new QStringListModel(this); - m_titleFormatter.setPattern("%if(%p,%p - %t,%t)"); m_proxyModel = new QSortFilterProxyModel(this); m_proxyModel->setDynamicSortFilter(true); @@ -111,7 +110,21 @@ void JumpToTrackDialog::refresh() { if(items[i]->isGroup()) continue; - titles.append(m_titleFormatter.format(dynamic_cast(items[i]))); + + PlayListTrack *track = dynamic_cast(items[i]); + QString title = track->value(Qmmp::TITLE); + if(title.isEmpty()) //using file name if title is empty + { + title = track->path().section('/',-1); + title = title.left(title.lastIndexOf('.')); + } + QString artist = track->value(Qmmp::ARTIST); + + if(artist.isEmpty()) + titles.append(title); + else + titles.append(artist + " - " + title); + m_indexes.append(i); } m_listModel->setStringList(titles); diff --git a/src/qmmpui/jumptotrackdialog_p.h b/src/qmmpui/jumptotrackdialog_p.h index d2d4e3430..2ea9b677b 100644 --- a/src/qmmpui/jumptotrackdialog_p.h +++ b/src/qmmpui/jumptotrackdialog_p.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2007-2016 by Ilya Kotov * + * Copyright (C) 2007-2020 by Ilya Kotov * * forkotov02@ya.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -59,7 +59,6 @@ private: PlayListManager *m_pl_manager; PlayListModel *m_model; QList m_indexes; - MetaDataFormatter m_titleFormatter; }; #endif //JUMPTOTRACKDIALOG_P_H -- cgit v1.2.3-13-gbd6f