fix bug 4769 tweak to look slightly better. fix a potential segfault too.
2000-11-16 Mathieu Lacage <mathieu@eazel.com> fix bug 4769 * mime-type-capplet/nautilus-mime-type-capplet-dialogs.c: (nautilus_mime_type_capplet_show_new_mime_window): tweak to look slightly better. fix a potential segfault too. * mime-type-capplet/nautilus-mime-type-capplet.c: (revert_real_cb), (revert_mime_clicked), (add_mime_clicked): add dialog hook.
This commit is contained in:
parent
796feca1e3
commit
7b46e81978
2 changed files with 35 additions and 11 deletions
|
@ -618,6 +618,7 @@ nautilus_mime_type_capplet_show_new_mime_window (void)
|
|||
mime_type = NULL;
|
||||
|
||||
dialog = gnome_dialog_new (_("Add Mime Type"), GNOME_STOCK_BUTTON_OK, GNOME_STOCK_BUTTON_CANCEL, NULL);
|
||||
gnome_dialog_set_default (GNOME_DIALOG (dialog), 1);
|
||||
label = gtk_label_new (_("Add a new Mime Type\nFor example: image/tiff; text/x-scheme"));
|
||||
gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_LEFT);
|
||||
hbox = gtk_hbox_new (FALSE, GNOME_PAD_SMALL);
|
||||
|
@ -647,6 +648,8 @@ nautilus_mime_type_capplet_show_new_mime_window (void)
|
|||
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
|
||||
|
||||
|
||||
gnome_dialog_set_close (GNOME_DIALOG (dialog), FALSE);
|
||||
|
||||
gtk_widget_show_all (GNOME_DIALOG (dialog)->vbox);
|
||||
switch (gnome_dialog_run (GNOME_DIALOG (dialog))) {
|
||||
case 0:
|
||||
|
@ -662,13 +665,14 @@ nautilus_mime_type_capplet_show_new_mime_window (void)
|
|||
/* Fall through to close dialog */
|
||||
|
||||
case 1:
|
||||
gtk_widget_destroy (dialog);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
gnome_dialog_close (GNOME_DIALOG (dialog));
|
||||
|
||||
return mime_type;
|
||||
}
|
||||
|
||||
|
|
|
@ -954,20 +954,39 @@ populate_viewer_menu (GtkWidget *component_menu, const char *mime_type)
|
|||
gtk_option_menu_set_menu (GTK_OPTION_MENU (default_menu), new_menu);
|
||||
}
|
||||
|
||||
static void
|
||||
revert_real_cb (gint reply, gpointer data)
|
||||
{
|
||||
if (reply == 0) {
|
||||
/* YES */
|
||||
GList *mime_types_list;
|
||||
gnome_vfs_mime_reset ();
|
||||
|
||||
gnome_vfs_mime_info_reload ();
|
||||
|
||||
mime_types_list = gnome_vfs_get_registered_mime_types ();
|
||||
|
||||
gtk_clist_clear (GTK_CLIST (mime_list));
|
||||
populate_mime_list (mime_types_list, GTK_CLIST (mime_list));
|
||||
} else {
|
||||
/* NO */
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static void
|
||||
revert_mime_clicked (GtkWidget *widget, gpointer data)
|
||||
{
|
||||
GList *mime_types_list;
|
||||
GtkWidget *dialog;
|
||||
gint button_clicked;
|
||||
GtkWidget *label;
|
||||
|
||||
gnome_vfs_mime_reset ();
|
||||
dialog = gnome_question_dialog_modal (_("Reverting to system settings\n"
|
||||
"will lose all your personal \n"
|
||||
"Mime configuration.\n"
|
||||
"Revert to System Settings ?\n"),
|
||||
revert_real_cb, NULL);
|
||||
|
||||
gnome_vfs_mime_info_reload ();
|
||||
|
||||
mime_types_list = gnome_vfs_get_registered_mime_types ();
|
||||
|
||||
gtk_clist_clear (GTK_CLIST (mime_list));
|
||||
populate_mime_list (mime_types_list, GTK_CLIST (mime_list));
|
||||
}
|
||||
/*
|
||||
* delete_mime_clicked
|
||||
|
@ -1091,6 +1110,7 @@ add_mime_clicked (GtkWidget *widget, gpointer data)
|
|||
g_free (text[3]);
|
||||
g_free (extensions);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Add table
Reference in a new issue