diff --git a/src/core/player.cpp b/src/core/player.cpp index 2377cae24..139d57435 100644 --- a/src/core/player.cpp +++ b/src/core/player.cpp @@ -213,8 +213,8 @@ void Player::NextInternal(Engine::TrackChangeType change) { void Player::NextItem(Engine::TrackChangeType change) { int i = playlists_->active()->next_index(); - playlists_->active()->set_current_index(i); if (i == -1) { + playlists_->active()->set_current_index(i); emit PlaylistFinished(); Stop(); return; @@ -319,7 +319,7 @@ void Player::PlayAt(int index, Engine::TrackChangeType change, bool reshuffle) { playlists_->active()->set_current_index(-1); playlists_->active()->set_current_index(index); - current_item_ = playlists_->active()->item_at(index); + current_item_ = playlists_->active()->current_item(); if (current_item_->options() & PlaylistItem::SpecialPlayBehaviour) { // It's already loading diff --git a/src/library/librarybackend.cpp b/src/library/librarybackend.cpp index 183cd5df1..b6c077b11 100644 --- a/src/library/librarybackend.cpp +++ b/src/library/librarybackend.cpp @@ -821,7 +821,6 @@ SongList LibraryBackend::FindSongs(const smart_playlists::Search& search) { // Build the query QString sql = search.ToSql(songs_table()); - qDebug() << sql; // Run the query SongList ret; diff --git a/src/library/librarymodel.cpp b/src/library/librarymodel.cpp index e7ae44d8a..b3bc9a985 100644 --- a/src/library/librarymodel.cpp +++ b/src/library/librarymodel.cpp @@ -42,7 +42,7 @@ using smart_playlists::QueryGenerator; const char* LibraryModel::kSmartPlaylistsMimeType = "application/x-clementine-smart-playlist-generator"; const char* LibraryModel::kSmartPlaylistsSettingsGroup = "SerialisedSmartPlaylists"; const char* LibraryModel::kSmartPlaylistsArray = "smart"; -const int LibraryModel::kSmartPlaylistsVersion = 2; +const int LibraryModel::kSmartPlaylistsVersion = 3; LibraryModel::LibraryModel(LibraryBackend* backend, QObject* parent) : SimpleTreeModel(new LibraryItem(this), parent), @@ -922,7 +922,9 @@ void LibraryModel::CreateSmartPlaylists() { Search::Sort_FieldDesc, SearchTerm::Field_DateCreated)); s.endArray(); - } else if (version == 1) { + } + + if (version <= 1) { // Some additional smart playlists const int count = s.beginReadArray(kSmartPlaylistsArray); @@ -942,6 +944,21 @@ void LibraryModel::CreateSmartPlaylists() { s.endArray(); } + if (version <= 2) { + // Dynamic playlists + + const int count = s.beginReadArray(kSmartPlaylistsArray); + s.endArray(); + s.beginWriteArray(kSmartPlaylistsArray); + + int i = count; + SaveDefaultGenerator(&s, i++, tr("Dynamic random mix"), Search( + Search::Type_All, Search::TermList(), + Search::Sort_Random, SearchTerm::Field_Title), true); + + s.endArray(); + } + s.setValue("version", kSmartPlaylistsVersion); const int count = s.beginReadArray(kSmartPlaylistsArray); @@ -965,10 +982,12 @@ void LibraryModel::ItemFromSmartPlaylist(const QSettings& s, bool notify) const } void LibraryModel::SaveDefaultGenerator(QSettings* s, int i, const QString& name, - const smart_playlists::Search& search) const { + const smart_playlists::Search& search, + bool dynamic) const { boost::shared_ptr gen(new QueryGenerator); - gen->set_name(name); gen->Load(search); + gen->set_name(name); + gen->set_dynamic(dynamic); SaveGenerator(s, i, boost::static_pointer_cast(gen)); } diff --git a/src/library/librarymodel.h b/src/library/librarymodel.h index 2e5729535..485cd4f8b 100644 --- a/src/library/librarymodel.h +++ b/src/library/librarymodel.h @@ -165,7 +165,8 @@ class LibraryModel : public SimpleTreeModel { // Smart playlists are shown in another top-level node void CreateSmartPlaylists(); void SaveDefaultGenerator(QSettings* s, int i, const QString& name, - const smart_playlists::Search& search) const; + const smart_playlists::Search& search, + bool dynamic = false) const; void SaveGenerator(QSettings* s, int i, smart_playlists::GeneratorPtr generator) const; void ItemFromSmartPlaylist(const QSettings& s, bool notify) const; diff --git a/src/playlist/playlist.cpp b/src/playlist/playlist.cpp index 7732a8ef1..c3ae20991 100644 --- a/src/playlist/playlist.cpp +++ b/src/playlist/playlist.cpp @@ -34,10 +34,12 @@ #include "radio/radiomodel.h" #include "radio/radioplaylistitem.h" #include "radio/savedradio.h" +#include "smartplaylists/generator.h" #include "smartplaylists/generatorinserter.h" #include "smartplaylists/generatormimedata.h" #include +#include #include #include #include @@ -253,6 +255,11 @@ QVariant Playlist::data(const QModelIndex& index, int role) const { return QVariant(Qt::AlignLeft | Qt::AlignVCenter); } + case Qt::ForegroundRole: + if (items_[index.row()]->IsDynamicHistory()) + return QApplication::palette().brush(QPalette::Disabled, QPalette::Text); + return QVariant(); + default: return QVariant(); } @@ -469,6 +476,9 @@ void Playlist::set_current_index(int i) { current_item_index_ = QPersistentModelIndex(index(i, 0, QModelIndex())); + if (current_item_index_ == old_current) + return; + if (current_item_index_.isValid()) { last_played_item_index_ = current_item_index_; current_item_ = items_[current_item_index_.row()]; @@ -477,10 +487,15 @@ void Playlist::set_current_index(int i) { current_item_.reset(); } - if (old_current.isValid()) - emit dataChanged(old_current, old_current.sibling(old_current.row(), ColumnCount-1)); + if (old_current.isValid()) { + if (dynamic_playlist_) { + items_[old_current.row()]->SetDynamicHistory(true); + } - if (current_item_index_.isValid() && current_item_index_ != old_current) { + emit dataChanged(old_current, old_current.sibling(old_current.row(), ColumnCount-1)); + } + + if (current_item_index_.isValid()) { emit dataChanged(current_item_index_, current_item_index_.sibling(current_item_index_.row(), ColumnCount-1)); emit CurrentSongChanged(current_item_metadata()); } @@ -506,6 +521,25 @@ void Playlist::set_current_index(int i) { else current_virtual_index_ = i; + if (dynamic_playlist_ && current_item_index_.isValid() && old_current.isValid()) { + using smart_playlists::Generator; + + // Add more dynamic playlist items + const int count = current_item_index_.row() + Generator::kDynamicFuture - items_.count(); + if (count > 0) { + GeneratorInserter* inserter = new GeneratorInserter(task_manager_, library_, this); + connect(inserter, SIGNAL(Error(QString)), SIGNAL(LoadTracksError(QString))); + connect(inserter, SIGNAL(PlayRequested(QModelIndex)), SIGNAL(PlayRequested(QModelIndex))); + + inserter->Load(this, -1, false, dynamic_playlist_, count); + } + + // Remove the first item + if (current_item_index_.row() > Generator::kDynamicHistory) { + RemoveItemsWithoutUndo(0, 1); + } + } + UpdateScrobblePoint(); } @@ -604,6 +638,12 @@ void Playlist::InsertSmartPlaylist(GeneratorPtr generator, int pos, bool play_no connect(inserter, SIGNAL(PlayRequested(QModelIndex)), SIGNAL(PlayRequested(QModelIndex))); inserter->Load(this, pos, play_now, generator); + + if (generator->is_dynamic()) { + dynamic_playlist_ = generator; + playlist_sequence_->SetUsingDynamicPlaylist(true); + ShuffleModeChanged(PlaylistSequence::Shuffle_Off); + } } void Playlist::MoveItemsWithoutUndo(const QList &source_rows, int pos) { @@ -623,6 +663,7 @@ void Playlist::MoveItemsWithoutUndo(const QList &source_rows, int pos) { // Put the items back in const int start = pos == -1 ? items_.count() : pos; for (int i=start ; iSetDynamicHistory(false); items_.insert(i, moved_items[i - start]); } @@ -1106,10 +1147,20 @@ void Playlist::UpdateScrobblePoint() { void Playlist::Clear() { undo_stack_->push(new PlaylistUndoCommands::RemoveItems(this, 0, items_.count())); + TurnOffDynamicPlaylist(); Save(); } +void Playlist::TurnOffDynamicPlaylist() { + dynamic_playlist_.reset(); + + if (playlist_sequence_) { + playlist_sequence_->SetUsingDynamicPlaylist(false); + ShuffleModeChanged(playlist_sequence_->shuffle_mode()); + } +} + void Playlist::ReloadItems(const QList& rows) { foreach (int row, rows) { item_at(row)->Reload(); diff --git a/src/playlist/playlist.h b/src/playlist/playlist.h index db98d4bd0..ea333e934 100644 --- a/src/playlist/playlist.h +++ b/src/playlist/playlist.h @@ -124,6 +124,7 @@ class Playlist : public QAbstractListModel { int next_index() const; int previous_index() const; bool stop_after_current() const; + bool is_dynamic() const { return dynamic_playlist_; } const PlaylistItemPtr& item_at(int index) const { return items_[index]; } PlaylistItemPtr current_item() const { return current_item_; } @@ -187,6 +188,8 @@ class Playlist : public QAbstractListModel { void ShuffleModeChanged(PlaylistSequence::ShuffleMode mode); + void TurnOffDynamicPlaylist(); + signals: void CurrentSongChanged(const Song& metadata); void EditingFinished(const QModelIndex& index); @@ -257,6 +260,8 @@ class Playlist : public QAbstractListModel { bool ignore_sorting_; QUndoStack* undo_stack_; + + smart_playlists::GeneratorPtr dynamic_playlist_; }; QDataStream& operator <<(QDataStream&, const Playlist*); diff --git a/src/playlist/playlistitem.h b/src/playlist/playlistitem.h index 955230385..a55768de6 100644 --- a/src/playlist/playlistitem.h +++ b/src/playlist/playlistitem.h @@ -30,7 +30,7 @@ class SqlRow; class PlaylistItem : public boost::enable_shared_from_this { public: - PlaylistItem(const QString& type) : type_(type) {} + PlaylistItem(const QString& type) : type_(type), is_dynamic_history_(false) {} virtual ~PlaylistItem() {} static PlaylistItem* NewFromType(const QString& type); @@ -111,6 +111,9 @@ class PlaylistItem : public boost::enable_shared_from_this { void ClearTemporaryMetadata(); bool HasTemporaryMetadata() const { return temp_metadata_.is_valid(); } + void SetDynamicHistory(bool history) { is_dynamic_history_ = history; } + bool IsDynamicHistory() const { return is_dynamic_history_; } + // Convenience function to find out whether this item is from the local // library, as opposed to a device, a file on disk, or a stream. virtual bool IsLocalLibraryItem() const { return false; } @@ -132,6 +135,7 @@ class PlaylistItem : public boost::enable_shared_from_this { QString type_; Song temp_metadata_; + bool is_dynamic_history_; }; typedef boost::shared_ptr PlaylistItemPtr; typedef QList PlaylistItemList; diff --git a/src/playlist/playlistmanager.cpp b/src/playlist/playlistmanager.cpp index 387aa6818..dcb4a906d 100644 --- a/src/playlist/playlistmanager.cpp +++ b/src/playlist/playlistmanager.cpp @@ -192,6 +192,8 @@ void PlaylistManager::SetActivePlaylist(int id) { active_ = id; emit ActiveChanged(active()); + + sequence_->SetUsingDynamicPlaylist(active()->is_dynamic()); } void PlaylistManager::ClearCurrent() { diff --git a/src/playlist/playlistsequence.cpp b/src/playlist/playlistsequence.cpp index 99321cdcd..53429d932 100644 --- a/src/playlist/playlistsequence.cpp +++ b/src/playlist/playlistsequence.cpp @@ -35,7 +35,8 @@ PlaylistSequence::PlaylistSequence(QWidget *parent, SettingsProvider *settings) shuffle_menu_(new QMenu(this)), loading_(false), repeat_mode_(Repeat_Off), - shuffle_mode_(Shuffle_Off) + shuffle_mode_(Shuffle_Off), + dynamic_(false) { ui_->setupUi(this); @@ -155,3 +156,20 @@ void PlaylistSequence::SetShuffleMode(ShuffleMode mode) { shuffle_mode_ = mode; Save(); } + +void PlaylistSequence::SetUsingDynamicPlaylist(bool dynamic) { + dynamic_ = dynamic; + const QString not_available(tr("Not available while using a dynamic playlist")); + + setEnabled(!dynamic); + ui_->shuffle->setToolTip(dynamic ? not_available : tr("Shuffle")); + ui_->repeat->setToolTip(dynamic ? not_available : tr("Repeat")); +} + +PlaylistSequence::ShuffleMode PlaylistSequence::shuffle_mode() const { + return dynamic_ ? Shuffle_Off : shuffle_mode_; +} + +PlaylistSequence::RepeatMode PlaylistSequence::repeat_mode() const { + return dynamic_ ? Repeat_Off : repeat_mode_; +} diff --git a/src/playlist/playlistsequence.h b/src/playlist/playlistsequence.h index ae6e6f24e..7c810403b 100644 --- a/src/playlist/playlistsequence.h +++ b/src/playlist/playlistsequence.h @@ -49,8 +49,8 @@ class PlaylistSequence : public QWidget { static const char* kSettingsGroup; - RepeatMode repeat_mode() const { return repeat_mode_; } - ShuffleMode shuffle_mode() const { return shuffle_mode_; } + RepeatMode repeat_mode() const; + ShuffleMode shuffle_mode() const; QMenu* repeat_menu() const { return repeat_menu_; } QMenu* shuffle_menu() const { return shuffle_menu_; } @@ -58,6 +58,7 @@ class PlaylistSequence : public QWidget { public slots: void SetRepeatMode(PlaylistSequence::RepeatMode mode); void SetShuffleMode(PlaylistSequence::ShuffleMode mode); + void SetUsingDynamicPlaylist(bool dynamic); signals: void RepeatModeChanged(PlaylistSequence::RepeatMode mode); @@ -83,6 +84,7 @@ class PlaylistSequence : public QWidget { bool loading_; RepeatMode repeat_mode_; ShuffleMode shuffle_mode_; + bool dynamic_; }; #endif // PLAYLISTSEQUENCE_H diff --git a/src/smartplaylists/generator.cpp b/src/smartplaylists/generator.cpp index f79ab3cb8..3667e8988 100644 --- a/src/smartplaylists/generator.cpp +++ b/src/smartplaylists/generator.cpp @@ -23,6 +23,8 @@ namespace smart_playlists { const int Generator::kDefaultLimit = 20; +const int Generator::kDynamicHistory = 5; +const int Generator::kDynamicFuture = 15; Generator::Generator() : QObject(NULL), diff --git a/src/smartplaylists/generator.h b/src/smartplaylists/generator.h index bf8f2a1c0..5e81bacea 100644 --- a/src/smartplaylists/generator.h +++ b/src/smartplaylists/generator.h @@ -32,29 +32,44 @@ class Generator : public QObject, public boost::enable_shared_from_this Create(const QString& type); + // Should be called before Load on a new Generator void set_library(LibraryBackend* backend) { backend_ = backend; } - - QString name() const { return name_; } void set_name(const QString& name) { name_ = name; } + QString name() const { return name_; } + // Name of the subclass virtual QString type() const = 0; + // Serialises the Generator's settings virtual void Load(const QByteArray& data) = 0; virtual QByteArray Save() const = 0; + // Creates and returns a playlist virtual PlaylistItemList Generate() = 0; + // If the generator can be used as a dynamic playlist then GenerateMore + // should return the next tracks in the sequence. The subclass should + // remember the last kDynamicHistory + kDynamicFuture tracks and ensure that + // the tracks returned from this method are not in that set. + virtual bool is_dynamic() const { return false; } + virtual void set_dynamic(bool dynamic) {} + virtual PlaylistItemList GenerateMore(int count) { return PlaylistItemList(); } + signals: void Error(const QString& message); protected: LibraryBackend* backend_; +private: QString name_; }; diff --git a/src/smartplaylists/generatorinserter.cpp b/src/smartplaylists/generatorinserter.cpp index 8f1812857..4a6635324 100644 --- a/src/smartplaylists/generatorinserter.cpp +++ b/src/smartplaylists/generatorinserter.cpp @@ -37,12 +37,17 @@ GeneratorInserter::GeneratorInserter( { } -static PlaylistItemList Generate(GeneratorPtr generator) { - return generator->Generate(); +static PlaylistItemList Generate(GeneratorPtr generator, int dynamic_count) { + if (dynamic_count) { + return generator->GenerateMore(dynamic_count); + } else { + return generator->Generate(); + } } void GeneratorInserter::Load( - Playlist* destination, int row, bool play_now, GeneratorPtr generator) { + Playlist* destination, int row, bool play_now, GeneratorPtr generator, + int dynamic_count) { task_id_ = task_manager_->StartTask(tr("Loading smart playlist")); destination_ = destination; @@ -51,7 +56,7 @@ void GeneratorInserter::Load( connect(generator.get(), SIGNAL(Error(QString)), SIGNAL(Error(QString))); - Future future = QtConcurrent::run(Generate, generator); + Future future = QtConcurrent::run(Generate, generator, dynamic_count); FutureWatcher* watcher = new FutureWatcher(this); watcher->setFuture(future); @@ -65,8 +70,13 @@ void GeneratorInserter::Finished() { PlaylistItemList items = watcher->result(); QModelIndex index = destination_->InsertItems(items, row_); - if (play_now_) + if (play_now_) { emit PlayRequested(index); + } + + if (items.isEmpty()) { + destination_->TurnOffDynamicPlaylist(); + } task_manager_->SetTaskFinished(task_id_); diff --git a/src/smartplaylists/generatorinserter.h b/src/smartplaylists/generatorinserter.h index c72b0e8ac..a10fde3bf 100644 --- a/src/smartplaylists/generatorinserter.h +++ b/src/smartplaylists/generatorinserter.h @@ -38,7 +38,7 @@ public: LibraryBackend* library, QObject* parent); void Load(Playlist* destination, int row, bool play_now, - GeneratorPtr generator); + GeneratorPtr generator, int dynamic_count = 0); signals: void Error(const QString& message); diff --git a/src/smartplaylists/querygenerator.cpp b/src/smartplaylists/querygenerator.cpp index 4debacfa3..ce5fba17b 100644 --- a/src/smartplaylists/querygenerator.cpp +++ b/src/smartplaylists/querygenerator.cpp @@ -24,32 +24,52 @@ namespace smart_playlists { QueryGenerator::QueryGenerator() + : dynamic_(false) { } void QueryGenerator::Load(const Search& search) { search_ = search; + dynamic_ = false; } void QueryGenerator::Load(const QByteArray& data) { QDataStream s(data); s >> search_; + s >> dynamic_; } QByteArray QueryGenerator::Save() const { QByteArray ret; QDataStream s(&ret, QIODevice::WriteOnly); s << search_; + s << dynamic_; return ret; } PlaylistItemList QueryGenerator::Generate() { - SongList songs = backend_->FindSongs(search_); + previous_ids_.clear(); + return GenerateMore(0); +} +PlaylistItemList QueryGenerator::GenerateMore(int count) { + Search search_copy = search_; + search_copy.id_not_in_ = previous_ids_; + if (count) { + search_copy.limit_ = count; + } else if (dynamic_) { + search_copy.limit_ = kDynamicFuture; + } + + SongList songs = backend_->FindSongs(search_copy); PlaylistItemList items; foreach (const Song& song, songs) { items << PlaylistItemPtr(new LibraryPlaylistItem(song)); + previous_ids_ << song.id(); + + if (previous_ids_.count() > kDynamicFuture + kDynamicHistory) + previous_ids_.removeFirst(); } return items; } diff --git a/src/smartplaylists/querygenerator.h b/src/smartplaylists/querygenerator.h index a3491570d..7ea0030dc 100644 --- a/src/smartplaylists/querygenerator.h +++ b/src/smartplaylists/querygenerator.h @@ -34,11 +34,17 @@ public: QByteArray Save() const; PlaylistItemList Generate(); + PlaylistItemList GenerateMore(int count); + bool is_dynamic() const { return dynamic_; } + void set_dynamic(bool dynamic) { dynamic_ = dynamic; } Search search() const { return search_; } private: Search search_; + bool dynamic_; + + QList previous_ids_; }; } // namespace diff --git a/src/smartplaylists/querysearchpage.ui b/src/smartplaylists/querysearchpage.ui index 743c2e218..3c1677646 100644 --- a/src/smartplaylists/querysearchpage.ui +++ b/src/smartplaylists/querysearchpage.ui @@ -14,6 +14,9 @@ Form + + 0 + diff --git a/src/smartplaylists/querywizardplugin.h b/src/smartplaylists/querywizardplugin.h index 80b8d28a5..63614cb8d 100644 --- a/src/smartplaylists/querywizardplugin.h +++ b/src/smartplaylists/querywizardplugin.h @@ -45,6 +45,7 @@ public: QString type() const { return "Query"; } QString name() const; QString description() const; + bool is_dynamic() const { return true; } int CreatePages(QWizard* wizard, int finish_page_id); void SetGenerator(GeneratorPtr); diff --git a/src/smartplaylists/search.cpp b/src/smartplaylists/search.cpp index 9b7820fec..2f0ebe24b 100644 --- a/src/smartplaylists/search.cpp +++ b/src/smartplaylists/search.cpp @@ -49,13 +49,28 @@ QString Search::ToSql(const QString& songs_table) const { QString sql = "SELECT ROWID," + Song::kColumnSpec + " FROM " + songs_table; // Add search terms - QStringList term_sql; + QStringList where_clauses; + QStringList term_where_clauses; foreach (const SearchTerm& term, terms_) { - term_sql += term.ToSql(); + term_where_clauses << term.ToSql(); } + if (!terms_.isEmpty() && search_type_ != Type_All) { QString boolean_op = search_type_ == Type_And ? " AND " : " OR "; - sql += " WHERE " + term_sql.join(boolean_op); + where_clauses << "(" + term_where_clauses.join(boolean_op) + ")"; + } + + // Restrict the IDs of songs if we're making a dynamic playlist + if (!id_not_in_.isEmpty()) { + QString numbers; + foreach (int id, id_not_in_) { + numbers += (numbers.isEmpty() ? "" : ",") + QString::number(id); + } + where_clauses << "(ROWID NOT IN (" + numbers + "))"; + } + + if (!where_clauses.isEmpty()) { + sql += " WHERE " + where_clauses.join(" AND "); } // Add sort by @@ -71,6 +86,7 @@ QString Search::ToSql(const QString& songs_table) const { sql += " LIMIT " + QString::number(limit_); } + qDebug() << sql; return sql; } diff --git a/src/smartplaylists/search.h b/src/smartplaylists/search.h index ff7cff6de..db2fb19ef 100644 --- a/src/smartplaylists/search.h +++ b/src/smartplaylists/search.h @@ -56,6 +56,8 @@ public: SearchTerm::Field sort_field_; int limit_; + QList id_not_in_; + void Reset(); QString ToSql(const QString& songs_table) const; }; diff --git a/src/smartplaylists/wizard.cpp b/src/smartplaylists/wizard.cpp index 70becc7a8..1d5e33a51 100644 --- a/src/smartplaylists/wizard.cpp +++ b/src/smartplaylists/wizard.cpp @@ -102,6 +102,7 @@ void Wizard::SetGenerator(GeneratorPtr gen) { // Set the name finish_page_->ui_->name->setText(gen->name()); + finish_page_->ui_->dynamic->setChecked(gen->is_dynamic()); // Tell the plugin to load plugins_[type_index_]->SetGenerator(gen); @@ -142,7 +143,16 @@ GeneratorPtr Wizard::CreateGenerator() const { return ret; ret->set_name(finish_page_->ui_->name->text()); + ret->set_dynamic(finish_page_->ui_->dynamic->isChecked()); return ret; } +void Wizard::initializePage(int id) { + if (id == finish_id_) { + finish_page_->ui_->dynamic_container->setEnabled( + plugins_[type_index_]->is_dynamic()); + } + QWizard::initializePage(id); +} + } // namespace diff --git a/src/smartplaylists/wizard.h b/src/smartplaylists/wizard.h index f69c2c92f..4f35b0108 100644 --- a/src/smartplaylists/wizard.h +++ b/src/smartplaylists/wizard.h @@ -41,6 +41,9 @@ public: void SetGenerator(GeneratorPtr gen); GeneratorPtr CreateGenerator() const; +protected: + void initializePage(int id); + private: class TypePage; class FinishPage; diff --git a/src/smartplaylists/wizardfinishpage.ui b/src/smartplaylists/wizardfinishpage.ui index 9bc39e374..971d9e9e8 100644 --- a/src/smartplaylists/wizardfinishpage.ui +++ b/src/smartplaylists/wizardfinishpage.ui @@ -24,6 +24,35 @@ + + + + + 0 + + + + + Use dynamic mode + + + + + + + In dynamic mode new tracks will be chosen and added to the playlist every time a song finishes. Enabling dynamic mode will ignore any size limit you set on the playlist. + + + true + + + 24 + + + + + + diff --git a/src/smartplaylists/wizardplugin.h b/src/smartplaylists/wizardplugin.h index de67cc5dd..4fd775e46 100644 --- a/src/smartplaylists/wizardplugin.h +++ b/src/smartplaylists/wizardplugin.h @@ -37,6 +37,7 @@ public: virtual QString type() const = 0; virtual QString name() const = 0; virtual QString description() const = 0; + virtual bool is_dynamic() const { return false; } int start_page() const { return start_page_; } virtual void SetGenerator(GeneratorPtr gen) = 0; diff --git a/src/translations/ar.po b/src/translations/ar.po index 7b4a2599e..dd23edf05 100644 --- a/src/translations/ar.po +++ b/src/translations/ar.po @@ -742,6 +742,9 @@ msgstr "" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1030,6 +1033,12 @@ msgid "" "Images (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" msgstr "" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1366,6 +1375,9 @@ msgstr "لا شيء" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2116,6 +2128,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/bg.po b/src/translations/bg.po index caeae7094..0ca9abcc6 100644 --- a/src/translations/bg.po +++ b/src/translations/bg.po @@ -742,6 +742,9 @@ msgstr "" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1034,6 +1037,12 @@ msgstr "" "Изображения (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1370,6 +1379,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2120,6 +2132,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/ca.po b/src/translations/ca.po index 4fe8a348d..71554fe5f 100644 --- a/src/translations/ca.po +++ b/src/translations/ca.po @@ -760,6 +760,9 @@ msgstr "Arrossegueu per canviar de posició" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1055,6 +1058,12 @@ msgid "" msgstr "" "Imatges (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Incloure la caràtula a la notificació" @@ -1395,6 +1404,9 @@ msgstr "Cap" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "No connectat" @@ -2155,6 +2167,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "Utilitza el comandament remot Wii" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/cs.po b/src/translations/cs.po index 66a60df63..47afd61d5 100644 --- a/src/translations/cs.po +++ b/src/translations/cs.po @@ -743,6 +743,9 @@ msgstr "Přemístit přetažením" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1034,6 +1037,12 @@ msgid "" msgstr "" "Obrázky (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Zahrnout do upozornění i obal alba" @@ -1370,6 +1379,9 @@ msgstr "Žádný" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Nepřipojeno" @@ -2120,6 +2132,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/cy.po b/src/translations/cy.po index d52402ed6..cf6c3352a 100644 --- a/src/translations/cy.po +++ b/src/translations/cy.po @@ -742,6 +742,9 @@ msgstr "" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1030,6 +1033,12 @@ msgid "" "Images (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" msgstr "" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1366,6 +1375,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2116,6 +2128,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/da.po b/src/translations/da.po index 35a0ac707..9a3af126f 100644 --- a/src/translations/da.po +++ b/src/translations/da.po @@ -743,6 +743,9 @@ msgstr "Træk for at skifte position" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1035,6 +1038,12 @@ msgstr "" "Billeder (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Inkludér albumkunst i bekendtgørelsen" @@ -1371,6 +1380,9 @@ msgstr "Ingen" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2123,6 +2135,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/de.po b/src/translations/de.po index cf8f761b4..50ba4c19d 100644 --- a/src/translations/de.po +++ b/src/translations/de.po @@ -761,6 +761,9 @@ msgstr "Klicken und ziehen um die Position zu ändern" msgid "Drive letter" msgstr "Laufwerksbuchstabe" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1058,6 +1061,12 @@ msgid "" msgstr "" "Bilder (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Cover in der Benachrichtigung anzeigen" @@ -1398,6 +1407,9 @@ msgstr "Nichts" msgid "None of the selected songs were suitable for copying to a device" msgstr "Keins der gewählten Stücke war zum Kopieren auf ein Gerät geeignet." +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Nicht verbunden" @@ -2163,6 +2175,9 @@ msgstr "Benutze Replay Gain Metadaten wenn verfügbar" msgid "Use Wii Remote" msgstr "Wii-Fernbedienung benutzen" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" "Benachrichtigungen zum Anzeigen des Status der Wii-Fernbedienung benutzen" diff --git a/src/translations/el.po b/src/translations/el.po index 5372ee983..d64ad47c1 100644 --- a/src/translations/el.po +++ b/src/translations/el.po @@ -771,6 +771,9 @@ msgstr "Σύρετε για μετακίνηση" msgid "Drive letter" msgstr "Γράμμα δίσκου" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1069,6 +1072,12 @@ msgid "" msgstr "" "Εικόνες (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Εμφάνιση του άλμπουμ (εικόνα) στην ειδοποίηση" @@ -1409,6 +1418,9 @@ msgstr "" "Κανένα από τα επιλεγμένα τραγούδια δεν ήταν κατάλληλο για αντιγραφή σε μία " "συσκευή" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Αποσυνδεμένο" @@ -2176,6 +2188,9 @@ msgstr "Χρήση των μετα δεδομένων Replay Gain αν είνα msgid "Use Wii Remote" msgstr "Χρήση χειριστηρίου Wii" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" "Χρήση των ειδοποιήσεων για την αναφορά της κατάστασης του χειριστηρίου Wii" diff --git a/src/translations/en_CA.po b/src/translations/en_CA.po index 026b89fbd..d344a0922 100644 --- a/src/translations/en_CA.po +++ b/src/translations/en_CA.po @@ -744,6 +744,9 @@ msgstr "Drag to reposition" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1034,6 +1037,12 @@ msgid "" msgstr "" "Images (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Include album art in the notification" @@ -1371,6 +1380,9 @@ msgstr "None" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2121,6 +2133,9 @@ msgstr "Use Replay Gain metadata if it is available" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/en_GB.po b/src/translations/en_GB.po index c277f1c3d..be6cff96b 100644 --- a/src/translations/en_GB.po +++ b/src/translations/en_GB.po @@ -742,6 +742,9 @@ msgstr "Drag to reposition" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1032,6 +1035,12 @@ msgid "" msgstr "" "Images (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Include album art in the notification" @@ -1368,6 +1377,9 @@ msgstr "None" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2118,6 +2130,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/eo.po b/src/translations/eo.po index 6f1fb698a..f8412a53e 100644 --- a/src/translations/eo.po +++ b/src/translations/eo.po @@ -742,6 +742,9 @@ msgstr "" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1030,6 +1033,12 @@ msgid "" "Images (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" msgstr "" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1366,6 +1375,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2116,6 +2128,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/es.po b/src/translations/es.po index 4e09b5592..b335c8924 100644 --- a/src/translations/es.po +++ b/src/translations/es.po @@ -769,6 +769,9 @@ msgstr "Arrastrar para reposicionar" msgid "Drive letter" msgstr "Letra de unidad" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1067,6 +1070,12 @@ msgstr "" "Imágenes (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Incluir carátula en la notificación" @@ -1409,6 +1418,9 @@ msgstr "" "Ninguna de las canciones seleccionadas fueron aptas para ser copiadas a un " "dispositivo" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "No conectado" @@ -2171,6 +2183,9 @@ msgstr "Usar metadatos de ganancia de repetición si están disponibles" msgid "Use Wii Remote" msgstr "Usar Wiimote" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Usar notificaciones para informar del estado del Wiimote" diff --git a/src/translations/et.po b/src/translations/et.po index f7d69f5f3..f8a471831 100644 --- a/src/translations/et.po +++ b/src/translations/et.po @@ -742,6 +742,9 @@ msgstr "Lohista asukoha muutmiseks" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1032,6 +1035,12 @@ msgid "" msgstr "" "Pildid (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1368,6 +1377,9 @@ msgstr "Puudub" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Pole ühendatud" @@ -2118,6 +2130,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/fi.po b/src/translations/fi.po index 3eca6d93a..a4a13782b 100644 --- a/src/translations/fi.po +++ b/src/translations/fi.po @@ -742,6 +742,9 @@ msgstr "" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1031,6 +1034,12 @@ msgid "" msgstr "" "Kuvat (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1368,6 +1377,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2118,6 +2130,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/fr.po b/src/translations/fr.po index 62806f6e9..e9629ccc5 100644 --- a/src/translations/fr.po +++ b/src/translations/fr.po @@ -764,6 +764,9 @@ msgstr "Déplacer pour repositionner" msgid "Drive letter" msgstr "Lettre du lecteur" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1064,6 +1067,12 @@ msgid "" msgstr "" "Images (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Inclure la jaquette de l'abum dans la fenêtre de notification" @@ -1408,6 +1417,9 @@ msgstr "" "Aucune des chansons sélectionnées n'était valide pour la copie vers un " "périphérique" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Déconnecté" @@ -2176,6 +2188,9 @@ msgstr "Utiliser la métadonnée Replay Gain si disponible" msgid "Use Wii Remote" msgstr "Utiliser Wii Remote" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Utiliser des notifications pour signaler l'état de la Wiimote" diff --git a/src/translations/gl.po b/src/translations/gl.po index c0a340ce0..4f2bbd63c 100644 --- a/src/translations/gl.po +++ b/src/translations/gl.po @@ -746,6 +746,9 @@ msgstr "Arraste para posicionar" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1035,6 +1038,12 @@ msgid "" msgstr "" "Imaxes (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1372,6 +1381,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2122,6 +2134,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/hu.po b/src/translations/hu.po index 694d715ad..812d0569e 100644 --- a/src/translations/hu.po +++ b/src/translations/hu.po @@ -764,6 +764,9 @@ msgstr "Fogja meg az áthelyezéshez" msgid "Drive letter" msgstr "Meghajtó azonosító" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1061,6 +1064,12 @@ msgid "" msgstr "" "Képek (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Albumborító megjelenítése az értesítésben" @@ -1400,6 +1409,9 @@ msgstr "Egyik sem" msgid "None of the selected songs were suitable for copying to a device" msgstr "Egy kiválasztott szám sem alkalmas az eszközre való másoláshoz" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Nincs kapcsolat" @@ -2164,6 +2176,9 @@ msgstr "Replay Gain adatok használata, ha elérhetőek" msgid "Use Wii Remote" msgstr "Wii távvezérlő használata" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Értesítések használata a Wii távvezérlő állapotváltozásaihoz" diff --git a/src/translations/it.po b/src/translations/it.po index a3ddc896b..73380b0ac 100644 --- a/src/translations/it.po +++ b/src/translations/it.po @@ -768,6 +768,9 @@ msgstr "Trascina per riposizionare" msgid "Drive letter" msgstr "Lettera del dispositivo" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1068,6 +1071,12 @@ msgstr "" "Immagini (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Includi copertina nella notifica" @@ -1409,6 +1418,9 @@ msgid "None of the selected songs were suitable for copying to a device" msgstr "" "Nessuna delle canzoni selezionate era adatta alla copia su un dispositivo" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Non connesso" @@ -2178,6 +2190,9 @@ msgstr "Utilizza i metadati del guadagno di riproduzione se disponibili" msgid "Use Wii Remote" msgstr "Utilizza Wii Remote" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Utilizza le notifiche per segnalare lo stato del Wii Remote" diff --git a/src/translations/ja.po b/src/translations/ja.po index 6720aee67..7633ce3fb 100644 --- a/src/translations/ja.po +++ b/src/translations/ja.po @@ -759,6 +759,9 @@ msgstr "位置を変更するにはドラッグします" msgid "Drive letter" msgstr "ドライブ文字" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1055,6 +1058,12 @@ msgstr "" "イメージ (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "通知にアルバム アートを含める" @@ -1394,6 +1403,9 @@ msgstr "なし" msgid "None of the selected songs were suitable for copying to a device" msgstr "デバイスへのコピーに適切な曲が選択されていません" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "接続されていません" @@ -2152,6 +2164,9 @@ msgstr "利用可能なら Replay Gain のメタデータを使用する" msgid "Use Wii Remote" msgstr "Wii Remote の使用" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Wii Remote の状態の報告に通知を使用する" diff --git a/src/translations/kk.po b/src/translations/kk.po index 324e46284..4ef2eb390 100644 --- a/src/translations/kk.po +++ b/src/translations/kk.po @@ -742,6 +742,9 @@ msgstr "" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1032,6 +1035,12 @@ msgstr "" "Суреттер (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1368,6 +1377,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2118,6 +2130,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/lt.po b/src/translations/lt.po index 9c1a886b9..ec76ab2eb 100644 --- a/src/translations/lt.po +++ b/src/translations/lt.po @@ -742,6 +742,9 @@ msgstr "" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1030,6 +1033,12 @@ msgid "" "Images (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" msgstr "" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1366,6 +1375,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2116,6 +2128,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/nb.po b/src/translations/nb.po index 0483eebcb..31279024b 100644 --- a/src/translations/nb.po +++ b/src/translations/nb.po @@ -753,6 +753,9 @@ msgstr "Dra for å endre posisjon" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1044,6 +1047,12 @@ msgstr "" "Bildefiler (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Inkludér cover i meldingen" @@ -1380,6 +1389,9 @@ msgstr "Ingen" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2131,6 +2143,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/nl.po b/src/translations/nl.po index ea526cb8e..f177bdb02 100644 --- a/src/translations/nl.po +++ b/src/translations/nl.po @@ -760,6 +760,9 @@ msgstr "Sleep om te verplaatsen" msgid "Drive letter" msgstr "Stationsletter" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1058,6 +1061,12 @@ msgstr "" "Afbeeldingen (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Albumhoes in de notificatie weergeven" @@ -1399,6 +1408,9 @@ msgstr "" "Geen van de geselecteerde nummers waren geschikt voor het kopiëren naar een " "apparaat" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Niet verbonden" @@ -2167,6 +2179,9 @@ msgstr "Gebruik Replay Gain metadata indien beschikbaar" msgid "Use Wii Remote" msgstr "Gebruik Wii Remote" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Gebruik notificaties om Wii Remote status weer te geven" diff --git a/src/translations/oc.po b/src/translations/oc.po index 468adca6f..6a8f96b90 100644 --- a/src/translations/oc.po +++ b/src/translations/oc.po @@ -742,6 +742,9 @@ msgstr "" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1030,6 +1033,12 @@ msgid "" "Images (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" msgstr "" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1366,6 +1375,9 @@ msgstr "Pas cap" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2116,6 +2128,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/pl.po b/src/translations/pl.po index 79aa3c5e4..8cc59acb9 100644 --- a/src/translations/pl.po +++ b/src/translations/pl.po @@ -761,6 +761,9 @@ msgstr "Przeciągnij aby zmienić pozycję" msgid "Drive letter" msgstr "Litera dysku" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1055,6 +1058,12 @@ msgid "" msgstr "" "Obrazy (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Dołącz okładkę albumu" @@ -1396,6 +1405,9 @@ msgid "None of the selected songs were suitable for copying to a device" msgstr "" "Żadna z zaznaczonych piosenek nie nadaje się do skopiowania na urządzenie" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Nie podłączono" @@ -2158,6 +2170,9 @@ msgstr "Używaj metadanych Replay Gain, jeśli są dostępne" msgid "Use Wii Remote" msgstr "Używaj Wii Remote" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Używaj powiadomień do raportowania statusów urządzenia Wii Remote" diff --git a/src/translations/pt.po b/src/translations/pt.po index 47f922dca..7bd0523d1 100644 --- a/src/translations/pt.po +++ b/src/translations/pt.po @@ -767,6 +767,9 @@ msgstr "Arraste para posicionar" msgid "Drive letter" msgstr "Letra da unidade" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1064,6 +1067,12 @@ msgid "" msgstr "" "Imagens (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Incluir a capa do álbum na notificação" @@ -1405,6 +1414,9 @@ msgid "None of the selected songs were suitable for copying to a device" msgstr "" "Nenhuma das músicas selecionadas eram adequadas à cópia para o dispositivo" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Não ligado" @@ -2170,6 +2182,9 @@ msgstr "Se disponível, utilizar a consistência de meta-dados" msgid "Use Wii Remote" msgstr "Utilizar \"Wii Remote\"" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Utilizar notificações para reportar o estado do \"Wii Remote\"" diff --git a/src/translations/pt_BR.po b/src/translations/pt_BR.po index 5af06946d..a429669ff 100644 --- a/src/translations/pt_BR.po +++ b/src/translations/pt_BR.po @@ -753,6 +753,9 @@ msgstr "Arraste para reposicionar" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1044,6 +1047,12 @@ msgid "" msgstr "" "Imagens (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Incluir capa do álbum na notificação" @@ -1384,6 +1393,9 @@ msgstr "Nenhum" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2135,6 +2147,9 @@ msgstr "Usar metadados do fator de ganho se ele estiver disponível" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/ro.po b/src/translations/ro.po index 2e05dca18..dd046343f 100644 --- a/src/translations/ro.po +++ b/src/translations/ro.po @@ -742,6 +742,9 @@ msgstr "Trage pentru a repoziționa" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1031,6 +1034,12 @@ msgid "" msgstr "" "Imagini (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1367,6 +1376,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2117,6 +2129,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/ru.po b/src/translations/ru.po index f754c7168..a3fd342e6 100644 --- a/src/translations/ru.po +++ b/src/translations/ru.po @@ -757,6 +757,9 @@ msgstr "Тащите для перемещения" msgid "Drive letter" msgstr "Буква диска" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1051,6 +1054,12 @@ msgstr "" "Изображения (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Показывать обложку альбома в уведомлении" @@ -1390,6 +1399,9 @@ msgstr "Ничего" msgid "None of the selected songs were suitable for copying to a device" msgstr "Ни одна из выбранных песен не будет скопирована на устройство" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Не подключено" @@ -2153,6 +2165,9 @@ msgstr "Использовать метаданные Replay Gain, если эт msgid "Use Wii Remote" msgstr "Использовать пульт Wii" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Показывать уведомления о статусе пульта Wii" diff --git a/src/translations/sk.po b/src/translations/sk.po index fe81a3f09..04ce6b990 100644 --- a/src/translations/sk.po +++ b/src/translations/sk.po @@ -760,6 +760,9 @@ msgstr "Pretiahnite na iné miesto" msgid "Drive letter" msgstr "Písmeno jednotky" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1055,6 +1058,12 @@ msgid "" msgstr "" "Obrázky (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Zahrnúť obal do upozornenia" @@ -1392,6 +1401,9 @@ msgstr "Nijako" msgid "None of the selected songs were suitable for copying to a device" msgstr "Žiadna z vybratých piesní nieje vhodná na kopírovanie do zariadenia" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Nepripojené" @@ -2156,6 +2168,9 @@ msgstr "Použiť metadáta na vyrovnanie hlasitosti ak sú dostupné" msgid "Use Wii Remote" msgstr "Použiť Wii diaľkové" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Použiť upozornenia na oznamovanie stavu Wii diaľkového" diff --git a/src/translations/sl.po b/src/translations/sl.po index c924f5012..6523a7e67 100644 --- a/src/translations/sl.po +++ b/src/translations/sl.po @@ -762,6 +762,9 @@ msgstr "Povlecite za spremembo položaja" msgid "Drive letter" msgstr "Črka pogona" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1057,6 +1060,12 @@ msgid "" msgstr "" "Slike (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Vključi ovitek albuma v obvestilo" @@ -1395,6 +1404,9 @@ msgstr "Brez" msgid "None of the selected songs were suitable for copying to a device" msgstr "Npbena izmed izbranih skladb ni bila primerna za kopiranje na napravo" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Ni priključeno" @@ -2157,6 +2169,9 @@ msgstr "Uporabi metapodatke Replay Gain, če je mogoče" msgid "Use Wii Remote" msgstr "Uporabi Wii Remote" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Uporabi obvestila za poročanje o stanju Wii Remote" diff --git a/src/translations/sr.po b/src/translations/sr.po index 8ef263165..3956bd7d0 100644 --- a/src/translations/sr.po +++ b/src/translations/sr.po @@ -744,6 +744,9 @@ msgstr "Одвуците га где желите" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1034,6 +1037,12 @@ msgid "" msgstr "" "IСлике (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Укључи омоте албума у обавештења" @@ -1371,6 +1380,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Неповезан" @@ -2121,6 +2133,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/sv.po b/src/translations/sv.po index c0a42a549..a4804fbb9 100644 --- a/src/translations/sv.po +++ b/src/translations/sv.po @@ -761,6 +761,9 @@ msgstr "Dra för att ändra position" msgid "Drive letter" msgstr "Enhetsbeteckning" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1056,6 +1059,12 @@ msgid "" msgstr "" "Bilder (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Inkludera albumomslag i notifieringen" @@ -1392,6 +1401,9 @@ msgstr "Inga" msgid "None of the selected songs were suitable for copying to a device" msgstr "Ingen av de valda låtarna lämpar sig för kopiering till en enhet" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Inte ansluten" @@ -2155,6 +2167,9 @@ msgstr "Använd Replay Gain-metadata om det finns tillgängligt" msgid "Use Wii Remote" msgstr "Använd Wii-kontroll" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Använd notifieringar för rapportering av Wii-kontrollstatus" diff --git a/src/translations/tr.po b/src/translations/tr.po index 0cc8d2aa9..1dbded817 100644 --- a/src/translations/tr.po +++ b/src/translations/tr.po @@ -756,6 +756,9 @@ msgstr "Yeniden konumlandırmak için sürükleyin" msgid "Drive letter" msgstr "Sürücü harfi" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1052,6 +1055,12 @@ msgstr "" "Görüntüler (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Bildirimde albüm resimlendirmesini göster" @@ -1392,6 +1401,9 @@ msgstr "Hiçbiri" msgid "None of the selected songs were suitable for copying to a device" msgstr "Seçili şarkıların hiçbiri aygıta yüklemeye uygun değil" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Bağlı Değil" @@ -2146,6 +2158,9 @@ msgstr "Varsa Replay Gain verisini kullan" msgid "Use Wii Remote" msgstr "Wii kumandasını kullan" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Wii kumanda durumunu raporlamak için bildirimleri kullan" diff --git a/src/translations/translations.pot b/src/translations/translations.pot index f3b9db2a7..f70bc846d 100644 --- a/src/translations/translations.pot +++ b/src/translations/translations.pot @@ -732,6 +732,9 @@ msgstr "" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1020,6 +1023,12 @@ msgid "" "Images (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" msgstr "" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1356,6 +1365,9 @@ msgstr "" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2106,6 +2118,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/uk.po b/src/translations/uk.po index c39eaf6f7..344fb34de 100644 --- a/src/translations/uk.po +++ b/src/translations/uk.po @@ -761,6 +761,9 @@ msgstr "Перетягніть, щоб змінити розташування" msgid "Drive letter" msgstr "Літера диска" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1056,6 +1059,12 @@ msgstr "" "Зображення (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "Показувати обкладинку в повідомлені" @@ -1394,6 +1403,9 @@ msgstr "Немає" msgid "None of the selected songs were suitable for copying to a device" msgstr "Жодна з вибраних композицій не придатна для копіювання на пристрій" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "Не з’єднано" @@ -2151,6 +2163,9 @@ msgstr "Використовувати метадані Replay Gain, якщо н msgid "Use Wii Remote" msgstr "Використовувати Wii Remote" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "Використовувати повідомлення для звітів про стан Wii Remote" diff --git a/src/translations/zh_CN.po b/src/translations/zh_CN.po index d3eb54dd9..ade74df49 100644 --- a/src/translations/zh_CN.po +++ b/src/translations/zh_CN.po @@ -742,6 +742,9 @@ msgstr "拖拽以重新定位" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1032,6 +1035,12 @@ msgstr "" "图片格式 (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *." "tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "" @@ -1368,6 +1377,9 @@ msgstr "无" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2118,6 +2130,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr "" diff --git a/src/translations/zh_TW.po b/src/translations/zh_TW.po index f3d1d45c7..d3cf9c2b5 100644 --- a/src/translations/zh_TW.po +++ b/src/translations/zh_TW.po @@ -746,6 +746,9 @@ msgstr "拖曳以重新定位" msgid "Drive letter" msgstr "" +msgid "Dynamic random mix" +msgstr "" + msgid "Edit smart playlist..." msgstr "" @@ -1035,6 +1038,12 @@ msgid "" msgstr "" "圖片 (*.png *.jpg *.jpeg *.bmp *.gif *.xpm *.pbm *.pgm *.ppm *.xbm *.tiff)" +msgid "" +"In dynamic mode new tracks will be chosen and added to the playlist every " +"time a song finishes. Enabling dynamic mode will ignore any size limit you " +"set on the playlist." +msgstr "" + msgid "Include album art in the notification" msgstr "包括專輯封面的通知" @@ -1371,6 +1380,9 @@ msgstr "沒有" msgid "None of the selected songs were suitable for copying to a device" msgstr "" +msgid "Not available while using a dynamic playlist" +msgstr "" + msgid "Not connected" msgstr "" @@ -2121,6 +2133,9 @@ msgstr "" msgid "Use Wii Remote" msgstr "" +msgid "Use dynamic mode" +msgstr "" + msgid "Use notifications to report Wii Remote status" msgstr ""