mirror of
https://github.com/clementine-player/Clementine
synced 2025-02-06 22:24:04 +01:00
Add support for dynamic playlists. A dynamic playlist is just a smart playlist that chooses and adds a new track when you finish listening to a song.
This commit is contained in:
parent
759e97c275
commit
7d54549213
@ -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
|
||||
|
@ -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;
|
||||
|
@ -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<LibraryItem>(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<QueryGenerator> 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<Generator>(gen));
|
||||
}
|
||||
|
||||
|
@ -165,7 +165,8 @@ class LibraryModel : public SimpleTreeModel<LibraryItem> {
|
||||
// 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;
|
||||
|
||||
|
@ -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 <QtDebug>
|
||||
#include <QApplication>
|
||||
#include <QMimeData>
|
||||
#include <QBuffer>
|
||||
#include <QFileInfo>
|
||||
@ -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<int> &source_rows, int pos) {
|
||||
@ -623,6 +663,7 @@ void Playlist::MoveItemsWithoutUndo(const QList<int> &source_rows, int pos) {
|
||||
// Put the items back in
|
||||
const int start = pos == -1 ? items_.count() : pos;
|
||||
for (int i=start ; i<start+moved_items.count() ; ++i) {
|
||||
moved_items[i - start]->SetDynamicHistory(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<int>& rows) {
|
||||
foreach (int row, rows) {
|
||||
item_at(row)->Reload();
|
||||
|
@ -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*);
|
||||
|
@ -30,7 +30,7 @@ class SqlRow;
|
||||
|
||||
class PlaylistItem : public boost::enable_shared_from_this<PlaylistItem> {
|
||||
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<PlaylistItem> {
|
||||
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<PlaylistItem> {
|
||||
QString type_;
|
||||
|
||||
Song temp_metadata_;
|
||||
bool is_dynamic_history_;
|
||||
};
|
||||
typedef boost::shared_ptr<PlaylistItem> PlaylistItemPtr;
|
||||
typedef QList<PlaylistItemPtr> PlaylistItemList;
|
||||
|
@ -192,6 +192,8 @@ void PlaylistManager::SetActivePlaylist(int id) {
|
||||
|
||||
active_ = id;
|
||||
emit ActiveChanged(active());
|
||||
|
||||
sequence_->SetUsingDynamicPlaylist(active()->is_dynamic());
|
||||
}
|
||||
|
||||
void PlaylistManager::ClearCurrent() {
|
||||
|
@ -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_;
|
||||
}
|
||||
|
@ -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
|
||||
|
@ -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),
|
||||
|
@ -32,29 +32,44 @@ class Generator : public QObject, public boost::enable_shared_from_this<Generato
|
||||
|
||||
public:
|
||||
Generator();
|
||||
virtual ~Generator() {}
|
||||
|
||||
static const int kDefaultLimit;
|
||||
static const int kDynamicHistory;
|
||||
static const int kDynamicFuture;
|
||||
|
||||
// Creates a new Generator of the given type
|
||||
static boost::shared_ptr<Generator> 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_;
|
||||
};
|
||||
|
||||
|
@ -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_);
|
||||
|
||||
|
@ -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);
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -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<int> previous_ids_;
|
||||
};
|
||||
|
||||
} // namespace
|
||||
|
@ -14,6 +14,9 @@
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="groupBox_3">
|
||||
<property name="title">
|
||||
|
@ -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);
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
|
@ -56,6 +56,8 @@ public:
|
||||
SearchTerm::Field sort_field_;
|
||||
int limit_;
|
||||
|
||||
QList<int> id_not_in_;
|
||||
|
||||
void Reset();
|
||||
QString ToSql(const QString& songs_table) const;
|
||||
};
|
||||
|
@ -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
|
||||
|
@ -41,6 +41,9 @@ public:
|
||||
void SetGenerator(GeneratorPtr gen);
|
||||
GeneratorPtr CreateGenerator() const;
|
||||
|
||||
protected:
|
||||
void initializePage(int id);
|
||||
|
||||
private:
|
||||
class TypePage;
|
||||
class FinishPage;
|
||||
|
@ -24,6 +24,35 @@
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="name"/>
|
||||
</item>
|
||||
<item row="1" column="0" colspan="2">
|
||||
<widget class="QWidget" name="dynamic_container" native="true">
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="dynamic">
|
||||
<property name="text">
|
||||
<string>Use dynamic mode</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>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.</string>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="indent">
|
||||
<number>24</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
|
@ -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;
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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 の状態の報告に通知を使用する"
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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\""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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"
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
@ -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 ""
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user