From 567bcd1f0863aa9dd6400a76275d4ac355a0d4f5 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Sun, 3 Jul 2011 12:04:32 +0000 Subject: added some api fuctions git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@2262 90c681e8-e032-0410-971d-27865f9a5e38 --- src/app/builtincommandlineoption.cpp | 15 +++------------ src/plugins/Ui/skinned/mainwindow.cpp | 18 ++++-------------- src/plugins/Ui/skinned/mainwindow.h | 1 - src/qmmp/qmmp.cpp | 2 +- src/qmmpui/uihelper.cpp | 28 +++++++++++++++++++++++++++- src/qmmpui/uihelper.h | 9 +++++++++ 6 files changed, 44 insertions(+), 29 deletions(-) diff --git a/src/app/builtincommandlineoption.cpp b/src/app/builtincommandlineoption.cpp index f9d246c8f..3370c882e 100644 --- a/src/app/builtincommandlineoption.cpp +++ b/src/app/builtincommandlineoption.cpp @@ -23,6 +23,7 @@ #include #include #include +#include #include #include "builtincommandlineoption.h" @@ -159,21 +160,11 @@ void BuiltinCommandLineOption::executeCommand(const QString &option_string, } else if (option_string == "--add-file") { - QString m_lastDir; - QStringList filters; - filters << tr("All Supported Bitstreams")+" (" + - MetaDataManager::instance()->nameFilters().join (" ") +")"; - filters << MetaDataManager::instance()->filters(); - FileDialog::popup(qApp->activeWindow(), FileDialog::AddDirsFiles, &m_lastDir, - pl_manager->selectedPlayList(), SLOT(add(const QStringList&)), - tr("Select one or more files to open"), filters.join(";;")); + UiHelper::instance()->addFile(); } else if (option_string == "--add-dir") { - QString m_lastDir; - FileDialog::popup(qApp->activeWindow(), FileDialog::AddDirs, &m_lastDir, - pl_manager->selectedPlayList(), SLOT(add(const QStringList&)), - tr("Choose a directory")); + UiHelper::instance()->addDirectory(); } else if (option_string == "--volume" && !args.isEmpty()) { diff --git a/src/plugins/Ui/skinned/mainwindow.cpp b/src/plugins/Ui/skinned/mainwindow.cpp index 3c025484c..8398807d5 100644 --- a/src/plugins/Ui/skinned/mainwindow.cpp +++ b/src/plugins/Ui/skinned/mainwindow.cpp @@ -216,20 +216,12 @@ void MainWindow::closeEvent (QCloseEvent *) void MainWindow::addDir() { - FileDialog::popup(this, FileDialog::AddDirs, &m_lastDir, - m_pl_manager->selectedPlayList(), SLOT(add(const QStringList&)), - tr("Choose a directory")); + m_generalHandler->addDirectory(this); } void MainWindow::addFile() { - QStringList filters; - filters << tr("All Supported Bitstreams")+" (" + - MetaDataManager::instance()->nameFilters().join (" ") +")"; - filters << MetaDataManager::instance()->filters(); - FileDialog::popup(this, FileDialog::AddDirsFiles, &m_lastDir, - m_pl_manager->selectedPlayList(), SLOT(add(const QStringList&)), - tr("Select one or more files to open"), filters.join(";;")); + m_generalHandler->addFile(this); } void MainWindow::changeEvent (QEvent * event) @@ -248,8 +240,6 @@ void MainWindow::readSettings() settings.beginGroup("MainWindow"); move(settings.value("pos", QPoint(100, 100)).toPoint()); //geometry - - m_lastDir = settings.value("last_dir","/").toString(); //last directory m_startHidden = settings.value("start_hidden", false).toBool(); settings.endGroup(); @@ -323,8 +313,6 @@ void MainWindow::writeSettings() settings.beginGroup("MainWindow"); //geometry settings.setValue("pos", this->pos()); - //last directory - settings.setValue("last_dir",m_lastDir); settings.endGroup(); // Repeat/Shuffle settings.beginGroup("Playlist"); @@ -482,6 +470,7 @@ void MainWindow::loadPlaylist() QString mask = tr("Playlist Files")+" (" + l.join(" *.").prepend("*.") + ")"; //TODO use nonmodal dialog and multiplier playlists + QString m_lastDir; QString f_name = FileDialog::getOpenFileName(this,tr("Open Playlist"),m_lastDir,mask); if (!f_name.isEmpty()) { @@ -501,6 +490,7 @@ void MainWindow::savePlaylist() { QStringList l; QList p_list = PlaylistParser::instance()->formats(); + QString m_lastDir; if (!p_list.isEmpty()) { foreach(PlaylistFormat* fmt,p_list) diff --git a/src/plugins/Ui/skinned/mainwindow.h b/src/plugins/Ui/skinned/mainwindow.h index 4fa4656c4..9d8a8e519 100644 --- a/src/plugins/Ui/skinned/mainwindow.h +++ b/src/plugins/Ui/skinned/mainwindow.h @@ -106,7 +106,6 @@ private: int m_preamp; EqWidget *m_equalizer; MainVisual *m_vis; - QString m_lastDir; bool m_update; Skin *m_skin; JumpToTrackDialog* m_jumpDialog; diff --git a/src/qmmp/qmmp.cpp b/src/qmmp/qmmp.cpp index 01228d5e5..aeab23bed 100644 --- a/src/qmmp/qmmp.cpp +++ b/src/qmmp/qmmp.cpp @@ -25,7 +25,7 @@ #include #ifndef QMMP_STR_VERSION -#define QMMP_STR_VERSION "0.4.0" +#define QMMP_STR_VERSION "0.6.0" #endif #ifndef LIB_DIR diff --git a/src/qmmpui/uihelper.cpp b/src/qmmpui/uihelper.cpp index 158bab3c5..abc11680a 100644 --- a/src/qmmpui/uihelper.cpp +++ b/src/qmmpui/uihelper.cpp @@ -22,6 +22,9 @@ #include #include #include +#include +#include +#include #include "general.h" #include "generalfactory.h" #include "uihelper.h" @@ -35,10 +38,15 @@ UiHelper::UiHelper(QObject *parent) m_toolsMenu = 0; m_playlistMenu = 0; General::create(parent); + QSettings settings(Qmmp::configFile(), QSettings::IniFormat); + m_lastDir = settings.value("General/last_dir", QDir::homePath()).toString(); //last directory } UiHelper::~UiHelper() -{} +{ + QSettings settings(Qmmp::configFile(), QSettings::IniFormat); + settings.setValue("General/last_dir",m_lastDir); +} bool UiHelper::visibilityControl() { @@ -114,6 +122,24 @@ QMenu *UiHelper::createMenu(MenuType type, const QString &title, QWidget *parent return 0; } +void UiHelper::addFile(QWidget *parent, PlayListModel *model) +{ + QStringList filters; + filters << tr("All Supported Bitstreams")+" (" + + MetaDataManager::instance()->nameFilters().join (" ") +")"; + filters << MetaDataManager::instance()->filters(); + FileDialog::popup(parent, FileDialog::AddDirsFiles, &m_lastDir, + model, SLOT(add(const QStringList&)), + tr("Select one or more files to open"), filters.join(";;")); +} + +void UiHelper::addDirectory(QWidget *parent, PlayListModel *model) +{ + FileDialog::popup(parent, FileDialog::AddDirs, &m_lastDir, + model, SLOT(add(const QStringList&)), + tr("Choose a directory")); +} + void UiHelper::toggleVisibility() { emit toggleVisibilityCalled(); diff --git a/src/qmmpui/uihelper.h b/src/qmmpui/uihelper.h index efc623bb7..ec33250e8 100644 --- a/src/qmmpui/uihelper.h +++ b/src/qmmpui/uihelper.h @@ -25,6 +25,9 @@ #include #include #include +#include +#include +#include class QAction; class QMenu; @@ -82,6 +85,11 @@ public: * @param parent Parent widget */ QMenu *createMenu(MenuType type, const QString &title = QString(), QWidget *parent = 0); + + void addFile(QWidget *parent = qApp->activeWindow(), + PlayListModel *model = PlayListManager::instance()->selectedPlayList()); + void addDirectory(QWidget *parent = qApp->activeWindow(), + PlayListModel *model = PlayListManager::instance()->selectedPlayList()); /*! * Returns a pointer to the object's instance. */ @@ -118,6 +126,7 @@ private: QList m_playlistActions; QPointer m_toolsMenu; QPointer m_playlistMenu; + QString m_lastDir; static UiHelper* m_instance; }; -- cgit v1.2.3-13-gbd6f