diff libpurple/plugins/perl/common/Account.xs @ 15374:5fe8042783c1

Rename gtk/ and libgaim/ to pidgin/ and libpurple/
author Sean Egan <seanegan@gmail.com>
date Sat, 20 Jan 2007 02:32:10 +0000
parents
children 2f8274ce570a
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libpurple/plugins/perl/common/Account.xs	Sat Jan 20 02:32:10 2007 +0000
@@ -0,0 +1,326 @@
+#include "module.h"
+
+MODULE = Gaim::Account  PACKAGE = Gaim::Account  PREFIX = gaim_account_
+PROTOTYPES: ENABLE
+
+Gaim::Presence
+gaim_account_get_presence(account)
+    Gaim::Account account
+
+Gaim::Account
+gaim_account_new(class, username, protocol_id)
+    const char * username
+    const char * protocol_id
+    C_ARGS:
+    username, protocol_id
+
+void
+gaim_account_destroy(account)
+    Gaim::Account account
+
+void
+gaim_account_connect(account)
+    Gaim::Account account
+
+void
+gaim_account_register(account)
+    Gaim::Account account
+
+void
+gaim_account_disconnect(account)
+    Gaim::Account account
+
+void
+gaim_account_request_change_password(account)
+    Gaim::Account account
+
+void
+gaim_account_request_change_user_info(account)
+    Gaim::Account account
+
+void
+gaim_account_set_username(account, username)
+    Gaim::Account account
+    const char * username
+
+void
+gaim_account_set_password(account, password)
+    Gaim::Account account
+    const char * password
+
+void
+gaim_account_set_alias(account, alias)
+    Gaim::Account account
+    const char * alias
+
+void
+gaim_account_set_user_info(account, user_info)
+    Gaim::Account account
+    const char *user_info
+
+void
+gaim_account_set_buddy_icon(account, icon)
+    Gaim::Account account
+    const char *icon
+
+void
+gaim_account_set_connection(account, gc)
+    Gaim::Account account
+    Gaim::Connection gc
+
+void
+gaim_account_set_remember_password(account, value)
+    Gaim::Account account
+    gboolean value
+
+void
+gaim_account_set_check_mail(account, value)
+    Gaim::Account account
+    gboolean value
+
+void gaim_account_set_enabled(account, ui, value)
+    Gaim::Account account
+    const char *ui
+    gboolean value
+
+void
+gaim_account_set_proxy_info(account, info)
+    Gaim::Account account
+    Gaim::ProxyInfo info
+
+void
+gaim_account_set_status(account, status_id, active)
+    Gaim::Account account
+    const char *status_id
+    gboolean active
+CODE:
+    gaim_account_set_status(account, status_id, active, NULL);
+
+void
+gaim_account_set_status_types(account, status_types)
+    Gaim::Account account
+    SV * status_types
+PREINIT:
+    GList *t_GL;
+    int i, t_len;
+PPCODE:
+    t_GL = NULL;
+    t_len = av_len((AV *)SvRV(status_types));
+
+    for (i = 0; i < t_len; i++) {
+        STRLEN t_sl;
+        t_GL = g_list_append(t_GL, SvPV(*av_fetch((AV *)SvRV(status_types), i, 0), t_sl));
+    }
+    gaim_account_set_status_types(account, t_GL);
+
+void
+gaim_account_clear_settings(account)
+    Gaim::Account account
+
+void
+gaim_account_set_int(account, name, value)
+    Gaim::Account account
+    const char *name
+    int value
+
+gboolean
+gaim_account_is_connected(account)
+    Gaim::Account account
+
+const char *
+gaim_account_get_username(account)
+    Gaim::Account account
+
+const char *
+gaim_account_get_password(account)
+    Gaim::Account account
+
+const char *
+gaim_account_get_alias(account)
+    Gaim::Account account
+
+const char *
+gaim_account_get_user_info(account)
+    Gaim::Account account
+
+const char *
+gaim_account_get_buddy_icon(account)
+    Gaim::Account account
+
+const char *
+gaim_account_get_protocol_id(account)
+    Gaim::Account account
+
+const char *
+gaim_account_get_protocol_name(account)
+    Gaim::Account account
+
+Gaim::Connection
+gaim_account_get_connection(account)
+    Gaim::Account account
+
+gboolean
+gaim_account_get_remember_password(account)
+    Gaim::Account account
+
+gboolean
+gaim_account_get_check_mail(account)
+    Gaim::Account account
+
+gboolean
+gaim_account_get_enabled(account, ui)
+    Gaim::Account account
+    const char *ui
+
+Gaim::ProxyInfo
+gaim_account_get_proxy_info(account)
+    Gaim::Account account
+
+Gaim::Status
+gaim_account_get_active_status(account)
+    Gaim::Account account
+
+void
+gaim_account_get_status_types(account)
+    Gaim::Account account
+PREINIT:
+    const GList *l;
+PPCODE:
+    for (l = gaim_account_get_status_types(account); l != NULL; l = l->next) {
+        XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::StatusType")));
+    }
+
+Gaim::Log
+gaim_account_get_log(account, create)
+    Gaim::Account account
+    gboolean create
+
+void
+gaim_account_destroy_log(account)
+    Gaim::Account account
+
+void
+gaim_account_add_buddies(account, list)
+    Gaim::Account account
+    SV * list
+PREINIT:
+    GList *t_GL;
+    int i, t_len;
+PPCODE:
+    t_GL = NULL;
+    t_len = av_len((AV *)SvRV(list));
+
+    for (i = 0; i < t_len; i++) {
+        STRLEN t_sl;
+        t_GL = g_list_append(t_GL, SvPV(*av_fetch((AV *)SvRV(list), i, 0), t_sl));
+    }
+    gaim_account_add_buddies(account, t_GL);
+
+void
+gaim_account_add_buddy(account, buddy)
+    Gaim::Account account
+    Gaim::BuddyList::Buddy  buddy
+
+void
+gaim_account_change_password(account, a, b)
+    Gaim::Account account
+    const char *    a
+    const char *    b
+
+void
+gaim_account_remove_buddies(account, A, B)
+    Gaim::Account account
+    SV * A
+    SV * B
+PREINIT:
+    GList *t_GL1, *t_GL2;
+    int i, t_len;
+PPCODE:
+    t_GL1 = NULL;
+    t_len = av_len((AV *)SvRV(A));
+
+    for (i = 0; i < t_len; i++) {
+        STRLEN t_sl;
+        t_GL1 = g_list_append(t_GL1, SvPV(*av_fetch((AV *)SvRV(A), i, 0), t_sl));
+    }
+
+    t_GL2 = NULL;
+    t_len = av_len((AV *)SvRV(B));
+
+    for (i = 0; i < t_len; i++) {
+        STRLEN t_sl;
+        t_GL2 = g_list_append(t_GL2, SvPV(*av_fetch((AV *)SvRV(B), i, 0), t_sl));
+    }
+    gaim_account_remove_buddies(account, t_GL1, t_GL2);
+
+void
+gaim_account_remove_buddy(account, buddy, group)
+    Gaim::Account account
+    Gaim::BuddyList::Buddy buddy
+    Gaim::BuddyList::Group group
+
+void
+gaim_account_remove_group(account, group)
+    Gaim::Account account
+    Gaim::BuddyList::Group group
+
+MODULE = Gaim::Account  PACKAGE = Gaim::Accounts  PREFIX = gaim_accounts_
+PROTOTYPES: ENABLE
+
+void
+gaim_accounts_add(account)
+    Gaim::Account account
+
+void
+gaim_accounts_remove(account)
+    Gaim::Account account
+
+void
+gaim_accounts_delete(account)
+    Gaim::Account account
+
+void
+gaim_accounts_reorder(account, new_index)
+    Gaim::Account account
+    size_t new_index
+
+void
+gaim_accounts_get_all()
+PREINIT:
+    GList *l;
+PPCODE:
+    for (l = gaim_accounts_get_all(); l != NULL; l = l->next) {
+        XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::Account")));
+    }
+
+void
+gaim_accounts_get_all_active()
+PREINIT:
+    GList *list, *iter;
+PPCODE:
+    list = gaim_accounts_get_all_active();
+    for (iter = list; iter != NULL; iter = iter->next) {
+        XPUSHs(sv_2mortal(gaim_perl_bless_object(iter->data, "Gaim::Account")));
+    }
+    g_list_free(list);
+
+Gaim::Account
+gaim_accounts_find(name, protocol)
+    const char * name
+    const char * protocol
+
+void
+gaim_accounts_set_ui_ops(ops)
+    Gaim::Account::UiOps ops
+
+Gaim::Account::UiOps
+gaim_accounts_get_ui_ops()
+
+Gaim::Handle
+gaim_accounts_get_handle()
+
+void
+gaim_accounts_init()
+
+void
+gaim_accounts_uninit()