qulogic/pidgin

PurpleMessage: add author's alias

2014-05-23, Tomasz Wasilczyk
dc5d15df3a88
Parents bb8b3a86d99f
Children 4951752ad038
PurpleMessage: add author's alias
--- a/libpurple/message.c Thu May 22 23:56:36 2014 +0200
+++ b/libpurple/message.c Fri May 23 00:11:01 2014 +0200
@@ -33,6 +33,7 @@
typedef struct {
guint id;
gchar *who;
+ gchar *alias;
gchar *contents;
guint64 msgtime;
PurpleMessageFlags flags;
@@ -43,6 +44,7 @@
PROP_0,
PROP_ID,
PROP_WHO,
+ PROP_ALIAS,
PROP_CONTENTS,
PROP_TIME,
PROP_FLAGS,
@@ -105,6 +107,22 @@
}
void
+purple_message_set_alias(PurpleMessage *msg, const gchar *alias)
+{
+ g_object_set(msg, "alias", alias, NULL);
+}
+
+const gchar *
+purple_message_get_alias(PurpleMessage *msg)
+{
+ PurpleMessagePrivate *priv = PURPLE_MESSAGE_GET_PRIVATE(msg);
+
+ g_return_val_if_fail(priv != NULL, NULL);
+
+ return priv->alias;
+}
+
+void
purple_message_set_contents(PurpleMessage *msg, const gchar *cont)
{
g_object_set(msg, "contents", cont, NULL);
@@ -184,6 +202,7 @@
PurpleMessagePrivate *priv = PURPLE_MESSAGE_GET_PRIVATE(message);
g_free(priv->who);
+ g_free(priv->alias);
g_free(priv->contents);
G_OBJECT_CLASS(parent_class)->finalize(obj);
@@ -203,6 +222,9 @@
case PROP_WHO:
g_value_set_string(value, priv->who);
break;
+ case PROP_ALIAS:
+ g_value_set_string(value, priv->alias);
+ break;
case PROP_CONTENTS:
g_value_set_string(value, priv->contents);
break;
@@ -230,6 +252,10 @@
g_free(priv->who);
priv->who = g_strdup(g_value_get_string(value));
break;
+ case PROP_ALIAS:
+ g_free(priv->alias);
+ priv->alias = g_strdup(g_value_get_string(value));
+ break;
case PROP_CONTENTS:
g_free(priv->contents);
priv->contents = g_strdup(g_value_get_string(value));
@@ -267,6 +293,10 @@
"incoming messages) or the recipient (for outgoing). "
"Unused for outgoing chat messages.",
NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
+ properties[PROP_ALIAS] = g_param_spec_string("alias",
+ "Author's alias", "The alias of the person, who sent the "
+ "message. For outgoing messages, it's your alias.",
+ NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
properties[PROP_CONTENTS] = g_param_spec_string("contents",
"Contents", "The message text",
NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
--- a/libpurple/message.h Thu May 22 23:56:36 2014 +0200
+++ b/libpurple/message.h Fri May 23 00:11:01 2014 +0200
@@ -96,6 +96,12 @@
purple_message_get_who(PurpleMessage *msg);
void
+purple_message_set_alias(PurpleMessage *msg, const gchar *alias);
+
+const gchar *
+purple_message_get_alias(PurpleMessage *msg);
+
+void
purple_message_set_contents(PurpleMessage *msg, const gchar *cont);
const gchar *