aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2020-06-13 20:41:07 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2020-06-13 20:41:07 +0000
commitac6df08046f38d278c7d59330bb7354b6d013963 (patch)
treecd9e1da08dc830f973404d24f17025e3f4141fbc /src/qmmpui
parent86f779816abedf0ef73379864bf63182e0d9e076 (diff)
downloadqmmp-ac6df08046f38d278c7d59330bb7354b6d013963.tar.gz
qmmp-ac6df08046f38d278c7d59330bb7354b6d013963.tar.bz2
qmmp-ac6df08046f38d278c7d59330bb7354b6d013963.zip
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
Diffstat (limited to 'src/qmmpui')
-rw-r--r--src/qmmpui/forms/jumptotrackdialog.ui14
-rw-r--r--src/qmmpui/jumptotrackdialog.cpp17
-rw-r--r--src/qmmpui/jumptotrackdialog_p.h3
3 files changed, 29 insertions, 5 deletions
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 @@
<property name="spacing">
<number>6</number>
</property>
- <property name="margin">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
<number>0</number>
</property>
<item>
@@ -54,6 +63,9 @@
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
+ <property name="uniformItemSizes">
+ <bool>true</bool>
+ </property>
</widget>
</item>
<item>
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<PlayListTrack *>(items[i])));
+
+ PlayListTrack *track = dynamic_cast<PlayListTrack *>(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<int> m_indexes;
- MetaDataFormatter m_titleFormatter;
};
#endif //JUMPTOTRACKDIALOG_P_H