summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSadrul Habib Chowdhury <sadrul@pidgin.im>2008-05-13 00:29:22 +0000
committerSadrul Habib Chowdhury <sadrul@pidgin.im>2008-05-13 00:29:22 +0000
commite27ad8420528ef05185b6d417a48928f0de14ecf (patch)
tree629bcd37a51a625de08e6d12d5c84553201a55bf
parent5319af6118ad061d6796b1997088fabfc108a11f (diff)
downloadpidgin-e27ad8420528ef05185b6d417a48928f0de14ecf.tar.gz
Expose the smiley API to dbus.
-rw-r--r--libpurple/Makefile.am2
-rw-r--r--libpurple/dbus-server.c1
-rw-r--r--libpurple/smiley.c7
3 files changed, 8 insertions, 2 deletions
diff --git a/libpurple/Makefile.am b/libpurple/Makefile.am
index e8ae2f0f88..37a746eaaf 100644
--- a/libpurple/Makefile.am
+++ b/libpurple/Makefile.am
@@ -156,7 +156,7 @@ dbus_headers = dbus-bindings.h dbus-purple.h dbus-server.h dbus-useful.h dbus-d
dbus_exported = dbus-useful.h dbus-define-api.h account.h blist.h buddyicon.h \
connection.h conversation.h core.h ft.h log.h notify.h prefs.h roomlist.h \
- savedstatuses.h status.h server.h util.h xmlnode.h prpl.h
+ savedstatuses.h smiley.h status.h server.h util.h xmlnode.h prpl.h
purple_build_coreheaders = $(addprefix $(srcdir)/, $(purple_coreheaders)) \
$(purple_builtheaders)
diff --git a/libpurple/dbus-server.c b/libpurple/dbus-server.c
index e405f0ff1e..df2a058879 100644
--- a/libpurple/dbus-server.c
+++ b/libpurple/dbus-server.c
@@ -40,6 +40,7 @@
#include "core.h"
#include "internal.h"
#include "savedstatuses.h"
+#include "smiley.h"
#include "util.h"
#include "value.h"
#include "xmlnode.h"
diff --git a/libpurple/smiley.c b/libpurple/smiley.c
index 93df8e3e40..b7a1ab8093 100644
--- a/libpurple/smiley.c
+++ b/libpurple/smiley.c
@@ -25,11 +25,12 @@
*/
#include "internal.h"
-#include "xmlnode.h"
+#include "dbus-maybe.h"
#include "debug.h"
#include "imgstore.h"
#include "smiley.h"
#include "util.h"
+#include "xmlnode.h"
/**************************************************************************/
/* Main structures, members and constants */
@@ -305,6 +306,8 @@ static GObjectClass *parent_class;
static void
purple_smiley_init(GTypeInstance *instance, gpointer klass)
{
+ PurpleSmiley *smiley = PURPLE_SMILEY(instance);
+ PURPLE_DBUS_REGISTER_POINTER(smiley, PurpleSmiley);
}
static void
@@ -379,6 +382,8 @@ purple_smiley_finalize(GObject *obj)
purple_smiley_data_unstore(purple_imgstore_get_filename(smiley->img));
purple_imgstore_unref(smiley->img);
+ PURPLE_DBUS_UNREGISTER_POINTER(smiley);
+
purple_smileys_save();
}