aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--calendar/ChangeLog9
-rw-r--r--calendar/gui/dialogs/comp-editor.c6
-rw-r--r--calendar/gui/dialogs/event-page.c22
3 files changed, 20 insertions, 17 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog
index 6a04d05ee0..d0d821dc6a 100644
--- a/calendar/ChangeLog
+++ b/calendar/ChangeLog
@@ -1,5 +1,14 @@
2004-03-04 Rodrigo Moya <rodrigo@ximian.com>
+ * gui/dialogs/comp-editor.c (comp_editor_append_page): always add
+ the page.
+
+ * gui/dialogs/event-page.c (event_page_fill_widgets): continue filling
+ up all other fields even if there are missing ones, and return the
+ validation result.
+
+2004-03-04 Rodrigo Moya <rodrigo@ximian.com>
+
* gui/alarm-notify/alarm-notify-dialog.c (alarm_notify_dialog):
don't make the dialog window sticky, the icon on the system tray
already shows in all workspaces.
diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c
index b298952a6e..d204de56e8 100644
--- a/calendar/gui/dialogs/comp-editor.c
+++ b/calendar/gui/dialogs/comp-editor.c
@@ -722,11 +722,7 @@ comp_editor_append_page (CompEditor *editor,
ECalComponent *comp;
comp = comp_editor_get_current_comp (editor);
- if (!comp_editor_page_fill_widgets (page, comp)) {
- /* dont add the pagge if there is an error */
- g_object_unref (comp);
- return;
- }
+ comp_editor_page_fill_widgets (page, comp);
g_object_unref (comp);
}
diff --git a/calendar/gui/dialogs/event-page.c b/calendar/gui/dialogs/event-page.c
index 129acd1a2a..c56e477fe2 100644
--- a/calendar/gui/dialogs/event-page.c
+++ b/calendar/gui/dialogs/event-page.c
@@ -421,6 +421,7 @@ event_page_fill_widgets (CompEditorPage *page, ECalComponent *comp)
const char *categories;
ESource *source;
GSList *l;
+ gboolean validated = TRUE;
g_return_val_if_fail (page->client != NULL, FALSE);
@@ -452,18 +453,15 @@ event_page_fill_widgets (CompEditorPage *page, ECalComponent *comp)
/* Start and end times */
e_cal_component_get_dtstart (comp, &start_date);
- if (!start_date.value) {
- comp_editor_page_display_validation_error (page, _("Event with no start time"), priv->start_time);
- return FALSE;
- }
-
e_cal_component_get_dtend (comp, &end_date);
- if (!end_date.value) {
- comp_editor_page_display_validation_error (page, _("Event with no end time"), priv->end_time);
- return FALSE;
- }
-
- update_time (epage, &start_date, &end_date);
+ if (!start_date.value) {
+ comp_editor_page_display_validation_error (page, _("Event with no start date"), priv->start_time);
+ validated = FALSE;
+ } else if (!end_date.value) {
+ comp_editor_page_display_validation_error (page, _("Event with no end date"), priv->end_time);
+ validated = FALSE;
+ } else
+ update_time (epage, &start_date, &end_date);
e_cal_component_free_datetime (&start_date);
e_cal_component_free_datetime (&end_date);
@@ -530,7 +528,7 @@ event_page_fill_widgets (CompEditorPage *page, ECalComponent *comp)
priv->updating = FALSE;
- return TRUE;
+ return validated;
}
/* fill_component handler for the event page */