aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/dialogs/task-editor.c
diff options
context:
space:
mode:
authorMike Kestner <mkestner@ximian.com>2003-10-01 06:39:04 +0800
committerMike Kestner <mkestner@src.gnome.org>2003-10-01 06:39:04 +0800
commit54869d90bd04f0a816b1786530d3555ac2b034cc (patch)
tree3b2859280d478fa6b57227a419125eadd455a615 /calendar/gui/dialogs/task-editor.c
parent642e0e5abd8486793e95fab56e9fd9f3dd0394f8 (diff)
downloadgsoc2013-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.c58
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));
}