valores en audiowidget. la ui se actualiza con un timer en audiowidget. Quitadas señales en todo, mejora rendimiento. fade en volumen basado en la trama dmx (25 ms) para evitar clicks. refresca los valores de la capa cuando carga un media. Ui Ok. nuevo formato de archivo de configuración xml.
59 lines
1.3 KiB
C++
59 lines
1.3 KiB
C++
#ifndef AUDIOLAYERWIDGET_H
|
|
#define AUDIOLAYERWIDGET_H
|
|
|
|
#include <QPushButton>
|
|
#include <QTimeEdit>
|
|
#include <QFileDialog>
|
|
#include <QProgressBar>
|
|
|
|
#include "defines.h"
|
|
#include "slidergroup.h"
|
|
#include "clickablelabel.h"
|
|
#include "settings.h"
|
|
|
|
class AudioLayerWidget : public QWidget
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit AudioLayerWidget(QWidget *parent = 0, int layer = 0);
|
|
~AudioLayerWidget();
|
|
|
|
private:
|
|
Status m_status;
|
|
int m_layer;
|
|
QPushButton *m_suspendResumeButton;
|
|
ClickableLabel *m_fileValue;
|
|
ClickableLabel * m_folderValue;
|
|
SliderGroup *m_volume;
|
|
SliderGroup *m_pan;
|
|
SliderGroup *m_pitch;
|
|
QTimeEdit *m_progressTime;
|
|
QTimeEdit *m_totalTimeValue;
|
|
QProgressBar *m_progress;
|
|
|
|
// From DMX
|
|
public slots:
|
|
void setMediaFile(QString file);
|
|
void setDuration(float dur);
|
|
void setCurrentTime(float progress);
|
|
void setPlaybackStatus(Status status);
|
|
void setVol(float vol);
|
|
void setPan(int pan);
|
|
void setPitch(int pitch);
|
|
|
|
// From Ui
|
|
private slots:
|
|
void openMediaDialog();
|
|
void toggleSuspendResume();
|
|
void volumeChanged(int vol);
|
|
void panChanged(int pan);
|
|
void pitchChanged(int pitch);
|
|
|
|
signals:
|
|
void uiPlaybackChanged(int layer, Status s);
|
|
void uiSliderChanged(int layer, Slider s, int value);
|
|
void uiLoadMedia(int layer, QString s);
|
|
};
|
|
|
|
#endif // AUDIOLAYERWIDGET_H
|