aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/FileDialogs/TwoPanelFileDialog/twopanelfiledialogimpl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/FileDialogs/TwoPanelFileDialog/twopanelfiledialogimpl.cpp')
-rw-r--r--src/plugins/FileDialogs/TwoPanelFileDialog/twopanelfiledialogimpl.cpp44
1 files changed, 20 insertions, 24 deletions
diff --git a/src/plugins/FileDialogs/TwoPanelFileDialog/twopanelfiledialogimpl.cpp b/src/plugins/FileDialogs/TwoPanelFileDialog/twopanelfiledialogimpl.cpp
index 5eaa269f7..ca9ddd400 100644
--- a/src/plugins/FileDialogs/TwoPanelFileDialog/twopanelfiledialogimpl.cpp
+++ b/src/plugins/FileDialogs/TwoPanelFileDialog/twopanelfiledialogimpl.cpp
@@ -18,7 +18,6 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
-#include "twopanelfiledialogimpl.h"
#include <QDirModel>
#include <QApplication>
@@ -27,8 +26,8 @@
#include <QSettings>
#include <QMessageBox>
#include <QHeaderView>
-
#include <qmmp/qmmp.h>
+#include "twopanelfiledialogimpl.h"
#define HISTORY_SIZE 8
@@ -74,10 +73,7 @@ TwoPanelFileDialogImpl::TwoPanelFileDialogImpl(QWidget * parent) : QDialog(paren
connect(m_ui.fileListWidget, SIGNAL(itemSelectionChanged()), SLOT(updateFileSelection ()));
- //PathCompleter* fileCompleter = new PathCompleter (m_fileModel, m_ui.fileListView, this);
- //m_ui.fileNameLineEdit->setCompleter (fileCompleter);
QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
- //closeOnAddToolButton->setChecked(settings.value("TwoPanelFileDialog/close_on_add", false).toBool());
restoreGeometry(settings.value("TwoPanelFileDialog/geometry").toByteArray());
m_history = settings.value("TwoPanelFileDialog/history").toStringList();
m_ui.lookInComboBox->addItems(m_history);
@@ -97,7 +93,7 @@ TwoPanelFileDialogImpl::~TwoPanelFileDialogImpl()
{
}
-QStringList TwoPanelFileDialogImpl::selectedFiles ()
+QStringList TwoPanelFileDialogImpl::selectedFiles() const
{
QStringList l;
if (m_mode == FileDialog::SaveFile)
@@ -184,7 +180,8 @@ void TwoPanelFileDialogImpl::updateFileSelection ()
m_ui.addButton->setEnabled(true);
m_ui.playButton->setEnabled(false);
- if(m_mode == FileDialog::AddFiles || m_mode == FileDialog::AddDirsFiles || m_mode == FileDialog::AddFile)
+ if(m_mode == FileDialog::AddFiles || m_mode == FileDialog::AddDirsFiles || m_mode == FileDialog::AddFile
+ || m_mode == FileDialog::PlayDirsFiles)
{
foreach(str, paths)
{
@@ -244,9 +241,9 @@ void TwoPanelFileDialogImpl::on_lookInComboBox_activated(const QString &path)
}*/
}
-void TwoPanelFileDialogImpl::on_fileListView_doubleClicked(const QModelIndex& ind)
+/*void TwoPanelFileDialogImpl::on_fileListView_doubleClicked(const QModelIndex& ind)
{
- /*if (ind.isValid())
+ if (ind.isValid())
{
QFileInfo info = m_model->fileInfo(ind);
if (info.isDir())
@@ -265,8 +262,8 @@ void TwoPanelFileDialogImpl::on_fileListView_doubleClicked(const QModelIndex& in
addToHistory(l[0]);
addFiles(l);
}
- }*/
-}
+ }
+}*/
void TwoPanelFileDialogImpl::on_fileNameLineEdit_textChanged (const QString &text)
{
@@ -293,24 +290,22 @@ void TwoPanelFileDialogImpl::on_addButton_clicked()
if(!l.isEmpty())
{
addToHistory(l.first());
- addFiles(l);
+ addFiles(l, false);
}
}
void TwoPanelFileDialogImpl::on_playButton_clicked()
{
- foreach (QString path, selectedFiles())
+ QStringList l = selectedFiles();
+
+ if(!l.isEmpty())
{
- if(QFileInfo(path).isFile())
- {
- emit playRequest(path);
- return;
- }
+ addToHistory(l.first());
+ addFiles(l, true);
}
}
-void TwoPanelFileDialogImpl::setModeAndMask(const QString& path, FileDialog::Mode m, const QStringList& mask,
- bool showPlayButton)
+void TwoPanelFileDialogImpl::setModeAndMask(const QString& path, FileDialog::Mode m, const QStringList& mask)
{
m_mode = m;
m_ui.dirListView->clearSelection();
@@ -342,13 +337,15 @@ void TwoPanelFileDialogImpl::setModeAndMask(const QString& path, FileDialog::Mod
m_ui.fileNameLineEdit->setText(fileName);
m_ui.addButton->setEnabled(!fileName.isEmpty());
- m_ui.playButton->setVisible(showPlayButton);
+ m_ui.playButton->setVisible(m == FileDialog::PlayDirsFiles);
+
switch (m)
{
case FileDialog::AddFile:
case FileDialog::AddFiles:
case FileDialog::AddDirsFiles:
+ case FileDialog::PlayDirsFiles:
{
m_ui.fileListWidget->setVisible(true);
m_ui.addButton->setText(tr("Add"));
@@ -425,7 +422,6 @@ void TwoPanelFileDialogImpl::updateFileList(const QString &path)
void TwoPanelFileDialogImpl::hideEvent (QHideEvent *event)
{
QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
- //settings.setValue("TwoPanelFileDialog/close_on_add", closeOnAddToolButton->isChecked());
settings.setValue("TwoPanelFileDialog/geometry", saveGeometry());
settings.setValue("TwoPanelFileDialog/history", m_history);
QWidget::hideEvent(event);
@@ -448,11 +444,11 @@ void TwoPanelFileDialogImpl::addToHistory(const QString &path)
m_ui.lookInComboBox->addItems(m_history);
}
-void TwoPanelFileDialogImpl::addFiles(const QStringList &list)
+void TwoPanelFileDialogImpl::addFiles(const QStringList &list, bool play)
{
if (!isModal())
{
- emit filesAdded(list);
+ emit filesSelected(list, play);
accept();
}
else if (m_mode == FileDialog::SaveFile)