FileView::FileView(QWidget* parent) : QWidget(parent), ui_(new Ui_FileView), model_(nullptr), undo_stack_(new QUndoStack(this)), task_manager_(nullptr), storage_(new FilesystemMusicStorage("/")) { ui_->setupUi(this); // Icons ui_->back->setIcon(IconLoader::Load("go-previous", IconLoader::Base)); ui_->forward->setIcon(IconLoader::Load("go-next", IconLoader::Base)); ui_->home->setIcon(IconLoader::Load("go-home", IconLoader::Base)); ui_->up->setIcon(IconLoader::Load("go-up", IconLoader::Base)); connect(ui_->back, SIGNAL(clicked()), undo_stack_, SLOT(undo())); connect(ui_->forward, SIGNAL(clicked()), undo_stack_, SLOT(redo())); connect(ui_->home, SIGNAL(clicked()), SLOT(FileHome())); connect(ui_->up, SIGNAL(clicked()), SLOT(FileUp())); connect(ui_->path, SIGNAL(textChanged(QString)), SLOT(ChangeFilePath(QString))); connect(undo_stack_, SIGNAL(canUndoChanged(bool)), ui_->back, SLOT(setEnabled(bool))); connect(undo_stack_, SIGNAL(canRedoChanged(bool)), ui_->forward, SLOT(setEnabled(bool))); connect(ui_->list, SIGNAL(activated(QModelIndex)), SLOT(ItemActivated(QModelIndex))); connect(ui_->list, SIGNAL(doubleClicked(QModelIndex)), SLOT(ItemDoubleClick(QModelIndex))); connect(ui_->list, SIGNAL(AddToPlaylist(QMimeData*)), SIGNAL(AddToPlaylist(QMimeData*))); 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))); connect(ui_->list, SIGNAL(EditTags(QList<QUrl>)), SIGNAL(EditTags(QList<QUrl>))); QString filter(FileView::kFileFilter); filter_list_ << filter.split(" "); }
Require(op->connect(actionCheckUpdates, SIGNAL(triggered()), SLOT(Execute()))); Require(this->connect(op, SIGNAL(ErrorOccurred(const Error&)), SLOT(ShowError(const Error&)))); } else { actionCheckUpdates->setEnabled(false); } MultiPlaylist->connect(Controls, SIGNAL(OnPrevious()), SLOT(Prev())); MultiPlaylist->connect(Controls, SIGNAL(OnNext()), SLOT(Next())); MultiPlaylist->connect(Playback, SIGNAL(OnStartModule(Sound::Backend::Ptr, Playlist::Item::Data::Ptr)), SLOT(Play())); MultiPlaylist->connect(Playback, SIGNAL(OnResumeModule()), SLOT(Play())); MultiPlaylist->connect(Playback, SIGNAL(OnPauseModule()), SLOT(Pause())); MultiPlaylist->connect(Playback, SIGNAL(OnStopModule()), SLOT(Stop())); MultiPlaylist->connect(Playback, SIGNAL(OnFinishModule()), SLOT(Finish())); Require(Playback->connect(MultiPlaylist, SIGNAL(ItemActivated(Playlist::Item::Data::Ptr)), SLOT(SetItem(Playlist::Item::Data::Ptr)))); this->connect(Playback, SIGNAL(OnStartModule(Sound::Backend::Ptr, Playlist::Item::Data::Ptr)), SLOT(StartModule(Sound::Backend::Ptr, Playlist::Item::Data::Ptr))); this->connect(Playback, SIGNAL(OnStopModule()), SLOT(StopModule())); Require(connect(Playback, SIGNAL(ErrorOccurred(const Error&)), SLOT(ShowError(const Error&)))); this->connect(actionAddFiles, SIGNAL(triggered()), MultiPlaylist, SLOT(AddFiles())); this->connect(actionAddFolder, SIGNAL(triggered()), MultiPlaylist, SLOT(AddFolder())); StopModule(); //TODO: remove { QStringList items; std::transform(cmdline.begin(), cmdline.end(), std::back_inserter(items), &ToQString); MultiPlaylist->Setup(items);