[empathy: 3/11] Extract part message building to a function
- From: Will Thompson <wjt src gnome org>
- To: svn-commits-list gnome org
- Subject: [empathy: 3/11] Extract part message building to a function
- Date: Wed, 1 Jul 2009 22:48:26 +0000 (UTC)
commit 564562fd34a7a456e042041118ee326d3fae0069
Author: Will Thompson <will thompson collabora co uk>
Date: Wed Jun 17 21:17:33 2009 +0100
Extract part message building to a function
libempathy-gtk/empathy-chat.c | 79 +++++++++++++++++++++++------------------
1 files changed, 44 insertions(+), 35 deletions(-)
---
diff --git a/libempathy-gtk/empathy-chat.c b/libempathy-gtk/empathy-chat.c
index 44f37a8..4498300 100644
--- a/libempathy-gtk/empathy-chat.c
+++ b/libempathy-gtk/empathy-chat.c
@@ -1153,6 +1153,48 @@ chat_contacts_completion_func (const gchar *s1,
return ret;
}
+static gchar *
+build_part_message (guint reason,
+ const gchar *name,
+ const gchar *message)
+{
+ const gchar *template;
+
+ if (message == NULL) {
+ switch (reason) {
+ case TP_CHANNEL_GROUP_CHANGE_REASON_OFFLINE:
+ template = _("%s has disconnected");
+ break;
+ case TP_CHANNEL_GROUP_CHANGE_REASON_KICKED:
+ template = _("%s was kicked");
+ break;
+ case TP_CHANNEL_GROUP_CHANGE_REASON_BANNED:
+ template = _("%s was banned");
+ break;
+ default:
+ template = _("%s has left the room");
+ }
+
+ return g_strdup_printf (template, name);
+ } else {
+ switch (reason) {
+ case TP_CHANNEL_GROUP_CHANGE_REASON_OFFLINE:
+ template = _("%s has disconnected (%s)");
+ break;
+ case TP_CHANNEL_GROUP_CHANGE_REASON_KICKED:
+ template = _("%s was kicked (%s)");
+ break;
+ case TP_CHANNEL_GROUP_CHANGE_REASON_BANNED:
+ template = _("%s was banned (%s)");
+ break;
+ default:
+ template = _("%s has left the room (%s)");
+ }
+
+ return g_strdup_printf (template, name, message);
+ }
+}
+
static void
chat_members_changed_cb (EmpathyTpChat *tp_chat,
EmpathyContact *contact,
@@ -1173,41 +1215,8 @@ chat_members_changed_cb (EmpathyTpChat *tp_chat,
str = g_strdup_printf (_("%s has joined the room"),
name);
} else {
- const gchar *action;
-
- if (EMP_STR_EMPTY (message)) {
- switch (reason) {
- case TP_CHANNEL_GROUP_CHANGE_REASON_OFFLINE:
- action = _("%s has disconnected");
- break;
- case TP_CHANNEL_GROUP_CHANGE_REASON_KICKED:
- action = _("%s was kicked");
- break;
- case TP_CHANNEL_GROUP_CHANGE_REASON_BANNED:
- action = _("%s was banned");
- break;
- default:
- action = _("%s has left the room");
- }
-
- str = g_strdup_printf (action, name);
- } else {
- switch (reason) {
- case TP_CHANNEL_GROUP_CHANGE_REASON_OFFLINE:
- action = _("%s has disconnected (%s)");
- break;
- case TP_CHANNEL_GROUP_CHANGE_REASON_KICKED:
- action = _("%s was kicked (%s)");
- break;
- case TP_CHANNEL_GROUP_CHANGE_REASON_BANNED:
- action = _("%s was banned (%s)");
- break;
- default:
- action = _("%s has left the room (%s)");
- }
-
- str = g_strdup_printf (action, name, message);
- }
+ str = build_part_message (reason, name,
+ EMP_STR_EMPTY (message) ? NULL : message);
}
empathy_chat_view_append_event (chat->view, str);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]