#include "rm_frame_eq.h" #if !(DO_NOT_USE_EQ) #include "rm_slider.h" #include "fm_button.h" #include "fm_layer.h" #include "../core/rm_player.h" #include "../core/fm_strings.h" #include "fm_colors.h" #if (PLAYER_ONLY_LIBRARY_MODE) #include "window_main.h" #endif // PLAYER_ONLY_LIBRARY_MODE RMFrameEQ::RMFrameEQ(QWidget *parent) : RMWidgetBase(parent,true) { _createLayouts(); } void RMFrameEQ::_createLayouts() { RMPlayer* player = RMPlayer::instance(); layout = new QHBoxLayout(this); ZERO_LAYOUT(layout); layout->setAlignment(Qt::AlignVCenter); LAYOUT_SPACE(layout,4,0); QSize btnSize = QSize(30,30); const int sliderWidth = 114; const int space = 20; #if (LIVE_LANGUAGE2) contrastBtn = FMButton::btn2(this,layout,"v_constrast","contrast",btnSize); #else // LIVE_LANGUAGE2 contrastBtn = FMButton::btn(this,layout,"v_constrast",FMS::txt("contrast"),btnSize); #endif // LIVE_LANGUAGE2 contrastSlider = new RMSlider(this); contrastSlider->setValue(50); contrastSlider->setFixedWidth(sliderWidth); FMSlider(contrastSlider,"small_slider",FM_SILDER_COLOR,0x666666,true); layout->addWidget(contrastSlider); connect(contrastBtn,SIGNAL(clicked()),SLOT(onDefaultContrast())); LAYOUT_SPACE(layout,space,0); #if (LIVE_LANGUAGE2) brightnessBtn = FMButton::btn2(this,layout,"v_brightness","brightness",btnSize); #else // LIVE_LANGUAGE2 brightnessBtn = FMButton::btn(this,layout,"v_brightness",FMS::txt("brightness"),btnSize); #endif // LIVE_LANGUAGE2 brightnessSlider = new RMSlider(this); brightnessSlider->setValue(50); brightnessSlider->setFixedWidth(sliderWidth); FMSlider(brightnessSlider,"small_slider",FM_SILDER_COLOR,0x666666,true); layout->addWidget(brightnessSlider); connect(brightnessBtn,SIGNAL(clicked()),SLOT(onDefaultBrightness())); 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())); #if !(RM_MODEL == RM_MODEL_TYPE_TB4000) LAYOUT_SPACE(layout,space,0); #if (LIVE_LANGUAGE2) volumeBtn = FMButton::btnCheck2(this,layout,"v_volume","volume_mute",btnSize); #else // LIVE_LANGUAGE2 volumeBtn = FMButton::btnCheck(this,layout,"v_volume",FMS::txt("volume_mute"),btnSize); #endif // LIVE_LANGUAGE2 volumeBtn->setCheckable(true); connect(volumeBtn,SIGNAL(clicked()),player,SLOT(onMute())); volumeSlider = new RMSlider(this); volumeSlider->setMinimum(0); volumeSlider->setMaximum(100); volumeSlider->setValue(50); volumeSlider->setFixedWidth(sliderWidth); FMSlider(volumeSlider,"small_slider",FM_SILDER_COLOR,0x666666,true); layout->addWidget(volumeSlider); connect(volumeSlider, SIGNAL(sliderPressed()),player, SLOT(onSetVolume())); connect(volumeSlider, SIGNAL(valueChanged(int)),player, SLOT(onSetVolume())); #endif // #if !(RM_MODEL == RM_MODEL_TYPE_TB4000) LAYOUT_SPACE(layout,space,0); #if (LIVE_LANGUAGE2) speedBtn = FMButton::btn2(this,layout,"v_speed","play_speed",btnSize); #else // LIVE_LANGUAGE2 speedBtn = FMButton::btn(this,layout,"v_speed",FMS::txt("play_speed"),btnSize); #endif // LIVE_LANGUAGE2 connect(speedBtn,SIGNAL(clicked()),SLOT(onDefaultSpeed())); speedSlider = new RMReleasedSlider(this); speedSlider->setTickInterval(1); speedSlider->setValue(DEFAULT_SPEED_INDEX); // 1.0 = 2 speedSlider->setRange(0,PLAY_SPEED_COUNT-1); speedSlider->setFixedWidth(sliderWidth); FMSlider(speedSlider,"small_slider",FM_SILDER_COLOR,0x666666,true); layout->addWidget(speedSlider); LAYOUT_SPACE(layout,5,0); speedLabel = new QLabel(this); speedLabel->setAlignment(Qt::AlignCenter); FMLabelBackground(speedLabel,"speed_label","Arial",0xf5f5f5,11,false,FM_SPEED_LABEL_BACK_COLOR); // 0x262626 speedLabel->setText("1 x"); speedLabel->setFixedSize(25,16); layout->addWidget(speedLabel); RMPlayer::instance()->setSpeedSlider(speedSlider,speedLabel); #if !(RM_MODEL == RM_MODEL_TYPE_TB4000) RMPlayer::instance()->setVolumeSlider(volumeSlider); RMPlayer::instance()->setMuteButton(volumeBtn); #endif // #if !(RM_MODEL == RM_MODEL_TYPE_TB4000) connect(player,SIGNAL(playEvent(PLAY_EVENT,RMVideoItem*)),SLOT(onPlayEvent(PLAY_EVENT,RMVideoItem*))); #if (PLAYER_ONLY_LIBRARY_MODE) layout->addItem(new QSpacerItem(10,0)); previousButton = FMButton::btn(this,layout,"vt_prev_file","play_file_previous",QSize(52,26)); connect(previousButton, SIGNAL(released()),this,SLOT(onPlayPrevious())); playButton = FMButton::btnCheck(this,layout,"splay_play","play_play",QSize(52,26)); connect(playButton, SIGNAL(released()),this,SLOT(onPlayOrPause())); nextButton = FMButton::btn(this,layout,"vt_next_file","play_file_next",QSize(52,26)); connect(nextButton, SIGNAL(released()),this,SLOT(onPlayNext())); #endif // LIBRARY_MODE } #if (PLAYER_ONLY_LIBRARY_MODE) void RMFrameEQ::onPlayOrPause() { playButton->blockFor(150); RMPlayer::instance()->onPlayOrPause(); } void RMFrameEQ::onPlayPrevious() { RMPlayer::instance()->stop(); WindowMain* p = qobject_cast(RMApp::instance()->pMainWindow); p->_onTB5000(1); } void RMFrameEQ::onPlayNext() { RMPlayer::instance()->stop(); WindowMain* p = qobject_cast(RMApp::instance()->pMainWindow); p->_onTB5000(2); } #endif // #if (PLAYER_ONLY_LIBRARY_MODE) RMFrameEQ::~RMFrameEQ() { } void RMFrameEQ::onPlayEvent(PLAY_EVENT event,RMVideoItem* item) { Q_UNUSED(item); if (event == PLAY_DID_MUTED || event == PLAY_DID_UNMUTED) { #if !(RM_MODEL == RM_MODEL_TYPE_TB4000) bool bMuted = event == PLAY_DID_MUTED; // ミュートの解除 MKU8("\xe3\x83\x9f\xe3\x83\xa5\xe3\x83\xbc\xe3\x83\x88\xe3\x81\xae\xe8\xa7\xa3\xe9\x99\xa4") volumeBtn->setToolTip(bMuted ? FMS::txt("volume_un_mute") : FMS::txt("volume_mute")); volumeSlider->setEnabled(!bMuted); volumeBtn->setChecked(bMuted); //qInfo() << __FUNCTION__ << bMuted; #endif // #if !(RM_MODEL == RM_MODEL_TYPE_TB4000) } #if (PLAYER_ONLY_LIBRARY_MODE) if(event == PLAY_DID_PAUSED || event == PLAY_DID_PLAYED || event == PLAY_DID_CLEARED) { bool bShowPaused = (event == PLAY_DID_PLAYED); playButton->setChecked(bShowPaused); playButton->setToolTip(bShowPaused ? FMS::txt("play_pause") :FMS::txt("play_play")); } #endif // #if (PLAYER_ONLY_LIBRARY_MODE) } void RMFrameEQ::onDefaultSpeed() { speedSlider->setValue(DEFAULT_SPEED_INDEX); RMPlayer::instance()->updateSpeedForce(1.0); speedLabel->setText("1 x"); } void RMFrameEQ::onDefaultBrightness() { brightnessSlider->setValue(50); } void RMFrameEQ::onDefaultContrast() { contrastSlider->setValue(50); } #endif // #if !(DO_NOT_USE_EQ)