diff --git a/libremediaserver-audio.pro b/libremediaserver-audio.pro
index 48f0af8..db78795 100644
--- a/libremediaserver-audio.pro
+++ b/libremediaserver-audio.pro
@@ -2,7 +2,6 @@ TEMPLATE = app
TARGET = libremediaserver-audio
QT += webkitwidgets widgets
HEADERS += src/libremediaserver-audio.h \
- src/cuetrackwidget.h \
src/editcuetrackwidget.h \
src/cuetracklistwidget.h \
src/showplayer.h \
@@ -24,10 +23,8 @@ HEADERS += src/libremediaserver-audio.h \
src/audiowidget.h \
src/defines.h \
src/settings.h \
- src/slidergroup.h \
- src/dialgroup.h
+ src/slidergroup.h
SOURCES += src/main.cpp \
- src/cuetrackwidget.cpp \
src/editcuetrackwidget.cpp \
src/cuetracklistwidget.cpp \
src/showplayer.cpp \
@@ -46,10 +43,8 @@ SOURCES += src/main.cpp \
src/audiolayerwidget.cpp \
src/audiowidget.cpp \
src/settings.cpp \
- src/slidergroup.cpp \
- src/dialgroup.cpp
+ src/slidergroup.cpp
FORMS += \
- src/cuetrackwidget.ui \
src/showplayer.ui \
src/libremediaserver-audio-ui.ui
CCFLAG += -msse2 -mavx2
@@ -63,5 +58,3 @@ OTHER_FILES += \
docs/changelog.txt \
docs/lms-audio.xlm \
docs/roadmap.txt
-RESOURCES += \
- lms-resources.qrc
diff --git a/lms-resources.qrc b/lms-resources.qrc
deleted file mode 100644
index 21a0629..0000000
--- a/lms-resources.qrc
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
- resources/copy_button.png
- resources/cut_button.png
- resources/delete_button.png
- resources/edit_button.png
- resources/load_button.png
- resources/new_button.png
- resources/paste_button.png
- resources/save_button.png
- resources/icon.png
- resources/panic_button.jpg
- resources/go_button.jpeg
-
-
diff --git a/resources/copy_button.png b/resources/copy_button.png
deleted file mode 100644
index 27fdef5..0000000
Binary files a/resources/copy_button.png and /dev/null differ
diff --git a/resources/cut_button.png b/resources/cut_button.png
deleted file mode 100644
index 4977b23..0000000
Binary files a/resources/cut_button.png and /dev/null differ
diff --git a/resources/delete_button.png b/resources/delete_button.png
deleted file mode 100644
index 0d44443..0000000
Binary files a/resources/delete_button.png and /dev/null differ
diff --git a/resources/edit_button.png b/resources/edit_button.png
deleted file mode 100644
index 37c3a34..0000000
Binary files a/resources/edit_button.png and /dev/null differ
diff --git a/resources/load_button.png b/resources/load_button.png
deleted file mode 100644
index d0d1d3c..0000000
Binary files a/resources/load_button.png and /dev/null differ
diff --git a/resources/new_button.png b/resources/new_button.png
deleted file mode 100644
index 3ac34f9..0000000
Binary files a/resources/new_button.png and /dev/null differ
diff --git a/resources/paste_button.png b/resources/paste_button.png
deleted file mode 100644
index ef34fac..0000000
Binary files a/resources/paste_button.png and /dev/null differ
diff --git a/resources/save_button.png b/resources/save_button.png
deleted file mode 100644
index 78d8ae0..0000000
Binary files a/resources/save_button.png and /dev/null differ
diff --git a/src/cuetracklistwidget.cpp b/src/cuetracklistwidget.cpp
index 22f9062..4397239 100644
--- a/src/cuetracklistwidget.cpp
+++ b/src/cuetracklistwidget.cpp
@@ -1,7 +1,4 @@
#include
-#include
-#include
-#include
#include
#include
#include
@@ -10,8 +7,6 @@
#include
#include
#include
-#include
-#include
#include "cuetracklistwidget.h"
CueTrackListWidget::CueTrackListWidget(QWidget *parent)
@@ -47,10 +42,9 @@ CueTrack* CueTrackListWidget::getTrackAtIndex(int index) {
return nullptr;
}
-CueTrack* CueTrackListWidget::getSelectedTrack(bool advance) {
+CueTrack* CueTrackListWidget::getSelectedTrack() {
CueTrack* track = getTrackAtIndex(selectedIndex);
- if (advance)
- key_down();
+ key_down();
return track;
}
@@ -127,25 +121,23 @@ void CueTrackListWidget::updateSelectedCueTrack(bool highlightRow) {
void CueTrackListWidget::cueTrackLoadDefaults(CueTrack * t)
{
t->active = false;
- t->audioLayer = 0;
- t->bus1 = 100;
- t->bus2 = 100;
+ t->audioLayer = -1;
+ t->bus1 = 80;
+ t->bus2 = 80;
t->entryPoint = 0;
t->exitPoint = 255;
- t->fadeIn = 2;
- t->fadeOut = 2;
+ t->fadeIn = 3;
+ t->fadeOut = 3;
t->waitIn = 0;
t->waitOut = 0;
t->pan = 0;
t->pitch = 1;
t->status = Status::PlayingOnce;
- lastUserCueNumber += 10;
t->userNumber = lastUserCueNumber;
+ lastUserCueNumber++;
t->volume = 80;
t->stopAtEnd = true;
t->filePath = "";
- t->duration = 0;
- t->multi = false;
}
void CueTrackListWidget::createNewCueTrack()
@@ -153,20 +145,15 @@ void CueTrackListWidget::createNewCueTrack()
CueTrack *t = new CueTrack;
cueTrackLoadDefaults(t);
EditCueTrackWidget dialog(t, this);
- if (dialog.exec() == QDialog::Accepted) {
- t->active = false;
+ if (dialog.exec() == QDialog::Accepted)
addCueTrack(t);
- if (m_size == 1)
- {
- updateSelectedCueTrack(true);
- emit changeSelectedIndex(0);
- } else
- redrawCueTrackList();
- if (lastUserCueNumber < t->userNumber)
- lastUserCueNumber = t->userNumber;
+ if (m_size == 1)
+ {
+ updateSelectedCueTrack(true);
+ emit changeSelectedIndex(0);
} else
- delete (t);
-}
+ redrawCueTrackList();
+ }
void CueTrackListWidget::editCueTrack()
{
@@ -177,8 +164,6 @@ void CueTrackListWidget::editCueTrack()
redrawCueTrackList();
emit changeSelectedIndex(selectedIndex);
}
- if (lastUserCueNumber < current->userNumber)
- lastUserCueNumber = current->userNumber;
}
void CueTrackListWidget::deleteCueTrack()
@@ -213,8 +198,6 @@ void CueTrackListWidget::copyCueTrack(CueTrack *src, CueTrack *dst)
dst->name = src->name;
dst->description = src->description;
dst->filePath = src->filePath;
- dst->duration = src->duration;
- dst->multi = src->multi;
}
QString *CueTrackListWidget::getFileName(std::string s)
@@ -240,7 +223,7 @@ void CueTrackListWidget::redrawCueTrackList()
int selected = cueTracks.at(selectedIndex)->userNumber;
clearTableWidget();
tableWidget->setColumnCount(7);
- QStringList headers = {"Active", "Number","Channel", "Name", "Volume", "Status", "File"};
+ QStringList headers = {"Active", "Number","Audio Channel", "Name", "Volume", "Status", "File"};
tableWidget->setHorizontalHeaderLabels(headers);
sortCueTrackList();
selectedIndex = 0;
@@ -258,9 +241,13 @@ void CueTrackListWidget::redrawCueTrackList()
tableWidget->resizeRowsToContents();
tableWidget->scrollToItem(tableWidget->item(selectedIndex, 0));
tableWidget->blockSignals(false);
- emit changeSelectedIndex(selectedIndex);
}
+#include
+#include
+#include
+#include
+
void CueTrackListWidget::loadCueTrackList(std::string filename)
{
QFile file(QString::fromStdString(filename));
@@ -271,7 +258,6 @@ void CueTrackListWidget::loadCueTrackList(std::string filename)
}
QXmlStreamReader xmlReader(&file);
clearCueTrackList();
- lastUserCueNumber = 0;
while (!xmlReader.atEnd() && !xmlReader.hasError())
{
QXmlStreamReader::TokenType token = xmlReader.readNext();
@@ -323,12 +309,7 @@ void CueTrackListWidget::loadCueTrackList(std::string filename)
t->waitOut = xmlReader.text().toInt();
}
else if (elementName == "stopAtEnd") {
- QString tmp = xmlReader.text().toString().toLower();
- if (tmp.compare("false"))
- t->stopAtEnd = true;
- else {
- t->stopAtEnd = false;
- }
+ t->stopAtEnd = xmlReader.text().toString().toLower() == "true";
}
else if (elementName == "name") {
t->name = xmlReader.text().toString().toStdString();
@@ -338,10 +319,6 @@ void CueTrackListWidget::loadCueTrackList(std::string filename)
}
else if (elementName == "userNumber") {
t->userNumber = xmlReader.text().toInt();
- if (t->userNumber > lastUserCueNumber)
- {
- lastUserCueNumber = t->userNumber;
- }
}
else if (elementName == "entryPoint") {
t->entryPoint = xmlReader.text().toInt();
@@ -352,18 +329,9 @@ void CueTrackListWidget::loadCueTrackList(std::string filename)
else if (elementName == "audioLayer") {
t->audioLayer = xmlReader.text().toInt();
}
- else if (elementName == "duration") {
- t->duration = xmlReader.text().toInt();
- }
- else if (elementName == "multi") {
- QString tmp = xmlReader.text().toString().toLower();
- if (tmp.compare("false"))
- t->multi = true;
- else {
- t->multi = false;
- }
- }
- t->active = false;
+ else if (elementName == "active") {
+ t->active = xmlReader.text().toString().toLower() == "true";
+ }
}
}
xmlReader.readNext();
@@ -380,6 +348,9 @@ void CueTrackListWidget::loadCueTrackList(std::string filename)
redrawCueTrackList();
}
+#include
+#include
+
void CueTrackListWidget::saveCueTrackList(std::string filename)
{
std::ofstream file(filename);
@@ -422,11 +393,10 @@ std::string CueTrackListWidget::cueTrackToXml(const CueTrack& cueTrack)
xml += " " + std::to_string(cueTrack.entryPoint) + "\n";
xml += " " + std::to_string(cueTrack.exitPoint) + "\n";
xml += " " + std::to_string(cueTrack.audioLayer) + "\n";
- xml += " " + std::to_string(cueTrack.duration) + "\n";
- xml += " ";
- xml += (cueTrack.multi ? "true" : "false");
- xml += "\n";
- xml += " \n";
+ xml += " ";
+ xml += (cueTrack.active ? "true" : "false");
+ xml += "\n";
+ xml += " \n";
return xml;
}
@@ -474,6 +444,7 @@ void saveCueTrackToXml(const CueTrack& cueTrack, const QString& filename) {
xmlWriter.writeTextElement("entryPoint", QString::number(cueTrack.entryPoint));
xmlWriter.writeTextElement("exitPoint", QString::number(cueTrack.exitPoint));
xmlWriter.writeTextElement("audioLayer", QString::number(cueTrack.audioLayer));
+ xmlWriter.writeTextElement("active", cueTrack.active ? "true" : "false");
xmlWriter.writeEndElement();
xmlWriter.writeEndDocument();
@@ -536,9 +507,9 @@ CueTrack loadCueTrackFromXml(const QString& filename) {
cueTrack.exitPoint = xmlReader.readElementText().toInt();
} else if (elementName == "audioLayer") {
cueTrack.audioLayer = xmlReader.readElementText().toInt();
- } else if (elementName == "duration") {
- cueTrack.duration = xmlReader.readElementText().toInt();
- }
+ } else if (elementName == "active") {
+ cueTrack.active = xmlReader.readElementText() == "true";
+ }
}
}
if (xmlReader.hasError()) {
@@ -557,39 +528,3 @@ void CueTrackListWidget::clearTableWidget()
tableWidget->clear();
tableWidget->setRowCount(0);
}
-
-void CueTrackListWidget::cueTrackAtEnd(int layer)
-{
- for (int i = 0; i < m_size; i++)
- {
- CueTrack * cur = cueTracks.at(i);
- if (cur->audioLayer == layer)
- {
- cur->active = false;
- }
- }
- redrawCueTrackList();
-}
-
-void CueTrackListWidget::copyCueTrack() {
- if (selectedIndex >= 0 && selectedIndex < m_size) {
- delete copiedCue;
- copiedCue = new CueTrack(*cueTracks.at(selectedIndex));
- }
-}
-
-void CueTrackListWidget::cutCueTrack() {
- if (selectedIndex >= 0 && selectedIndex < m_size) {
- delete copiedCue;
- copiedCue = new CueTrack(*cueTracks.at(selectedIndex));
- removeCueTrack(selectedIndex);
- }
-}
-
-void CueTrackListWidget::pasteCueTrack() {
- if (copiedCue != nullptr) {
- CueTrack* newCue = new CueTrack(*copiedCue);
- addCueTrack(newCue);
- }
-}
-
diff --git a/src/cuetracklistwidget.h b/src/cuetracklistwidget.h
index 518b4ef..fa7b685 100644
--- a/src/cuetracklistwidget.h
+++ b/src/cuetracklistwidget.h
@@ -19,7 +19,7 @@ public:
explicit CueTrackListWidget(QWidget *parent = nullptr);
public slots:
- CueTrack* getSelectedTrack(bool advance);
+ CueTrack* getSelectedTrack();
void createNewCueTrack();
void editCueTrack();
void deleteCueTrack();
@@ -31,8 +31,6 @@ public slots:
void clearCueTrackList();
void setLastUserCueNumber(size_t n) { lastUserCueNumber = n; }
size_t getLastUserCueNumber() { return lastUserCueNumber; }
- void cueTrackAtEnd(int layer);
- void redrawCueTrackList();
private:
std::vector cueTracks;
@@ -41,8 +39,7 @@ private:
int m_size = 0;
int size() { return m_size; }
int selectedIndex = 0;
- int lastUserCueNumber = 0;
- CueTrack* copiedCue = nullptr;
+ size_t lastUserCueNumber = 0;
private slots:
void addCueTrack(CueTrack* cue);
@@ -55,14 +52,12 @@ private slots:
void cueTrackLoadDefaults(CueTrack * t);
void copyCueTrack(CueTrack *src, CueTrack *dst);
void sortCueTrackList();
+ void redrawCueTrackList();
void clearTableWidget();
std::string cueTrackToXml(const CueTrack& cueTrack);
- void copyCueTrack();
- void pasteCueTrack();
- void cutCueTrack();
+
signals:
void changeSelectedIndex(int index);
- void goAction(int channel);
};
#endif
diff --git a/src/cuetrackwidget.cpp b/src/cuetrackwidget.cpp
deleted file mode 100644
index 609cf4d..0000000
--- a/src/cuetrackwidget.cpp
+++ /dev/null
@@ -1,94 +0,0 @@
-#include
-
-#include "cuetrackwidget.h"
-#include "ui_cuetrackwidget.h"
-
-CueTrackWidget::CueTrackWidget(QWidget *parent) :
- QWidget(parent),
- ui(new Ui::CueTrackWidget)
-{
- ui->setupUi(this);
- tlFade.setFrameRange(0, 100);
- tlWaitIn.setFrameRange(0, 100);
- tlWaitOut.setFrameRange(0, 100);
- connect(&tlFade, &QTimeLine::frameChanged, ui->cueProgressBar, &QProgressBar::setValue);
- connect(&tlWaitIn, &QTimeLine::frameChanged, ui->cueProgressBar, &QProgressBar::setValue);
- connect(&tlWaitOut, &QTimeLine::frameChanged, ui->cueProgressBar, &QProgressBar::setValue);
- connect(&tlFade, SIGNAL(finished()), this, SLOT(fadeSlot()));
- connect(&tlWaitIn, SIGNAL(finished()), this, SLOT(waitInSlot()));
- connect(&tlWaitOut, SIGNAL(finished()), this, SLOT(waitOutSlot()));
-}
-
-
-CueTrackWidget::~CueTrackWidget()
-{
- delete ui;
-}
-
-void CueTrackWidget::loadCueTrack(CueTrack* track)
-{
- ui->cueName->setText(track->name.data());
- ui->cueNumber->display(track->userNumber);
- ui->vol->display(track->volume);
- ui->pan->display(track->pan);
- ui->pitch->display(track->pitch);
- ui->bus1->display(track->bus1);
- ui->bus2->display(track->bus2);
- ui->fade->setValue(track->fadeIn);
- ui->waitIn->setValue(track->waitIn);
- ui->waitOut->setValue(track->waitOut);
- ui->halt->setChecked(track->stopAtEnd);
- QFileInfo fileInfo(track->filePath.data());
- fileInfo.fileName().truncate(64);
- ui->mediaFileName->setText(fileInfo.fileName());
- ui->status->setText(statusToString(track->status));
- ui->audioLayer->display(track->audioLayer);
- ui->multi->setChecked(track->multi);
-}
-
-void CueTrackWidget::go()
-{
- tlFade.stop();
- tlWaitIn.stop();
- tlWaitOut.stop();
- ui->cueProgressBar->setValue(0);
- if (ui->waitIn->value() > 0)
- {
- tlWaitIn.setDuration(ui->waitIn->value() * 1000);
- tlWaitIn.start();
- ui->cueProgressBar->setStyleSheet("QProgressBar::chunk { background-color: #FF0000; }");
- } else {
- waitInSlot();
- }
-}
-
-void CueTrackWidget::waitInSlot()
-{
- emit goAction(ui->audioLayer->intValue());
- tlFade.setDuration(ui->fade->value() * 1000);
- tlFade.start();
- ui->cueProgressBar->setStyleSheet("QProgressBar::chunk { background-color: #00FF00; }");
-}
-
-void CueTrackWidget::fadeSlot()
-{
- if (ui->waitOut->value() > 0) {
- tlWaitOut.setDuration(ui->waitOut->value() * 1000);
- tlWaitOut.start();
- ui->cueProgressBar->setStyleSheet("QProgressBar::chunk { background-color: #FF0000; }");
- } else {
- waitOutSlot();
- }
-}
-
-void CueTrackWidget::waitOutSlot()
-{
- ui->cueProgressBar->setStyleSheet("QProgressBar::chunk { background-color: #0000FF; }");
- emit cueFinished(ui->audioLayer->intValue());
-}
-
-void CueTrackWidget::setNextCue()
-{
- ui->cueProgressBar->setDisabled(true);
- ui->cueProgressBar->hide();
-}
diff --git a/src/cuetrackwidget.h b/src/cuetrackwidget.h
deleted file mode 100644
index 6e7bd8b..0000000
--- a/src/cuetrackwidget.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef CUETRACKWIDGET_H
-#define CUETRACKWIDGET_H
-
-#include
-#include
-
-#include "defines.h"
-#include "dialgroup.h"
-
-namespace Ui {
-class CueTrackWidget;
-}
-
-class CueTrackWidget : public QWidget
-{
- Q_OBJECT
-
-public:
- explicit CueTrackWidget(QWidget *parent = nullptr);
- ~CueTrackWidget();
-
-private:
- Ui::CueTrackWidget *ui;
- QTimeLine tlFade;
- QTimeLine tlWaitIn;
- QTimeLine tlWaitOut;
-
-public slots:
- void loadCueTrack(CueTrack* track);
- void go();
- void setNextCue();
-
-private slots:
- void fadeSlot();
- void waitInSlot();
- void waitOutSlot();
-
-signals:
- void cueFinished(int layer);
- void goAction(int layer);
-};
-
-#endif // CUETRACKWIDGET_H
diff --git a/src/cuetrackwidget.ui b/src/cuetrackwidget.ui
deleted file mode 100644
index 314782b..0000000
--- a/src/cuetrackwidget.ui
+++ /dev/null
@@ -1,780 +0,0 @@
-
-
- CueTrackWidget
-
-
-
- 0
- 0
- 502
- 329
-
-
-
-
- 0
- 0
-
-
-
-
- 0
- 0
-
-
-
- Qt::ClickFocus
-
-
- Cue Track
-
-
-
- :/buttons/resources/icon.png:/buttons/resources/icon.png
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 16777215
- 16777215
-
-
-
- QFrame::StyledPanel
-
-
- Qt::Vertical
-
-
- false
-
-
- 8
-
-
-
-
- 0
- 0
-
-
-
-
- 0
- 0
-
-
-
- Qt::Horizontal
-
-
-
-
- 0
- 0
-
-
-
-
- 0
- 0
-
-
-
- Cue Progress
-
-
- Cue Progress
-
-
- 24
-
-
-
-
-
- 1
- 0
-
-
-
-
- 48
- 48
-
-
-
-
- 14
- 75
- true
-
-
-
- Cue Number
-
-
- Cue Number
-
-
- QFrame::StyledPanel
-
-
- QFrame::Plain
-
-
- 1
-
-
- false
-
-
- 4
-
-
- QLCDNumber::Flat
-
-
-
-
-
- 2
- 0
-
-
-
-
- 0
- 0
-
-
-
-
- 13
- 75
- true
-
-
-
- Cue Name
-
-
- QFrame::StyledPanel
-
-
- QFrame::Plain
-
-
- Cue Name
-
-
- Qt::PlainText
-
-
- true
-
-
- Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
-
- true
-
-
- 3
-
-
-
-
-
-
- 0
- 0
-
-
-
- Qt::Horizontal
-
-
-
-
- 0
- 0
-
-
-
-
- 0
- 24
-
-
-
-
- 16777215
- 24
-
-
-
-
- 10
-
-
-
- Media FIle Name
-
-
- QFrame::StyledPanel
-
-
- Media file name
-
-
- Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
-
- true
-
-
- 3
-
-
-
-
-
-
- 0
- 0
-
-
-
-
- 0
- 0
-
-
-
-
- 16777215
- 16777215
-
-
-
- Qt::Horizontal
-
-
-
-
- 0
- 0
-
-
-
-
- 16777215
- 16777215
-
-
-
-
-
-
-
- QLayout::SetDefaultConstraint
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
-
-
- 0
- 0
-
-
-
- Qt::NoFocus
-
-
- Wait in time in seconds
-
-
- QAbstractSpinBox::NoButtons
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Qt::NoFocus
-
-
- Wait out time in secods
-
-
- QAbstractSpinBox::NoButtons
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Qt::NoFocus
-
-
- Fade time in seconds
-
-
- Fade In
-
-
- Fade In Time in seconds
-
-
- true
-
-
- true
-
-
- true
-
-
- QAbstractSpinBox::NoButtons
-
-
-
-
-
- false
-
-
-
-
-
-
-
-
- 99990000.000000000000000
-
-
- QAbstractSpinBox::AdaptiveDecimalStepType
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Qt::NoFocus
-
-
- Exit Point
-
-
- QAbstractSpinBox::NoButtons
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 13
-
-
-
- Playback Status
-
-
- QFrame::StyledPanel
-
-
- Playback Status
-
-
- Qt::PlainText
-
-
- true
-
-
- Qt::AlignCenter
-
-
- true
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Qt::NoFocus
-
-
- Entry Point
-
-
- QAbstractSpinBox::NoButtons
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 0
- 24
-
-
-
- Audio Channel
-
-
- false
-
-
- 1
-
-
- QLCDNumber::Flat
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 24
- 0
-
-
-
-
- 13
- 75
- true
-
-
-
- Qt::NoFocus
-
-
- Do not play next cue if checked
-
-
- If checked, do not play next cue. If checked, Go next cue when this cue has finished.
-
-
- Halt
-
-
- true
-
-
- Halt
-
-
-
- :/buttons/resources/delete_button.png:/buttons/resources/delete_button.png
-
-
-
- 32
- 32
-
-
-
- true
-
-
-
-
-
-
-
-
- QLayout::SetDefaultConstraint
-
-
- 0
-
- -
-
-
- 3
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 10
-
-
-
- Bus 1
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
- 3
-
-
- QLCDNumber::Flat
-
-
-
- -
-
-
-
- 10
-
-
-
- Volume
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
-
- 10
-
-
-
- Bus 2
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
- <html><head/><body><p>Volume</p></body></html>
-
-
- 3
-
-
-
- -
-
-
- <html><head/><body><p>Bus 2 Volume</p></body></html>
-
-
- 3
-
-
-
- -
-
-
- <html><head/><body><p>Bus 1 Volume</p></body></html>
-
-
- 3
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 10
-
-
-
- Pan
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
-
- 10
-
-
-
- Pitch
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 50
- false
- true
-
-
-
- <html><head/><body><p>PLay next cue at same time this cue, do not wait to finish the cue.</p></body></html>
-
-
- Qt::RightToLeft
-
-
-
-
-
-
- :/buttons/resources/go_button.jpeg:/buttons/resources/go_button.jpeg
-
-
-
- 32
- 32
-
-
-
-
- -
-
-
-
- 10
-
-
-
- MultiCue
-
-
- Qt::AlignCenter
-
-
-
-
-
-
-
-
-
-
-
- waitOut
- fade
- entryPoint
- exitPoint
- waitIn
-
-
-
-
-
-
diff --git a/src/defines.h b/src/defines.h
index f6a083c..59375fc 100644
--- a/src/defines.h
+++ b/src/defines.h
@@ -65,7 +65,7 @@ constexpr const char* statusToString(Status e) noexcept
#include
static Status stringToStatus(QString *statusStr) {
- if (!statusStr->compare("Stop")) return Stopped;
+ if (!statusStr->compare("Stopped")) return Stopped;
else if (!statusStr->compare("Paused") ) return Paused;
else if (!statusStr->compare("Play 1")) return PlayingOnce;
else if (!statusStr->compare("Play Loop")) return PlayingLoop;
@@ -91,7 +91,6 @@ struct layerData {
int bus1Vol;
int bus2Vol;
float level;
- int fade;
};
struct CueTrack {
@@ -113,9 +112,7 @@ struct CueTrack {
int entryPoint; // 0 - 255
int exitPoint; // 0 - 255
int audioLayer; // internal audio layer used when cue is loaded
- bool active; // the cue is playing
- int duration; // media duration in milliseconds
- bool multi; // launch next cue at same time, not waiting for this to finish.
+ bool active;
};
#endif // __cplusplus
diff --git a/src/dialgroup.cpp b/src/dialgroup.cpp
deleted file mode 100644
index ef29b88..0000000
--- a/src/dialgroup.cpp
+++ /dev/null
@@ -1,67 +0,0 @@
-#include
-#include
-#include
-#include "dialgroup.h"
-
-DialGroup::DialGroup(QString name,
- int min,
- int max,
- int decimals,
- QWidget *parent)
- : QWidget(parent)
-{
- QVBoxLayout *layout = new QVBoxLayout;
- layout->setAlignment(Qt::AlignHCenter);
- layout->setContentsMargins(0, 0, 0, 0);
- slider.setFocusPolicy(Qt::NoFocus);
- slider.setRange(min, max);
- slider.setValue(min + max / 2);
- slider.setToolTip(name);
- slider.setContentsMargins(0, 0, 0, 0);
-/*
- slider.setMinimumHeight(0);
- slider.setSingleStep(1);
- slider.setMinimumWidth(50);
- slider.setStyleSheet("QDial {"
- "border: 1px solid #aa8895;"
- "background: #20182d;"
- "margin: 0px;}"
- "QSlider::groove:vertical {"
- "border: 1px solid #999999;"
- "width: 25px;}"
- "QDial::tickmarks:vertical {"
- "background-color: black;"
- "background: red;"
- "color: white;}"
-*/
- valueBox.setFocusPolicy(Qt::NoFocus);
- valueBox.setButtonSymbols(QAbstractSpinBox::NoButtons);
- valueBox.setMinimumWidth(50);
- valueBox.setRange(min, max);
- valueBox.setValue(0);
- valueBox.setDecimals(decimals);
- valueBox.setObjectName(name);
- valueBox.setToolTip(name);
- valueBox.setAlignment(Qt::AlignHCenter);
- valueBox.setContentsMargins(0, 0, 0, 0);
- layout->addWidget(&slider);
- layout->addWidget(&valueBox);
-/* this->setStyleSheet("border: 1px solid #998090;"
- "background-color: black;"
- "margin: 1px;"
- );*/
- layout->setSpacing(0);
- layout->setContentsMargins(0, 0, 0, 0);
- this->setLayout(layout);
- slider.setObjectName(name);
-}
-
-void DialGroup::setValue(float value)
-{
- slider.blockSignals(true);
- valueBox.blockSignals(true);
- slider.setValue(value);
- valueBox.setValue(value);
- slider.blockSignals(false);
- valueBox.blockSignals(false);
-}
diff --git a/src/dialgroup.h b/src/dialgroup.h
deleted file mode 100644
index d795821..0000000
--- a/src/dialgroup.h
+++ /dev/null
@@ -1,30 +0,0 @@
-#ifndef DIALGROUP_H
-#define DIALGROUP_H
-
-#include
-#include
-#include
-#include
-
-#include "clickabledoublespinbox.h"
-
-class DialGroup : public QWidget
-{
- Q_OBJECT
-public:
- explicit DialGroup(QString name,
- int min,
- int max,
- int decimals,
- QWidget *parent = nullptr);
-
-public slots:
- void setValue(float value);
-
-private:
- QDial slider;
- ClickableDoubleSpinBox valueBox;
-
-};
-
-#endif
diff --git a/src/editcuetrackwidget.cpp b/src/editcuetrackwidget.cpp
index cb38701..f0f6046 100644
--- a/src/editcuetrackwidget.cpp
+++ b/src/editcuetrackwidget.cpp
@@ -58,8 +58,6 @@ void EditCueTrackWidget::setupUi() {
layout->addRow("Entry Point", entryPointSpin);
exitPointSpin = new QSpinBox(this);
layout->addRow("Exit Point", exitPointSpin);
- multiCheck = new QCheckBox(this);
- layout->addRow("Multi Cue", multiCheck);
statusCombo->addItem(statusToString(Status::Stopped));
statusCombo->addItem(statusToString(Status::Paused));
statusCombo->addItem(statusToString(Status::PlayingOnce));
@@ -94,7 +92,6 @@ void EditCueTrackWidget::loadCueTrack(CueTrack cueTrack) {
audioLayerSpin->setValue(cueTrack.audioLayer);
QString tmp = statusToString(cueTrack.status);
statusCombo->setCurrentIndex(statusCombo->findText(tmp));
- multiCheck->setChecked(cueTrack.multi);
}
CueTrack EditCueTrackWidget::saveCueTrack() {
@@ -117,7 +114,6 @@ CueTrack EditCueTrackWidget::saveCueTrack() {
cueTrack.pan = panSpin->value();
cueTrack.pitch = pitchSpin->value();
cueTrack.description.append(descriptionEdit->text().toUtf8().constData());
- cueTrack.multi = multiCheck->isChecked();
return cueTrack;
}
diff --git a/src/editcuetrackwidget.h b/src/editcuetrackwidget.h
index 8afb0d1..080561e 100644
--- a/src/editcuetrackwidget.h
+++ b/src/editcuetrackwidget.h
@@ -46,7 +46,6 @@ private:
QSpinBox *exitPointSpin;
QComboBox *statusCombo;
QSpinBox *audioLayerSpin;
- QCheckBox *multiCheck;
QPushButton *browseButton;
QPushButton *saveButton;
QPushButton *cancelButton;
diff --git a/src/libremediaserver-audio-ui.cpp b/src/libremediaserver-audio-ui.cpp
index e1f8533..0227f16 100644
--- a/src/libremediaserver-audio-ui.cpp
+++ b/src/libremediaserver-audio-ui.cpp
@@ -60,6 +60,6 @@ void libreMediaServerAudioUi::olasetup()
void libreMediaServerAudioUi::launchShowPlayerWindow()
{
- //m_showPlayer->showMaximized();
+ qDebug() << "launch show player";
m_showPlayer->show();
}
diff --git a/src/libremediaserver-audio-ui.ui b/src/libremediaserver-audio-ui.ui
index 7de7324..2f1feae 100644
--- a/src/libremediaserver-audio-ui.ui
+++ b/src/libremediaserver-audio-ui.ui
@@ -7,8 +7,8 @@
0
0
- 640
- 800
+ 400
+ 400
@@ -23,8 +23,8 @@
LibreMediaServer
-
- :/buttons/resources/icon.png:/buttons/resources/icon.png
+
+ ../../../../criptomart/artwork/logo_v2_criptomart.net.png../../../../criptomart/artwork/logo_v2_criptomart.net.png
-
-
-
+
diff --git a/src/libremediaserver-audio.cpp b/src/libremediaserver-audio.cpp
index a440561..1a1b6eb 100644
--- a/src/libremediaserver-audio.cpp
+++ b/src/libremediaserver-audio.cpp
@@ -139,6 +139,8 @@ void libreMediaServerAudio::dmxInput(int layer, int channel, int value)
#ifndef NOGUI
if (m_ui) {
m_lmsUi->m_aw->filterParamChanged(layer, channel, value);
+ m_played.clear();
+ m_played.append(m_ola->getValue(layer, DMX_FILE));
}
#endif
}
@@ -170,16 +172,14 @@ void libreMediaServerAudio::refreshUi() {
}
m_lmsUi->m_aw->levelChanged(i, m_mae.getLevel(i));
if (m_mae.getAtEnd(i)) {
- if (m_currentStatus[i] == Status::PlayingOnce || m_currentStatus[i] == Status::Stopped) {
+ if (m_currentStatus[i] == Status::PlayingOnce) {
m_currentStatus[i] = Status::Stopped;
m_lmsUi->m_aw->playbackChanged(i, Status::Stopped);
- m_lmsUi->m_showPlayer->cueTrackAtEnd(i);
}
if (m_currentStatus[i] == Status::PlayingFolder) {
- uint last = 0;
- if (!m_played.isEmpty())
- last = m_played.last() + 1;
+ uint last = m_played.last();
int folder = m_ola->getValue(i, DMX_FOLDER);
+ last++;
if (last < m_mediaLibrary->getMediaFolderCount(folder)) {
this->loadMedia(i, folder, last);
m_mae.playbackChanged(i, Status::PlayingFolder);
@@ -187,7 +187,6 @@ void libreMediaServerAudio::refreshUi() {
else {
m_currentStatus[i] = Status::Stopped;
m_lmsUi->m_aw->playbackChanged(i, Status::Stopped);
- m_lmsUi->m_showPlayer->cueTrackAtEnd(i);
}
}
else if (m_currentStatus[i] == Status::PlayingFolderLoop) {
@@ -228,8 +227,7 @@ void libreMediaServerAudio::setUi(libreMediaServerAudioUi *lmsUi)
connect(m_lmsUi->m_aw, SIGNAL(uiPlaybackChanged(int, Status)), this, SLOT(uiPlaybackChanged(int, Status)));
connect(m_lmsUi->m_aw, SIGNAL(uiLoadMedia(int, QString)), this, SLOT(uiLoadMedia(int, QString)));
connect(m_lmsUi->m_showPlayer, SIGNAL(uiSliderChanged(int, Slider, int)), this, SLOT(uiSliderChanged(int, Slider, int)));
- connect(m_lmsUi->m_showPlayer, SIGNAL(uiSliderChangedFaded(int, Slider, int, int)), this, SLOT(uiSliderChangedFaded(int, Slider, int, int)));
- connect(m_lmsUi->m_showPlayer, SIGNAL(uiPlaybackChanged(int, Status)), this, SLOT(uiPlaybackChanged(int, Status)));
+ connect(m_lmsUi->m_showPlayer, SIGNAL(uiPlaybackChanged(int, Status)), this, SLOT(uiPlaybackChanged(int, Status)));
connect(m_lmsUi->m_showPlayer, SIGNAL(uiLoadMedia(int, QString)), this, SLOT(uiLoadMedia(int, QString)));
m_refreshUi = new QTimer(this);
connect(m_refreshUi, SIGNAL(timeout()), this, SLOT(refreshUi()));
@@ -300,14 +298,4 @@ void libreMediaServerAudio::uiLoadMedia(int layer, QString mediaFile)
qWarning() << "ui load media error" << result << "file" << mediaFile << "layer" << layer;
}
}
-
-void libreMediaServerAudio::uiSliderChangedFaded(int layer, Slider s, int value, int ms)
-{
- switch (s){
- case Slider::Volume:
- m_mae.volChanged(layer, value, ms);
- m_updateUi[layer][0] = value;
- break;
- }
-}
#endif
diff --git a/src/libremediaserver-audio.h b/src/libremediaserver-audio.h
index 65b5d11..8db0c7e 100644
--- a/src/libremediaserver-audio.h
+++ b/src/libremediaserver-audio.h
@@ -66,7 +66,6 @@ private:
private slots:
void refreshUi();
void uiSliderChanged(int layer, Slider s, int value);
- void uiSliderChangedFaded(int layer, Slider s, int value, int ms);
void uiPlaybackChanged(int layer, Status s);
void uiLoadMedia(int layer, QString s);
diff --git a/src/miniaudioengine.cpp b/src/miniaudioengine.cpp
index 9ab9f63..0e54927 100644
--- a/src/miniaudioengine.cpp
+++ b/src/miniaudioengine.cpp
@@ -434,15 +434,8 @@ ma_result MiniAudioEngine::printFormatInfo(int layer)
// Expects between 0 and 65535 vol value
void MiniAudioEngine::volChanged(int layer, int vol)
-{
- volChanged(layer, vol, FADE_TIME);
-}
-
-// Expects between 0 and 65535 vol value and fade time in milliseconds
-void MiniAudioEngine::volChanged(int layer, int vol, int ms)
{
m_mae.currentStatus[layer].vol = vol;
- m_mae.currentStatus[layer].fade = ms;
if (m_mae.mediaLoaded[layer] != MA_TRUE)
return;
if (m_mae.mediaLoaded[layer] == MA_FALSE && m_mae.currentStatus[layer].updated)
@@ -452,10 +445,9 @@ void MiniAudioEngine::volChanged(int layer, int vol, int ms)
db = 0;
} else
db = ma_volume_db_to_linear(db);
- ma_sound_set_fade_in_milliseconds(&m_mae.sounds[layer], -1, db, ms);
+ ma_sound_set_fade_in_milliseconds(&m_mae.sounds[layer], -1, db, FADE_TIME);
}
-
void MiniAudioEngine::panChanged(int layer, float value)
{
float result;
@@ -515,7 +507,7 @@ ma_result MiniAudioEngine::playbackChanged(int layer, Status status)
ma_sound_set_fade_in_milliseconds(&m_mae.sounds[layer], 0.000001f, 0.000000f, FADE_TIME);
if (m_mae.currentStatus[layer].cursor > 0)
usleep(FADE_TIME * 1500); // avoid glitch when seeking
- ma_sound_set_fade_in_milliseconds(&m_mae.sounds[layer], 0, db, m_mae.currentStatus[layer].fade);
+ ma_sound_set_fade_in_milliseconds(&m_mae.sounds[layer], 0, db, FADE_TIME * 2);
default:
break;
}
diff --git a/src/miniaudioengine.h b/src/miniaudioengine.h
index 0a1bca8..5fde13e 100644
--- a/src/miniaudioengine.h
+++ b/src/miniaudioengine.h
@@ -64,7 +64,6 @@ public:
bool startEngine(uint layersQty, uint* audioDevicesID, uint audioDevicesQty);
ma_result loadMedia(int layer, char *media);
void volChanged(int layer, int vol);
- void volChanged(int layer, int vol, int ms);
void panChanged(int layer, float pan);
void pitchChanged(int layer, float pitch);
ma_result playbackChanged(int layer, Status status);
diff --git a/src/showplayer.cpp b/src/showplayer.cpp
index f3cbedc..3b877df 100644
--- a/src/showplayer.cpp
+++ b/src/showplayer.cpp
@@ -12,12 +12,11 @@ ShowPlayer::ShowPlayer(QWidget *parent) :
connect(ui->SaveCueList, SIGNAL(clicked()), this, SLOT(saveCueTrackList()));
connect(ui->LoadCueList, SIGNAL(clicked()), this, SLOT(loadCueTrackList()));
connect(ui->goButton, SIGNAL(clicked()), this, SLOT(go()));
- connect(ui->cueListWidget, SIGNAL(changeSelectedIndex(int)), this, SLOT(updateIndex(int)));
+ filesLoaded = 0;
currentStatus = Status::Iddle;
- for(int i = 0; i < MAX_LAYERS; i++) {
+ for(int i = 0; i < MAX_LAYERS; i++)
layersUsed[i] = -1;
- cueTrackWidgetPlaying[i] = nullptr;
- }
+ connect(ui->cueListWidget, SIGNAL(changeSelectedIndex(int)), this, SLOT(changeSelectedIndex(int)));
}
ShowPlayer::~ShowPlayer() {}
@@ -28,52 +27,48 @@ void ShowPlayer::onAddTrack() {
void ShowPlayer::go()
{
- CueTrack *goCue = ui->cueListWidget->getSelectedTrack(true);
- if (!goCue)
+ ui->activeCueNumber->display(lastIndex);
+ CueTrack* current = ui->cueListWidget->getSelectedTrack();
+ if (!current)
return;
- current[goCue->audioLayer] = goCue;
- playCueTrack(goCue);
- if (goCue->multi)
- go();
-}
-
-void ShowPlayer::goAction(int c)
-{
- if (!current[c]->filePath.empty()) {
- emit uiLoadMedia(current[c]->audioLayer, current[c]->filePath.data());
- ui->cueListWidget->cueTrackAtEnd(c);
+ if (current->audioLayer < 0)
+ return;
+ ui->activeCueLabel->setText(current->name.data());
+ for (int i = 0; i < MAX_LAYERS; i++) {
+ if (layersUsed[i] == -1) {
+ layersUsed[i] = current->userNumber;
+ break;
+ }
}
- updateTrackStateInEngine(current[c]);
- emit uiPlaybackChanged(current[c]->audioLayer, current[c]->status);
- switch (current[c]->status) {
- case Status::PlayingOnce:
- case Status::PlayingLoop:
- case Status::PlayingFolder:
- case Status::PlayingFolderLoop:
- case Status::PlayingFolderRandom:
- current[c]->active = true;
- layersUsed[current[c]->audioLayer] = current[c]->userNumber;
- break;
- default:
- current[c]->active = false;
- }
- ui->cueListWidget->redrawCueTrackList();
+ if (!current->filePath.empty())
+ emit uiLoadMedia(current->audioLayer, current->filePath.data());
+ updateTrackStateInEngine(current);
+ emit uiPlaybackChanged(current->audioLayer, current->status);
+ filesLoaded++;
}
void ShowPlayer::updateTrackStateInEngine(CueTrack *track) {
- emit uiSliderChangedFaded(track->audioLayer, Slider::Volume, track->volume * 655.35, track->fadeIn * 1000);
+ emit uiSliderChanged(track->audioLayer, Slider::Volume, track->volume * 655.35);
emit uiSliderChanged(track->audioLayer, Slider::Pan, (track->pan + 1) * 128);
emit uiSliderChanged(track->audioLayer, Slider::Pitch, track->pitch * 128);
emit uiSliderChanged(track->audioLayer, Slider::Bus1, track->bus1 * 255 * 2.55);
emit uiSliderChanged(track->audioLayer, Slider::Bus2, track->bus2 * 255 * 2.55);
}
+void ShowPlayer::changeSelectedIndex(int i)
+{
+ CueTrack *t = ui->cueListWidget->getTrackAtIndex(i);
+ ui->nextCueNumber->display(t->userNumber);
+ ui->nextCueLabel->setText(t->name.data());
+ lastIndex = t->userNumber;
+}
+
void ShowPlayer::loadCueTrackList()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"), "", tr("XML Files (*.xml)"));
if (fileName.isEmpty())
return;
- ui->cueListWidget->loadCueTrackList(fileName.toStdString());
+ ui->cueListWidget->loadCueTrackList(fileName.toStdString());
}
void ShowPlayer::saveCueTrackList()
@@ -83,64 +78,3 @@ void ShowPlayer::saveCueTrackList()
return;
ui->cueListWidget->saveCueTrackList(fileName.toStdString());
}
-
-void ShowPlayer::cueTrackAtEnd(int layer)
-{
- current[layer]->active = false;
- ui->cueListWidget->cueTrackAtEnd(layer);
- removeCueTrackWidget(layer);
-}
-
-void ShowPlayer::cueFinished(int c)
-{
- if (!current[c])
- return;
- if (!current[c]->stopAtEnd)
- this->go();
- if (current[c]->status == Status::Stopped || current[c]->status == Status::Paused)
- cueTrackAtEnd(c);
-}
-
-CueTrackWidget *ShowPlayer::addCueTrackWidget(CueTrack* track) {
- QListWidgetItem* item = new QListWidgetItem(ui->activeCueList);
- CueTrackWidget* widget = new CueTrackWidget();
- widget->loadCueTrack(track);
- connect(widget, SIGNAL(goAction(int)), this, SLOT(goAction(int)));
- connect(widget, SIGNAL(cueFinished(int)), this, SLOT(cueFinished(int)));
- cueTrackWidgetPlaying[track->audioLayer] = widget;
- item->setSizeHint(widget->sizeHint());
- ui->activeCueList->setItemWidget(item, widget);
- return (widget);
-}
-
-void ShowPlayer::playCueTrack(CueTrack* track) {
- removeCueTrackWidget(track->audioLayer);
- CueTrackWidget *widget = addCueTrackWidget(track);
- widget->go();
-}
-
-void ShowPlayer::removeCueTrackWidget(int audioLayer) {
- CueTrackWidget* widgetToRemove = cueTrackWidgetPlaying[audioLayer];
- if (widgetToRemove != NULL && ui->activeCueList->count() > 0) {
- for (int i = 0; i < ui->activeCueList->count(); ++i) {
- QListWidgetItem* item = ui->activeCueList->item(i);
- QWidget* widget = ui->activeCueList->itemWidget(item);
- if (widget == widgetToRemove) {
- ui->activeCueList->removeItemWidget(item);
- delete item;
- delete widgetToRemove;
- break;
- }
- }
- cueTrackWidgetPlaying[audioLayer] = nullptr;
- }
-}
-
-void ShowPlayer::updateIndex(int index) {
- if (index < 0)
- return;
- CueTrack *track = ui->cueListWidget->getSelectedTrack(false);
- if (track) {
- ui->nextCue->loadCueTrack(track);
- }
-}
diff --git a/src/showplayer.h b/src/showplayer.h
index cda63bc..7abec4c 100644
--- a/src/showplayer.h
+++ b/src/showplayer.h
@@ -9,8 +9,6 @@
#include "defines.h"
#include "cuetracklistwidget.h"
-#include "cuetrackwidget.h"
-#include "dialgroup.h"
#include "settings.h"
#include "ui_showplayer.h"
@@ -26,33 +24,25 @@ public:
explicit ShowPlayer(QWidget *parent = nullptr);
~ShowPlayer();
-public slots:
- void cueTrackAtEnd(int layer);
-
private:
Ui::ShowPlayer *ui;
Status currentStatus = Status::Iddle;
+ size_t filesLoaded = 0;
int layersUsed[MAX_LAYERS];
- CueTrack *current[MAX_LAYERS];
- CueTrackWidget *cueTrackWidgetPlaying[MAX_LAYERS];
- CueTrackWidget *addCueTrackWidget(CueTrack *track);
+ int lastIndex = 0;
+
+ void updateTrackStateInEngine(CueTrack *track);
private slots:
- void updateTrackStateInEngine(CueTrack *track);
void onAddTrack();
void go();
+ void changeSelectedIndex(int i);
void loadCueTrackList();
void saveCueTrackList();
- void cueFinished(int channel);
- void removeCueTrackWidget(int index);
- void playCueTrack(CueTrack *track);
- void goAction(int channel);
- void updateIndex(int index);
signals:
void uiPlaybackChanged(int layer, Status s);
void uiSliderChanged(int layer, Slider s, int vol);
- void uiSliderChangedFaded(int layer, Slider s, int vol, int ms);
void uiLoadMedia(int layer, QString s);
};
diff --git a/src/showplayer.ui b/src/showplayer.ui
index 42c4603..9f3cd82 100644
--- a/src/showplayer.ui
+++ b/src/showplayer.ui
@@ -6,8 +6,8 @@
0
0
- 800
- 802
+ 743
+ 671
@@ -19,50 +19,137 @@
Show Player
-
-
- :/buttons/resources/icon.png:/buttons/resources/icon.png
-
-
- true
-
-
- false
-
-
- false
-
-
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 400
+ 400
+
+
+
+ QFrame::StyledPanel
+
+
+ QFrame::Sunken
+
Qt::Vertical
+
+ 8
+
+
+
+ QFrame::Box
+
+
+ QFrame::Raised
+
+
+ Qt::Horizontal
+
+
+ 8
+
+
+
+
+ 0
+ 0
+
+
+
+ Qt::ClickFocus
+
+
+ GO
+
+
+ Space
+
+
+
+
+
+ QLayout::SetMinimumSize
+
+
+ 0
+
+
-
+
+
+ -
+
+
+ Active Cue
+
+
+
+ -
+
+
+ true
+
+
+
+ -
+
+
+ Next Cue
+
+
+
+
+
+
+
+
+ 0
+ 0
+
+
+
+ Qt::ClickFocus
+
+
+ ...
+
+
+ P
+
+
+
-
+
0
- QLayout::SetDefaultConstraint
+ QLayout::SetMinimumSize
- 0
+ 100
- 0
+ 100
-
-
- Load Cue List
-
- Load CueList
+ ...
-
- :/buttons/resources/load_button.png:/buttons/resources/load_button.png
+
+ ../resources/load_button.png../resources/load_button.png
@@ -74,15 +161,12 @@
-
-
- Save Cue List
-
- Save CueList.
+ ...
-
- :/buttons/resources/save_button.png:/buttons/resources/save_button.png
+
+ ../resources/save_button.png../resources/save_button.png
@@ -100,21 +184,12 @@
-
-
-
- 32
- 32
-
-
-
- Copy Cue
-
- Copy Cue
+ ...
-
- :/buttons/resources/copy_button.png:/buttons/resources/copy_button.png
+
+ ../resources/copy_button.png../resources/copy_button.png
@@ -127,17 +202,17 @@
-
- Cut Cue
+ Load Cue List
Load Cue List
- Cut Cue
+ ...
-
- :/buttons/resources/cut_button.png:/buttons/resources/cut_button.png
+
+ ../resources/cut_button.png../resources/cut_button.png
@@ -149,15 +224,12 @@
-
-
- Paste Cue
-
- Paste Cue
+ ...
-
- :/buttons/resources/paste_button.png:/buttons/resources/paste_button.png
+
+ ../resources/paste_button.png../resources/paste_button.png
@@ -172,15 +244,12 @@
Qt::NoFocus
-
- New Cue
-
- New Cue
+ ...
-
- :/buttons/resources/new_button.png:/buttons/resources/new_button.png
+
+ ../resources/new_button.png../resources/new_button.png
@@ -195,15 +264,12 @@
Qt::NoFocus
-
- Edit Cue
-
- Edit Cue
+ ...
-
- :/buttons/resources/edit_button.png:/buttons/resources/edit_button.png
+
+ ../resources/edit_button.png../resources/edit_button.png
@@ -218,15 +284,12 @@
Qt::NoFocus
-
- Remove Cue
-
- Delete Cue
+ ...
-
- :/buttons/resources/delete_button.png:/buttons/resources/delete_button.png
+
+ ../resources/remove_button.png../resources/remove_button.png
@@ -238,101 +301,25 @@
-
-
- Qt::Horizontal
+
+
+ true
-
-
-
- 0
- 0
-
-
-
- Qt::ClickFocus
-
-
-
-
-
-
- :/buttons/resources/go_button.jpeg:/buttons/resources/go_button.jpeg
-
-
-
- 120
- 120
-
-
-
- Space
-
-
- true
-
-
- false
-
-
-
-
-
-
- 0
- 0
-
-
-
- Qt::ClickFocus
-
-
- ...
-
-
-
- :/buttons/resources/panic_button.jpg:/buttons/resources/panic_button.jpg
-
-
-
- 96
- 120
-
-
-
- P
-
-
-
-
-
- Qt::Horizontal
+
+
+ 0
+ 0
+
+
+
+ Qt::StrongFocus
+
+
+ true
+
+
+ Qt::ImhPreferLowercase
-
-
- <html><head/><body><p>Cue List</p></body></html>
-
-
-
-
-
- 0
- 0
-
-
-
- <html><head/><body><p>Cues active</p></body></html>
-
-
- QFrame::Plain
-
-
- QListView::Adjust
-
-
- QListView::SinglePass
-
-
@@ -345,20 +332,13 @@
1
-
- CueTrackWidget
- QWidget
-
- 1
-
+ cueListWidget
NewCue
EditCue
RemoveCue
-
-
-
+
diff --git a/src/slidergroup.cpp b/src/slidergroup.cpp
index 8e9a3b6..481d554 100644
--- a/src/slidergroup.cpp
+++ b/src/slidergroup.cpp
@@ -38,16 +38,16 @@ SliderGroup::SliderGroup(QString name,
"margin: 0px;}"
"QSlider::groove:vertical {"
"border: 1px solid #999999;"
- "width: 25px;}"
+ "width: 25px;"
+ "margin: -4px;}"
"QSlider::handle:vertical {"
"background: white;"
- "border: 2px solid #5c5c5c;"
+ "border: 1px solid #5c5c5c;"
"width: 29px;"
- "height: 10px;"
+ "height: 7px;"
+ "margin: -2px;"
"border-radius: 2px;}"
- "Qslider::tickmarks:vertical {"
- "background-color: black;"
- "background: red;"
+ "Qslider::tickmarks:vertical {background: white;"
"color: white;}"
"QSlider::add-page:vertical {background: blue;}"
"QSlider::sub-page:vertical {background: #20182d;}");