diff options
author | Milan Crha <mcrha@redhat.com> | 2009-01-21 02:07:51 +0800 |
---|---|---|
committer | Milan Crha <mcrha@src.gnome.org> | 2009-01-21 02:07:51 +0800 |
commit | 1e637bac617f25bc77e9d1128b3c7d6e7afaca67 (patch) | |
tree | d58115ae552b2241795092d9a7392d0dfaf406e5 /calendar/gui/dialogs | |
parent | 1a7f3de2c544ee0569cbca3268a8daafcb23d994 (diff) | |
download | gsoc2013-evolution-1e637bac617f25bc77e9d1128b3c7d6e7afaca67.tar gsoc2013-evolution-1e637bac617f25bc77e9d1128b3c7d6e7afaca67.tar.gz gsoc2013-evolution-1e637bac617f25bc77e9d1128b3c7d6e7afaca67.tar.bz2 gsoc2013-evolution-1e637bac617f25bc77e9d1128b3c7d6e7afaca67.tar.lz gsoc2013-evolution-1e637bac617f25bc77e9d1128b3c7d6e7afaca67.tar.xz gsoc2013-evolution-1e637bac617f25bc77e9d1128b3c7d6e7afaca67.tar.zst gsoc2013-evolution-1e637bac617f25bc77e9d1128b3c7d6e7afaca67.zip |
** Fix for bug #568331
2009-01-20 Milan Crha <mcrha@redhat.com>
** Fix for bug #568331
* gui/dialogs/comp-editor.c: (classification_changed_cb),
(comp_editor_init): Notify changes of the classification.
* gui/dialogs/comp-editor.c: (fill_widgets): Block classification
change signal when filling widgets with values from a component.
svn path=/trunk/; revision=37108
Diffstat (limited to 'calendar/gui/dialogs')
-rw-r--r-- | calendar/gui/dialogs/comp-editor.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c index 4799895b84..dcdff0947e 100644 --- a/calendar/gui/dialogs/comp-editor.c +++ b/calendar/gui/dialogs/comp-editor.c @@ -1766,6 +1766,14 @@ comp_editor_class_init (CompEditorClass *class) } static void +classification_changed_cb (GtkRadioAction *action, GtkRadioAction *current, CompEditor *editor) +{ + g_return_if_fail (IS_COMP_EDITOR (editor)); + + comp_editor_set_changed (editor, TRUE); +} + +static void comp_editor_init (CompEditor *editor) { CompEditorPrivate *priv; @@ -1814,7 +1822,7 @@ comp_editor_init (CompEditor *editor) action_group, classification_radio_entries, G_N_ELEMENTS (classification_radio_entries), E_CAL_COMPONENT_CLASS_PUBLIC, - NULL, NULL); /* no callback */ + G_CALLBACK (classification_changed_cb), editor); action = e_attachment_bar_recent_action_new ( E_ATTACHMENT_BAR (priv->attachment_bar), "attach-recent", _("Recent _Documents")); @@ -2939,6 +2947,7 @@ fill_widgets (CompEditor *editor) { CompEditorPrivate *priv; GList *l; + GtkAction *action; priv = editor->priv; @@ -2953,8 +2962,13 @@ fill_widgets (CompEditor *editor) g_slist_free (attachment_list); } + action = comp_editor_get_action (editor, "classify-public"); + g_signal_handlers_block_by_func (action, G_CALLBACK (classification_changed_cb), editor); + for (l = priv->pages; l != NULL; l = l->next) comp_editor_page_fill_widgets (l->data, priv->comp); + + g_signal_handlers_unblock_by_func (action, G_CALLBACK (classification_changed_cb), editor); } static void |