aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui
diff options
context:
space:
mode:
authorJP Rosevear <jpr@ximian.com>2004-04-15 23:45:27 +0800
committerJP Rosevear <jpr@src.gnome.org>2004-04-15 23:45:27 +0800
commitc692eb0612942d959dd119063d68741a4694ff00 (patch)
tree2465bed9de33eb8e7a6637d9b501efbfebdb9739 /calendar/gui
parentba90e141e1e5364871c0c9edcd133d6b3267d5a5 (diff)
downloadgsoc2013-evolution-c692eb0612942d959dd119063d68741a4694ff00.tar
gsoc2013-evolution-c692eb0612942d959dd119063d68741a4694ff00.tar.gz
gsoc2013-evolution-c692eb0612942d959dd119063d68741a4694ff00.tar.bz2
gsoc2013-evolution-c692eb0612942d959dd119063d68741a4694ff00.tar.lz
gsoc2013-evolution-c692eb0612942d959dd119063d68741a4694ff00.tar.xz
gsoc2013-evolution-c692eb0612942d959dd119063d68741a4694ff00.tar.zst
gsoc2013-evolution-c692eb0612942d959dd119063d68741a4694ff00.zip
Fixes #53903
2004-04-15 JP Rosevear <jpr@ximian.com> Fixes #53903 * gui/dialogs/meeting-page.c (meeting_page_fill_widgets): show/hide add button properly (change_clicked_cb): ditto * gui/dialogs/comp-editor.c (needs_send_cb): call back when "needs_send" (page_changed_cb): use accessor svn path=/trunk/; revision=25482
Diffstat (limited to 'calendar/gui')
-rw-r--r--calendar/gui/dialogs/comp-editor.c18
-rw-r--r--calendar/gui/dialogs/meeting-page.c5
2 files changed, 19 insertions, 4 deletions
diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c
index 23d20d6e2f..976cae4493 100644
--- a/calendar/gui/dialogs/comp-editor.c
+++ b/calendar/gui/dialogs/comp-editor.c
@@ -102,6 +102,7 @@ static void delete_comp (CompEditor *editor);
static void close_dialog (CompEditor *editor);
static void page_changed_cb (GtkObject *obj, gpointer data);
+static void needs_send_cb (GtkObject *obj, gpointer data);
static void page_summary_changed_cb (GtkObject *obj, const char *summary, gpointer data);
static void page_dates_changed_cb (GtkObject *obj, CompEditorPageDates *dates, gpointer data);
static void page_client_changed_cb (GtkObject *obj, ECal *client, gpointer data);
@@ -469,11 +470,9 @@ save_comp_with_send (CompEditor *editor)
send = priv->changed && priv->needs_send;
- g_message ("Save and Send");
if (!save_comp (editor))
return FALSE;
- g_message ("Send dialog");
if (send && send_component_dialog ((GtkWindow *) editor, priv->client, priv->comp, !priv->existing_org)) {
if (itip_organizer_is_user (priv->comp, priv->client))
return comp_editor_send_comp (editor, E_CAL_COMPONENT_METHOD_REQUEST);
@@ -765,6 +764,8 @@ comp_editor_append_page (CompEditor *editor,
/* Listen for things happening on the page */
g_signal_connect(page, "changed",
G_CALLBACK (page_changed_cb), editor);
+ g_signal_connect(page, "needs_send",
+ G_CALLBACK (needs_send_cb), editor);
g_signal_connect(page, "summary_changed",
G_CALLBACK (page_summary_changed_cb), editor);
g_signal_connect(page, "dates_changed",
@@ -1465,7 +1466,7 @@ page_changed_cb (GtkObject *obj, gpointer data)
priv = editor->priv;
- priv->changed = TRUE;
+ comp_editor_set_changed (editor, TRUE);
if (!priv->warned && priv->existing_org && !priv->user_org) {
e_notice (editor, GTK_MESSAGE_INFO,
@@ -1475,6 +1476,17 @@ page_changed_cb (GtkObject *obj, gpointer data)
}
+static void
+needs_send_cb (GtkObject *obj, gpointer data)
+{
+ CompEditor *editor = COMP_EDITOR (data);
+ CompEditorPrivate *priv;
+
+ priv = editor->priv;
+
+ comp_editor_set_needs_send (editor, TRUE);
+}
+
/* Page signal callbacks */
static void
page_summary_changed_cb (GtkObject *obj, const char *summary, gpointer data)
diff --git a/calendar/gui/dialogs/meeting-page.c b/calendar/gui/dialogs/meeting-page.c
index ab82e4eb93..fdd0cb40e1 100644
--- a/calendar/gui/dialogs/meeting-page.c
+++ b/calendar/gui/dialogs/meeting-page.c
@@ -354,6 +354,7 @@ meeting_page_fill_widgets (CompEditorPage *page, ECalComponent *comp)
gtk_widget_show (priv->existing_organizer_table);
if (itip_organizer_is_user (comp, page->client)) {
gtk_widget_show (priv->invite);
+ gtk_widget_show (priv->add);
if (e_cal_get_static_capability (
page->client,
CAL_STATIC_CAPABILITY_ORGANIZER_NOT_EMAIL_ADDRESS))
@@ -364,6 +365,7 @@ meeting_page_fill_widgets (CompEditorPage *page, ECalComponent *comp)
CAL_STATIC_CAPABILITY_ORGANIZER_NOT_EMAIL_ADDRESS))
gtk_widget_hide (priv->existing_organizer_btn);
gtk_widget_hide (priv->invite);
+ gtk_widget_hide (priv->add);
}
if (organizer.cn != NULL)
@@ -543,8 +545,9 @@ change_clicked_cb (GtkWidget *widget, gpointer data)
gtk_widget_show (priv->organizer_table);
gtk_widget_hide (priv->existing_organizer_table);
gtk_widget_show (priv->invite);
+ gtk_widget_show (priv->add);
- comp_editor_page_notify_needs_send (COMP_EDITOR_PAGE (mpage));
+ comp_editor_page_notify_changed (COMP_EDITOR_PAGE (mpage));
priv->existing = FALSE;
}