diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2010-05-27 01:09:33 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-05-27 01:09:33 +0800 |
commit | c9ec8c3f4dce2b02c91268529977770364ef87fe (patch) | |
tree | d574f2be1b5438407e59e2fead1321766c9bbc83 /calendar/gui/dialogs/event-editor.c | |
parent | 6fec6bf39467dd32625847be1b021a7e5bc94d76 (diff) | |
parent | 96538878911586a9e9ca26b81e1916c04e538980 (diff) | |
download | gsoc2013-evolution-c9ec8c3f4dce2b02c91268529977770364ef87fe.tar.gz gsoc2013-evolution-c9ec8c3f4dce2b02c91268529977770364ef87fe.tar.zst gsoc2013-evolution-c9ec8c3f4dce2b02c91268529977770364ef87fe.zip |
Merge branch 'express2'
Diffstat (limited to 'calendar/gui/dialogs/event-editor.c')
-rw-r--r-- | calendar/gui/dialogs/event-editor.c | 62 |
1 files changed, 51 insertions, 11 deletions
diff --git a/calendar/gui/dialogs/event-editor.c b/calendar/gui/dialogs/event-editor.c index 90fc910708..262751fa86 100644 --- a/calendar/gui/dialogs/event-editor.c +++ b/calendar/gui/dialogs/event-editor.c @@ -36,6 +36,7 @@ #include <e-util/e-binding.h> #include <e-util/e-plugin-ui.h> #include <e-util/e-util-private.h> +#include <e-util/e-ui-manager.h> #include "event-page.h" #include "recurrence-page.h" @@ -89,11 +90,19 @@ static const gchar *ui = " </menu>" " </menubar>" " <toolbar name='main-toolbar'>" -" <toolitem action='alarms'/>" -" <toolitem action='show-time-busy'/>" -" <toolitem action='recurrence'/>" -" <toolitem action='all-day-event'/>" -" <toolitem action='free-busy'/>" +" <placeholder name='content'>\n" +"#if !EXPRESS\n" +" <toolitem action='alarms'/>\n" +"#endif\n" +" <toolitem action='show-time-busy'/>\n" +"#if !EXPRESS\n" +" <toolitem action='recurrence'/>\n" +"#endif\n" +" <toolitem action='all-day-event'/>\n" +"#if !EXPRESS\n" +" <toolitem action='free-busy'/>\n" +"#endif\n" +" </placeholder>" " </toolbar>" "</ui>"; @@ -280,6 +289,8 @@ event_editor_constructor (GType type, GtkWidget *content_area; ECal *client; gboolean is_meeting; + GtkWidget *alarm_page; + GtkWidget *attendee_page; /* Chain up to parent's constructor() method. */ object = G_OBJECT_CLASS (event_editor_parent_class)->constructor ( @@ -316,11 +327,34 @@ event_editor_constructor (GType type, priv->recur_page = recurrence_page_new (editor); page = COMP_EDITOR_PAGE (priv->recur_page); - gtk_container_add ( - GTK_CONTAINER (content_area), - comp_editor_page_get_widget (page)); - gtk_widget_show_all (gtk_bin_get_child (GTK_BIN (priv->recur_window))); - comp_editor_append_page (editor, page, NULL, FALSE); + if (!e_shell_get_express_mode(e_shell_get_default())) { + gtk_container_add ( + GTK_CONTAINER ((GTK_DIALOG (priv->recur_window)->vbox)), + comp_editor_page_get_widget (page)); + gtk_widget_show_all (gtk_bin_get_child (GTK_BIN (priv->recur_window))); + comp_editor_append_page (editor, page, NULL, FALSE); + } else { + comp_editor_append_page (editor, page, _("_Recurrence"), TRUE); + } + + if (e_shell_get_express_mode(e_shell_get_default())) { + ENameSelector *name_selector; + + priv->sched_page = schedule_page_new (priv->model, editor); + page = COMP_EDITOR_PAGE (priv->sched_page); + + name_selector = event_page_get_name_selector (priv->event_page); + schedule_page_set_name_selector (priv->sched_page, name_selector); + + comp_editor_append_page (editor, page, _("_Free/Busy"), TRUE); + schedule_page_update_free_busy (priv->sched_page); + + /* Alarm page */ + alarm_page = event_page_get_alarm_page (priv->event_page); + comp_editor_append_widget (editor, alarm_page, _("_Alarm"), TRUE); + g_object_unref(alarm_page); + + } if (is_meeting) { @@ -337,6 +371,12 @@ event_editor_constructor (GType type, event_page_set_meeting (priv->event_page, TRUE); priv->meeting_shown=TRUE; + + if (e_shell_get_express_mode(e_shell_get_default())) { + attendee_page = event_page_get_attendee_page (priv->event_page); + comp_editor_append_widget (editor, attendee_page, _("Attendee_s"), TRUE); + g_object_unref(attendee_page); + } } return object; @@ -513,7 +553,7 @@ event_editor_init (EventEditor *ee) G_N_ELEMENTS (meeting_entries), ee); ui_manager = comp_editor_get_ui_manager (editor); - gtk_ui_manager_add_ui_from_string (ui_manager, ui, -1, &error); + e_ui_manager_add_ui_from_string (E_UI_MANAGER (ui_manager), ui, &error); id = "org.gnome.evolution.event-editor"; e_plugin_ui_register_manager (ui_manager, id, ee); |