⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 opts.c

📁 Mplayer源码
💻 C
📖 第 1 页 / 共 5 页
字号:
  g_list_free( Items );  if ( name ) gtk_entry_set_text( GTK_ENTRY( EVFM ),name ); } {  int     i;  GList * Items = NULL;  char  * name = NULL;  Items=g_list_append( Items,MSGTR_PREFERENCES_None );  for( i=0;mpcodecs_ad_drivers[i];i++ )   {    Items=g_list_append( Items,(char *)mpcodecs_ad_drivers[i]->info->name );    if ( audio_fm_list && !gstrcmp( audio_fm_list[0],(char *)mpcodecs_ad_drivers[i]->info->short_name ) ) name=(char *)mpcodecs_ad_drivers[i]->info->name;   }  gtk_combo_set_popdown_strings( GTK_COMBO( CBAFM ),Items );  g_list_free( Items );  if ( name ) gtk_entry_set_text( GTK_ENTRY( EAFM ),name ); }// --- 6. page gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBPostprocess ),gtkVopPP ); gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBLoadFullscreen ),gtkLoadFullscreen ); gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBSaveWinPos ),gui_save_pos ); gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBShowVideoWindow ),gtkShowVideoWindow ); if ( !gtkShowVideoWindow )  {   gtk_widget_set_sensitive( CBLoadFullscreen,FALSE );   gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBLoadFullscreen ),0 );  } gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBStopXScreenSaver ),stop_xscreensaver ); gtk_adjustment_set_value( HSPPQualityadj,auto_quality ); gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBPlayBar ),gtkEnablePlayBar ); if ( !appMPlayer.barIsPresent )  {   gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBPlayBar ),0 );   gtk_widget_set_sensitive( CBPlayBar,FALSE );  } gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBCache ),0 ); gtk_adjustment_set_value( SBCacheadj,(float)gtkCacheSize ); if ( !gtkCacheOn ) gtk_widget_set_sensitive( SBCache,FALSE );  else gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBCache ),TRUE );   gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBAutoSync ),0 ); gtk_adjustment_set_value( SBAutoSyncadj,(float)gtkAutoSync ); if ( !gtkAutoSyncOn ) gtk_widget_set_sensitive( SBAutoSync,FALSE );  else gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBAutoSync ),TRUE ); if ( dvd_device ) gtk_entry_set_text( GTK_ENTRY( prEDVDDevice ),dvd_device );  else gtk_entry_set_text( GTK_ENTRY( prEDVDDevice ),DEFAULT_DVD_DEVICE ); if ( cdrom_device ) gtk_entry_set_text( GTK_ENTRY( prECDRomDevice ),cdrom_device );  else gtk_entry_set_text( GTK_ENTRY( prECDRomDevice ),DEFAULT_CDROM_DEVICE );// -- disables#ifndef USE_SUB gtk_widget_set_sensitive( AConfig,FALSE ); gtk_widget_set_sensitive( CBNoAutoSub,FALSE ); gtk_widget_set_sensitive( CBSubOverlap,FALSE ); gtk_widget_set_sensitive( CBSubUnicode,FALSE ); gtk_widget_set_sensitive( CBDumpMPSub,FALSE ); gtk_widget_set_sensitive( CBDumpSrt,FALSE ); gtk_widget_set_sensitive( HSSubDelay,FALSE ); gtk_widget_set_sensitive( HSSubPosition,FALSE ); gtk_widget_set_sensitive( HSSubFPS,FALSE );#endif#ifndef USE_OSD gtk_widget_set_sensitive( RBOSDNone,FALSE ); gtk_widget_set_sensitive( RBOSDTandP,FALSE ); gtk_widget_set_sensitive( RBOSDIndicator,FALSE ); gtk_widget_set_sensitive( RBOSDTPTT,FALSE );#endif#if !defined( USE_OSD ) && !defined( USE_SUB ) gtk_widget_set_sensitive( HSFontFactor,FALSE ); gtk_widget_set_sensitive( prEFontName,FALSE ); gtk_widget_set_sensitive( BLoadFont,FALSE );#endif// -- signals gtk_signal_connect( GTK_OBJECT( CBExtraStereo ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)0 ); gtk_signal_connect( GTK_OBJECT( CBNormalize ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)1 ); gtk_signal_connect( GTK_OBJECT( CBSoftwareMixer ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)1 ); gtk_signal_connect( GTK_OBJECT( CBAudioEqualizer ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)2 ); gtk_signal_connect( GTK_OBJECT( CBShowVideoWindow ),"toggled",GTK_SIGNAL_FUNC( prToggled ), (void*)3 );#ifdef HAVE_FREETYPE gtk_signal_connect( GTK_OBJECT( RBFontNoAutoScale ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)4 ); gtk_signal_connect( GTK_OBJECT( RBFontAutoScaleHeight ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)5 ); gtk_signal_connect( GTK_OBJECT( RBFontAutoScaleWidth ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)6 ); gtk_signal_connect( GTK_OBJECT( RBFontAutoScaleDiagonal ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)7 );#endif gtk_signal_connect( GTK_OBJECT( CBCache ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)8); gtk_signal_connect( GTK_OBJECT( CBAutoSync ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)9); gtk_signal_connect( GTK_OBJECT( HSExtraStereoMul ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)0 ); gtk_signal_connect( GTK_OBJECT( HSAudioDelay ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)1 ); gtk_signal_connect( GTK_OBJECT( HSPanscan ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)2 ); gtk_signal_connect( GTK_OBJECT( HSSubDelay ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)3 ); gtk_signal_connect( GTK_OBJECT( HSSubPosition ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)4 );#ifndef HAVE_FREETYPE gtk_signal_connect( GTK_OBJECT( HSFontFactor ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)5 );#else gtk_signal_connect( GTK_OBJECT( HSFontBlur ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)6 ); gtk_signal_connect( GTK_OBJECT( HSFontOutLine ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)7 ); gtk_signal_connect( GTK_OBJECT( HSFontTextScale ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)8 ); gtk_signal_connect( GTK_OBJECT( HSFontOSDScale ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)9 ); gtk_signal_connect( GTK_OBJECT( EFontEncoding ),"changed",GTK_SIGNAL_FUNC( prEntry ),(void *)0 );#endif#ifdef USE_ICONV gtk_signal_connect( GTK_OBJECT( ESubEncoding ),"changed",GTK_SIGNAL_FUNC( prEntry ),(void *)1 );#endif gtk_signal_connect( GTK_OBJECT( HSPPQuality ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)10 );  gtk_signal_connect( GTK_OBJECT( CLADrivers ),"select_row",GTK_SIGNAL_FUNC( prCListRow ),(void*)0 ); gtk_signal_connect( GTK_OBJECT( CLVDrivers ),"select_row",GTK_SIGNAL_FUNC( prCListRow ),(void*)1 ); gtk_widget_show( Preferences ); gtkSetLayer( Preferences ); {  static int visible = 1;  if ( visible )    {    gtkMessageBox( GTK_MB_WARNING,MSGTR_PREFERENCES_Message );    visible=0;   } }}void HidePreferences( void ){ if ( !Preferences ) return; gtk_widget_hide( Preferences ); gtk_widget_destroy( Preferences ); Preferences=NULL; HideAudioConfig();#ifdef HAVE_DXR3 HideDXR3Config();#endif}#if defined( HAVE_FREETYPE ) || defined( USE_ICONV )static void prEntry( GtkContainer * container,gpointer user_data ){	 char * comment; int    i; switch( (int)user_data )  {#ifdef HAVE_FREETYPE   case 0: // font encoding        comment=gtk_entry_get_text( GTK_ENTRY( EFontEncoding ) );        for ( i=0;lEncoding[i].name;i++ )	  if ( !gstrcmp( lEncoding[i].comment,comment ) ) break;	if ( lEncoding[i].comment ) gtkSet( gtkSetFontEncoding,0,lEncoding[i].name );	break;#endif#ifdef USE_ICONV   case 1: // sub encoding        comment=gtk_entry_get_text( GTK_ENTRY( ESubEncoding ) );        for ( i=0;lEncoding[i].name;i++ )	  if ( !gstrcmp( lEncoding[i].comment,comment ) ) break;	if ( lEncoding[i].comment ) gtkSet( gtkSetSubEncoding,0,lEncoding[i].name );	 else gtkSet( gtkSetSubEncoding,0,NULL );	break;#endif  }}#endif#define bAConfig   0#define bVconfig   1#define bOk	   2#define bCancel    3#define bLSubtitle 4#define bLFont     5void prButton( GtkButton * button,gpointer user_data ){ switch ( (int)user_data )  {   case bOk:	// -- 1. page        gtkEnableAudioEqualizer=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBAudioEqualizer ) );	gtkAOExtraStereo=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBExtraStereo ) );	gtkAONorm=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNormalize ) );	soft_vol=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBSoftwareMixer ) );	gtkSet( gtkSetExtraStereo,HSExtraStereoMuladj->value,NULL );	audio_delay=HSAudioDelayadj->value;	gaddlist( &audio_driver_list,ao_driver[0] );	gaddlist( &video_driver_list,vo_driver[0] );	// -- 2. page	vo_doublebuffering=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDoubleBuffer ) );	vo_directrendering=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDR ) );        frame_dropping=0;	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBFramedrop ) ) == TRUE ) frame_dropping=1;	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBHFramedrop ) ) == TRUE ) frame_dropping=2;	flip=-1;	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBFlip ) ) ) flip=1;	force_fps=HSFPSadj->value;		// -- 3. page	suboverlap_enabled=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBSubOverlap ) );	sub_auto=!gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNoAutoSub ) );	gtkSubDumpMPSub=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDumpMPSub ) );	gtkSubDumpSrt=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDumpSrt ) );	sub_unicode=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBSubUnicode ) );	sub_delay=HSSubDelayadj->value;	sub_fps=HSSubFPSadj->value;	sub_pos=(int)HSSubPositionadj->value;	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBOSDNone ) ) ) osd_level=0;	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBOSDIndicator ) ) ) osd_level=1;	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBOSDTandP ) ) ) osd_level=2;	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBOSDTPTT ) ) ) osd_level=3;	        // --- 4. page	guiSetFilename( font_name,gtk_entry_get_text( GTK_ENTRY( prEFontName ) ) );#ifndef HAVE_FREETYPE	gtkSet( gtkSetFontFactor,HSFontFactoradj->value,NULL );#else	gtkSet( gtkSetFontBlur,HSFontBluradj->value,NULL );	gtkSet( gtkSetFontOutLine,HSFontOutLineadj->value,NULL );	gtkSet( gtkSetFontTextScale,HSFontTextScaleadj->value,NULL );	gtkSet( gtkSetFontOSDScale,HSFontOSDScaleadj->value,NULL );	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBFontNoAutoScale ) ) ) gtkSet( gtkSetFontAutoScale,0,NULL );	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBFontAutoScaleHeight ) ) ) gtkSet( gtkSetFontAutoScale,1,NULL );	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBFontAutoScaleWidth ) ) ) gtkSet( gtkSetFontAutoScale,2,NULL );	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBFontAutoScaleDiagonal ) ) ) gtkSet( gtkSetFontAutoScale,3,NULL );#endif	// -- 5. page	force_ni=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNonInterlaved ) );	index_mode=-1;	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBIndex ) ) ) index_mode=1;	{	 int i;	 char * tmp = gtk_entry_get_text( GTK_ENTRY( EVFM ) );         for( i=0;mpcodecs_vd_drivers[i];i++ )          if ( !gstrcmp( tmp,(char *)mpcodecs_vd_drivers[i]->info->name ) ) 	   { gaddlist( &video_fm_list,(char *)mpcodecs_vd_drivers[i]->info->short_name ); break; }	}	{	 int i;	 char * tmp = gtk_entry_get_text( GTK_ENTRY( EAFM ) );         for( i=0;mpcodecs_ad_drivers[i];i++ )          if ( !gstrcmp( tmp,(char *)mpcodecs_ad_drivers[i]->info->name ) )	   { gaddlist( &audio_fm_list,(char *)mpcodecs_ad_drivers[i]->info->short_name ); break; }	}	// --- 6. page	gtkVopPP=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBPostprocess ) ); 	gtkLoadFullscreen=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBLoadFullscreen ) );	gui_save_pos=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBSaveWinPos ) );	gtkShowVideoWindow=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBShowVideoWindow ) );	stop_xscreensaver=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBStopXScreenSaver ) );	gtkEnablePlayBar=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBPlayBar ) );	gtkSet( gtkSetAutoq,HSPPQualityadj->value,NULL );	if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBCache ) ) ) { gtkCacheSize=(int)SBCacheadj->value; gtkCacheOn=1; }	 else gtkCacheOn=0;		if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBAutoSync ) ) ) { gtkAutoSync=(int)SBAutoSyncadj->value; gtkAutoSyncOn=1; }	 else gtkAutoSyncOn=0;	guiSetFilename( dvd_device,gtk_entry_get_text( GTK_ENTRY( prEDVDDevice ) ) );	guiSetFilename( cdrom_device,gtk_entry_get_text( GTK_ENTRY( prECDRomDevice ) ) );   case bCancel:	HidePreferences();	break;   case bAConfig:	if ( !ao_driver[0] ) break;        gtk_widget_set_sensitive( AConfig,FALSE );        if ( !strncmp( ao_driver[0],"oss",3 ) ||             !strncmp( ao_driver[0],"alsa",4 ) ||             !strncmp( ao_driver[0],"esd",3 ) ||             !strncmp( ao_driver[0],"sdl",3 ) ) {          ShowAudioConfig();          gtk_widget_set_sensitive( AConfig,TRUE );        }	break;   case bVconfig:	if ( !vo_driver[0] ) break;        gtk_widget_set_sensitive( VConfig,FALSE );#ifdef HAVE_DXR3	if ( !gstrcmp( vo_driver[0],"dxr3" ) ) { ShowDXR3Config(); gtk_widget_set_sensitive( VConfig,TRUE ); }#endif	break;#if 0   case bLSubtitle:	break;#endif   case bLFont:        ShowFileSelect( fsFontSelector,FALSE );	gtkSetLayer( fsFileSelect );	break;  }}static gboolean prHScaler( GtkWidget * widget,GdkEventMotion  * event,gpointer user_data ){ switch ( (int)user_data )  {   case 0: // extra stereo coefficient	if ( !guiIntfStruct.Playing ) break;	gtkSet( gtkSetExtraStereo,HSExtraStereoMuladj->value,NULL );	break;   case 1: // audio delay	audio_delay=HSAudioDelayadj->value;	break;   case 2: // panscan        gtkSet( gtkSetPanscan,HSPanscanadj->value,NULL );	break;   case 3: // sub delay        sub_delay=HSSubDelayadj->value;	break;   case 4: // sub position        sub_pos=(int)HSSubPositionadj->value;	break;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -