Hello. I have not made much progress with the palette :-(, so I have
been fiddling around with some other things in glade. I have made a few
small improvements to Glade's FileChooser dialog. Please consider my
patch :-)

Added file filters "All Files", "Glade Files" to FileChooser Dialog

FileChooser save dialog uses 'project->name' or 'project->path' as
initial selected filename so that dialog is more intuitive to user. 

Regards

Vincent

--

2006-02-27  Vincent Geddes <[EMAIL PROTECTED]>

        * src/glade-utils.c (glade_util_file_dialog_new): 
          Added GtkFileFilter's to FileChooser dialog

        * src/glade-project-window.c (gpw_save_as): 
          call gtk_file_chooser_set_current_name ()
          or gtk_file_chooser_set_filename () to set
          initial selected filename for save dialog.
Index: src/glade-project-window.c
===================================================================
RCS file: /cvs/gnome/glade3/src/glade-project-window.c,v
retrieving revision 1.131
diff -u -p -r1.131 glade-project-window.c
--- src/glade-project-window.c	24 Feb 2006 02:04:38 -0000	1.131
+++ src/glade-project-window.c	27 Feb 2006 20:20:25 -0000
@@ -414,6 +414,11 @@ gpw_save_as (GladeProjectWindow *gpw, co
 	filechooser = glade_util_file_dialog_new (dialog_title,
 						  GTK_WINDOW (gpw->priv->window),
 						  GLADE_FILE_DIALOG_ACTION_SAVE);
+
+	if (project->path)
+		gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (filechooser), project->path);
+	else
+		gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (filechooser), project->name);
 	
  	if (gtk_dialog_run (GTK_DIALOG(filechooser)) == GTK_RESPONSE_OK)
 		path = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (filechooser));
Index: src/glade-utils.c
===================================================================
RCS file: /cvs/gnome/glade3/src/glade-utils.c,v
retrieving revision 1.66
diff -u -p -r1.66 glade-utils.c
--- src/glade-utils.c	16 Feb 2006 01:00:36 -0000	1.66
+++ src/glade-utils.c	27 Feb 2006 20:20:30 -0000
@@ -501,6 +501,7 @@ glade_util_file_dialog_new (const gchar 
 			     GladeUtilFileDialogType action)
 {
 	GtkWidget *file_dialog;
+	GtkFileFilter *file_filter;
 
 	g_return_val_if_fail ((action == GLADE_FILE_DIALOG_ACTION_OPEN ||
 			       action == GLADE_FILE_DIALOG_ACTION_SAVE), NULL);
@@ -512,6 +513,19 @@ glade_util_file_dialog_new (const gchar 
 						    GTK_STOCK_OPEN : GTK_STOCK_SAVE,
 						    GTK_RESPONSE_OK,
 						    NULL);
+	
+	file_filter = gtk_file_filter_new ();
+	gtk_file_filter_add_pattern (file_filter, "*");
+	gtk_file_filter_set_name (file_filter, _("All Files"));
+	gtk_file_chooser_add_filter (file_dialog, file_filter);
+
+	file_filter = gtk_file_filter_new ();
+	gtk_file_filter_add_pattern (file_filter, "*.glade");
+	gtk_file_filter_set_name (file_filter, _("Glade Files"));
+	gtk_file_chooser_add_filter (file_dialog, file_filter);
+
+	gtk_file_chooser_set_filter (file_dialog, file_filter);
+
 	gtk_window_set_position (GTK_WINDOW (file_dialog), GTK_WIN_POS_CENTER);
 
 	return file_dialog;
_______________________________________________
Glade-devel maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/glade-devel

Reply via email to