first commit
This commit is contained in:
137
project/fm_viewer/ui/rm_eq_widget.cpp
Normal file
137
project/fm_viewer/ui/rm_eq_widget.cpp
Normal file
@@ -0,0 +1,137 @@
|
||||
#include "rm_eq_widget.h"
|
||||
#include <QStyleOption>
|
||||
#include <QPainter>
|
||||
#include "rm_button.h"
|
||||
#include "../rm_include.h"
|
||||
#include "rm_slider.h"
|
||||
#include "../core/rm_player.h"
|
||||
#include "../core/rm_language.h"
|
||||
|
||||
#if (MODEL_BBVIEWER)
|
||||
RMEQWidget::RMEQWidget(QWidget *parent) : QWidget(parent)
|
||||
{
|
||||
#if (MODEL_WATEX)
|
||||
setFixedSize(202,167);
|
||||
setObjectName("eq_widget");
|
||||
#else
|
||||
setFixedWidth(104);
|
||||
#endif
|
||||
layout = new QVBoxLayout(this);
|
||||
layout->setMargin(0);
|
||||
layout->setSpacing(0);
|
||||
layout->setAlignment(Qt::AlignCenter);
|
||||
|
||||
// LINE
|
||||
// 再生速度
|
||||
RMButton* speedButton = NULL;
|
||||
_addLine(MKU8("\xe5\x86\x8d\xe7\x94\x9f\xe9\x80\x9f\xe5\xba\xa6"),":/image/icon_pbspeed.png",&speedButton,0);
|
||||
RMLanguage::instance()->appendENGToolTip(speedButton,"Playback speed");
|
||||
connect(speedButton,SIGNAL(clicked()),SLOT(onDefaultSpeed()));
|
||||
layout->addSpacerItem(new QSpacerItem(0,5));
|
||||
|
||||
RMButton* brightnessButton = NULL;
|
||||
_addLine(MKU8("\xe6\x98\x8e\xe3\x82\x8b\xe3\x81\x95"),":/image/icon_brightness.png",&brightnessButton,1);
|
||||
RMLanguage::instance()->appendENGToolTip(brightnessButton,"Brightness");
|
||||
|
||||
connect(brightnessButton,SIGNAL(clicked()),SLOT(onDefaultBrightness()));
|
||||
|
||||
layout->addSpacerItem(new QSpacerItem(0,5));
|
||||
|
||||
RMButton* contrastButton = NULL;
|
||||
_addLine(MKU8("\xe3\x82\xb3\xe3\x83\xb3\xe3\x83\x88\xe3\x83\xa9\xe3\x82\xb9\xe3\x83\x88"),":/image/icon_contrast.png",&contrastButton,2);
|
||||
RMLanguage::instance()->appendENGToolTip(contrastButton,"Contrast");
|
||||
connect(contrastButton,SIGNAL(clicked()),SLOT(onDefaultContrast()));
|
||||
|
||||
RMPlayer* player = RMPlayer::instance();
|
||||
|
||||
player->setEQFrame(this);
|
||||
|
||||
|
||||
connect(brightnessSlider, SIGNAL(sliderPressed()),player, SLOT(onSetBrightness()));
|
||||
connect(brightnessSlider, SIGNAL(valueChanged(int)),player, SLOT(onSetBrightness()));
|
||||
|
||||
connect(contrastSlider, SIGNAL(sliderPressed()),player, SLOT(onSetContrast()));
|
||||
connect(contrastSlider, SIGNAL(valueChanged(int)),player, SLOT(onSetContrast()));
|
||||
|
||||
}
|
||||
void RMEQWidget::_addLine(QString toolTip,QString icon,RMButton** btn, int type)
|
||||
{
|
||||
#if (MODEL_WATEX)
|
||||
QSize buttonSize = QSize(32,32);
|
||||
int spacing = 10;
|
||||
int margin = 8;
|
||||
#else
|
||||
QSize buttonSize = QSize(25,25);
|
||||
int spacing = 0;
|
||||
int margin = 0;
|
||||
#endif
|
||||
QWidget* lineWidget = new QWidget(this);
|
||||
layout->addWidget(lineWidget);
|
||||
QHBoxLayout* lineLayout = new QHBoxLayout(lineWidget);
|
||||
lineLayout->setMargin(margin);
|
||||
lineLayout->setSpacing(spacing);
|
||||
RMButton* bn = RMButton::create(lineWidget,lineLayout,"",toolTip,buttonSize);
|
||||
bn->setIcon(QPixmap(icon));
|
||||
bn->setIconSize(buttonSize);
|
||||
|
||||
if(type == 0)
|
||||
{
|
||||
speedSlider = new RMReleasedSlider(lineWidget);
|
||||
speedSlider->setObjectName("normal");
|
||||
speedSlider->setTickInterval(1);
|
||||
speedSlider->setValue(2); // 1.0 = 2
|
||||
speedSlider->setRange(0,4);
|
||||
lineLayout->addWidget(speedSlider);
|
||||
//speedSlider->setTickPosition(QSlider::TicksBothSides);
|
||||
|
||||
}
|
||||
else if (type == 1)
|
||||
{
|
||||
brightnessSlider = new RMSlider(lineWidget);
|
||||
brightnessSlider->setObjectName("normal");
|
||||
brightnessSlider->setRange(0,100);
|
||||
brightnessSlider->setValue(50);
|
||||
lineLayout->addWidget(brightnessSlider);
|
||||
}
|
||||
else if (type == 2)
|
||||
{
|
||||
contrastSlider = new RMSlider(lineWidget);
|
||||
contrastSlider->setObjectName("normal");
|
||||
contrastSlider->setRange(0,100);
|
||||
contrastSlider->setValue(50);
|
||||
lineLayout->addWidget(contrastSlider);
|
||||
}
|
||||
lineLayout->addSpacerItem(new QSpacerItem(10,0));
|
||||
*btn = bn;
|
||||
}
|
||||
|
||||
void RMEQWidget::paintEvent(QPaintEvent *pe)
|
||||
{
|
||||
Q_UNUSED(pe);
|
||||
QStyleOption o;
|
||||
o.initFrom(this);
|
||||
QPainter painter(this);
|
||||
style()->drawPrimitive(QStyle::PE_Widget, &o, &painter, this);
|
||||
}
|
||||
|
||||
void RMEQWidget::onDefaultSpeed()
|
||||
{
|
||||
speedSlider->setValue(2);
|
||||
RMPlayer::instance()->updateSpeedForce(1.0);
|
||||
// emit speedSlider->sliderMoved(2);
|
||||
// emit speedSlider->sliderReleased();
|
||||
//RMPlayer::instance()->updateSpeed(1.0);
|
||||
}
|
||||
void RMEQWidget::onDefaultBrightness()
|
||||
{
|
||||
brightnessSlider->setValue(50);
|
||||
}
|
||||
void RMEQWidget::onDefaultContrast()
|
||||
{
|
||||
contrastSlider->setValue(50);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // #if (MODEL_BBVIEWER)
|
||||
Reference in New Issue
Block a user