summaryrefslogtreecommitdiffstats
path: root/Gui
diff options
context:
space:
mode:
authorpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-11-25 18:18:45 +0000
committerpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-11-25 18:18:45 +0000
commit4c89b52ee4d56be37e471008cf6964207e3a712a (patch)
tree28d7ea3d43c8f8ac934ab3c9787d57898f5ccd35 /Gui
parent3864cbc1023bb46dd8396e1c38c0768336904ac9 (diff)
downloadmpv-4c89b52ee4d56be37e471008cf6964207e3a712a.tar.bz2
mpv-4c89b52ee4d56be37e471008cf6964207e3a712a.tar.xz
cache (buzeralas)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8285 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'Gui')
-rw-r--r--Gui/cfg.c7
-rw-r--r--Gui/cfg.h3
-rw-r--r--Gui/interface.c9
-rw-r--r--Gui/interface.h1
-rw-r--r--Gui/mplayer/gtk/opts.c15
5 files changed, 26 insertions, 9 deletions
diff --git a/Gui/cfg.c b/Gui/cfg.c
index 843734e6b5..55ff8565d3 100644
--- a/Gui/cfg.c
+++ b/Gui/cfg.c
@@ -39,6 +39,9 @@ float gtkAOExtraStereoMul = 1.0;
char * gtkAOOSSMixer;
char * gtkAOOSSDevice;
+int gtkCacheOn = 0;
+int gtkCacheSize = 2048;
+
#ifdef HAVE_DXR3
char * gtkDXR3Device;
#endif
@@ -107,7 +110,9 @@ static config_t gui_opts[] =
{ "font_autoscale",&subtitle_autoscale,CONF_TYPE_INT,CONF_RANGE,0,3,NULL },
#endif
- { "cache",&stream_cache_size,CONF_TYPE_INT,CONF_RANGE,-1,65535,NULL },
+ { "cache",&gtkCacheOn,CONF_TYPE_INT,CONF_RANGE,-1,65535,NULL },
+ { "cache_size",&gtkCacheSize,CONF_TYPE_INT,CONF_RANGE,-1,65535,NULL },
+
{ "load_fullscreen",&gtkLoadFullscreen,CONF_TYPE_FLAG,0,0,1,NULL },
{ "gui_skin",&skinName,CONF_TYPE_STRING,0,0,0,NULL },
diff --git a/Gui/cfg.h b/Gui/cfg.h
index e6f1949325..02afcfdc50 100644
--- a/Gui/cfg.h
+++ b/Gui/cfg.h
@@ -17,6 +17,9 @@ extern char * gtkAOOSSMixer;
extern char * gtkAOOSSDevice;
extern char * gtkDXR3Device;
+extern int gtkCacheOn;
+extern int gtkCacheSize;
+
extern int gtkSubDumpMPSub;
extern int gtkSubDumpSrt;
diff --git a/Gui/interface.c b/Gui/interface.c
index 166f70cc13..5bd3ec2ac3 100644
--- a/Gui/interface.c
+++ b/Gui/interface.c
@@ -77,6 +77,12 @@ char * gstrdup( char * str )
return strdup( str );
}
+char * gstrchr( char * str,int c )
+{
+ if ( !str ) return NULL;
+ return strchr( str,c );
+}
+
void gfree( void ** p )
{
if ( *p == NULL ) return;
@@ -541,6 +547,9 @@ int guiGetEvent( int type,char * arg )
if ( guiIntfStruct.StreamType == STREAMTYPE_STREAM ) btnSet( evSetMoviePosition,1 );
else btnSet( evSetMoviePosition,0 );
+
+ if ( gtkCacheOn ) stream_cache_size=gtkCacheSize;
+ else stream_cache_size=-1;
// -- audio
if ( audio_out )
diff --git a/Gui/interface.h b/Gui/interface.h
index 81875f21af..5e1dd7829f 100644
--- a/Gui/interface.h
+++ b/Gui/interface.h
@@ -193,6 +193,7 @@ extern char * gstrdup( char * str );
extern int gstrcmp( char * a,char * b );
extern void gfree( void ** p );
extern void gaddlist( char *** list,char * entry );
+extern char * gstrchr( char * str,int c );
#define guiSetFilename( s,n ) { gfree( (void **)&s ); s=gstrdup( n ); }
diff --git a/Gui/mplayer/gtk/opts.c b/Gui/mplayer/gtk/opts.c
index 5dd87526f4..284eabcdfe 100644
--- a/Gui/mplayer/gtk/opts.c
+++ b/Gui/mplayer/gtk/opts.c
@@ -177,9 +177,10 @@ void ShowPreferences( void )
if ( audio_driver_list )
{
char * name = gstrdup( audio_driver_list[0] );
- char * sep = strchr( audio_driver_list[0],':' );
+ char * sep = gstrchr( audio_driver_list[0],':' );
if ( sep ) *sep=0;
if ( !gstrcmp( name,(char *)info->short_name ) ) old_audio_driver=i - 1;
+ free( name );
}
tmp[0]=(char *)info->short_name; tmp[1]=(char *)info->name; gtk_clist_append( GTK_CLIST( CLADrivers ),tmp );
}
@@ -311,11 +312,9 @@ void ShowPreferences( void )
}
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBCache ),0 );
- if ( stream_cache_size > 0 )
- {
- gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBCache ),1 );
- gtk_adjustment_set_value( SBCacheadj,(float)stream_cache_size );
- } else gtk_widget_set_sensitive( SBCache,FALSE );
+ 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 ),1 );
// -- disables
#ifndef USE_SUB
@@ -479,8 +478,8 @@ void prButton( GtkButton * button,gpointer user_data )
gtkLoadFullscreen=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBLoadFullscreen ) );
gtkSet( gtkSetAutoq,HSPPQualityadj->value,NULL );
- if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBCache ) ) ) stream_cache_size=(int)SBCacheadj->value;
- else stream_cache_size=-1;
+ if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBCache ) ) ) { gtkCacheSize=(int)SBCacheadj->value; gtkCacheOn=1; }
+ else gtkCacheOn=0;
{
int i;