Mercurial > pidgin.yaz
annotate gtk/plugins/perl/common/GtkBlist.xs @ 14416:eeca8be382a5
[gaim-migrate @ 17124]
This is a Gaim::Gtk perl module for use by gaim plugins to get access to the
gtkgaim interface functions. It isn't complete because anything dealing with
Gtk widgets themselves doesn't work yet (I need to figure out the best way to
do that). To use this a perl plugin just needs to include 'use Gaim::Gtk;'
either on top of 'use Gaim;' or instead of it.
I'm not done with this yet.
At the moment you have to 'use Gaim;' or 'use Gaim::Gtk;' which loads all the
parts, I'm planning to let you actually say 'use Gaim::Gtk::Debug;' to just
get the gtkdebug.h functions. Though 'use Gaim' would work the same way as
always.
committer: Tailor Script <tailor@pidgin.im>
author | Etan Reisner <pidgin@unreliablesource.net> |
---|---|
date | Sat, 02 Sep 2006 05:31:10 +0000 |
parents | |
children | e88aae4f4c40 |
rev | line source |
---|---|
14416
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
1 #include "gtkmodule.h" |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
2 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
3 /* This can't work at the moment since I don't have a typemap for Gtk::Widget. |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
4 * I thought about using the one from libgtk2-perl but wasn't sure how to go |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
5 * about doing that. |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
6 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
7 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
8 gaim_gtk_blist_make_buddy_menu(menu, buddy, sub) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
9 Gtk::Widget menu |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
10 Gaim::Buddy buddy |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
11 gboolean sub |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
12 */ |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
13 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
14 /* This can't work at the moment since I don't have a typemap for Gdk::Pixbuf. |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
15 * I thought about using the one from libgtk2-perl but wasn't sure how to go |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
16 * about doing that. |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
17 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
18 GdkPixbuf |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
19 gaim_gtk_blist_get_status_icon(node, size) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
20 Gaim::BuddyList::Node node |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
21 Gaim::Status::IconSize size |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
22 */ |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
23 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
24 /* This can't work at the moment since I don't have a typemap for Gtk::Widget. |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
25 * I thought about using the one from libgtk2-perl but wasn't sure how to go |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
26 * about doing that. |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
27 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
28 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
29 gaim_gtk_append_blist_node_proto_menu(menu, gc, node) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
30 Gtk::Widget menu |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
31 Gaim::Connection gc |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
32 Gaim::BuddyList::Node node |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
33 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
34 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
35 gaim_gtk_append_blist_node_extended_menu(menu, node) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
36 Gtk::Widget menu |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
37 Gaim::Connection gc |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
38 Gaim::BuddyList::Node node |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
39 */ |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
40 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
41 MODULE = Gaim::Gtk::BuddyList PACKAGE = Gaim::Gtk::BuddyList PREFIX = gaim_gtk_blist_ |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
42 PROTOTYPES: ENABLE |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
43 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
44 void * |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
45 gaim_gtk_blist_get_handle() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
46 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
47 Gaim::Gtk::BuddyList |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
48 gaim_gtk_blist_get_default_gtk_blist() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
49 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
50 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
51 gaim_gtk_blist_refresh(list) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
52 Gaim::BuddyList list |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
53 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
54 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
55 gaim_gtk_blist_update_toolbar() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
56 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
57 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
58 gaim_gtk_blist_update_columns() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
59 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
60 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
61 gaim_gtk_blist_update_refresh_timeout() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
62 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
63 gboolean |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
64 gaim_gtk_blist_node_is_contact_expanded(node) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
65 Gaim::BuddyList::Node node |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
66 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
67 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
68 gaim_gtk_blist_toggle_visibility() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
69 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
70 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
71 gaim_gtk_blist_visibility_manager_add() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
72 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
73 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
74 gaim_gtk_blist_visibility_manager_remove() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
75 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
76 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
77 gaim_gtk_blist_get_sort_methods() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
78 PREINIT: |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
79 GList *l; |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
80 PPCODE: |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
81 for (l = gaim_gtk_blist_get_sort_methods(); l != NULL; l = l->next) { |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
82 XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::Gtk::BuddyList::SortMethod"))); |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
83 } |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
84 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
85 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
86 gaim_gtk_blist_sort_method_reg(id, name, func) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
87 const char * id |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
88 const char * name |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
89 Gaim::Gtk::BuddyList::SortFunction func |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
90 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
91 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
92 gaim_gtk_blist_sort_method_unreg(id) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
93 const char * id |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
94 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
95 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
96 gaim_gtk_blist_sort_method_set(id) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
97 const char * id |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
98 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
99 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
100 gaim_gtk_blist_setup_sort_methods() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
101 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
102 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
103 gaim_gtk_blist_update_accounts_menu() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
104 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
105 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
106 gaim_gtk_blist_update_plugin_actions() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
107 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
108 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
109 gaim_gtk_blist_update_sort_methods() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
110 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
111 gboolean |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
112 gaim_gtk_blist_joinchat_is_showable() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
113 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
114 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
115 gaim_gtk_blist_joinchat_show() |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
116 |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
117 void |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
118 gaim_gtk_blist_update_account_error_state(account, message) |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
119 Gaim::Account account |
eeca8be382a5
[gaim-migrate @ 17124]
Etan Reisner <pidgin@unreliablesource.net>
parents:
diff
changeset
|
120 const char * message |