Renamed playlist to playqueue
This commit is contained in:
+10
-10
@@ -33,7 +33,7 @@
|
||||
#include "Explore.hpp"
|
||||
#include "HomeView.hpp"
|
||||
#include "MediaPlayer.hpp"
|
||||
#include "PlaylistView.hpp"
|
||||
#include "PlayQueueView.hpp"
|
||||
|
||||
#include "settings/DatabaseView.hpp"
|
||||
|
||||
@@ -87,7 +87,7 @@ LmsApplication::LmsApplication(const Wt::WEnvironment& env, Wt::Dbo::SqlConnecti
|
||||
messageResourceBundle().use(appRoot() + "artists");
|
||||
messageResourceBundle().use(appRoot() + "mediaplayer");
|
||||
messageResourceBundle().use(appRoot() + "messages");
|
||||
messageResourceBundle().use(appRoot() + "playlist");
|
||||
messageResourceBundle().use(appRoot() + "playqueue");
|
||||
messageResourceBundle().use(appRoot() + "release");
|
||||
messageResourceBundle().use(appRoot() + "releases");
|
||||
messageResourceBundle().use(appRoot() + "settings");
|
||||
@@ -192,7 +192,7 @@ enum IdxRoot
|
||||
{
|
||||
IdxHome = 0,
|
||||
IdxExplore,
|
||||
IdxPlaylist,
|
||||
IdxPlayQueue,
|
||||
IdxSettingsDatabase,
|
||||
};
|
||||
|
||||
@@ -209,7 +209,7 @@ handlePathChange(Wt::WStackedWidget* stack)
|
||||
{ "/releases", IdxExplore },
|
||||
{ "/release", IdxExplore },
|
||||
{ "/tracks", IdxExplore },
|
||||
{ "/playlist", IdxPlaylist },
|
||||
{ "/playqueue", IdxPlayQueue },
|
||||
{ "/settings/database", IdxSettingsDatabase },
|
||||
};
|
||||
|
||||
@@ -271,8 +271,8 @@ LmsApplication::handleAuthEvent(void)
|
||||
menuItem->setSelectable(false);
|
||||
}
|
||||
{
|
||||
auto menuItem = menu->insertItem(3, Wt::WString::tr("msg-playlist"));
|
||||
menuItem->setLink(Wt::WLink(Wt::WLink::InternalPath, "/playlist"));
|
||||
auto menuItem = menu->insertItem(3, Wt::WString::tr("msg-playqueue"));
|
||||
menuItem->setLink(Wt::WLink(Wt::WLink::InternalPath, "/playqueue"));
|
||||
menuItem->setSelectable(false);
|
||||
}
|
||||
{
|
||||
@@ -298,20 +298,20 @@ LmsApplication::handleAuthEvent(void)
|
||||
auto explore = new Explore();
|
||||
mainStack->addWidget(explore);
|
||||
|
||||
auto playlist = new Playlist();
|
||||
mainStack->addWidget(playlist);
|
||||
auto playqueue = new PlayQueue();
|
||||
mainStack->addWidget(playqueue);
|
||||
|
||||
auto databaseSettings = new Settings::DatabaseView();
|
||||
mainStack->addWidget(databaseSettings);
|
||||
|
||||
explore->tracksAdd.connect(std::bind([=] (std::vector<Database::Track::pointer> tracks)
|
||||
{
|
||||
playlist->addTracks(tracks);
|
||||
playqueue->addTracks(tracks);
|
||||
}, std::placeholders::_1));
|
||||
|
||||
explore->tracksPlay.connect(std::bind([=] (std::vector<Database::Track::pointer> tracks)
|
||||
{
|
||||
playlist->playTracks(tracks);
|
||||
playqueue->playTracks(tracks);
|
||||
}, std::placeholders::_1));
|
||||
|
||||
// MediaPlayer
|
||||
|
||||
@@ -24,25 +24,25 @@
|
||||
#include "utils/Logger.hpp"
|
||||
|
||||
#include "LmsApplication.hpp"
|
||||
#include "PlaylistView.hpp"
|
||||
#include "PlayQueueView.hpp"
|
||||
|
||||
namespace UserInterface {
|
||||
|
||||
static const std::string currentPlaylistName = "__current__playlist__";
|
||||
static const std::string currentPlayQueueName = "__current__playqueue__";
|
||||
|
||||
Playlist::Playlist(Wt::WContainerWidget* parent)
|
||||
PlayQueue::PlayQueue(Wt::WContainerWidget* parent)
|
||||
: Wt::WContainerWidget(parent)
|
||||
{
|
||||
auto container = new Wt::WTemplate(Wt::WString::tr("template-playlist"), this);
|
||||
auto container = new Wt::WTemplate(Wt::WString::tr("template-playqueue"), this);
|
||||
container->addFunction("tr", &Wt::WTemplate::Functions::tr);
|
||||
|
||||
auto saveBtn = new Wt::WText(Wt::WString::tr("btn-playlist-save-btn"), Wt::XHTMLText);
|
||||
auto saveBtn = new Wt::WText(Wt::WString::tr("btn-playqueue-save-btn"), Wt::XHTMLText);
|
||||
container->bindWidget("save-btn", saveBtn);
|
||||
|
||||
auto loadBtn = new Wt::WText(Wt::WString::tr("btn-playlist-load-btn"), Wt::XHTMLText);
|
||||
auto loadBtn = new Wt::WText(Wt::WString::tr("btn-playqueue-load-btn"), Wt::XHTMLText);
|
||||
container->bindWidget("load-btn", loadBtn);
|
||||
|
||||
auto clearBtn = new Wt::WText(Wt::WString::tr("btn-playlist-clear-btn"), Wt::XHTMLText);
|
||||
auto clearBtn = new Wt::WText(Wt::WString::tr("btn-playqueue-clear-btn"), Wt::XHTMLText);
|
||||
container->bindWidget("clear-btn", clearBtn);
|
||||
|
||||
_entriesContainer = new Wt::WContainerWidget();
|
||||
@@ -62,17 +62,17 @@ Playlist::Playlist(Wt::WContainerWidget* parent)
|
||||
}
|
||||
|
||||
void
|
||||
Playlist::addTracks(const std::vector<Database::Track::pointer>& tracks)
|
||||
PlayQueue::addTracks(const std::vector<Database::Track::pointer>& tracks)
|
||||
{
|
||||
// Use a "session" playlist in order to store the current playlist
|
||||
// so that the user can disconnect and get its playlist back
|
||||
// Use a "session" playqueue in order to store the current playqueue
|
||||
// so that the user can disconnect and get its playqueue back
|
||||
|
||||
LMS_LOG(UI, DEBUG) << "Adding tracks to the current queue";
|
||||
|
||||
auto playlist = Database::Playlist::get(DboSession(), currentPlaylistName, CurrentUser());
|
||||
auto playlist = Database::Playlist::get(DboSession(), currentPlayQueueName, CurrentUser());
|
||||
if (!playlist)
|
||||
{
|
||||
playlist = Database::Playlist::create(DboSession(), currentPlaylistName, false, CurrentUser());
|
||||
playlist = Database::Playlist::create(DboSession(), currentPlayQueueName, false, CurrentUser());
|
||||
}
|
||||
|
||||
std::size_t pos = playlist->getCount();
|
||||
@@ -85,15 +85,15 @@ Playlist::addTracks(const std::vector<Database::Track::pointer>& tracks)
|
||||
}
|
||||
|
||||
void
|
||||
Playlist::playTracks(const std::vector<Database::Track::pointer>& tracks)
|
||||
PlayQueue::playTracks(const std::vector<Database::Track::pointer>& tracks)
|
||||
{
|
||||
LMS_LOG(UI, DEBUG) << "Emptying current queue to play new tracks";
|
||||
|
||||
Wt::Dbo::Transaction transaction(DboSession());
|
||||
|
||||
auto playlist = Database::Playlist::get(DboSession(), currentPlaylistName, CurrentUser());
|
||||
if (playlist)
|
||||
playlist.modify()->clear();
|
||||
auto playqueue = Database::Playlist::get(DboSession(), currentPlayQueueName, CurrentUser());
|
||||
if (playqueue)
|
||||
playqueue.modify()->clear();
|
||||
|
||||
_entriesContainer->clear();
|
||||
|
||||
@@ -104,18 +104,18 @@ Playlist::playTracks(const std::vector<Database::Track::pointer>& tracks)
|
||||
|
||||
|
||||
void
|
||||
Playlist::refresh()
|
||||
PlayQueue::refresh()
|
||||
{
|
||||
_entriesContainer->clear();
|
||||
addSome();
|
||||
}
|
||||
|
||||
void
|
||||
Playlist::addSome()
|
||||
PlayQueue::addSome()
|
||||
{
|
||||
Wt::Dbo::Transaction transaction (DboSession());
|
||||
|
||||
auto playlist = Database::Playlist::get(DboSession(), currentPlaylistName, CurrentUser());
|
||||
auto playlist = Database::Playlist::get(DboSession(), currentPlayQueueName, CurrentUser());
|
||||
if (!playlist)
|
||||
return;
|
||||
|
||||
@@ -123,7 +123,7 @@ Playlist::addSome()
|
||||
auto tracks = playlist->getTracks(_entriesContainer->count(), 50, moreResults);
|
||||
for (auto track : tracks)
|
||||
{
|
||||
Wt::WTemplate* entry = new Wt::WTemplate(Wt::WString::tr("template-playlist-entry"), _entriesContainer);
|
||||
Wt::WTemplate* entry = new Wt::WTemplate(Wt::WString::tr("template-playqueue-entry"), _entriesContainer);
|
||||
|
||||
entry->bindString("pos", std::to_string(_entriesContainer->count()));
|
||||
entry->bindString("name", Wt::WString::fromUTF8(track->getName()), Wt::PlainText);
|
||||
@@ -147,11 +147,11 @@ Playlist::addSome()
|
||||
entry->bindWidget("release-name", releaseAnchor);
|
||||
}
|
||||
|
||||
auto playBtn = new Wt::WText(Wt::WString::tr("btn-playlist-entry-play-btn"), Wt::XHTMLText);
|
||||
auto playBtn = new Wt::WText(Wt::WString::tr("btn-playqueue-entry-play-btn"), Wt::XHTMLText);
|
||||
entry->bindWidget("play-btn", playBtn);
|
||||
// TODO
|
||||
|
||||
auto addBtn = new Wt::WText(Wt::WString::tr("btn-playlist-entry-del-btn"), Wt::XHTMLText);
|
||||
auto addBtn = new Wt::WText(Wt::WString::tr("btn-playqueue-entry-del-btn"), Wt::XHTMLText);
|
||||
entry->bindWidget("del-btn", addBtn);
|
||||
// TODO
|
||||
}
|
||||
@@ -26,10 +26,10 @@
|
||||
|
||||
namespace UserInterface {
|
||||
|
||||
class Playlist : public Wt::WContainerWidget
|
||||
class PlayQueue : public Wt::WContainerWidget
|
||||
{
|
||||
public:
|
||||
Playlist(Wt::WContainerWidget* parent = 0);
|
||||
PlayQueue(Wt::WContainerWidget* parent = 0);
|
||||
|
||||
void addTracks(const std::vector<Database::Track::pointer>& tracks);
|
||||
void playTracks(const std::vector<Database::Track::pointer>& tracks);
|
||||
Reference in New Issue
Block a user