aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/detailsdialog.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2021-02-07 14:21:23 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2021-02-07 14:21:23 +0000
commit62f1800c82b5f637e1a6037229e66f1ce36dd8d5 (patch)
treec8eaee05c6df848824b7b578c64ba323c432fc4d /src/qmmpui/detailsdialog.cpp
parent5a119002d992a47aeca66af31059d3769848d8c6 (diff)
downloadqmmp-62f1800c82b5f637e1a6037229e66f1ce36dd8d5.tar.gz
qmmp-62f1800c82b5f637e1a6037229e66f1ce36dd8d5.tar.bz2
qmmp-62f1800c82b5f637e1a6037229e66f1ce36dd8d5.zip
removed TagUpdater class
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@9696 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/detailsdialog.cpp')
-rw-r--r--src/qmmpui/detailsdialog.cpp32
1 files changed, 30 insertions, 2 deletions
diff --git a/src/qmmpui/detailsdialog.cpp b/src/qmmpui/detailsdialog.cpp
index e03e757a0..54b9b870c 100644
--- a/src/qmmpui/detailsdialog.cpp
+++ b/src/qmmpui/detailsdialog.cpp
@@ -46,10 +46,27 @@ DetailsDialog::DetailsDialog(const QList<PlayListTrack *> &tracks, QWidget *pare
m_ui->prevButton->setIcon(QApplication::style()->standardIcon(QStyle::SP_ArrowLeft));
updatePage();
on_tabWidget_currentChanged(0);
+
+ for(PlayListTrack *t : qAsConst(m_tracks))
+ t->beginUsage();
}
DetailsDialog::~DetailsDialog()
{
+ for(PlayListTrack *t : qAsConst(m_tracks))
+ {
+ t->endUsage();
+ if (!t->isUsed() && t->isSheduledForDeletion())
+ {
+ delete t;
+ t = nullptr;
+ }
+ else
+ {
+ t->updateMetaData();
+ }
+ }
+
if(m_metaDataModel)
{
delete m_metaDataModel;
@@ -58,6 +75,11 @@ DetailsDialog::~DetailsDialog()
delete m_ui;
}
+QStringList DetailsDialog::modifiedPaths() const
+{
+ return m_modifiedPaths.values();
+}
+
void DetailsDialog:: on_directoryButton_clicked()
{
QString dir_path;
@@ -81,19 +103,25 @@ void DetailsDialog::on_buttonBox_clicked(QAbstractButton *button)
{
if(m_ui->buttonBox->standardButton(button) == QDialogButtonBox::Save)
{
- TagEditor *tagEditor = qobject_cast<TagEditor *>(m_ui->tabWidget->currentWidget());
+ TagEditor *tagEditor = nullptr;
CoverEditor *coverEditor = nullptr;
CueEditor *cueEditor = nullptr;
- if(tagEditor)
+
+ if((tagEditor = qobject_cast<TagEditor *>(m_ui->tabWidget->currentWidget())))
+ {
tagEditor->save();
+ m_modifiedPaths.insert(m_info.path());
+ }
else if((coverEditor = qobject_cast<CoverEditor *>(m_ui->tabWidget->currentWidget())))
{
coverEditor->save();
+ m_modifiedPaths.insert(m_info.path());
MetaDataManager::instance()->clearCoverCache();
}
else if((cueEditor = qobject_cast<CueEditor *>(m_ui->tabWidget->currentWidget())))
{
cueEditor->save();
+ m_modifiedPaths.insert(m_info.path());
}
}
else