pidgin/plugins/cap/cap.h

Wed, 21 Sep 2011 06:45:26 +0000

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Wed, 21 Sep 2011 06:45:26 +0000
changeset 32575
eb4fc932fae9
parent 31293
169eeb43b52c
child 34699
09b2c9219b57
permissions
-rw-r--r--

Apply conversation theme when opening the GTK conversation. All the
parsing stuff was moved out of the theme code and into the conversation
code.

Someone (not me!) needs to check the code I commented out and see if
we really need that stuff (and then port it to WebKit/styling).

We also need to determine where to place Template.html and the rest
of our (not-yet-written) default theme.

14328
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
1 /*
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
2 * Contact Availability Prediction plugin for Purple
14328
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
3 *
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
4 * Copyright (C) 2006 Geoffrey Foster.
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
5 *
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
6 * This program is free software; you can redistribute it and/or
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
7 * modify it under the terms of the GNU General Public License as
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
8 * published by the Free Software Foundation; either version 2 of the
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
9 * License, or (at your option) any later version.
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
10 *
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
11 * This program is distributed in the hope that it will be useful, but
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
12 * WITHOUT ANY WARRANTY; without even the implied warranty of
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
14 * General Public License for more details.
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
15 *
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
16 * You should have received a copy of the GNU General Public License
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
17 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 15884
diff changeset
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 15884
diff changeset
19 * 02111-1301, USA.
14328
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
20 */
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
21
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
22 #ifndef _CAP_H_
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
23 #define _CAP_H_
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
24
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
25 #include "internal.h"
15577
b8129373f65e More pidgin changes
Sean Egan <seanegan@pidgin.im>
parents: 15572
diff changeset
26 #include "pidgin.h"
14328
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
27
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
28 #include "conversation.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
29
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
30 #include "gtkconv.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
31 #include "gtkblist.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
32 #include "gtkplugin.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
33 #include "gtkutils.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
34
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
35 #include "blist.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
36 #include "notify.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
37 #include "version.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
38 #include "debug.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
39
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
40 #include "util.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
41
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
42 #include <glib.h>
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
43 #include <time.h>
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
44 #include <sqlite3.h>
14328
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
45 #include "cap_statistics.h"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
46
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
47 #define CAP_PLUGIN_ID "gtk-g-off_-cap"
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
48
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
49 /* Variables used throughout lifetime of the plugin */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
50 PurplePlugin *_plugin_pointer;
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
51 sqlite3 *_db; /**< The database */
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
52
14328
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
53 GHashTable *_buddy_stats = NULL;
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
54 GHashTable *_my_offline_times = NULL;
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
55 gboolean _signals_connected;
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
56 gboolean _sqlite_initialized;
14328
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
57
14412
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
58 /* Prefs UI */
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
59 typedef struct _CapPrefsUI CapPrefsUI;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
60
31293
169eeb43b52c Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 22104
diff changeset
61 struct _CapPrefsUI {
14412
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
62 GtkWidget *ret;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
63 GtkWidget *cap_vbox;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
64 GtkWidget *table_layout;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
65
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
66 GtkWidget *threshold_label;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
67 GtkWidget *threshold_input;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
68 GtkWidget *threshold_minutes_label;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
69
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
70 GtkWidget *msg_difference_label;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
71 GtkWidget *msg_difference_input;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
72 GtkWidget *msg_difference_minutes_label;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
73
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
74 GtkWidget *last_seen_label;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
75 GtkWidget *last_seen_input;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
76 GtkWidget *last_seen_minutes_label;
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
77 };
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
78
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
79 static void generate_prediction(CapStatistics *statistics);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
80 static double generate_prediction_for(PurpleBuddy *buddy);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
81 static CapStatistics * get_stats_for(PurpleBuddy *buddy);
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
82 static void destroy_stats(gpointer data);
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
83 static void insert_cap_msg_count_success(const char *buddy_name, const char *account, const char *protocol, int minute);
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
84 static void insert_cap_status_count_success(const char *buddy_name, const char *account, const char *protocol, const char *status_id);
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
85 static void insert_cap_msg_count_failed(const char *buddy_name, const char *account, const char *protocol, int minute);
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
86 static void insert_cap_status_count_failed(const char *buddy_name, const char *account, const char *protocol, const char *status_id);
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
87 static void insert_cap_success(CapStatistics *stats);
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
88 static void insert_cap_failure(CapStatistics *stats);
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
89 static gboolean max_message_difference_cb(gpointer data);
15572
e069b22c1fc4 headers to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
90 /* Pidgin Signal Handlers */
14578
86ee02190858 [gaim-migrate @ 17236]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14573
diff changeset
91 /* sent-im-msg */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
92 static void sent_im_msg(PurpleAccount *account, const char *receiver, const char *message);
14578
86ee02190858 [gaim-migrate @ 17236]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14573
diff changeset
93 /* received-im-msg */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
94 static void received_im_msg(PurpleAccount *account, char *sender, char *message, PurpleConversation *conv, PurpleMessageFlags flags);
14578
86ee02190858 [gaim-migrate @ 17236]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14573
diff changeset
95 /* buddy-status-changed */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
96 static void buddy_status_changed(PurpleBuddy *buddy, PurpleStatus *old_status, PurpleStatus *status);
14578
86ee02190858 [gaim-migrate @ 17236]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14573
diff changeset
97 /* buddy-signed-on */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
98 static void buddy_signed_on(PurpleBuddy *buddy);
14578
86ee02190858 [gaim-migrate @ 17236]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14573
diff changeset
99 /* buddy-signed-off */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
100 static void buddy_signed_off(PurpleBuddy *buddy);
14578
86ee02190858 [gaim-migrate @ 17236]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14573
diff changeset
101 /* drawing-tooltip */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
102 static void drawing_tooltip(PurpleBlistNode *node, GString *text, gboolean full);
14578
86ee02190858 [gaim-migrate @ 17236]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14573
diff changeset
103 /* signed-on */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
104 static void signed_on(PurpleConnection *gc);
14578
86ee02190858 [gaim-migrate @ 17236]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14573
diff changeset
105 /* signed-off */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
106 static void signed_off(PurpleConnection *gc);
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
107 static void reset_all_last_message_times(gpointer key, gpointer value, gpointer user_data);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
108 static PurpleStatus * get_status_for(PurpleBuddy *buddy);
22104
56970903b8e9 Probe for -Wstrict-prototypes to get some more warnings. I then cleaned up
Richard Laager <rlaager@pidgin.im>
parents: 21520
diff changeset
109 static void create_tables(void);
56970903b8e9 Probe for -Wstrict-prototypes to get some more warnings. I then cleaned up
Richard Laager <rlaager@pidgin.im>
parents: 21520
diff changeset
110 static gboolean create_database_connection(void);
56970903b8e9 Probe for -Wstrict-prototypes to get some more warnings. I then cleaned up
Richard Laager <rlaager@pidgin.im>
parents: 21520
diff changeset
111 static void destroy_database_connection(void);
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
112 static guint word_count(const gchar *string);
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
113 static void insert_status_change(CapStatistics *statistics);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
114 static void insert_status_change_from_purple_status(CapStatistics *statistics, PurpleStatus *status);
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
115 static void insert_word_count(const char *sender, const char *receiver, guint count);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
116 static gboolean plugin_load(PurplePlugin *plugin);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
117 static void add_plugin_functionality(PurplePlugin *plugin);
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
118 static void cancel_conversation_timeouts(gpointer key, gpointer value, gpointer user_data);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
119 static void remove_plugin_functionality(PurplePlugin *plugin);
14573
7e18a0a07718 [gaim-migrate @ 17231]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14412
diff changeset
120 static void write_stats_on_unload(gpointer key, gpointer value, gpointer user_data);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
121 static gboolean plugin_unload(PurplePlugin *plugin);
22104
56970903b8e9 Probe for -Wstrict-prototypes to get some more warnings. I then cleaned up
Richard Laager <rlaager@pidgin.im>
parents: 21520
diff changeset
122 static CapPrefsUI * create_cap_prefs_ui(void);
14412
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
123 static void cap_prefs_ui_destroy_cb(GtkObject *object, gpointer user_data);
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
124 static void numeric_spinner_prefs_cb(GtkSpinButton *spinbutton, gpointer user_data);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
125 static GtkWidget * get_config_frame(PurplePlugin *plugin);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
126 static void init_plugin(PurplePlugin *plugin);
14412
e2a3932dc608 [gaim-migrate @ 17053]
Geoff Foster <g-off_@users.sourceforge.net>
parents: 14328
diff changeset
127
14328
34f47ce417d4 [gaim-migrate @ 16948]
Geoff Foster <g-off_@users.sourceforge.net>
parents:
diff changeset
128 #endif

mercurial