aboutsummaryrefslogtreecommitdiffstats
path: root/calendar
diff options
context:
space:
mode:
Diffstat (limited to 'calendar')
-rw-r--r--calendar/ChangeLog10
-rw-r--r--calendar/calendar-errors.xml14
-rw-r--r--calendar/gui/dialogs/comp-editor.c10
-rw-r--r--calendar/gui/dialogs/send-comp.c31
-rw-r--r--calendar/gui/dialogs/send-comp.h1
5 files changed, 65 insertions, 1 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog
index a90b630991..7bd759aa34 100644
--- a/calendar/ChangeLog
+++ b/calendar/ChangeLog
@@ -1,3 +1,13 @@
+2004-11-25 Chenthill Palanisamy <pchenthill@novell.com>
+
+ * calendar-errors.xml: Added two error ids to display use
+ it when the meeting is created without a summary.
+ * gui/dialogs/send-comp.[ch] (send_component_prompt_subject): Added a
+ function to prompt for a dialog when a meeting/assigned task is sent
+ without a summary.
+ * gui/dialogs/comp-editor.c (response_cb): Called the above mentioned
+ function when the summary is not present.
+
2004-11-23 Rodney Dawes <dobey@novell.com>
* gui/alarm-notify/alarm-notify-dialog.[ch]:
diff --git a/calendar/calendar-errors.xml b/calendar/calendar-errors.xml
index 9ed07ca503..0e9cac856d 100644
--- a/calendar/calendar-errors.xml
+++ b/calendar/calendar-errors.xml
@@ -176,5 +176,19 @@
<button stock="gtk-cancel" response="GTK_RESPONSE_CANCEL"/>
<button stock="gtk-delete" response="GTK_RESPONSE_YES"/>
</error>
+
+ <error id="prompt-send-no-subject-calendar" type="question" default="GTK_RESPONSE_YES">
+ <primary>Are you sure you want to send the appointment without a summary?</primary>
+ <secondary>Adding a meaningful Summary to your appointment will give your recipients an idea of what your appointment is about.</secondary>
+ <button stock="gtk-cancel" response="GTK_RESPONSE_CANCEL"/>
+ <button label="_Send" response="GTK_RESPONSE_YES"/>
+ </error>
+
+ <error id="prompt-send-no-subject-task" type="question" default="GTK_RESPONSE_YES">
+ <primary>Are you sure you want to send the task without a summary?</primary>
+ <secondary>Adding a meaningful Summary to your task will give your recipients an idea of what your appointment is about.</secondary>
+ <button stock="gtk-cancel" response="GTK_RESPONSE_CANCEL"/>
+ <button label="_Send" response="GTK_RESPONSE_YES"/>
+ </error>
</error-list>
diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c
index 824bb7ceb7..8003f85f69 100644
--- a/calendar/gui/dialogs/comp-editor.c
+++ b/calendar/gui/dialogs/comp-editor.c
@@ -327,7 +327,7 @@ prompt_to_save_changes (CompEditor *editor, gboolean send)
if (e_cal_component_is_instance (priv->comp))
if (!recur_component_dialog (priv->client, priv->comp, &priv->mod, GTK_WINDOW (editor)))
return FALSE;
-
+
if (send && save_comp_with_send (editor))
return TRUE;
else if (!send && save_comp (editor))
@@ -347,6 +347,7 @@ response_cb (GtkWidget *widget, int response, gpointer data)
{
CompEditor *editor = COMP_EDITOR (data);
CompEditorPrivate *priv;
+ ECalComponentText text;
priv = editor->priv;
@@ -358,6 +359,13 @@ response_cb (GtkWidget *widget, int response, gpointer data)
if (!recur_component_dialog (priv->client, priv->comp, &priv->mod, GTK_WINDOW (editor)))
return;
+ e_cal_component_get_summary (priv->comp, &text);
+
+ if (!text.value) {
+ if (!send_component_prompt_subject ((GtkWindow *) editor, priv->client, priv->comp))
+ return;
+ }
+
if (save_comp_with_send (editor))
close_dialog (editor);
break;
diff --git a/calendar/gui/dialogs/send-comp.c b/calendar/gui/dialogs/send-comp.c
index 882368a4d6..bc5ce3a35e 100644
--- a/calendar/gui/dialogs/send-comp.c
+++ b/calendar/gui/dialogs/send-comp.c
@@ -73,3 +73,34 @@ send_component_dialog (GtkWindow *parent, ECal *client, ECalComponent *comp, gbo
else
return FALSE;
}
+
+gboolean
+send_component_prompt_subject (GtkWindow *parent, ECal *client, ECalComponent *comp)
+{
+ ECalComponentVType vtype;
+ const char *id;
+
+ vtype = e_cal_component_get_vtype (comp);
+
+ switch (vtype) {
+ case E_CAL_COMPONENT_EVENT:
+ id = "calendar:prompt-send-no-subject-calendar";
+ break;
+
+ case E_CAL_COMPONENT_TODO:
+ id = "calendar:prompt-send-no-subject-task";
+ break;
+
+ default:
+ g_message ("send_component_prompt_subject(): "
+ "Cannot handle object of type %d", vtype);
+ return FALSE;
+ }
+
+ if (e_error_run (parent, id, NULL) == GTK_RESPONSE_YES)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+
diff --git a/calendar/gui/dialogs/send-comp.h b/calendar/gui/dialogs/send-comp.h
index 86be94ccdb..7e007f9edb 100644
--- a/calendar/gui/dialogs/send-comp.h
+++ b/calendar/gui/dialogs/send-comp.h
@@ -27,5 +27,6 @@
#include <libecal/e-cal-component.h>
gboolean send_component_dialog (GtkWindow *parent, ECal *client, ECalComponent *comp, gboolean new);
+gboolean send_component_prompt_subject (GtkWindow *parent, ECal *client, ECalComponent *comp);
#endif