diff options
author | Milan Crha <mcrha@redhat.com> | 2007-11-05 18:03:02 +0800 |
---|---|---|
committer | Milan Crha <mcrha@src.gnome.org> | 2007-11-05 18:03:02 +0800 |
commit | abf34a4520db2714e688fcdc01f3e5cbb890bc73 (patch) | |
tree | 55c9a141a81af5be89ec7cb38a5ac64aeee5fc11 /calendar/gui/tasks-component.c | |
parent | 92d0fb79a748036a21403539a8c296eafb2e2613 (diff) | |
download | gsoc2013-evolution-abf34a4520db2714e688fcdc01f3e5cbb890bc73.tar gsoc2013-evolution-abf34a4520db2714e688fcdc01f3e5cbb890bc73.tar.gz gsoc2013-evolution-abf34a4520db2714e688fcdc01f3e5cbb890bc73.tar.bz2 gsoc2013-evolution-abf34a4520db2714e688fcdc01f3e5cbb890bc73.tar.lz gsoc2013-evolution-abf34a4520db2714e688fcdc01f3e5cbb890bc73.tar.xz gsoc2013-evolution-abf34a4520db2714e688fcdc01f3e5cbb890bc73.tar.zst gsoc2013-evolution-abf34a4520db2714e688fcdc01f3e5cbb890bc73.zip |
** Fix for bug #318604
2007-11-05 Milan Crha <mcrha@redhat.com>
** Fix for bug #318604
* Enable source when adding event to disabled source.
* gui/gnome-cal.h: (gnome_calendar_emit_user_created_signal):
New helper function which will store used calendar before emitting
signal "user_created" on the instance to GnomeCalendar for later use
and unset it right after the emit.
* gui/gnome-cal.c: (struct _GnomeCalendarPrivate): New member to store
used ECal before emitting "user_created" signal.
* gui/gnome-cal.c: (gnome_calendar_emit_user_created_signal),
(user_created_cb): Implementation of new helper function and enabling
last used source instead of default one on "user_created" signal.
* gui/e-day-view.c: (e_day_view_on_editing_stopped):
* gui/e-week-view.c: (e_week_view_on_editing_stopped):
* gui/e-calendar-view.c: (object_created_cb): Use our new
helper function to emit "user_created" signal with proper ECal.
* gui/e-calendar-table.h: (struct _ECalendarTable):
* gui/e-memo-table.h: (struct _EMemoTable): New member added.
* gui/e-calendar-table.c: (e_calendar_table_init):
* gui/e-memo-table.c: (e_memo_table_init): Initialize member to NULL.
* gui/tasks-component.c: (object_created_cb), (create_new_todo):
* gui/memos-component.c: (object_created_cb), (create_new_memo):
Add new callback function to notice new object created and emit
"user_created" signal with proper ECal stored in ECalendarTable.
* gui/e-tasks.c: (user_created_cb):
* gui/e-memos.c: (user_created_cb): Use previously stored ECal, which
has been used to create event, instead of using default ECal.
svn path=/trunk/; revision=34495
Diffstat (limited to 'calendar/gui/tasks-component.c')
-rw-r--r-- | calendar/gui/tasks-component.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/calendar/gui/tasks-component.c b/calendar/gui/tasks-component.c index 3f5a13d9ec..cc87d9d287 100644 --- a/calendar/gui/tasks-component.c +++ b/calendar/gui/tasks-component.c @@ -919,6 +919,17 @@ setup_create_ecal (TasksComponent *component, TasksComponentView *component_view return priv->create_ecal ; } +/* Ensures the calendar is selected */ +static void +object_created_cb (CompEditor *ce, ECalendarTable *cal_table) +{ + g_return_if_fail (cal_table != NULL); + + cal_table->user_created_cal = comp_editor_get_e_cal (ce); + g_signal_emit_by_name (cal_table, "user_created"); + cal_table->user_created_cal = NULL; +} + static gboolean create_new_todo (TasksComponent *task_component, gboolean is_assigned, TasksComponentView *component_view) { @@ -939,6 +950,8 @@ create_new_todo (TasksComponent *task_component, gboolean is_assigned, TasksComp editor = task_editor_new (ecal, flags); comp = cal_comp_task_new_with_defaults (ecal); + g_signal_connect (editor, "object_created", G_CALLBACK (object_created_cb), e_tasks_get_calendar_table (component_view->tasks)); + comp_editor_edit_comp (COMP_EDITOR (editor), comp); if (is_assigned) task_editor_show_assignment (editor); |