annotate Gui/mplayer/gtk/sb.c @ 6813:cdfa9de87202

Reorganized the README. More general information up front, more concise steps. Added Step0 with downloading instructions instead of repeating this in several steps. Mention system wide as well as per user file locations. Rewordings everywhere, hopefully clearer.
author diego
date Fri, 26 Jul 2002 03:53:27 +0000
parents 77980ab4e296
children ded48a755830
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
1
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
2 #include <sys/stat.h>
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
3 #include <glob.h>
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
4 #include <unistd.h>
2985
44e4572d5673 missing #include's
pl
parents: 2901
diff changeset
5 #include <string.h>
44e4572d5673 missing #include's
pl
parents: 2901
diff changeset
6 #include <stdlib.h>
4818
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
7 #include <stdio.h>
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
8
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
9 #include "sb.h"
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
10 #include "../../events.h"
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
11 #include "../../../config.h"
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
12 #include "../../../help_mp.h"
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
13
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
14 #include "../widgets.h"
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
15 #include "../app.h"
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
16
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
17 GtkWidget * SkinList;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
18 char * sbSelectedSkin=NULL;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
19 char * sbMPlayerDirInHome=NULL;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
20 char * sbMPlayerPrefixDir=NULL;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
21
4818
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
22 char * gtkOldSkin;
5690
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
23 static char * prev;
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
24
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
25 int gtkVSkinBrowser = 0;
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
26 GtkWidget * SkinBrowser;
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
27
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
28 void ShowSkinBrowser( void )
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
29 {
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
30 if ( gtkVSkinBrowser ) gtkActive( SkinBrowser );
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
31 else SkinBrowser=create_SkinBrowser();
6755
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6651
diff changeset
32 gtkVisible++;
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
33 }
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
34
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
35 void HideSkinBrowser( void )
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
36 {
6755
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6651
diff changeset
37 if ( !gtkVSkinBrowser ) return;
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6651
diff changeset
38 gtkVSkinBrowser=0; gtkVisible--;
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
39 gtk_widget_destroy( SkinBrowser );
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
40 }
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
41
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
42 int gtkFillSkinList( gchar * mdir )
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
43 {
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
44 gchar * str[2];
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
45 gchar * tmp;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
46 int i;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
47 glob_t gg;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
48 struct stat fs;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
49
4818
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
50 gtkOldSkin=strdup( skinName );
5690
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
51 prev=gtkOldSkin;
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
52 if ( ( str[0]=(char *)calloc( 1,7 ) ) == NULL )
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
53 {
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
54 gtkMessageBox( GTK_MB_FATAL,MSGTR_SKINBROWSER_NotEnoughMemory );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
55 return 0;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
56 }
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
57 str[1]="";
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
58 strcpy( str[0],"default" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
59 if ( gtkFindCList( SkinList,str[0] ) == -1 ) gtk_clist_append( GTK_CLIST( SkinList ),str );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
60 free( str[0] );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
61
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
62 glob( mdir,GLOB_NOSORT,NULL,&gg );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
63 for( i=0;i<gg.gl_pathc;i++ )
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
64 {
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
65 if ( !strcmp( gg.gl_pathv[i],"." ) || !strcmp( gg.gl_pathv[i],".." ) ) continue;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
66 stat( gg.gl_pathv[i],&fs );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
67 if ( S_ISDIR( fs.st_mode ) )
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
68 {
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
69 tmp=strrchr( gg.gl_pathv[i],'/' ); tmp++;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
70 if ( !strcmp( tmp,"default" ) ) continue;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
71 if ( ( str[0]=(char *)malloc( strlen( tmp ) + 1 ) ) == NULL ) { gtkMessageBox( GTK_MB_FATAL,MSGTR_SKINBROWSER_NotEnoughMemory ); return 0; }
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
72 strcpy( str[0],tmp );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
73 if ( gtkFindCList( SkinList,str[0] ) == -1 ) gtk_clist_append( GTK_CLIST( SkinList ),str );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
74 free( str[0] );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
75 }
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
76 }
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
77 globfree( &gg );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
78 return 1;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
79 }
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
80
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
81 void on_SkinBrowser_destroy( GtkObject * object,gpointer user_data )
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
82 { HideSkinBrowser(); }
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
83
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
84 void on_SkinBrowser_show( GtkObject * object,gpointer user_data )
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
85 { gtkVSkinBrowser=(int)user_data; }
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
86
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
87 void on_SkinBrowser_Cancel( GtkObject * object,gpointer user_data )
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
88 {
5690
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
89 if ( strcmp( sbSelectedSkin,gtkOldSkin ) ) ChangeSkin( gtkOldSkin );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
90 HideSkinBrowser();
4818
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
91 }
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
92
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
93 void on_SkinBrowser_Ok( GtkObject * object,gpointer user_data )
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
94 {
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
95 ChangeSkin( sbSelectedSkin );
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
96 if ( skinName ) free( skinName );
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
97 skinName=strdup( sbSelectedSkin );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
98 HideSkinBrowser();
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
99 }
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
100
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
101 void on_SkinList_select_row( GtkCList * clist,gint row,gint column,GdkEvent * bevent,gpointer user_data )
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
102 {
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
103 gtk_clist_get_text( clist,row,0,&sbSelectedSkin );
5690
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
104 if ( strcmp( prev,sbSelectedSkin ) )
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
105 {
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
106 prev=sbSelectedSkin;
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
107 ChangeSkin( sbSelectedSkin );
6222
1a83bd7ff76e small changes in skin selection
pontscho
parents: 6146
diff changeset
108 gtkActive( SkinBrowser );
5690
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
109 }
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
110 if( !bevent ) return;
5690
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
111 if( bevent->type == GDK_2BUTTON_PRESS )
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
112 {
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
113 if ( skinName ) free( skinName );
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
114 skinName=strdup( sbSelectedSkin );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
115 HideSkinBrowser();
5690
436cf6ef67fd fix skin loading bug
pontscho
parents: 4818
diff changeset
116 }
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
117 }
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
118
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
119 GtkWidget * create_SkinBrowser( void )
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
120 {
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
121 GtkWidget * SkinBrowser;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
122 GtkWidget * frame5;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
123 GtkWidget * frame6;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
124 GtkWidget * frame7;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
125 GtkWidget * frame8;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
126 GtkWidget * vbox5;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
127 GtkWidget * label;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
128 GtkWidget * hseparator4;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
129 GtkWidget * scrolledwindow1;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
130 GtkWidget * label2;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
131 GtkWidget * hseparator5;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
132 GtkWidget * hbuttonbox4;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
133 GtkWidget * Cancel;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
134 GtkWidget * Ok;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
135 GtkAccelGroup * accel_group;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
136
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
137 accel_group = gtk_accel_group_new ();
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
138
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
139 SkinBrowser=gtk_window_new( GTK_WINDOW_DIALOG );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
140 gtk_widget_set_name( SkinBrowser,MSGTR_SkinBrowser );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
141 gtk_object_set_data( GTK_OBJECT( SkinBrowser ),MSGTR_SkinBrowser,SkinBrowser );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
142 gtk_widget_set_usize( SkinBrowser,256,320 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
143 gtk_container_set_border_width( GTK_CONTAINER( SkinBrowser ),1 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
144 // GTK_WIDGET_SET_FLAGS( SkinBrowser,GTK_CAN_FOCUS );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
145 GTK_WIDGET_SET_FLAGS( SkinBrowser,GTK_CAN_DEFAULT );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
146 gtk_widget_set_events( SkinBrowser,GDK_EXPOSURE_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
147 gtk_window_set_title( GTK_WINDOW( SkinBrowser ),MSGTR_SkinBrowser );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
148 gtk_window_set_position( GTK_WINDOW( SkinBrowser ),GTK_WIN_POS_CENTER );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
149 gtk_window_set_policy( GTK_WINDOW( SkinBrowser ),FALSE,FALSE,TRUE );
6651
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6222
diff changeset
150 gtk_window_set_wmclass( GTK_WINDOW( SkinBrowser ),MSGTR_SkinBrowser,"MPlayer" );
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6222
diff changeset
151
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6222
diff changeset
152 gtk_widget_realize( SkinBrowser );
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6222
diff changeset
153 gtkAddIcon( SkinBrowser );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
154
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
155 frame5=gtk_frame_new( NULL );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
156 gtk_widget_set_name( frame5,"frame5" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
157 gtk_widget_ref( frame5 );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
158 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"frame5",frame5,(GtkDestroyNotify)gtk_widget_unref );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
159 gtk_widget_show( frame5 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
160 gtk_container_add( GTK_CONTAINER( SkinBrowser ),frame5 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
161 gtk_frame_set_shadow_type( GTK_FRAME( frame5 ),GTK_SHADOW_IN );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
162
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
163 frame6=gtk_frame_new( NULL );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
164 gtk_widget_set_name( frame6,"frame6" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
165 gtk_widget_ref( frame6 );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
166 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"frame6",frame6,(GtkDestroyNotify)gtk_widget_unref );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
167 gtk_widget_show( frame6 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
168 gtk_container_add( GTK_CONTAINER( frame5 ),frame6 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
169 gtk_frame_set_shadow_type( GTK_FRAME( frame6 ),GTK_SHADOW_NONE );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
170
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
171 frame7=gtk_frame_new( NULL );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
172 gtk_widget_set_name( frame7,"frame7" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
173 gtk_widget_ref( frame7 );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
174 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"frame7",frame7,(GtkDestroyNotify)gtk_widget_unref );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
175 gtk_widget_show( frame7 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
176 gtk_container_add( GTK_CONTAINER( frame6 ),frame7 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
177 gtk_frame_set_shadow_type( GTK_FRAME( frame7 ),GTK_SHADOW_ETCHED_OUT );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
178
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
179 frame8=gtk_frame_new( NULL );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
180 gtk_widget_set_name( frame8,"frame8" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
181 gtk_widget_ref( frame8 );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
182 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"frame8",frame8,(GtkDestroyNotify)gtk_widget_unref );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
183 gtk_widget_show( frame8 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
184 gtk_container_add( GTK_CONTAINER( frame7 ),frame8 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
185 gtk_frame_set_shadow_type( GTK_FRAME( frame8 ),GTK_SHADOW_NONE );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
186
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
187 vbox5=gtk_vbox_new( FALSE,0 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
188 gtk_widget_set_name( vbox5,"vbox5" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
189 gtk_widget_ref( vbox5 );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
190 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"vbox5",vbox5,(GtkDestroyNotify)gtk_widget_unref );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
191 gtk_widget_show( vbox5 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
192 gtk_container_add( GTK_CONTAINER( frame8 ),vbox5 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
193
3587
6e21fbb41a2b full language support for gui
pontscho
parents: 2985
diff changeset
194 label=gtk_label_new( MSGTR_SKIN_LABEL );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
195 gtk_widget_set_name( label,"label" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
196 gtk_widget_ref( label );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
197 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"label",label,(GtkDestroyNotify)gtk_widget_unref );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
198 gtk_widget_show( label );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
199 gtk_box_pack_start( GTK_BOX( vbox5 ),label,FALSE,FALSE,0 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
200 gtk_label_set_justify( GTK_LABEL( label ),GTK_JUSTIFY_RIGHT );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
201 gtk_misc_set_alignment( GTK_MISC( label ),7.45058e-09,7.45058e-09 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
202
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
203 hseparator4=gtk_hseparator_new();
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
204 gtk_widget_set_name( hseparator4,"hseparator4" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
205 gtk_widget_ref( hseparator4 );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
206 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"hseparator4",hseparator4,(GtkDestroyNotify)gtk_widget_unref );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
207 gtk_widget_show( hseparator4 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
208 gtk_box_pack_start( GTK_BOX( vbox5 ),hseparator4,FALSE,TRUE,0 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
209 gtk_widget_set_usize( hseparator4,-2,5 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
210
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
211 scrolledwindow1=gtk_scrolled_window_new( NULL,NULL );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
212 gtk_widget_set_name( scrolledwindow1,"scrolledwindow1" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
213 gtk_widget_ref( scrolledwindow1 );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
214 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"scrolledwindow1",scrolledwindow1,(GtkDestroyNotify)gtk_widget_unref );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
215 gtk_widget_show( scrolledwindow1 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
216 gtk_box_pack_start( GTK_BOX( vbox5 ),scrolledwindow1,TRUE,TRUE,0 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
217 gtk_container_set_border_width( GTK_CONTAINER( scrolledwindow1 ),2 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
218 gtk_scrolled_window_set_policy( GTK_SCROLLED_WINDOW( scrolledwindow1 ),GTK_POLICY_NEVER,GTK_POLICY_AUTOMATIC );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
219
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
220 SkinList=gtk_clist_new( 1 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
221 gtk_widget_set_name( SkinList,"SkinList" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
222 gtk_widget_ref( SkinList );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
223 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"SkinList",SkinList,(GtkDestroyNotify)gtk_widget_unref );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
224 gtk_widget_show( SkinList );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
225 gtk_container_add( GTK_CONTAINER( scrolledwindow1 ),SkinList );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
226 gtk_clist_set_column_width( GTK_CLIST( SkinList ),0,80 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
227 gtk_clist_set_selection_mode( GTK_CLIST( SkinList ),GTK_SELECTION_SINGLE );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
228 gtk_clist_column_titles_hide( GTK_CLIST( SkinList ) );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
229 gtk_clist_set_shadow_type( GTK_CLIST( SkinList ),GTK_SHADOW_ETCHED_OUT );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
230
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
231 label2=gtk_label_new( "label2" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
232 gtk_widget_set_name( label2,"label2" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
233 gtk_widget_ref( label2 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
234 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"label2",label2,(GtkDestroyNotify)gtk_widget_unref );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
235 gtk_widget_show( label2 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
236 gtk_clist_set_column_widget( GTK_CLIST( SkinList ),0,label2 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
237
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
238 hseparator5=gtk_hseparator_new();
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
239 gtk_widget_set_name( hseparator5,"hseparator5" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
240 gtk_widget_ref( hseparator5 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
241 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"hseparator5",hseparator5,(GtkDestroyNotify)gtk_widget_unref );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
242 gtk_widget_show( hseparator5 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
243 gtk_box_pack_start( GTK_BOX( vbox5 ),hseparator5,FALSE,TRUE,0 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
244 gtk_widget_set_usize( hseparator5,-2,9 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
245
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
246 hbuttonbox4=gtk_hbutton_box_new();
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
247 gtk_widget_set_name( hbuttonbox4,"hbuttonbox4" );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
248 gtk_widget_ref( hbuttonbox4 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
249 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),"hbuttonbox4",hbuttonbox4,(GtkDestroyNotify)gtk_widget_unref );
3587
6e21fbb41a2b full language support for gui
pontscho
parents: 2985
diff changeset
250 gtk_widget_set_usize( hbuttonbox4,-2,25 );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
251 gtk_widget_show( hbuttonbox4 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
252 gtk_box_pack_start( GTK_BOX( vbox5 ),hbuttonbox4,FALSE,TRUE,0 );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
253 gtk_button_box_set_layout( GTK_BUTTON_BOX( hbuttonbox4 ),GTK_BUTTONBOX_END );
3587
6e21fbb41a2b full language support for gui
pontscho
parents: 2985
diff changeset
254 gtk_button_box_set_spacing( GTK_BUTTON_BOX( hbuttonbox4 ),5 );
6e21fbb41a2b full language support for gui
pontscho
parents: 2985
diff changeset
255 gtk_button_box_set_child_size( GTK_BUTTON_BOX( hbuttonbox4 ),75,0 );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
256
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
257 Ok=gtk_button_new_with_label( MSGTR_Ok );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
258 gtk_widget_set_name( Ok,MSGTR_Ok );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
259 gtk_widget_ref( Ok );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
260 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),MSGTR_Ok,Ok,(GtkDestroyNotify)gtk_widget_unref );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
261 gtk_widget_show( Ok );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
262 gtk_container_add( GTK_CONTAINER( hbuttonbox4 ),Ok );
3587
6e21fbb41a2b full language support for gui
pontscho
parents: 2985
diff changeset
263 gtk_widget_set_usize( Ok,-2,22 );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
264 gtk_widget_add_accelerator( Ok,"released",accel_group,GDK_Return,0,GTK_ACCEL_VISIBLE );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
265
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
266 Cancel=gtk_button_new_with_label( MSGTR_Cancel );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
267 gtk_widget_set_name( Cancel,MSGTR_Cancel );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
268 gtk_widget_ref( Cancel );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
269 gtk_object_set_data_full( GTK_OBJECT( SkinBrowser ),MSGTR_Cancel,Cancel,(GtkDestroyNotify)gtk_widget_unref );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
270 gtk_widget_show( Cancel );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
271 gtk_container_add( GTK_CONTAINER( hbuttonbox4 ),Cancel );
3587
6e21fbb41a2b full language support for gui
pontscho
parents: 2985
diff changeset
272 gtk_widget_set_usize( Cancel,-2,22 );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
273 gtk_widget_add_accelerator( Cancel,"released",accel_group,GDK_Escape,0,GTK_ACCEL_VISIBLE );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
274
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
275 gtk_signal_connect( GTK_OBJECT( SkinBrowser ),"destroy",GTK_SIGNAL_FUNC( on_SkinBrowser_destroy ),0 );
6794
77980ab4e296 - add preferences support (first try)
pontscho
parents: 6755
diff changeset
276 gtk_signal_connect( GTK_OBJECT( SkinBrowser ),"show",GTK_SIGNAL_FUNC( on_SkinBrowser_show ),(void *)1 );
6146
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
277 gtk_signal_connect( GTK_OBJECT( SkinBrowser ),"hide",GTK_SIGNAL_FUNC( on_SkinBrowser_show ),0 );
b9651eb9749e fix some gtk bug...
pontscho
parents: 6044
diff changeset
278
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
279 gtk_signal_connect( GTK_OBJECT( SkinList ),"select_row",GTK_SIGNAL_FUNC( on_SkinList_select_row ),NULL );
4818
3473ca9ef158 new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents: 3587
diff changeset
280 gtk_signal_connect( GTK_OBJECT( Ok ),"released",GTK_SIGNAL_FUNC( on_SkinBrowser_Ok ),NULL );
2901
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
281 gtk_signal_connect( GTK_OBJECT( Cancel ),"released",GTK_SIGNAL_FUNC( on_SkinBrowser_Cancel ),NULL );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
282
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
283 if ( ( sbMPlayerDirInHome=(char *)calloc( 1,strlen( skinDirInHome ) + 4 ) ) != NULL )
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
284 { strcpy( sbMPlayerDirInHome,skinDirInHome ); strcat( sbMPlayerDirInHome,"/*" ); }
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
285 if ( ( sbMPlayerPrefixDir=(char *)calloc( 1,strlen( skinMPlayerDir ) + 4 ) ) != NULL )
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
286 { strcpy( sbMPlayerPrefixDir,skinMPlayerDir ); strcat( sbMPlayerPrefixDir,"/*" ); }
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
287
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
288 gtk_window_add_accel_group( GTK_WINDOW( SkinBrowser ),accel_group );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
289 gtk_widget_grab_focus( SkinList );
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
290
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
291 return SkinBrowser;
f77f8379f28f rewrite ...
pontscho
parents:
diff changeset
292 }