diff options
author | Mike Kestner <mkestner@ximian.com> | 2003-10-01 06:39:04 +0800 |
---|---|---|
committer | Mike Kestner <mkestner@src.gnome.org> | 2003-10-01 06:39:04 +0800 |
commit | 54869d90bd04f0a816b1786530d3555ac2b034cc (patch) | |
tree | 3b2859280d478fa6b57227a419125eadd455a615 /calendar/gui/dialogs/task-editor.c | |
parent | 642e0e5abd8486793e95fab56e9fd9f3dd0394f8 (diff) | |
download | gsoc2013-evolution-54869d90bd04f0a816b1786530d3555ac2b034cc.tar gsoc2013-evolution-54869d90bd04f0a816b1786530d3555ac2b034cc.tar.gz gsoc2013-evolution-54869d90bd04f0a816b1786530d3555ac2b034cc.tar.bz2 gsoc2013-evolution-54869d90bd04f0a816b1786530d3555ac2b034cc.tar.lz gsoc2013-evolution-54869d90bd04f0a816b1786530d3555ac2b034cc.tar.xz gsoc2013-evolution-54869d90bd04f0a816b1786530d3555ac2b034cc.tar.zst gsoc2013-evolution-54869d90bd04f0a816b1786530d3555ac2b034cc.zip |
new VOID:STRING,STRING,STRING build the new view/store/renderer/editable
2003-09-30 Mike Kestner <mkestner@ximian.com>
* cal-util/cal-util-marshal.list : new VOID:STRING,STRING,STRING
* gui/Makefile.am : build the new view/store/renderer/editable
* gui/e-select-names-renderer.* : new completion cell renderer
* gui/e-select-names-editable.* : new completion cell editable
* gui/e-meeting-model.* : killed. code reused in list-view/store
* gui/e-meeting-store.* : port of EMeetingModel to GtkTreeModel
* gui/e-meeting-list-view.* : GtkTreeView subclass for attendee lists
* gui/e-meeting-time-sel.c : Use the new store/view
* gui/e-meeting-time-sel-item.c : Use the new store/view
* gui/dialogs/Makefile.am : don't install the etspec anymore.
* gui/dialogs/event-editor.c : Use the new store/view.
* gui/dialogs/meeting-page.c : Use the new store/view.
* gui/dialogs/shedule-page.c : Use the new store/view.
* gui/dialogs/task-editor.c : Use the new store/view.
svn path=/trunk/; revision=22774
Diffstat (limited to 'calendar/gui/dialogs/task-editor.c')
-rw-r--r-- | calendar/gui/dialogs/task-editor.c | 58 |
1 files changed, 26 insertions, 32 deletions
diff --git a/calendar/gui/dialogs/task-editor.c b/calendar/gui/dialogs/task-editor.c index eaf4c2eaca..4ef971fe85 100644 --- a/calendar/gui/dialogs/task-editor.c +++ b/calendar/gui/dialogs/task-editor.c @@ -26,6 +26,7 @@ #include <config.h> #include <string.h> #include <glade/glade.h> +#include <gal/util/e-util.h> #include <gal/widgets/e-unicode.h> #include <libgnome/gnome-i18n.h> @@ -40,7 +41,7 @@ struct _TaskEditorPrivate { TaskDetailsPage *task_details_page; MeetingPage *meet_page; - EMeetingModel *model; + EMeetingStore *model; gboolean assignment_shown; gboolean updating; @@ -60,8 +61,8 @@ static void refresh_task_cmd (GtkWidget *widget, gpointer data); static void cancel_task_cmd (GtkWidget *widget, gpointer data); static void forward_cmd (GtkWidget *widget, gpointer data); -static void model_row_changed_cb (ETableModel *etm, int row, gpointer data); -static void row_count_changed_cb (ETableModel *etm, int row, int count, gpointer data); +static void model_row_change_insert_cb (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data); +static void model_row_delete_cb (GtkTreeModel *model, GtkTreePath *path, gpointer data); static BonoboUIVerb verbs [] = { BONOBO_UI_UNSAFE_VERB ("ActionAssignTask", assign_task_cmd), @@ -154,12 +155,12 @@ init_widgets (TaskEditor *te) priv = te->priv; - g_signal_connect((priv->model), "model_row_changed", - G_CALLBACK (model_row_changed_cb), te); - g_signal_connect((priv->model), "model_rows_inserted", - G_CALLBACK (row_count_changed_cb), te); - g_signal_connect((priv->model), "model_rows_deleted", - G_CALLBACK (row_count_changed_cb), te); + g_signal_connect((priv->model), "row_changed", + G_CALLBACK (model_row_change_insert_cb), te); + g_signal_connect((priv->model), "row_inserted", + G_CALLBACK (model_row_change_insert_cb), te); + g_signal_connect((priv->model), "row_deleted", + G_CALLBACK (model_row_delete_cb), te); } /* Object initialization function for the task editor */ @@ -171,7 +172,7 @@ task_editor_init (TaskEditor *te) priv = g_new0 (TaskEditorPrivate, 1); te->priv = priv; - priv->model = E_MEETING_MODEL (e_meeting_model_new ()); + priv->model = E_MEETING_STORE (e_meeting_store_new ()); priv->assignment_shown = TRUE; priv->updating = FALSE; @@ -224,7 +225,7 @@ task_editor_set_cal_client (CompEditor *editor, CalClient *client) te = TASK_EDITOR (editor); priv = te->priv; - e_meeting_model_set_cal_client (priv->model, client); + e_meeting_store_set_cal_client (priv->model, client); if (parent_class->set_cal_client) parent_class->set_cal_client (editor, client); @@ -254,7 +255,7 @@ task_editor_edit_comp (CompEditor *editor, CalComponent *comp) cal_component_get_attendee_list (comp, &attendees); /* Clear things up */ - e_meeting_model_remove_all_attendees (priv->model); + e_meeting_store_remove_all_attendees (priv->model); if (attendees == NULL) { comp_editor_remove_page (editor, COMP_EDITOR_PAGE (priv->meet_page)); @@ -276,7 +277,7 @@ task_editor_edit_comp (CompEditor *editor, CalComponent *comp) /* If we aren't the organizer or the attendee is just delegating, don't allow editing */ if (!comp_editor_get_user_org (editor) || e_meeting_attendee_is_set_delto (ia)) e_meeting_attendee_set_edit_level (ia, E_MEETING_ATTENDEE_EDIT_NONE); - e_meeting_model_add_attendee (priv->model, ia); + e_meeting_store_add_attendee (priv->model, ia); g_object_unref(ia); } @@ -293,7 +294,7 @@ task_editor_edit_comp (CompEditor *editor, CalComponent *comp) account = (EAccount*)e_iterator_get(it); - ia = e_meeting_model_find_attendee (priv->model, account->id->address, &row); + ia = e_meeting_store_find_attendee (priv->model, account->id->address, &row); if (ia != NULL) e_meeting_attendee_set_edit_level (ia, E_MEETING_ATTENDEE_EDIT_STATUS); } @@ -301,7 +302,7 @@ task_editor_edit_comp (CompEditor *editor, CalComponent *comp) } else if (cal_client_get_organizer_must_attend (client)) { EMeetingAttendee *ia; - ia = e_meeting_model_find_attendee (priv->model, organizer.value, &row); + ia = e_meeting_store_find_attendee (priv->model, organizer.value, &row); if (ia != NULL) e_meeting_attendee_set_edit_level (ia, E_MEETING_ATTENDEE_EDIT_NONE); } @@ -335,7 +336,7 @@ task_editor_send_comp (CompEditor *editor, CalComponentItipMethod method) CalClient *client; gboolean result; - client = e_meeting_model_get_cal_client (priv->model); + client = e_meeting_store_get_cal_client (priv->model); result = itip_send_comp (CAL_COMPONENT_METHOD_CANCEL, comp, client, NULL); g_object_unref((comp)); @@ -464,29 +465,22 @@ forward_cmd (GtkWidget *widget, gpointer data) } static void -model_row_changed_cb (ETableModel *etm, int row, gpointer data) +model_changed (TaskEditor *te) { - TaskEditor *te = TASK_EDITOR (data); - TaskEditorPrivate *priv; - - priv = te->priv; - - if (!priv->updating) { + if (!te->priv->updating) { comp_editor_set_changed (COMP_EDITOR (te), TRUE); comp_editor_set_needs_send (COMP_EDITOR (te), TRUE); } } static void -row_count_changed_cb (ETableModel *etm, int row, int count, gpointer data) +model_row_change_insert_cb (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data) { - TaskEditor *te = TASK_EDITOR (data); - TaskEditorPrivate *priv; - - priv = te->priv; + model_changed (TASK_EDITOR (data)); +} - if (!priv->updating) { - comp_editor_set_changed (COMP_EDITOR (te), TRUE); - comp_editor_set_needs_send (COMP_EDITOR (te), TRUE); - } +static void +model_row_delete_cb (GtkTreeModel *model, GtkTreePath *path, gpointer data) +{ + model_changed (TASK_EDITOR (data)); } |