void PrefGeneral::setData(Preferences * pref) { setMplayerPath( pref->mplayer_bin ); setScreenshotDir( pref->screenshot_directory ); QString vo = pref->vo; if (vo.isEmpty()) { #ifdef Q_OS_WIN vo = "directx,"; #else vo = "xv,"; #endif } setVO( vo ); QString ao = pref->ao; #ifndef Q_OS_WIN if (ao.isEmpty()) ao = "alsa,"; #endif setAO( ao ); setRememberSettings( !pref->dont_remember_media_settings ); setRememberTimePos( !pref->dont_remember_time_pos ); setFileSettingsMethod( pref->file_settings_method ); setAudioLang( pref->audio_lang ); setSubtitleLang( pref->subtitle_lang ); setAudioTrack( pref->initial_audio_track ); setSubtitleTrack( pref->initial_subtitle_track ); setCloseOnFinish( pref->close_on_finish ); setPauseWhenHidden( pref->pause_when_hidden ); setEq2( pref->use_soft_video_eq ); setUseAudioEqualizer( pref->use_audio_equalizer ); setSoftVol( pref->use_soft_vol ); setAc3DTSPassthrough( pref->use_hwac3 ); setInitialVolNorm( pref->initial_volnorm ); setAmplification( pref->softvol_max ); setInitialPostprocessing( pref->initial_postprocessing ); setInitialDeinterlace( pref->initial_deinterlace ); setInitialZoom( pref->initial_panscan_factor ); setDirectRendering( pref->use_direct_rendering ); setDoubleBuffer( pref->use_double_buffer ); setUseSlices( pref->use_slices ); setStartInFullscreen( pref->start_in_fullscreen ); setDisableScreensaver( pref->disable_screensaver ); setBlackbordersOnFullscreen( pref->add_blackborders_on_fullscreen ); setAutoq( pref->autoq ); setInitialVolume( pref->initial_volume ); setDontChangeVolume( pref->dont_change_volume ); setUseVolume( pref->use_volume_option ); setAudioChannels( pref->initial_audio_channels ); setScaleTempoFilter( pref->use_scaletempo ); }
VideoPreview::VideoPreview(QString mplayer_path, QWidget * parent) : QWidget(parent, Qt::Window) { setMplayerPath(mplayer_path); set = 0; // settings save_last_directory = true; prop.input_video.clear(); prop.dvd_device.clear(); prop.n_cols = 4; prop.n_rows = 4; prop.initial_step = 20; prop.max_width = 800; prop.aspect_ratio = 0; prop.display_osd = true; prop.extract_format = JPEG; output_dir = "smplayer_preview"; full_output_dir = QDir::tempPath() +"/"+ output_dir; progress = new QProgressDialog(this); progress->setMinimumDuration(0); connect( progress, SIGNAL(canceled()), this, SLOT(cancelPressed()) ); w_contents = new QWidget(this); w_contents->setContentsMargins(0, 0, 0, 0); QPalette p = w_contents->palette(); p.setColor(w_contents->backgroundRole(), Qt::white); p.setColor(w_contents->foregroundRole(), Qt::black); w_contents->setPalette(p); info = new QLabel(this); foot = new QLabel(this); foot->setAlignment(Qt::AlignRight); grid_layout = new QGridLayout; grid_layout->setSpacing(2); grid_layout->setContentsMargins(0, 0, 0, 0); QVBoxLayout * l = new QVBoxLayout; l->setContentsMargins(4, 4, 4, 4); l->setSpacing(0); l->setSizeConstraint(QLayout::SetFixedSize); l->addWidget(info); l->addLayout(grid_layout); l->addWidget(foot); w_contents->setLayout(l); scroll_area = new QScrollArea(this); scroll_area->setWidgetResizable(true); scroll_area->setAlignment(Qt::AlignCenter); scroll_area->setWidget( w_contents ); button_box = new QDialogButtonBox(QDialogButtonBox::Close | QDialogButtonBox::Save, Qt::Horizontal, this); connect( button_box, SIGNAL(rejected()), this, SLOT(close()) ); connect( button_box->button(QDialogButtonBox::Save), SIGNAL(clicked()), this, SLOT(saveImage()) ); QVBoxLayout * my_layout = new QVBoxLayout; my_layout->addWidget(scroll_area); my_layout->addWidget(button_box); setLayout(my_layout); retranslateStrings(); QList<QByteArray> r_formats = QImageReader::supportedImageFormats(); QString read_formats; for (int n=0; n < r_formats.count(); n++) { read_formats.append(r_formats[n]+" "); } qDebug("VideoPreview::VideoPreview: supported formats for reading: %s", read_formats.toUtf8().constData()); QList<QByteArray> w_formats = QImageWriter::supportedImageFormats(); QString write_formats; for (int n=0; n < w_formats.count(); n++) { write_formats.append(w_formats[n]+" "); } qDebug("VideoPreview::VideoPreview: supported formats for writing: %s", write_formats.toUtf8().constData()); toggleInfoAct = new QAction(this); toggleInfoAct->setCheckable(true); toggleInfoAct->setChecked(true); toggleInfoAct->setShortcut( QKeySequence("Ctrl+H") ); connect( toggleInfoAct, SIGNAL(toggled(bool)), this, SLOT(showInfo(bool)) ); addAction(toggleInfoAct); }