From b73ed1d9ffd6975d94638364b6a7fcd7f29a6c23 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Mon, 4 May 2009 16:31:12 +0200 Subject: BUGFIX: 547414 - Publish Free/Busy calendar for configurable time Allow user define time duration for the Free/Busy calendar information in the publish-calendar plugin. --- plugins/publish-calendar/url-editor-dialog.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'plugins/publish-calendar/url-editor-dialog.c') diff --git a/plugins/publish-calendar/url-editor-dialog.c b/plugins/publish-calendar/url-editor-dialog.c index 8e1c735dc3..ea03320ae8 100644 --- a/plugins/publish-calendar/url-editor-dialog.c +++ b/plugins/publish-calendar/url-editor-dialog.c @@ -90,6 +90,9 @@ create_uri (UrlEditorDialog *dialog) g_free (username); g_free (password); } + + uri->fb_duration_value = gtk_spin_button_get_value (GTK_SPIN_BUTTON (dialog->fb_duration_spin)); + uri->fb_duration_type = gtk_combo_box_get_active (GTK_COMBO_BOX (dialog->fb_duration_combo)); } static void @@ -101,6 +104,16 @@ check_input (UrlEditorDialog *dialog) uri = dialog->uri; + if (gtk_combo_box_get_active (GTK_COMBO_BOX (dialog->type_selector)) == 1) { + gtk_widget_show (dialog->fb_duration_label); + gtk_widget_show (dialog->fb_duration_spin); + gtk_widget_show (dialog->fb_duration_combo); + } else { + gtk_widget_hide (dialog->fb_duration_label); + gtk_widget_hide (dialog->fb_duration_spin); + gtk_widget_hide (dialog->fb_duration_combo); + } + if (GTK_WIDGET_IS_SENSITIVE (dialog->events_selector)) { sources = e_source_selector_get_selection (E_SOURCE_SELECTOR (dialog->events_selector)); n += g_slist_length (sources); @@ -329,8 +342,11 @@ url_editor_dialog_construct (UrlEditorDialog *dialog) dialog->gui = gui; #define GW(name) ((dialog->name) = glade_xml_get_widget (dialog->gui, #name)) - GW(publish_frequency); GW(type_selector); + GW(fb_duration_label); + GW(fb_duration_spin); + GW(fb_duration_combo); + GW(publish_frequency); GW(events_swin); @@ -429,6 +445,9 @@ url_editor_dialog_construct (UrlEditorDialog *dialog) } } + gtk_spin_button_set_value (GTK_SPIN_BUTTON (dialog->fb_duration_spin), uri->fb_duration_value); + gtk_combo_box_set_active (GTK_COMBO_BOX (dialog->fb_duration_combo), uri->fb_duration_type); + g_signal_connect (G_OBJECT (dialog->publish_service), "changed", G_CALLBACK (publish_service_changed), dialog); g_signal_connect (G_OBJECT (dialog->type_selector), "changed", G_CALLBACK (type_selector_changed), dialog); g_signal_connect (G_OBJECT (dialog->publish_frequency), "changed", G_CALLBACK (frequency_changed_cb), dialog); -- cgit v1.2.3