[UI] Made loop/shuffle aligned
This commit is contained in:
@@ -318,6 +318,13 @@
|
|||||||
</div>
|
</div>
|
||||||
</message>
|
</message>
|
||||||
|
|
||||||
|
<message id="mediaplayer-loopshuffle">
|
||||||
|
<div class="btn-group" role="group" aria-label="...">
|
||||||
|
${loop}
|
||||||
|
${shuffle}
|
||||||
|
</div>
|
||||||
|
</message>
|
||||||
|
|
||||||
</messages>
|
</messages>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -56,17 +56,21 @@ AudioMediaPlayer::AudioMediaPlayer( Wt::WContainerWidget *parent)
|
|||||||
|
|
||||||
Wt::WPushButton *prevBtn = new Wt::WPushButton("<<");
|
Wt::WPushButton *prevBtn = new Wt::WPushButton("<<");
|
||||||
t->bindWidget("prev", prevBtn);
|
t->bindWidget("prev", prevBtn);
|
||||||
|
prevBtn->setStyleClass("mediaplayer-controls");
|
||||||
|
|
||||||
_playBtn = new Wt::WPushButton("Play");
|
_playBtn = new Wt::WPushButton("Play");
|
||||||
t->bindWidget("play", _playBtn);
|
t->bindWidget("play", _playBtn);
|
||||||
_playBtn->setWidth(70);
|
_playBtn->setWidth(70);
|
||||||
|
_playBtn->setStyleClass("mediaplayer-controls");
|
||||||
|
|
||||||
_pauseBtn = new Wt::WPushButton("Pause");
|
_pauseBtn = new Wt::WPushButton("Pause");
|
||||||
t->bindWidget("pause", _pauseBtn);
|
t->bindWidget("pause", _pauseBtn);
|
||||||
_pauseBtn->setWidth(70);
|
_pauseBtn->setWidth(70);
|
||||||
|
_pauseBtn->setStyleClass("mediaplayer-controls");
|
||||||
|
|
||||||
Wt::WPushButton *nextBtn = new Wt::WPushButton(">>");
|
Wt::WPushButton *nextBtn = new Wt::WPushButton(">>");
|
||||||
t->bindWidget("next", nextBtn);
|
t->bindWidget("next", nextBtn);
|
||||||
|
nextBtn->setStyleClass("mediaplayer-controls");
|
||||||
|
|
||||||
controlsLayout->addWidget(btnContainer);
|
controlsLayout->addWidget(btnContainer);
|
||||||
|
|
||||||
@@ -75,25 +79,42 @@ AudioMediaPlayer::AudioMediaPlayer( Wt::WContainerWidget *parent)
|
|||||||
_volumeSlider->setWidth(60);
|
_volumeSlider->setWidth(60);
|
||||||
_volumeSlider->setMinimumSize(60, Wt::WLength::Auto);
|
_volumeSlider->setMinimumSize(60, Wt::WLength::Auto);
|
||||||
_volumeSlider->setHeight(30);
|
_volumeSlider->setHeight(30);
|
||||||
controlsLayout->addWidget(_volumeSlider);
|
controlsLayout->addWidget(_volumeSlider, 1);
|
||||||
|
|
||||||
/* Wt::WText* name = new Wt::WText("My track name");
|
{
|
||||||
controlsLayout->addWidget(name, 1);*/
|
Wt::WContainerWidget *loopShuffleContainer = new Wt::WContainerWidget();
|
||||||
|
|
||||||
Wt::WCheckBox *loop = new Wt::WCheckBox("Loop", controlsContainer);
|
Wt::WTemplate *tLoopShuffle = new Wt::WTemplate(Wt::WString::tr("mediaplayer-loopshuffle"), loopShuffleContainer);
|
||||||
loop->changed().connect(std::bind([=] ()
|
|
||||||
|
|
||||||
|
Wt::WPushButton *loop = new Wt::WPushButton("Loop");
|
||||||
|
tLoopShuffle->bindWidget("loop", loop);
|
||||||
|
loop->setCheckable(true);
|
||||||
|
loop->setStyleClass("btn-sm");
|
||||||
|
loop->checked().connect(std::bind([=] ()
|
||||||
{
|
{
|
||||||
_loop.emit( loop->checkState() == Wt::Checked);
|
_loop.emit( true );
|
||||||
|
}));
|
||||||
|
loop->unChecked().connect(std::bind([=] ()
|
||||||
|
{
|
||||||
|
_loop.emit( false );
|
||||||
}));
|
}));
|
||||||
|
|
||||||
Wt::WCheckBox *shuffle = new Wt::WCheckBox("Shuffle", controlsContainer);
|
Wt::WPushButton *shuffle = new Wt::WPushButton("Shuffle");
|
||||||
shuffle->changed().connect(std::bind([=] ()
|
tLoopShuffle->bindWidget("shuffle", shuffle);
|
||||||
|
shuffle->setCheckable(true);
|
||||||
|
shuffle->setStyleClass("btn-sm");
|
||||||
|
shuffle->checked().connect(std::bind([=] ()
|
||||||
{
|
{
|
||||||
_shuffle.emit( shuffle->checkState() == Wt::Checked);
|
_shuffle.emit( true );
|
||||||
|
}));
|
||||||
|
shuffle->unChecked().connect(std::bind([=] ()
|
||||||
|
{
|
||||||
|
_shuffle.emit( false );
|
||||||
}));
|
}));
|
||||||
|
|
||||||
controlsLayout->addWidget(loop);
|
controlsLayout->addWidget(loopShuffleContainer);
|
||||||
controlsLayout->addWidget(shuffle);
|
}
|
||||||
|
|
||||||
_mediaPlayer = new Wt::WMediaPlayer( Wt::WMediaPlayer::Audio, this );
|
_mediaPlayer = new Wt::WMediaPlayer( Wt::WMediaPlayer::Audio, this );
|
||||||
_mediaPlayer->addSource( Wt::WMediaPlayer::OGA, "" );
|
_mediaPlayer->addSource( Wt::WMediaPlayer::OGA, "" );
|
||||||
@@ -119,7 +140,6 @@ AudioMediaPlayer::AudioMediaPlayer( Wt::WContainerWidget *parent)
|
|||||||
_playPrevious.emit();
|
_playPrevious.emit();
|
||||||
}));
|
}));
|
||||||
_timeSlider->valueChanged().connect(this, &AudioMediaPlayer::handlePlayOffset);
|
_timeSlider->valueChanged().connect(this, &AudioMediaPlayer::handlePlayOffset);
|
||||||
// _timeSlider->sliderMoved().connect(this, &AudioMediaPlayer::handleSliderMoved);
|
|
||||||
_timeSlider->setDisabled(true);
|
_timeSlider->setDisabled(true);
|
||||||
|
|
||||||
_volumeSlider->sliderMoved().connect(this, &AudioMediaPlayer::handleVolumeSliderMoved);
|
_volumeSlider->sliderMoved().connect(this, &AudioMediaPlayer::handleVolumeSliderMoved);
|
||||||
|
|||||||
@@ -47,3 +47,7 @@ div.contents {
|
|||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.mediaplayer-controls {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user