summaryrefslogtreecommitdiffstats
path: root/Gui/mplayer/gtk/opts.c
diff options
context:
space:
mode:
authorpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-07-25 20:26:38 +0000
committerpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-07-25 20:26:38 +0000
commitb1be9a6a39d94fc1cbe00eaaa7c7425c081d0721 (patch)
tree67e25086b99bac66ff938b93dfffb24d0de693c9 /Gui/mplayer/gtk/opts.c
parent9ba7dabbab413d4eab2c262589276538b1193a09 (diff)
downloadmpv-b1be9a6a39d94fc1cbe00eaaa7c7425c081d0721.tar.bz2
mpv-b1be9a6a39d94fc1cbe00eaaa7c7425c081d0721.tar.xz
- add preferences support (first try)
- fix some playlist bug - fix some equ bug - fix some redraw bug - fix dvd playing - fix file open dialog box - etc. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6795 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'Gui/mplayer/gtk/opts.c')
-rw-r--r--Gui/mplayer/gtk/opts.c2318
1 files changed, 1578 insertions, 740 deletions
diff --git a/Gui/mplayer/gtk/opts.c b/Gui/mplayer/gtk/opts.c
index 957247044d..cf8fa11dfb 100644
--- a/Gui/mplayer/gtk/opts.c
+++ b/Gui/mplayer/gtk/opts.c
@@ -1,792 +1,1630 @@
-#include <stdlib.h>
-#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+#include <string.h>
-#include "../mplayer.h"
+#include <gdk/gdkkeysyms.h>
+#include <gtk/gtk.h>
-#include "../../events.h"
#include "../../../config.h"
#include "../../../help_mp.h"
-
+#include "../../../mixer.h"
+#include "../../../libao2/audio_out.h"
+#include "../../../libvo/video_out.h"
+#include "../../cfg.h"
+#include "../../interface.h"
#include "../widgets.h"
#include "opts.h"
-
-GtkWidget * opAudioFrameLabel;
-GtkWidget * opAudioLabel;
-GtkWidget * opAudioDriverMenu;
-GtkWidget * opDelayLabel;
-GtkWidget * opAudioDelaySkinButton;
-GtkWidget * opAudioConfigureButton;
-GtkWidget * OpVideoFrameLabel;
-GtkWidget * opVideoLabel;
-GtkWidget * opVideoMenu;
-GtkWidget * opOsdCheckButton;
-GtkWidget * opVideoConfButton;
-GtkWidget * opOSDLabel;
-GtkWidget * opOSDLevelSpinButton;
-GtkWidget * opAutoFullscreenCheckBox;
-GtkWidget * opOk;
-GtkWidget * opCancel;
-
-int opShift = 0;
-
-void HideOptions( void )
-{ gtk_widget_destroy( Options ); }
-
-gboolean on_window2_key_press_event( GtkWidget * widget,GdkEventKey * event,gpointer user_data )
+#include "fs.h"
+
+ GtkWidget * Preferences;
+static GtkWidget * AConfig;
+static GtkWidget * VConfig;
+//static GtkWidget * BLoadSubtitle;
+static GtkWidget * BLoadFont;
+static GtkWidget * BOk;
+static GtkWidget * BCancel;
+
+static GtkWidget * CLADrivers;
+static GtkWidget * CLVDrivers;
+
+//static GtkWidget * ESubtitleName;
+ GtkWidget * prEFontName;
+static GtkWidget * EVFM;
+
+static GtkWidget * CBVFM;
+static GtkWidget * CBAudioEqualizer;
+static GtkWidget * CBVideoEqualizer;
+//static GtkWidget * CBSurround;
+static GtkWidget * CBExtraStereo;
+static GtkWidget * CBNoSound;
+static GtkWidget * CBNormalize;
+static GtkWidget * CBDoubleBuffer;
+static GtkWidget * CBDR;
+static GtkWidget * CBFramedrop;
+static GtkWidget * CBHFramedrop;
+//static GtkWidget * CBFullScreen;
+static GtkWidget * CBNonInterlaved;
+static GtkWidget * CBIndex;
+static GtkWidget * CBFlip;
+static GtkWidget * CBNoAutoSub;
+static GtkWidget * CBSubUnicode;
+static GtkWidget * CBDumpMPSub;
+static GtkWidget * CBDumpSrt;
+static GtkWidget * CBPostprocess;
+
+static GtkWidget * RBOSDNone;
+static GtkWidget * RBOSDTandP;
+static GtkWidget * RBOSDIndicator;
+
+static GtkWidget * HSAudioDelay;
+static GtkWidget * HSExtraStereoMul;
+static GtkWidget * HSPanscan;
+static GtkWidget * HSSubDelay;
+static GtkWidget * HSSubPosition;
+static GtkWidget * HSSubFPS;
+static GtkWidget * HSFontFactor;
+static GtkWidget * HSPPQuality;
+
+static GtkAdjustment * HSExtraStereoMuladj, * HSAudioDelayadj, * HSPanscanadj, * HSSubDelayadj;
+static GtkAdjustment * HSSubPositionadj, * HSSubFPSadj, * HSFontFactoradj, * HSPPQualityadj;
+
+static struct
{
- switch ( event->keyval )
- {
- case GDK_Shift_L:
- case GDK_Shift_R:
- opShift=1;
- break;
- }
- return 0;
-}
-
-gboolean on_window2_key_release_event( GtkWidget * widget,GdkEventKey * event,gpointer user_data )
+ int vfm;
+ char * name;
+} lVFM[] =
+{ { -1,MSGTR_PREFERENCES_None },
+ { 2,MSGTR_PREFERENCES_Codec1 },
+ { 3,MSGTR_PREFERENCES_Codec2 },
+ { 4,MSGTR_PREFERENCES_Codec3 },
+ { 5,MSGTR_PREFERENCES_Codec4 },
+ { 7,MSGTR_PREFERENCES_Codec5 },
+ { 10,MSGTR_PREFERENCES_Codec6 } };
+
+ int gtkVPreferences = 0;
+static int gtkVOSSConfig = 0;
+static int old_audio_driver = 0;
+static char * ao_driver[2];
+static char * vo_driver[2];
+static int old_video_driver = 0;
+
+void ShowOSSConfig( void );
+void HideOSSConfig( void );
+static gboolean prHScaler( GtkWidget * widget,GdkEventMotion * event,gpointer user_data );
+static void prToggled( GtkToggleButton * togglebutton,gpointer user_data );
+static void prCListRow( GtkCList * clist,gint row,gint column,GdkEvent * event,gpointer user_data );
+
+extern int muted;
+
+void ShowPreferences( void )
{
- switch ( event->keyval )
+ if ( gtkVPreferences ) gtkActive( Preferences );
+ else Preferences=create_Preferences();
+
+// -- 1. page
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBAudioEqualizer ),gtkEnableAudioEqualizer );
+ gtkAONoSound=muted;
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBNoSound ),gtkAONoSound );
+#if 0
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBSurround ),gtkAOSurround );
+#endif
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBExtraStereo ),gtkAOExtraStereo );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBNormalize ),gtkAONorm );
+ gtk_adjustment_set_value( HSExtraStereoMuladj,gtkAOExtraStereoMul );
+ {
+ int i = 0;
+ char * tmp[2]; tmp[1]="";
+ old_audio_driver=0;
+ while ( audio_out_drivers[i] )
+ {
+ const ao_info_t *info = audio_out_drivers[i++]->info;
+ if ( !strcmp( info->short_name,"plugin" ) ) continue;
+ if ( gtkAODriver )
+ if ( !strcmp( gtkAODriver,info->short_name ) ) old_audio_driver=i - 1;
+ tmp[0]=(char *)info->name; gtk_clist_append( GTK_CLIST( CLADrivers ),tmp );
+ }
+ gtk_clist_select_row( GTK_CLIST( CLADrivers ),old_audio_driver,0 );
+ gtk_clist_get_text( GTK_CLIST( CLADrivers ),old_audio_driver,0,(char **)&ao_driver );
+ gtk_widget_set_sensitive( AConfig,FALSE );
+ if ( !strcmp( ao_driver[0],"OSS/ioctl audio output" ) ) gtk_widget_set_sensitive( AConfig,TRUE );
+ }
+
+// -- 2. page
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBVideoEqualizer ),gtkEnableVideoEqualizer );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDoubleBuffer ),gtkVODoubleBuffer );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDR ),gtkVODirectRendering );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBFramedrop ),gtkVFrameDrop );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBHFramedrop ),gtkVHardFrameDrop );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBFlip ),gtkVFlip );
+ gtk_adjustment_set_value( HSPanscanadj,vo_panscan );
+ {
+ int i = 0, c = 0;
+ char * tmp[2]; tmp[1]="";
+ old_video_driver=0;
+ while ( video_out_drivers[i] )
+ if ( video_out_drivers[i++]->control( VOCTRL_GUISUPPORT,NULL ) == VO_TRUE )
+ {
+ const vo_info_t *info = video_out_drivers[i - 1]->get_info();
+ if ( gtkVODriver )
+ if ( !strcmp( gtkVODriver,info->short_name ) ) old_video_driver=c; c++;
+ tmp[0]=(char *)info->short_name; gtk_clist_append( GTK_CLIST( CLVDrivers ),tmp );
+ }
+ gtk_clist_select_row( GTK_CLIST( CLVDrivers ),old_video_driver,0 );
+ gtk_clist_get_text( GTK_CLIST( CLVDrivers ),old_video_driver,0,(char **)&vo_driver );
+ gtk_widget_set_sensitive( VConfig,FALSE );
+ }
+
+// -- 3. page
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBNoAutoSub ),!gtkSubAuto );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDumpMPSub ),gtkSubDumpMPSub );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDumpSrt ),gtkSubDumpSrt );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBSubUnicode ),gtkSubUnicode );
+ gtk_adjustment_set_value( HSSubDelayadj,gtkSubDelay );
+ gtk_adjustment_set_value( HSSubFPSadj,gtkSubFPS );
+ gtk_adjustment_set_value( HSSubPositionadj,gtkSubPos );
+ gtk_adjustment_set_value( HSFontFactoradj,gtkSubFFactor );
+ switch ( osd_level )
{
- case GDK_Escape:
- case GDK_Return:
- if ( !opShift ) HideOptions();
- break;
- case GDK_Tab:
-// if ( sbShift )
-// { if ( (--sbItemsListCounter) < 0 ) sbItemsListCounter=2; }
-// else
-// { if ( (++sbItemsListCounter) > 2 ) sbItemsListCounter=0; }
-// gtk_widget_grab_focus( sbItemsList[sbItemsListCounter] );
- break;
- case GDK_Shift_L:
- case GDK_Shift_R:
- opShift=0;
- break;
+ case 0: gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( RBOSDNone ),TRUE ); break;
+ case 1: gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( RBOSDIndicator ),TRUE ); break;
+ case 2: gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( RBOSDTandP ),TRUE ); break;
}
- return FALSE;
-}
-
-gboolean on_window2_destroy_event( GtkWidget * widget,GdkEvent * event,gpointer user_data)
-{
- HideOptions();
- return FALSE;
-}
-
-void on_opAudioDriverMenu_released( GtkButton * button,gpointer user_data )
-{
-}
-
-void on_opAudioDelaySkinButton_changed( GtkEditable * editable,gpointer user_data )
-{
+#if 0
+ if ( guiIntfStruct.Subtitlename ) gtk_entry_set_text( GTK_ENTRY( ESubtitleName ),guiIntfStruct.Subtitlename );
+#endif
+ if ( guiIntfStruct.Fontname ) gtk_entry_set_text( GTK_ENTRY( prEFontName ),guiIntfStruct.Fontname );
+
+// -- 4. page
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBNonInterlaved ),gtkVNIAVI );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBIndex ),gtkVIndex );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBPostprocess ),gtkVPP );
+ gtk_adjustment_set_value( HSPPQualityadj,gtkVAutoq );
+ {
+ int i = 0;
+ for ( i=0;i<7;i++ )
+ if ( lVFM[i].vfm == gtkVVFM ) break;
+ gtk_entry_set_text( GTK_ENTRY( EVFM ),lVFM[i].name );
+ }
+
+// -- disables
+#ifndef USE_SUB
+ gtk_widget_set_sensitive( AConfig,FALSE );
+ gtk_widget_set_sensitive( CBNoAutoSub,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 );
+#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( CBAudioEqualizer ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)2 );
+ gtk_signal_connect( GTK_OBJECT( CBNoSound ),"toggled",GTK_SIGNAL_FUNC( prToggled ),(void*)3 );
+
+ 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 );
+ gtk_signal_connect( GTK_OBJECT( HSFontFactor ),"motion_notify_event",GTK_SIGNAL_FUNC( prHScaler ),(void*)5 );
+
+ 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 );
+
+ gtkVPreferences=1; gtkVisible++;
+ gtk_widget_show( Preferences );
+ gtkSetLayer( Preferences );
+ gtkMessageBox( GTK_MB_WARNING,MSGTR_PREFERENCES_Message );
}
-void on_opAudioDelaySkinButton_move_to_column( GtkEditable * editable,gint column,gpointer user_data )
+void HidePreferences( void )
{
+ if ( !gtkVPreferences ) return;
+ gtkVPreferences=0; gtkVisible--;
+ gtk_widget_hide( Preferences ); gtk_widget_destroy( Preferences );
+ HideOSSConfig();
}
-void on_opAudioDelaySkinButton_move_to_row( GtkEditable * editable,gint row,gpointer user_data )
-{
-}
+static void prDestroy( GtkObject * object,gpointer user_data )
+{ HidePreferences(); }
-void on_opAudioConfigureButton_released( GtkButton * button,gpointer user_data )
-{
-}
+static void prShow( GtkWidget * widget,gpointer user_data )
+{ gtkVPreferences=(int)user_data; }
-void on_opVideoMenu_released( GtkButton * button,gpointer user_data )
-{
- fprintf( stderr,"[opts] data: %s\n",(char *)user_data );
-}
+#define bAConfig 0
+#define bVconfig 1
+#define bOk 2
+#define bCancel 3
+#define bLSubtitle 4
+#define bLFont 5
-void on_opVideoMenu_pressed( GtkButton * button,gpointer user_data )
+void prButton( GtkButton * button,gpointer user_data )
{
- fprintf( stderr,"[opts] data: %s\n",(char *)user_data );
-}
-
-void on_opVideoMenu_clicked( GtkButton * button,gpointer user_data)
-{
- fprintf( stderr,"[opts] data(2): %s\n",(char *)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 ) );
+ gtkAONoSound=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNoSound ) );
+ gtkSet( gtkSetExtraStereo,HSExtraStereoMuladj->value,NULL );
+ gtkSet( gtkSetAudioDelay,HSAudioDelayadj->value,NULL );
+ {
+ int i = 0;
+ while ( audio_out_drivers[i] )
+ {
+ const ao_info_t *info = audio_out_drivers[i++]->info;
+ if ( !strcmp( info->short_name,"plugin" ) ) continue;
+ if ( !strcmp( info->name,ao_driver[0] ) ) gtkAODriver=(char *)info->short_name;
+ }
+ }
+ if ( gtkVODriver ) free( gtkVODriver );
+ gtkVODriver=strdup( vo_driver[0] );
+
+ // -- 2. page
+ gtkEnableVideoEqualizer=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBVideoEqualizer ) );
+ gtkVODoubleBuffer=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDoubleBuffer ) );
+ gtkVODirectRendering=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDR ) );
+ gtkVFrameDrop=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBFramedrop ) );
+ gtkVHardFrameDrop=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBHFramedrop ) );
+ gtkVFlip=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBFlip ) );
+
+ // -- 3. page
+ gtkSet( gtkSetSubAuto,!gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNoAutoSub ) ),NULL );
+ gtkSubDumpMPSub=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDumpMPSub ) );
+ gtkSubDumpSrt=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDumpSrt ) );
+ gtkSubUnicode=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBSubUnicode ) );
+ gtkSet( gtkSetSubDelay,HSSubDelayadj->value,NULL );
+ gtkSet( gtkSetSubFPS,HSSubFPSadj->value,NULL );
+ gtkSet( gtkSetSubPos,HSSubPositionadj->value,NULL );
+ gtkSet( gtkSetFontFactor,HSFontFactoradj->value,NULL );
+ 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;
+ guiSetFilename( guiIntfStruct.Fontname,gtk_entry_get_text( GTK_ENTRY( prEFontName ) ) );
+
+ // -- 4. page
+ gtkVNIAVI=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNonInterlaved ) );
+ gtkVIndex=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBIndex ) );
+ gtkVPP=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBPostprocess ) );
+ gtkSet( gtkSetAutoq,HSPPQualityadj->value,NULL );
+ {
+ int i;
+ char * tmp = gtk_entry_get_text( GTK_ENTRY( EVFM ) );
+ gtkVVFM=-1;
+ for ( i=0;i<7;i++ )
+ if ( !strcmp( tmp,lVFM[i].name ) ) { gtkVVFM=lVFM[i].vfm; break; }
+ }
+
+ case bCancel:
+ HidePreferences();
+ break;
+ case bAConfig:
+ gtk_widget_set_sensitive( AConfig,FALSE );
+ if ( !strcmp( ao_driver[0],"OSS/ioctl audio output" ) ) { ShowOSSConfig(); gtk_widget_set_sensitive( AConfig,TRUE ); }
+ break;
+// case bVconfig:
+// break;
+#if 0
+ case bLSubtitle:
+ break;
+#endif
+ case bLFont:
+ ShowFileSelect( fsFontSelector,FALSE );
+ gtkSetLayer( fsFileSelect );
+ break;
+ }
}
-gboolean on_opVideoMenu_button_release_event( GtkWidget * widget,GdkEventButton * event,gpointer user_data )
+static gboolean prHScaler( GtkWidget * widget,GdkEventMotion * event,gpointer user_data )
{
- fprintf( stderr,"[opts] video menu.\n" );
+ switch ( (int)user_data )
+ {
+ case 0: // extra stereo coefficient
+ if ( !guiIntfStruct.Playing ) break;
+ gtkSet( gtkSetExtraStereo,HSExtraStereoMuladj->value,NULL );
+ break;
+ case 1: // audio delay
+ gtkSet( gtkSetAudioDelay,HSAudioDelayadj->value,NULL );
+ break;
+ case 2: // panscan
+ gtkSet( gtkSetPanscan,HSPanscanadj->value,NULL );
+ break;
+ case 3: // sub delay
+ gtkSet( gtkSetSubDelay,HSSubDelayadj->value,NULL );
+ break;
+ case 4: // sub position
+ gtkSet( gtkSetSubPos,HSSubPositionadj->value,NULL );
+ break;
+ case 5: // font factor
+ gtkSet( gtkSetFontFactor,HSFontFactoradj->value,NULL );
+ break;
+ }
return FALSE;
}
-void on_opOsdCheckButton_toggled( GtkToggleButton * togglebutton,gpointer user_data )
-{
-}
-
-void on_opVideoConfButton_released( GtkButton * button,gpointer user_data )
-{
-}
-
-void on_opOSDLevelSpinButton_changed( GtkEditable * editable,gpointer user_data )
+static void prToggled( GtkToggleButton * togglebutton,gpointer user_data )
{
+ switch ( (int)user_data )
+ {
+ case 0: // extra stereo coefficient
+ if ( guiIntfStruct.Playing )
+ gtk_widget_set_sensitive( HSExtraStereoMul,gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBExtraStereo ) ) );
+ break;
+// case 1: // normalize
+// case 2: // equalizer
+// if ( guiIntfStruct.Playing ) gtkMessageBox( GTK_MB_WARNING,"Please remember, this function need restart the playing." );
+// break;
+ case 3: // no sound
+ mixer_mute();
+ break;
+ }
}
-void on_opOSDLevelSpinButton_move_to_column( GtkEditable * editable,gint column,gpointer user_data )
+static void prCListRow( GtkCList * clist,gint row,gint column,GdkEvent * event,gpointer user_data )
{
+ switch ( (int)user_data )
+ {
+ case 0: // audio driver
+ gtk_clist_get_text( GTK_CLIST( CLADrivers ),row,0,(char **)&ao_driver );
+ gtk_widget_set_sensitive( AConfig,FALSE );
+ if ( !strcmp( ao_driver[0],"OSS/ioctl audio output" ) ) gtk_widget_set_sensitive( AConfig,TRUE );
+ break;
+ case 1: // video driver
+ gtk_clist_get_text( GTK_CLIST( CLVDrivers ),row,0,(char **)&vo_driver );
+ break;
+ }
}
-void on_opOSDLevelSpinButton_move_to_row( GtkEditable * editable,gint row,gpointer user_data )
+GtkWidget * create_Preferences( void )
{
+ GtkWidget * frame1;
+ GtkWidget * frame2;
+ GtkWidget * frame3;
+ GtkWidget * frame4;
+ GtkWidget * vbox1;
+ GtkWidget * notebook1;
+ GtkWidget * hbox1;
+ GtkWidget * frame9;
+ GtkWidget * vbox2;
+ GtkWidget * scrolledwindow3;
+ GtkWidget * label8;
+ GtkWidget * hbuttonbox2;
+ GtkWidget * frame10;
+ GtkWidget * vbox3;
+ GtkWidget * hseparator2;
+ GtkWidget * hbox8;
+ GtkWidget * label17;
+ GtkWidget * label1;
+ GtkWidget * hbox2;
+ GtkWidget * frame7;
+ GtkWidget * vbox4;
+ GtkWidget * scrolledwindow2;
+ GtkWidget * label7;
+ GtkWidget * hbuttonbox3;
+ GtkWidget * frame8;
+ GtkWidget * vbox5;
+ GtkWidget * hbox3;
+ GtkWidget * label9;
+ GtkWidget * label2;
+ GtkWidget * vbox6;
+ GtkWidget * frame5;
+ GtkWidget * vbox600;
+ GSList * OSD_group = NULL;
+ GList * CBVFM_items = NULL;
+ GtkWidget * frame6;
+ GtkWidget * vbox7;
+// GtkWidget * hbox4;
+// GtkWidget * label10;
+// GtkWidget * hbuttonbox4;
+ GtkWidget * vbox8;
+ GtkWidget * table1;
+ GtkWidget * label11;
+ GtkWidget * label12;
+ GtkWidget * label13;
+ GtkWidget * vbox9;
+ GtkWidget * frame12;
+ GtkWidget * vbox603;
+ GtkWidget * hbox6;
+ GtkWidget * label15;
+ GtkWidget * hbuttonbox5;
+ GtkWidget * hbox7;
+ GtkWidget * label16;
+ GtkWidget * label3;
+ GtkWidget * vbox601;
+ GtkWidget * frame11;
+ GtkWidget * vbox602;
+ GtkWidget * hbox5;
+ GtkWidget * label14;
+ GtkWidget * label4;
+ GtkWidget * hseparator1;
+ GtkWidget * hbuttonbox1;
+ GtkAccelGroup * accel_group;
+
+ accel_group=gtk_accel_group_new();
+
+ Preferences=gtk_window_new( GTK_WINDOW_DIALOG );
+ gtk_widget_set_name( Preferences,"Preferences" );
+ gtk_object_set_data( GTK_OBJECT( Preferences ),"Preferences",Preferences );
+#if 0
+ gtk_widget_set_usize( Preferences,512,440 );
+#else
+ gtk_widget_set_usize( Preferences,512,395 );
+#endif
+ gtk_window_set_title( GTK_WINDOW( Preferences ),MSGTR_Preferences );
+ gtk_window_set_position( GTK_WINDOW( Preferences ),GTK_WIN_POS_CENTER );
+ gtk_window_set_policy( GTK_WINDOW( Preferences ),FALSE,FALSE,FALSE );
+ gtk_window_set_wmclass( GTK_WINDOW( Preferences ),"Preferences","MPlayer" );
+
+ gtk_widget_realize( Preferences );
+ gtkAddIcon( Preferences );
+
+ frame1=gtk_frame_new( NULL );
+ gtk_widget_set_name( frame1,"frame1" );
+ gtk_widget_ref( frame1 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"frame1",frame1, (GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( frame1 );
+ gtk_container_add( GTK_CONTAINER( Preferences ),frame1 );
+ gtk_container_set_border_width( GTK_CONTAINER( frame1 ),1 );
+ gtk_frame_set_shadow_type( GTK_FRAME( frame1 ),GTK_SHADOW_IN );
+
+ frame2=gtk_frame_new( NULL );
+ gtk_widget_set_name( frame2,"frame2" );
+ gtk_widget_ref( frame2 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"frame2",frame2,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( frame2 );
+ gtk_container_add( GTK_CONTAINER( frame1 ),frame2 );
+ gtk_frame_set_shadow_type( GTK_FRAME( frame2 ),GTK_SHADOW_NONE );
+
+ frame3=gtk_frame_new( NULL );
+ gtk_widget_set_name( frame3,"frame3" );
+ gtk_widget_ref( frame3 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"frame3",frame3,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( frame3 );
+ gtk_container_add( GTK_CONTAINER( frame2 ),frame3 );
+ gtk_frame_set_shadow_type( GTK_FRAME( frame3 ),GTK_SHADOW_ETCHED_OUT );
+
+ frame4=gtk_frame_new( NULL );
+ gtk_widget_set_name( frame4,"frame4" );
+ gtk_widget_ref( frame4 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"frame4",frame4,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( frame4 );
+ gtk_container_add( GTK_CONTAINER( frame3 ),frame4 );
+ gtk_frame_set_shadow_type( GTK_FRAME( frame4 ),GTK_SHADOW_NONE );
+
+ vbox1=gtk_vbox_new( FALSE,0 );
+ gtk_widget_set_name( vbox1,"vbox1" );
+ gtk_widget_ref( vbox1 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"vbox1",vbox1,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( vbox1 );
+ gtk_container_add( GTK_CONTAINER( frame4 ),vbox1 );
+
+ notebook1=gtk_notebook_new();
+ gtk_widget_set_name( notebook1,"notebook1" );
+ gtk_widget_ref( notebook1 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"notebook1",notebook1,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( notebook1 );
+ gtk_box_pack_start( GTK_BOX( vbox1 ),notebook1,TRUE,TRUE,0 );
+
+ hbox1=gtk_hbox_new( FALSE,0 );
+ gtk_widget_set_name( hbox1,"hbox1" );
+ gtk_widget_ref( hbox1 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"hbox1",hbox1,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( hbox1 );
+ gtk_container_add( GTK_CONTAINER( notebook1 ),hbox1 );
+
+ frame9=gtk_frame_new( NULL );
+ gtk_widget_set_name( frame9,"frame9" );
+ gtk_widget_ref( frame9 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"frame9",frame9,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( frame9 );
+ gtk_box_pack_start( GTK_BOX( hbox1 ),frame9,TRUE,TRUE,0 );
+ gtk_frame_set_shadow_type( GTK_FRAME( frame9 ),GTK_SHADOW_ETCHED_OUT );
+
+ vbox2=gtk_vbox_new( FALSE,0 );
+ gtk_widget_set_name( vbox2,"vbox2" );
+ gtk_widget_ref( vbox2 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"vbox2",vbox2,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( vbox2 );
+ gtk_container_add( GTK_CONTAINER( frame9 ),vbox2 );
+
+ scrolledwindow3=gtk_scrolled_window_new( NULL,NULL );
+ gtk_widget_set_name( scrolledwindow3,"scrolledwindow3" );
+ gtk_widget_ref( scrolledwindow3 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"scrolledwindow3",scrolledwindow3,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( scrolledwindow3 );
+ gtk_box_pack_start( GTK_BOX( vbox2 ),scrolledwindow3,TRUE,TRUE,0 );
+ gtk_scrolled_window_set_policy( GTK_SCROLLED_WINDOW( scrolledwindow3 ),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC );
+
+ CLADrivers=gtk_clist_new( 1 );
+ gtk_widget_set_name( CLADrivers,"CLADrivers" );
+ gtk_widget_ref( CLADrivers );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"CLADrivers",CLADrivers,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( CLADrivers );
+ gtk_container_add( GTK_CONTAINER( scrolledwindow3 ),CLADrivers );
+ gtk_clist_set_column_width( GTK_CLIST( CLADrivers ),0,80 );
+ gtk_clist_column_titles_show( GTK_CLIST( CLADrivers ) );
+ gtk_clist_set_shadow_type( GTK_CLIST( CLADrivers ),GTK_SHADOW_NONE );
+
+ label8=gtk_label_new( MSGTR_PREFERENCES_AvailableDrivers );
+ gtk_widget_set_name( label8,"label8" );
+ gtk_widget_ref( label8 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"label8",label8,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( label8 );
+ gtk_clist_set_column_widget( GTK_CLIST( CLADrivers ),0,label8 );
+ gtk_misc_set_alignment( GTK_MISC( label8 ),0,0.5 );
+ gtk_misc_set_padding( GTK_MISC( label8 ),4,0 );
+
+ hbuttonbox2=gtk_hbutton_box_new();
+ gtk_widget_set_name( hbuttonbox2,"hbuttonbox2" );
+ gtk_widget_ref( hbuttonbox2 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"hbuttonbox2",hbuttonbox2,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( hbuttonbox2 );
+ gtk_box_pack_start( GTK_BOX( vbox2 ),hbuttonbox2,FALSE,FALSE,0 );
+ gtk_button_box_set_child_size( GTK_BUTTON_BOX( hbuttonbox2 ),85,20 );
+
+ AConfig=gtk_button_new_with_label( MSGTR_ConfigDriver );
+ gtk_widget_set_name( AConfig,"AConfig" );
+ gtk_widget_ref( AConfig );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"AConfig",AConfig,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( AConfig );
+ gtk_container_add( GTK_CONTAINER( hbuttonbox2 ),AConfig );
+ GTK_WIDGET_UNSET_FLAGS( AConfig,GTK_CAN_FOCUS );
+
+ frame10=gtk_frame_new( NULL );
+ gtk_widget_set_name( frame10,"frame10" );
+ gtk_widget_ref( frame10 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"frame10",frame10,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( frame10 );
+ gtk_box_pack_start( GTK_BOX( hbox1 ),frame10,TRUE,TRUE,0 );
+ gtk_frame_set_shadow_type( GTK_FRAME( frame10 ),GTK_SHADOW_ETCHED_OUT );
+
+ vbox3=gtk_vbox_new( FALSE,0 );
+ gtk_widget_set_name( vbox3,"vbox3" );
+ gtk_widget_ref( vbox3 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"vbox3",vbox3,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( vbox3 );
+ gtk_container_add( GTK_CONTAINER( frame10 ),vbox3 );
+ gtk_widget_set_usize( vbox3,250,-2 );
+
+ CBNoSound=gtk_check_button_new_with_label( MSGTR_PREFERENCES_DoNotPlaySound );
+ gtk_widget_set_name( CBNoSound,"CBNoSound" );
+ gtk_widget_ref( CBNoSound );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"CBNoSound",CBNoSound,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( CBNoSound );
+ gtk_box_pack_start( GTK_BOX( vbox3 ),CBNoSound,FALSE,FALSE,0 );
+
+ hseparator2=gtk_hseparator_new();
+ gtk_widget_set_name( hseparator2,"hseparator2" );
+ gtk_widget_ref( hseparator2 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"hseparator2",hseparator2,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( hseparator2 );
+ gtk_box_pack_start( GTK_BOX( vbox3 ),hseparator2,FALSE,FALSE,0 );
+ gtk_widget_set_usize( hseparator2,-2,4 );
+
+ CBNormalize=gtk_check_button_new_with_label( MSGTR_PREFERENCES_NormalizeSound );
+ gtk_widget_set_name( CBNormalize,"CBNormalize" );
+ gtk_widget_ref( CBNormalize );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"CBNormalize",CBNormalize,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( CBNormalize );
+ gtk_box_pack_start( GTK_BOX( vbox3 ),CBNormalize,FALSE,FALSE,0 );
+
+ CBAudioEqualizer=gtk_check_button_new_with_label( MSGTR_PREFERENCES_EnEqualizer );
+ gtk_widget_set_name( CBAudioEqualizer,"CBAudioEqualizer" );
+ gtk_widget_ref( CBAudioEqualizer );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"CBAudioEqualizer",CBAudioEqualizer,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( CBAudioEqualizer );
+ gtk_box_pack_start( GTK_BOX( vbox3 ),CBAudioEqualizer,FALSE,FALSE,0 );
+
+#if 0
+ CBSurround=gtk_check_button_new_with_label( "Enable surround" );
+ gtk_widget_set_name( CBSurround,"CBSurround" );
+ gtk_widget_ref( CBSurround );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"CBSurround",CBSurround,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( CBSurround );
+ gtk_box_pack_start( GTK_BOX( vbox3 ),CBSurround,FALSE,FALSE,0 );
+#endif
+
+ CBExtraStereo=gtk_check_button_new_with_label( MSGTR_PREFERENCES_ExtraStereo );
+ gtk_widget_set_name( CBExtraStereo,"CBExtraStereo" );
+ gtk_widget_ref( CBExtraStereo );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"CBExtraStereo",CBExtraStereo,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( CBExtraStereo );
+ gtk_box_pack_start( GTK_BOX( vbox3 ),CBExtraStereo,FALSE,FALSE,0 );
+
+ hbox8=gtk_hbox_new( FALSE,0 );
+ gtk_widget_set_name( hbox8,"hbox8" );
+ gtk_widget_ref( hbox8 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"hbox8",hbox8,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( hbox8 );
+ gtk_box_pack_start( GTK_BOX( vbox3 ),hbox8,FALSE,FALSE,0 );
+
+ label17=gtk_label_new( MSGTR_PREFERENCES_Coefficient );
+ gtk_widget_set_name( label17,"label17" );
+ gtk_widget_ref( label17 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"label17",label17,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( label17 );
+ gtk_box_pack_start( GTK_BOX( hbox8 ),label17,FALSE,FALSE,0 );
+ gtk_misc_set_alignment( GTK_MISC( label17 ),7.45058e-09,0.5 );
+ gtk_misc_set_padding( GTK_MISC( label17 ),20,0 );
+
+ HSExtraStereoMuladj=GTK_ADJUSTMENT( gtk_adjustment_new( 0,-10,10,0.1,0,0 ) );
+ HSExtraStereoMul=gtk_hscale_new( HSExtraStereoMuladj );
+ gtk_widget_set_name( HSExtraStereoMul,"HSExtraStereoMul" );
+ gtk_widget_ref( HSExtraStereoMul );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"HSExtraStereoMul",HSExtraStereoMul,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( HSExtraStereoMul );
+ gtk_box_pack_start( GTK_BOX( hbox8 ),HSExtraStereoMul,TRUE,TRUE,0 );
+ gtk_scale_set_value_pos( GTK_SCALE( HSExtraStereoMul ),GTK_POS_RIGHT );
+ gtk_scale_set_digits( GTK_SCALE( HSExtraStereoMul ),1 );
+
+ hbox8=gtk_hbox_new( FALSE,0 );
+ gtk_widget_set_name( hbox8,"hbox8" );
+ gtk_widget_ref( hbox8 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"hbox8",hbox8,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( hbox8 );
+ gtk_box_pack_start( GTK_BOX( vbox3 ),hbox8,FALSE,FALSE,0 );
+
+ label17=gtk_label_new( MSGTR_PREFERENCES_AudioDelay );
+ gtk_widget_set_name( label17,"label17" );
+ gtk_widget_ref( label17 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"label17",label17,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( label17 );
+ gtk_box_pack_start( GTK_BOX( hbox8 ),label17,FALSE,FALSE,0 );
+ gtk_misc_set_alignment( GTK_MISC( label17 ),7.45058e-09,0.5 );
+ gtk_misc_set_padding( GTK_MISC( label17 ),4,0 );
+
+ HSAudioDelayadj=GTK_ADJUSTMENT( gtk_adjustment_new( 0,-100,100,0.01,0,0 ) );
+ HSAudioDelay=gtk_hscale_new( HSAudioDelayadj );
+ gtk_widget_set_name( HSAudioDelay,"HSAudioDelay" );
+ gtk_widget_ref( HSAudioDelay );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"HSAudioDelay",HSAudioDelay,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( HSAudioDelay );
+ gtk_box_pack_start( GTK_BOX( hbox8 ),HSAudioDelay,TRUE,TRUE,0 );
+ gtk_scale_set_value_pos( GTK_SCALE( HSAudioDelay ),GTK_POS_RIGHT );
+ gtk_scale_set_digits( GTK_SCALE( HSAudioDelay ),2 );
+
+ label1=gtk_label_new( MSGTR_PREFERENCES_Audio );
+ gtk_widget_set_name( label1,"label1" );
+ gtk_widget_ref( label1 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"label1",label1,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( label1 );
+ gtk_notebook_set_tab_label( GTK_NOTEBOOK( notebook1 ),gtk_notebook_get_nth_page( GTK_NOTEBOOK( notebook1 ),0 ),label1 );
+
+ hbox2=gtk_hbox_new( FALSE,0 );
+ gtk_widget_set_name( hbox2,"hbox2" );
+ gtk_widget_ref( hbox2 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"hbox2",hbox2,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( hbox2 );
+ gtk_container_add( GTK_CONTAINER( notebook1 ),hbox2 );
+
+ frame7=gtk_frame_new( NULL );
+ gtk_widget_set_name( frame7,"frame7" );
+ gtk_widget_ref( frame7 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"frame7",frame7,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( frame7 );
+ gtk_box_pack_start( GTK_BOX( hbox2 ),frame7,TRUE,TRUE,0 );
+ gtk_frame_set_shadow_type( GTK_FRAME( frame7 ),GTK_SHADOW_ETCHED_OUT );
+
+ vbox4=gtk_vbox_new( FALSE,0 );
+ gtk_widget_set_name( vbox4,"vbox4" );
+ gtk_widget_ref( vbox4 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"vbox4",vbox4,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( vbox4 );
+ gtk_container_add( GTK_CONTAINER( frame7 ),vbox4 );
+
+ scrolledwindow2=gtk_scrolled_window_new( NULL,NULL );
+ gtk_widget_set_name( scrolledwindow2,"scrolledwindow2" );
+ gtk_widget_ref( scrolledwindow2 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"scrolledwindow2",scrolledwindow2,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( scrolledwindow2 );
+ gtk_box_pack_start( GTK_BOX( vbox4 ),scrolledwindow2,TRUE,TRUE,0 );
+ gtk_scrolled_window_set_policy( GTK_SCROLLED_WINDOW( scrolledwindow2 ),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC );
+
+ CLVDrivers=gtk_clist_new( 1 );
+ gtk_widget_set_name( CLVDrivers,"CLVDrivers" );
+ gtk_widget_ref( CLVDrivers );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"CLVDrivers",CLVDrivers,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( CLVDrivers );
+ gtk_container_add( GTK_CONTAINER( scrolledwindow2 ),CLVDrivers );
+ gtk_clist_set_column_width( GTK_CLIST( CLVDrivers ),0,80 );
+ gtk_clist_column_titles_show( GTK_CLIST( CLVDrivers ) );
+ gtk_clist_set_shadow_type( GTK_CLIST( CLVDrivers ),GTK_SHADOW_NONE );
+
+ label7=gtk_label_new( MSGTR_PREFERENCES_AvailableDrivers );
+ gtk_widget_set_name( label7,"label7" );
+ gtk_widget_ref( label7 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"label7",label7,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( label7 );
+ gtk_clist_set_column_widget( GTK_CLIST( CLVDrivers ),0,label7 );
+ gtk_misc_set_alignment( GTK_MISC( label7 ),0,0.5 );
+ gtk_misc_set_padding( GTK_MISC( label7 ),4,0 );
+
+ hbuttonbox3=gtk_hbutton_box_new();
+ gtk_widget_set_name( hbuttonbox3,"hbuttonbox3" );
+ gtk_widget_ref( hbuttonbox3 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"hbuttonbox3",hbuttonbox3,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( hbuttonbox3 );
+ gtk_box_pack_start( GTK_BOX( vbox4 ),hbuttonbox3,FALSE,FALSE,0 );
+ gtk_button_box_set_child_size( GTK_BUTTON_BOX( hbuttonbox3 ),85,20 );
+
+ VConfig=gtk_button_new_with_label( MSGTR_ConfigDriver );
+ gtk_widget_set_name( VConfig,"VConfig" );
+ gtk_widget_ref( VConfig );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"VConfig",VConfig,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( VConfig );
+ gtk_container_add( GTK_CONTAINER( hbuttonbox3 ),VConfig );
+ GTK_WIDGET_UNSET_FLAGS( VConfig,GTK_CAN_FOCUS );
+
+ frame8=gtk_frame_new( NULL );
+ gtk_widget_set_name( frame8,"frame8" );
+ gtk_widget_ref( frame8 );
+ gtk_object_set_data_full( GTK_OBJECT( Preferences ),"frame8",frame8,(GtkDestroyNotify)gtk_widget_unref );
+ gtk_widget_show( frame8 );
+ gtk_box_pack_start( GTK_BOX( hbox2 ),frame8,TRUE,TRUE,0 );
+ gtk_frame_set_shadow_type( GTK_FRAME(