working UI controls
This commit is contained in:
parent
88704cd726
commit
5a7a82736f
10 changed files with 58 additions and 54 deletions
|
@ -24,7 +24,6 @@ AudioLayerWidget::AudioLayerWidget(QWidget *parent, int layer):
|
|||
"color: white;"
|
||||
"background-color: black;"
|
||||
);
|
||||
|
||||
playback->addWidget(m_fileValue);
|
||||
playback->setSpacing(0);
|
||||
playback->setContentsMargins(0, 0, 0, 0);
|
||||
|
@ -33,7 +32,7 @@ AudioLayerWidget::AudioLayerWidget(QWidget *parent, int layer):
|
|||
m_suspendResumeButton = new QPushButton(this);
|
||||
m_suspendResumeButton->setText(StatusStr[Status::Iddle]);
|
||||
//m_suspendResumeButton->setMaximumWidth(180);
|
||||
//connect(m_suspendResumeButton, SIGNAL(clicked()), SLOT(toggleSuspendResume()));
|
||||
connect(m_suspendResumeButton, SIGNAL(clicked()), SLOT(toggleSuspendResume()));
|
||||
layout->addWidget(m_suspendResumeButton);
|
||||
|
||||
m_progress = new QProgressBar(this);
|
||||
|
@ -47,19 +46,21 @@ AudioLayerWidget::AudioLayerWidget(QWidget *parent, int layer):
|
|||
m_progressTime = new QTimeEdit;
|
||||
m_progressTime->setToolTip("Current Time");
|
||||
m_progressTime->setObjectName("Current Time");
|
||||
m_progressTime->setDisplayFormat("h:mm:ss:zzz");
|
||||
m_progressTime->setDisplayFormat("mm:ss:zz");
|
||||
m_progressTime->setReadOnly(true);
|
||||
m_progressTime->setButtonSymbols(QAbstractSpinBox::NoButtons);
|
||||
//m_progressTime->setMaximumWidth(80);
|
||||
m_progressTime->setMaximumWidth(75);
|
||||
m_progressTime->setFocusPolicy(Qt::NoFocus);
|
||||
m_progressTime->setAlignment(Qt::AlignHCenter);
|
||||
m_totalTimeValue = new QTimeEdit;
|
||||
m_totalTimeValue->setObjectName("Track Length");
|
||||
m_totalTimeValue->setToolTip("Track Length");
|
||||
m_totalTimeValue->setDisplayFormat("h:mm:ss:zzz");
|
||||
m_totalTimeValue->setDisplayFormat("mm:ss:zz");
|
||||
m_totalTimeValue->setReadOnly(true);
|
||||
m_totalTimeValue->setButtonSymbols(QAbstractSpinBox::NoButtons);
|
||||
//m_totalTimeValue->setMaximumWidth(80);
|
||||
m_totalTimeValue->setMaximumWidth(75);
|
||||
m_totalTimeValue->setFocusPolicy(Qt::NoFocus);
|
||||
m_totalTimeValue->setAlignment(Qt::AlignHCenter);
|
||||
QHBoxLayout *status = new QHBoxLayout;
|
||||
status->addWidget(m_progressTime);
|
||||
status->addWidget(m_totalTimeValue);
|
||||
|
@ -67,15 +68,15 @@ AudioLayerWidget::AudioLayerWidget(QWidget *parent, int layer):
|
|||
QHBoxLayout *volumeBox = new QHBoxLayout;
|
||||
m_volume = new SliderGroup("Vol", 0 , 100, 2, NULL);
|
||||
volumeBox->addWidget(m_volume);
|
||||
connect(m_volume, SIGNAL(valueChanged(float)), this, SLOT(volumeChanged(float)));
|
||||
connect(m_volume, SIGNAL(valueChanged(int)), this, SLOT(volumeChanged(int)));
|
||||
m_pan = new SliderGroup("Pan", 0 , 255, 0, NULL);
|
||||
volumeBox->addWidget(m_pan);
|
||||
connect(m_pan, SIGNAL(valueChanged(float)), this, SLOT(panChanged(float)));
|
||||
connect(m_pan, SIGNAL(valueChanged(int)), this, SLOT(panChanged(int)));
|
||||
m_pitch = new SliderGroup("Pitch", 0 , 255, 0, NULL);
|
||||
volumeBox->addWidget(m_pitch);
|
||||
volumeBox->setSpacing(0);
|
||||
volumeBox->setContentsMargins(0, 0, 0, 0);
|
||||
connect(m_pitch, SIGNAL(valueChanged(float)), this, SLOT(pitchChanged(float)));
|
||||
connect(m_pitch, SIGNAL(valueChanged(int)), this, SLOT(pitchChanged(int)));
|
||||
layout->addLayout(volumeBox);
|
||||
layout->setAlignment(Qt::AlignHCenter);
|
||||
layout->setSpacing(0);
|
||||
|
@ -89,17 +90,17 @@ AudioLayerWidget::~AudioLayerWidget()
|
|||
}
|
||||
|
||||
// From UI.
|
||||
void AudioLayerWidget::volumeChanged(float value)
|
||||
void AudioLayerWidget::volumeChanged(int value)
|
||||
{
|
||||
emit(uiSliderChanged(m_layer, Slider::Volume, value));
|
||||
}
|
||||
|
||||
void AudioLayerWidget::panChanged(float value)
|
||||
void AudioLayerWidget::panChanged(int value)
|
||||
{
|
||||
emit(uiSliderChanged(m_layer, Slider::Pan, value));
|
||||
}
|
||||
|
||||
void AudioLayerWidget::pitchChanged(float value)
|
||||
void AudioLayerWidget::pitchChanged(int value)
|
||||
{
|
||||
emit(uiSliderChanged(m_layer, Slider::Pitch, value));
|
||||
}
|
||||
|
|
|
@ -39,9 +39,9 @@ private:
|
|||
|
||||
public slots:
|
||||
void toggleSuspendResume();
|
||||
void volumeChanged(float vol);
|
||||
void panChanged(float pan);
|
||||
void pitchChanged(float pitch);
|
||||
void volumeChanged(int vol);
|
||||
void panChanged(int pan);
|
||||
void pitchChanged(int pitch);
|
||||
void fileLoaded(QString file);
|
||||
void durationChanged(float dur);
|
||||
void refreshUi(float progress);
|
||||
|
|
|
@ -1,17 +1,18 @@
|
|||
#include "audiowidget.h"
|
||||
|
||||
|
||||
AudioWidget::AudioWidget() :
|
||||
m_layout(new QHBoxLayout())
|
||||
AudioWidget::AudioWidget(QWidget *parent) :
|
||||
QWidget(parent)
|
||||
, m_layout(new QHBoxLayout())
|
||||
{
|
||||
for (int i= 0; i < Settings::getInstance()->getLayersNumber(); i++ ) {
|
||||
AudioLayerWidget *alw = new AudioLayerWidget(this, i);
|
||||
m_layout->insertWidget(i, alw);
|
||||
connect(alw, SIGNAL(uiSliderChanged(int, Slider, int)), this, SLOT(uiSliderAction(int, Slider, int)));
|
||||
connect(alw, SIGNAL(uiPlaybackChanged(int, Status)), this, SLOT(uiChangePlaybackStatus(int, Status)));
|
||||
connect(alw, SIGNAL(uiSliderChanged(int, Slider, int)), this, SIGNAL(uiSliderChanged(int, Slider, int)));
|
||||
connect(alw, SIGNAL(uiPlaybackChanged(int, Status)), this, SIGNAL(uiPlaybackChanged(int, Status)));
|
||||
}
|
||||
m_layout->setSpacing(0);
|
||||
m_layout->setContentsMargins(0, 0, 0, 0);
|
||||
m_layout->setContentsMargins(1, 1, 1, 1);
|
||||
setLayout(m_layout);
|
||||
}
|
||||
|
||||
|
@ -49,22 +50,12 @@ void AudioWidget::cursorChanged(int layer, float cursor)
|
|||
AudioLayerWidget *alw = dynamic_cast<AudioLayerWidget *>(item->widget());
|
||||
alw->refreshUi(cursor);
|
||||
}
|
||||
|
||||
void AudioWidget::uiSliderAction(int layer, Slider s, int value)
|
||||
/*
|
||||
void AudioWidget::uiSliderAction(int layer, Slider s, float value)
|
||||
{
|
||||
switch (s){
|
||||
case Slider::Volume:
|
||||
emit uiVolChanged(layer, value);
|
||||
break;
|
||||
case Slider::Pan:
|
||||
emit uiPanChanged(layer, value);
|
||||
break;
|
||||
case Slider::Pitch:
|
||||
emit uiPitchChanged(layer, value);
|
||||
break;
|
||||
}
|
||||
emit uiSliderChanged(layer, s, value);
|
||||
}
|
||||
|
||||
void AudioWidget::uiChangePlaybackStatus(int layer, Status s) {
|
||||
emit uiPlaybackChanged(layer, s);
|
||||
}
|
||||
}*/
|
||||
|
|
|
@ -13,7 +13,7 @@ class AudioWidget : public QWidget
|
|||
Q_OBJECT
|
||||
|
||||
public:
|
||||
AudioWidget();
|
||||
AudioWidget(QWidget *parent = nullptr);
|
||||
void mediaLoaded(int layer, QString media, float duration);
|
||||
void volChanged(int layer, float vol);
|
||||
void panChanged(int layer, int pan);
|
||||
|
@ -21,18 +21,14 @@ public:
|
|||
void playbackChanged(int layer, Status status);
|
||||
void cursorChanged(int layer, float cursor);
|
||||
QHBoxLayout *m_layout;
|
||||
|
||||
/*
|
||||
public slots:
|
||||
void uiSliderAction(int layer, Slider s, int value);
|
||||
void uiSliderAction(int layer, Slider s, float value);
|
||||
void uiChangePlaybackStatus(int layer, Status s);
|
||||
|
||||
*/
|
||||
signals:
|
||||
void uiMediaLoaded(int layer, QString media );
|
||||
void uiVolChanged(int layer, float vol);
|
||||
void uiPanChanged(int layer, int pan);
|
||||
void uiPitchChanged(int layer, int pitch);
|
||||
void uiPlaybackChanged(int layer, Status status);
|
||||
void uiEntryPointChanged(int layer, int cursor);
|
||||
void uiPlaybackChanged(int layer, Status s);
|
||||
void uiSliderChanged(int layer, Slider s, int vol);
|
||||
};
|
||||
|
||||
#endif // AUDIOWIDGET_H
|
||||
|
|
|
@ -26,7 +26,7 @@ libreMediaServerAudioUi::libreMediaServerAudioUi(QWidget *parent)
|
|||
{
|
||||
ui.setupUi(this);
|
||||
this->setWindowTitle(VERSION);
|
||||
m_aw = new AudioWidget;
|
||||
m_aw = new AudioWidget(this);
|
||||
setCentralWidget(m_aw);
|
||||
m_dmxWidget = new dmxWidget(this);
|
||||
QDockWidget *topWidget = new QDockWidget(tr("Master"), this);
|
||||
|
|
|
@ -134,6 +134,28 @@ void libreMediaServerAudio::setUi(libreMediaServerAudioUi *lmsUi)
|
|||
{
|
||||
m_lmsUi = lmsUi;
|
||||
connect(m_ola, SIGNAL(universeReceived(int)), m_lmsUi->m_dmxWidget, SLOT(updateWatchDMX(int)));
|
||||
connect(m_lmsUi->m_aw, SIGNAL(uiSliderChanged(int, Slider, int)), this, SLOT(uiSliderChanged(int, Slider, int)));
|
||||
connect(m_lmsUi->m_aw, SIGNAL(uiPlaybackChanged(int, Status)), this, SLOT(uiPlaybackChanged(int, Status)));
|
||||
};
|
||||
|
||||
void libreMediaServerAudio::uiSliderChanged(int layer, Slider s, int value)
|
||||
{
|
||||
switch (s){
|
||||
case Slider::Volume:
|
||||
m_mae.volChanged(layer, float((value / 100.0f)));
|
||||
break;
|
||||
case Slider::Pan:
|
||||
m_mae.panChanged(layer, value);
|
||||
break;
|
||||
case Slider::Pitch:
|
||||
m_mae.pitchChanged(layer, value);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void libreMediaServerAudio::uiPlaybackChanged(int layer, Status s)
|
||||
{
|
||||
m_mae.playbackChanged(layer, s);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -54,6 +54,8 @@ private slots:
|
|||
void dmxInput(int layer, int channel, int value);
|
||||
#ifndef NOGUI
|
||||
void refreshUi();
|
||||
void uiSliderChanged(int layer, Slider s, int value);
|
||||
void uiPlaybackChanged(int layer, Status s);
|
||||
#endif
|
||||
};
|
||||
|
||||
|
|
|
@ -27,12 +27,6 @@ class MediaLibrary : public QObject
|
|||
|
||||
public:
|
||||
MediaLibrary(QObject *parent = 0);
|
||||
/**
|
||||
* @brief request a new file from the media library
|
||||
* @param int folder - the folder required
|
||||
* @param int layer - file required
|
||||
* @return QString the file required with full path
|
||||
*/
|
||||
QString requestNewFile(int folder, int layer);
|
||||
void initMediaLibrary();
|
||||
|
||||
|
|
|
@ -52,8 +52,6 @@ SliderGroup::SliderGroup(QString name,
|
|||
void SliderGroup::sliderValueChanged(int value)
|
||||
{
|
||||
valueBox->setValue(value);
|
||||
if (valueBox->decimals() > 1)
|
||||
value /= 100.0f;
|
||||
emit valueChanged(value);
|
||||
};
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@ public:
|
|||
QWidget *parent = nullptr);
|
||||
|
||||
signals:
|
||||
void valueChanged(float value);
|
||||
void valueChanged(int value);
|
||||
|
||||
public slots:
|
||||
void setValue(float value);
|
||||
|
|
Loading…
Add table
Reference in a new issue