aboutsummaryrefslogtreecommitdiffstats
path: root/modules/calendar
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2010-09-19 03:57:27 +0800
committerMatthew Barnes <mbarnes@redhat.com>2010-09-19 04:40:19 +0800
commita98c07a569292fa66f91d3fa4bd32f32adff1880 (patch)
tree98caa43594f61662289fd696b409978946e92255 /modules/calendar
parentb145c0a2522c5c9942c0827bf03baefea68f5d99 (diff)
downloadgsoc2013-evolution-a98c07a569292fa66f91d3fa4bd32f32adff1880.tar.gz
gsoc2013-evolution-a98c07a569292fa66f91d3fa4bd32f32adff1880.tar.zst
gsoc2013-evolution-a98c07a569292fa66f91d3fa4bd32f32adff1880.zip
Add a GCancellable to EActivity.
EActivity now uses a GCancellable to manage cancellations, instead of having its own redundant cancellation API. API changes are as follows: + e_activity_get_cancellable() + e_activity_set_cancellable() - e_activity_cancel() - e_activity_is_cancelled() - e_activity_get_allow_cancel() - e_activity_set_allow_cancel() EActivity's "cancelled" signal remains, but only as a repeater for GCancellable::cancelled signals. It should not be emitted directly. The presence of a GCancellable implies that cancellation is allowed. EActivity does not create its own default GCancellable, it has to be given one. If a CamelOperation (cast as a GCancellable) is given, EActivity will configure itself to listen for status updates from the CamelOperation and propagate the information to its own "primary-text" and "percent" properties. These changes allowed me to start cleaning up some of the incredibly convoluted logic in mail-mt.c -- in particular, mail_operation_status() is completely gone now. mail-mt.c is still in a transitional state -- much more significant changes coming soon.
Diffstat (limited to 'modules/calendar')
-rw-r--r--modules/calendar/e-cal-shell-view-memopad.c3
-rw-r--r--modules/calendar/e-cal-shell-view-private.c3
-rw-r--r--modules/calendar/e-cal-shell-view-taskpad.c3
-rw-r--r--modules/calendar/e-memo-shell-view-private.c3
-rw-r--r--modules/calendar/e-task-shell-view-private.c3
5 files changed, 10 insertions, 5 deletions
diff --git a/modules/calendar/e-cal-shell-view-memopad.c b/modules/calendar/e-cal-shell-view-memopad.c
index 267f8145f6..7fdf356304 100644
--- a/modules/calendar/e-cal-shell-view-memopad.c
+++ b/modules/calendar/e-cal-shell-view-memopad.c
@@ -435,8 +435,9 @@ e_cal_shell_view_memopad_set_status_message (ECalShellView *cal_shell_view,
}
} else if (activity == NULL) {
- activity = e_activity_new (status_message);
+ activity = e_activity_new ();
e_activity_set_percent (activity, percent);
+ e_activity_set_primary_text (activity, status_message);
e_shell_backend_add_activity (shell_backend, activity);
} else {
diff --git a/modules/calendar/e-cal-shell-view-private.c b/modules/calendar/e-cal-shell-view-private.c
index a02888db8e..c5a9f22f03 100644
--- a/modules/calendar/e-cal-shell-view-private.c
+++ b/modules/calendar/e-cal-shell-view-private.c
@@ -810,8 +810,9 @@ e_cal_shell_view_set_status_message (ECalShellView *cal_shell_view,
activity = NULL;
}
} else if (activity == NULL) {
- activity = e_activity_new (status_message);
+ activity = e_activity_new ();
e_activity_set_percent (activity, percent);
+ e_activity_set_primary_text (activity, status_message);
e_shell_backend_add_activity (shell_backend, activity);
} else {
e_activity_set_percent (activity, percent);
diff --git a/modules/calendar/e-cal-shell-view-taskpad.c b/modules/calendar/e-cal-shell-view-taskpad.c
index c7269bcfd1..a00e630afd 100644
--- a/modules/calendar/e-cal-shell-view-taskpad.c
+++ b/modules/calendar/e-cal-shell-view-taskpad.c
@@ -562,8 +562,9 @@ e_cal_shell_view_taskpad_set_status_message (ECalShellView *cal_shell_view,
}
} else if (activity == NULL) {
- activity = e_activity_new (status_message);
+ activity = e_activity_new ();
e_activity_set_percent (activity, percent);
+ e_activity_set_primary_text (activity, status_message);
e_shell_backend_add_activity (shell_backend, activity);
} else {
diff --git a/modules/calendar/e-memo-shell-view-private.c b/modules/calendar/e-memo-shell-view-private.c
index 061e3c0170..a33296daf5 100644
--- a/modules/calendar/e-memo-shell-view-private.c
+++ b/modules/calendar/e-memo-shell-view-private.c
@@ -375,8 +375,9 @@ e_memo_shell_view_set_status_message (EMemoShellView *memo_shell_view,
}
} else if (activity == NULL) {
- activity = e_activity_new (status_message);
+ activity = e_activity_new ();
e_activity_set_percent (activity, percent);
+ e_activity_set_primary_text (activity, status_message);
e_shell_backend_add_activity (shell_backend, activity);
} else {
diff --git a/modules/calendar/e-task-shell-view-private.c b/modules/calendar/e-task-shell-view-private.c
index e5cf75711c..5e1b352ecd 100644
--- a/modules/calendar/e-task-shell-view-private.c
+++ b/modules/calendar/e-task-shell-view-private.c
@@ -524,8 +524,9 @@ e_task_shell_view_set_status_message (ETaskShellView *task_shell_view,
}
} else if (activity == NULL) {
- activity = e_activity_new (status_message);
+ activity = e_activity_new ();
e_activity_set_percent (activity, percent);
+ e_activity_set_primary_text (activity, status_message);
e_shell_backend_add_activity (shell_backend, activity);
} else {