diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2012-12-22 10:46:29 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2012-12-22 10:46:29 +0000 |
| commit | 954146ff9b69591f0cf3895e96922bb55ad88502 (patch) | |
| tree | b495690d6ed2a6b5251fd1e8a428b550354a0cba /src/qmmpui/uihelper.cpp | |
| parent | 2b286b3f3713a224839b9444579046556b608c58 (diff) | |
| download | qmmp-954146ff9b69591f0cf3895e96922bb55ad88502.tar.gz qmmp-954146ff9b69591f0cf3895e96922bb55ad88502.tar.bz2 qmmp-954146ff9b69591f0cf3895e96922bb55ad88502.zip | |
playlist format api cleanup
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3088 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/uihelper.cpp')
| -rw-r--r-- | src/qmmpui/uihelper.cpp | 59 |
1 files changed, 25 insertions, 34 deletions
diff --git a/src/qmmpui/uihelper.cpp b/src/qmmpui/uihelper.cpp index c9247640e..2dfb7b9e8 100644 --- a/src/qmmpui/uihelper.cpp +++ b/src/qmmpui/uihelper.cpp @@ -147,51 +147,42 @@ void UiHelper::addDirectory(QWidget *parent, PlayListModel *model) void UiHelper::loadPlayList(QWidget *parent, PlayListModel *model) { - QStringList l; - QList<PlayListFormat*> *p_list = PlayListParser::formats(); - if (!p_list->isEmpty()) + if(PlayListParser::nameFilters().isEmpty()) { - foreach(PlayListFormat* fmt, *p_list) - l << fmt->getExtensions(); - - QString mask = tr("Playlist Files")+" (" + l.join(" *.").prepend("*.") + ")"; - //TODO use nonmodal dialog and multiplier playlists - QString f_name = FileDialog::getOpenFileName(parent ,tr("Open Playlist"),m_lastDir,mask); - if (!f_name.isEmpty()) - { - model->clear(); - model->loadPlaylist(f_name); - model->setName(QFileInfo(f_name).baseName()); - m_lastDir = QFileInfo(f_name).absoluteDir().path(); - } + qWarning("UiHelper: There is no registered playlist parsers"); + return; } - else + + QString mask = tr("Playlist Files") + " (" + PlayListParser::nameFilters().join(" ") + ")"; + //TODO use nonmodal dialog and multiplier playlists + QString f_name = FileDialog::getOpenFileName(parent ,tr("Open Playlist"), m_lastDir, mask); + if (!f_name.isEmpty()) { - qWarning("Error: There is no registered playlist parsers"); + model->clear(); + model->loadPlaylist(f_name); + model->setName(QFileInfo(f_name).baseName()); + m_lastDir = QFileInfo(f_name).absoluteDir().path(); } } void UiHelper::savePlayList(QWidget *parent, PlayListModel *model) { - QStringList l; - QList<PlayListFormat*> *p_list = PlayListParser::formats(); - if (!p_list->isEmpty()) + if(PlayListParser::nameFilters().isEmpty()) { - foreach(PlayListFormat* fmt,*p_list) - l << fmt->getExtensions(); - - QString mask = tr("Playlist Files")+" (" + l.join(" *.").prepend("*.") + ")"; - QString f_name = FileDialog::getSaveFileName(parent, tr("Save Playlist"),m_lastDir + "/" + - model->name() + "." + l[0],mask); + qWarning("UiHelper: There is no registered playlist parsers"); + return; + } + QString ext = PlayListParser::nameFilters().at(0); + ext.replace("*.", "."); //extract extension from name filter + QString mask = tr("Playlist Files") + " (" + PlayListParser::nameFilters().join(" ") + ")"; + QString f_name = FileDialog::getSaveFileName(parent, tr("Save Playlist"),m_lastDir + "/" + + model->name() + ext,mask); - if (!f_name.isEmpty()) - { - model->savePlaylist(f_name); - m_lastDir = QFileInfo(f_name).absoluteDir().path(); - } + if (!f_name.isEmpty()) + { + model->savePlaylist(f_name); + m_lastDir = QFileInfo(f_name).absoluteDir().path(); } - else - qWarning("Error: There is no registered playlist parsers"); } void UiHelper::jumpToTrack(QWidget *parent, PlayListModel *model) |
