aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/detailsdialog.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2016-02-01 07:47:22 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2016-02-01 07:47:22 +0000
commit91a61b1450755b29cf12f23d24a5edbe09fa24e4 (patch)
tree898b47527140d3331d779aa34212944c3ed1d0ae /src/qmmpui/detailsdialog.cpp
parent3ce3558df690e928921f11c895487130ce0ece94 (diff)
downloadqmmp-91a61b1450755b29cf12f23d24a5edbe09fa24e4.tar.gz
qmmp-91a61b1450755b29cf12f23d24a5edbe09fa24e4.tar.bz2
qmmp-91a61b1450755b29cf12f23d24a5edbe09fa24e4.zip
improved details dialog
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@6115 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/detailsdialog.cpp')
-rw-r--r--src/qmmpui/detailsdialog.cpp18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/qmmpui/detailsdialog.cpp b/src/qmmpui/detailsdialog.cpp
index bb6a94121..f3633898e 100644
--- a/src/qmmpui/detailsdialog.cpp
+++ b/src/qmmpui/detailsdialog.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2009-2015 by Ilya Kotov *
+ * Copyright (C) 2009-2016 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -23,6 +23,7 @@
#include <QFile>
#include <QFileInfo>
#include <QProcess>
+#include <QPushButton>
#include <qmmp/metadatamanager.h>
#include <qmmp/metadatamodel.h>
#include <qmmp/tagmodel.h>
@@ -46,6 +47,7 @@ DetailsDialog::DetailsDialog(QList<PlayListTrack *> tracks, QWidget *parent)
m_page = 0;
m_tracks = tracks;
updatePage();
+ on_tabWidget_currentChanged(0);
}
DetailsDialog::~DetailsDialog()
@@ -87,6 +89,12 @@ void DetailsDialog::on_buttonBox_clicked(QAbstractButton *button)
reject();
}
+void DetailsDialog::on_tabWidget_currentChanged(int index)
+{
+ TagEditor *tab = qobject_cast<TagEditor *> (m_ui->tabWidget->widget(index));
+ m_ui->buttonBox->button(QDialogButtonBox::Save)->setEnabled(tab != 0);
+}
+
void DetailsDialog::on_prevButton_clicked()
{
if(m_page == 0)
@@ -134,12 +142,16 @@ void DetailsDialog::updatePage()
else
m_metaData = *m_track;
qDeleteAll(flist);
+
m_metaDataModel = MetaDataManager::instance()->createMetaDataModel(m_path, this);
if(m_metaDataModel)
{
- foreach(TagModel *tagModel, m_metaDataModel->tags())
- m_ui->tabWidget->addTab(new TagEditor(tagModel, this), tagModel->name());
+ if(QFile::exists(m_path) && QFileInfo(m_path).isWritable())
+ {
+ foreach(TagModel *tagModel, m_metaDataModel->tags())
+ m_ui->tabWidget->addTab(new TagEditor(tagModel, this), tagModel->name());
+ }
foreach(QString title, m_metaDataModel->descriptions().keys())
{