Add "Copy to device" to the files tab

This commit is contained in:
David Sansome 2010-09-18 09:54:33 +00:00
parent 7419c52bec
commit e7afd348e9
6 changed files with 23 additions and 0 deletions

View File

@ -237,6 +237,7 @@ MainWindow::MainWindow(NetworkAccessManager* network, Engine::Type engine, QWidg
connect(ui_->file_view, SIGNAL(PathChanged(QString)), SLOT(FilePathChanged(QString)));
connect(ui_->file_view, SIGNAL(CopyToLibrary(QList<QUrl>)), SLOT(CopyFilesToLibrary(QList<QUrl>)));
connect(ui_->file_view, SIGNAL(MoveToLibrary(QList<QUrl>)), SLOT(MoveFilesToLibrary(QList<QUrl>)));
connect(ui_->file_view, SIGNAL(CopyToDevice(QList<QUrl>)), SLOT(CopyFilesToDevice(QList<QUrl>)));
ui_->file_view->SetTaskManager(task_manager_);
// Action connections
@ -1367,6 +1368,17 @@ void MainWindow::MoveFilesToLibrary(const QList<QUrl> &urls) {
organise_dialog_->show();
}
void MainWindow::CopyFilesToDevice(const QList<QUrl> &urls) {
organise_dialog_->SetDestinationModel(devices_->connected_devices_model(), true);
organise_dialog_->SetCopy(true);
if (organise_dialog_->SetUrls(urls))
organise_dialog_->show();
else {
QMessageBox::warning(this, tr("Error"),
tr("None of the selected songs were suitable for copying to a device"));
}
}
void MainWindow::PlaylistCopyToLibrary() {
PlaylistOrganiseSelected(true);
}

View File

@ -131,6 +131,7 @@ class MainWindow : public QMainWindow, public PlatformInterface {
void CopyFilesToLibrary(const QList<QUrl>& urls);
void MoveFilesToLibrary(const QList<QUrl>& urls);
void CopyFilesToDevice(const QList<QUrl>& urls);
void LoadLibrarySongsToPlaylist(const SongList& songs);
void AddLibrarySongsToPlaylist(const SongList& songs);

View File

@ -56,6 +56,7 @@ FileView::FileView(QWidget* parent)
connect(ui_->list, SIGNAL(AddToPlaylist(QList<QUrl>)), SIGNAL(AddToPlaylist(QList<QUrl>)));
connect(ui_->list, SIGNAL(CopyToLibrary(QList<QUrl>)), SIGNAL(CopyToLibrary(QList<QUrl>)));
connect(ui_->list, SIGNAL(MoveToLibrary(QList<QUrl>)), SIGNAL(MoveToLibrary(QList<QUrl>)));
connect(ui_->list, SIGNAL(CopyToDevice(QList<QUrl>)), SIGNAL(CopyToDevice(QList<QUrl>)));
connect(ui_->list, SIGNAL(Delete(QStringList)), SLOT(Delete(QStringList)));
}

View File

@ -54,6 +54,7 @@ class FileView : public QWidget {
void DoubleClicked(const QList<QUrl>& urls);
void CopyToLibrary(const QList<QUrl>& urls);
void MoveToLibrary(const QList<QUrl>& urls);
void CopyToDevice(const QList<QUrl>& urls);
private slots:
void FileUp();

View File

@ -35,6 +35,8 @@ FileViewList::FileViewList(QWidget* parent)
this, SLOT(CopyToLibrarySlot()));
menu_->addAction(IconLoader::Load("go-jump"), tr("Move to library..."),
this, SLOT(MoveToLibrarySlot()));
menu_->addAction(IconLoader::Load("multimedia-player-ipod-mini-blue"),
tr("Copy to device..."), this, SLOT(CopyToDeviceSlot()));
menu_->addAction(IconLoader::Load("edit-delete"), tr("Delete from disk..."),
this, SLOT(DeleteSlot()));
setAttribute(Qt::WA_MacShowFocusRect, false);
@ -82,6 +84,10 @@ void FileViewList::MoveToLibrarySlot() {
emit MoveToLibrary(UrlListFromSelection());
}
void FileViewList::CopyToDeviceSlot() {
emit CopyToDevice(UrlListFromSelection());
}
void FileViewList::DeleteSlot() {
emit Delete(FilenamesFromSelection());
}

View File

@ -31,6 +31,7 @@ class FileViewList : public QListView {
void AddToPlaylist(const QList<QUrl>& urls);
void CopyToLibrary(const QList<QUrl>& urls);
void MoveToLibrary(const QList<QUrl>& urls);
void CopyToDevice(const QList<QUrl>& urls);
void Delete(const QStringList& filenames);
protected:
@ -41,6 +42,7 @@ class FileViewList : public QListView {
void AddToPlaylistSlot();
void CopyToLibrarySlot();
void MoveToLibrarySlot();
void CopyToDeviceSlot();
void DeleteSlot();
QList<QUrl> UrlListFromSelection() const;