diff options
author | Ramiro Estrugo <ramiro@src.gnome.org> | 2001-03-07 05:44:02 +0000 |
---|---|---|
committer | Ramiro Estrugo <ramiro@src.gnome.org> | 2001-03-07 05:44:02 +0000 |
commit | 23166870499caca2fd7e428b4f5100a7bba1d05e (patch) | |
tree | 57e781399630581bf9b92742842cbc20f8e6cf42 | |
parent | 4924c4404937a1d21e82f4548399fbde12368159 (diff) | |
download | nautilus-23166870499caca2fd7e428b4f5100a7bba1d05e.tar.gz |
reviewed by: John Sullivan <sullivan@eazel.com>
Fix bug 7400 - Assertions in NON smooth font picker, and font
doesn't change.
* libnautilus-extensions/nautilus-preferences-item.c:
(preferences_item_create_font_family),
(font_family_item_changed_callback):
Replace text_item_changed_callback with
font_family_item_changed_callback and have the new callback deal
with the string picker properly. Im not sure where
text_item_changed_callback came from, but it was assuming that the
target was a NautilusCaption and not a NautilusStringPicker.
-rw-r--r-- | ChangeLog | 16 | ||||
-rw-r--r-- | libnautilus-extensions/nautilus-preferences-item.c | 25 | ||||
-rw-r--r-- | libnautilus-private/nautilus-preferences-item.c | 25 |
3 files changed, 46 insertions, 20 deletions
@@ -1,3 +1,19 @@ +2001-03-06 Ramiro Estrugo <ramiro@eazel.com> + + reviewed by: John Sullivan <sullivan@eazel.com> + + Fix bug 7400 - Assertions in NON smooth font picker, and font + doesn't change. + + * libnautilus-extensions/nautilus-preferences-item.c: + (preferences_item_create_font_family), + (font_family_item_changed_callback): + Replace text_item_changed_callback with + font_family_item_changed_callback and have the new callback deal + with the string picker properly. Im not sure where + text_item_changed_callback came from, but it was assuming that the + target was a NautilusCaption and not a NautilusStringPicker. + 2001-03-06 Darin Adler <darin@eazel.com> reviewed by: John Sullivan <sullivan@eazel.com> diff --git a/libnautilus-extensions/nautilus-preferences-item.c b/libnautilus-extensions/nautilus-preferences-item.c index 20cdd7607..3253bac04 100644 --- a/libnautilus-extensions/nautilus-preferences-item.c +++ b/libnautilus-extensions/nautilus-preferences-item.c @@ -90,12 +90,12 @@ static void enum_radio_group_changed_callback (GtkWidget gpointer user_data); static void boolean_button_toggled_callback (GtkWidget *button_group, gpointer user_data); -static void text_item_changed_callback (GtkWidget *string_picker, - gpointer user_data); static void editable_string_changed_callback (GtkWidget *caption, gpointer user_data); static void integer_changed_callback (GtkWidget *caption, gpointer user_data); +static void font_family_item_changed_callback (GtkWidget *caption, + gpointer user_data); NAUTILUS_DEFINE_CLASS_BOILERPLATE (NautilusPreferencesItem, nautilus_preferences_item, GTK_TYPE_VBOX) @@ -489,8 +489,8 @@ preferences_item_create_font_family (NautilusPreferencesItem *item, item->details->change_signal_ID = gtk_signal_connect (GTK_OBJECT (item->details->child), "changed", - GTK_SIGNAL_FUNC (text_item_changed_callback), - (gpointer) item); + GTK_SIGNAL_FUNC (font_family_item_changed_callback), + item); } @@ -606,19 +606,24 @@ boolean_button_toggled_callback (GtkWidget *button, gpointer user_data) } static void -text_item_changed_callback (GtkWidget *button, gpointer user_data) +font_family_item_changed_callback (GtkWidget *string_picker, gpointer user_data) { NautilusPreferencesItem *item; + char *selected_string; - g_assert (user_data != NULL); - g_assert (NAUTILUS_IS_PREFERENCES_ITEM (user_data)); + g_return_if_fail (NAUTILUS_IS_STRING_PICKER (string_picker)); + g_return_if_fail (NAUTILUS_IS_PREFERENCES_ITEM (user_data)); item = NAUTILUS_PREFERENCES_ITEM (user_data); - g_assert (item->details->child != NULL); - g_assert (NAUTILUS_IS_STRING_PICKER (item->details->child)); + g_return_if_fail (item->details->preference_name != NULL); - preferences_item_update_text_settings_at_idle (item); + selected_string = nautilus_string_picker_get_selected_string (NAUTILUS_STRING_PICKER (string_picker)); + g_return_if_fail (selected_string != NULL); + + nautilus_preferences_set (item->details->preference_name, selected_string); + + g_free (selected_string); } static void diff --git a/libnautilus-private/nautilus-preferences-item.c b/libnautilus-private/nautilus-preferences-item.c index 20cdd7607..3253bac04 100644 --- a/libnautilus-private/nautilus-preferences-item.c +++ b/libnautilus-private/nautilus-preferences-item.c @@ -90,12 +90,12 @@ static void enum_radio_group_changed_callback (GtkWidget gpointer user_data); static void boolean_button_toggled_callback (GtkWidget *button_group, gpointer user_data); -static void text_item_changed_callback (GtkWidget *string_picker, - gpointer user_data); static void editable_string_changed_callback (GtkWidget *caption, gpointer user_data); static void integer_changed_callback (GtkWidget *caption, gpointer user_data); +static void font_family_item_changed_callback (GtkWidget *caption, + gpointer user_data); NAUTILUS_DEFINE_CLASS_BOILERPLATE (NautilusPreferencesItem, nautilus_preferences_item, GTK_TYPE_VBOX) @@ -489,8 +489,8 @@ preferences_item_create_font_family (NautilusPreferencesItem *item, item->details->change_signal_ID = gtk_signal_connect (GTK_OBJECT (item->details->child), "changed", - GTK_SIGNAL_FUNC (text_item_changed_callback), - (gpointer) item); + GTK_SIGNAL_FUNC (font_family_item_changed_callback), + item); } @@ -606,19 +606,24 @@ boolean_button_toggled_callback (GtkWidget *button, gpointer user_data) } static void -text_item_changed_callback (GtkWidget *button, gpointer user_data) +font_family_item_changed_callback (GtkWidget *string_picker, gpointer user_data) { NautilusPreferencesItem *item; + char *selected_string; - g_assert (user_data != NULL); - g_assert (NAUTILUS_IS_PREFERENCES_ITEM (user_data)); + g_return_if_fail (NAUTILUS_IS_STRING_PICKER (string_picker)); + g_return_if_fail (NAUTILUS_IS_PREFERENCES_ITEM (user_data)); item = NAUTILUS_PREFERENCES_ITEM (user_data); - g_assert (item->details->child != NULL); - g_assert (NAUTILUS_IS_STRING_PICKER (item->details->child)); + g_return_if_fail (item->details->preference_name != NULL); - preferences_item_update_text_settings_at_idle (item); + selected_string = nautilus_string_picker_get_selected_string (NAUTILUS_STRING_PICKER (string_picker)); + g_return_if_fail (selected_string != NULL); + + nautilus_preferences_set (item->details->preference_name, selected_string); + + g_free (selected_string); } static void |