annotate src/signals.h @ 11849:dc51cdcb648e

[gaim-migrate @ 14140] sf patch #1339135, from Sadrul Habib Chowdhury Hi. Bleeter found this bug: (1) open up some conversation window (2) open the smiley dialog (3) close the conversation window. the smiley dialog remains open (4) select some smiley (5) Gaim crashes This patch fixes this crash. It shouldn't cause any probs with regards to gtk-version-checking. The other code handling the smiley-dialog doesn't do the version-checking, so this shouldn't be necessary either. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Thu, 27 Oct 2005 12:00:17 +0000
parents 593749a4469c
children cb73483c9f63
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 /**
6488
e5e8d21bd4d8 [gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents: 6485
diff changeset
2 * @file signals.h Signal API
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3 * @ingroup core
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
4 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
5 * gaim
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
6 *
8046
fa6395637e2c [gaim-migrate @ 8730]
Sean Egan <seanegan@gmail.com>
parents: 6822
diff changeset
7 * Gaim is the legal property of its developers, whose names are too numerous
fa6395637e2c [gaim-migrate @ 8730]
Sean Egan <seanegan@gmail.com>
parents: 6822
diff changeset
8 * to list here. Please refer to the COPYRIGHT file distributed with this
fa6395637e2c [gaim-migrate @ 8730]
Sean Egan <seanegan@gmail.com>
parents: 6822
diff changeset
9 * source distribution.
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
10 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 * This program is free software; you can redistribute it and/or modify
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * it under the terms of the GNU General Public License as published by
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * the Free Software Foundation; either version 2 of the License, or
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * (at your option) any later version.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 * This program is distributed in the hope that it will be useful,
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 * GNU General Public License for more details.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 * You should have received a copy of the GNU General Public License
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22 * along with this program; if not, write to the Free Software
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
24 */
9713
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 9554
diff changeset
25 #ifndef _GAIM_SIGNALS_H_
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 9554
diff changeset
26 #define _GAIM_SIGNALS_H_
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
27
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
28 #include <glib.h>
6564
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
29 #include "value.h"
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
30
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
31 #define GAIM_CALLBACK(func) ((GaimCallback)func)
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
32
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
33 typedef void (*GaimCallback)(void);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
34 typedef void (*GaimSignalMarshalFunc)(GaimCallback cb, va_list args,
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
35 void *data, void **return_val);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
36
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
37 #ifdef __cplusplus
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
38 extern "C" {
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
39 #endif
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
40
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
41 /**************************************************************************/
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
42 /** @name Signal API */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
43 /**************************************************************************/
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
44 /*@{*/
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
45
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
46 /**
10656
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
47 * Signal Connect Priorities
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
48 */
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
49 #define GAIM_SIGNAL_PRIORITY_DEFAULT 0
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
50 #define GAIM_SIGNAL_PRIORITY_HIGHEST 9999
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
51 #define GAIM_SIGNAL_PRIORITY_LOWEST -9999
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
52
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
53 /**
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
54 * Registers a signal in an instance.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
55 *
6720
41120df7ed94 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6564
diff changeset
56 * @param instance The instance to register the signal for.
41120df7ed94 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6564
diff changeset
57 * @param signal The signal name.
41120df7ed94 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6564
diff changeset
58 * @param marshal The marshal function.
41120df7ed94 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6564
diff changeset
59 * @param ret_value The return value type, or NULL for no return value.
41120df7ed94 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6564
diff changeset
60 * @param num_values The number of values to be passed to the callbacks.
41120df7ed94 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6564
diff changeset
61 * @param ... The values to pass to the callbacks.
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
62 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
63 * @return The signal ID local to that instance, or 0 if the signal
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
64 * couldn't be registered.
6564
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
65 *
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
66 * @see GaimValue
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
67 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
68 gulong gaim_signal_register(void *instance, const char *signal,
6564
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
69 GaimSignalMarshalFunc marshal,
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
70 GaimValue *ret_value, int num_values, ...);
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
71
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
72 /**
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
73 * Unregisters a signal in an instance.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
74 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
75 * @param instance The instance to unregister the signal for.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
76 * @param signal The signal name.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
77 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
78 void gaim_signal_unregister(void *instance, const char *signal);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
79
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
80 /**
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
81 * Unregisters all signals in an instance.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
82 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
83 * @param instance The instance to unregister the signal for.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
84 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
85 void gaim_signals_unregister_by_instance(void *instance);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
86
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
87 /**
6564
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
88 * Returns a list of value types used for a signal.
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
89 *
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
90 * @param instance The instance the signal is registered to.
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
91 * @param signal The signal.
6720
41120df7ed94 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6564
diff changeset
92 * @param ret_value The return value from the last signal handler.
6564
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
93 * @param num_values The returned number of values.
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
94 * @param values The returned list of values.
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
95 */
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
96 void gaim_signal_get_values(void *instance, const char *signal,
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
97 GaimValue **ret_value,
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
98 int *num_values, GaimValue ***values);
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
99
800ef4a51096 [gaim-migrate @ 7086]
Christian Hammond <chipx86@chipx86.com>
parents: 6562
diff changeset
100 /**
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
101 * Connects a signal handler to a signal for a particular object.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
102 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
103 * Take care not to register a handler function twice. Gaim will
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
104 * not correct any mistakes for you in this area.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
105 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
106 * @param instance The instance to connect to.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
107 * @param signal The name of the signal to connect.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
108 * @param handle The handle of the receiver.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
109 * @param func The callback function.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
110 * @param data The data to pass to the callback function.
11283
593749a4469c [gaim-migrate @ 13480]
Richard Laager <rlaager@wiktel.com>
parents: 11064
diff changeset
111 * @param priority The priority with which the handler should be called. Signal handlers are called
593749a4469c [gaim-migrate @ 13480]
Richard Laager <rlaager@wiktel.com>
parents: 11064
diff changeset
112 * in order from GAIM_SIGNAL_PRIORITY_LOWEST to GAIM_SIGNAL_PRIORITY_HIGHEST.
10656
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
113 *
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
114 * @return The signal handler ID.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
115 *
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
116 * @see gaim_signal_disconnect()
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
117 */
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
118 gulong gaim_signal_connect_priority(void *instance, const char *signal,
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
119 void *handle, GaimCallback func, void *data, int priority);
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
120
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
121 /**
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
122 * Connects a signal handler to a signal for a particular object.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
123 * (priority defaults to 0)
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
124 *
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
125 * Take care not to register a handler function twice. Gaim will
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
126 * not correct any mistakes for you in this area.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
127 *
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
128 * @param instance The instance to connect to.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
129 * @param signal The name of the signal to connect.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
130 * @param handle The handle of the receiver.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
131 * @param func The callback function.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
132 * @param data The data to pass to the callback function.
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
133 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
134 * @return The signal handler ID.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
135 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
136 * @see gaim_signal_disconnect()
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
137 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
138 gulong gaim_signal_connect(void *instance, const char *signal,
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
139 void *handle, GaimCallback func, void *data);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
140
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
141 /**
6548
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
142 * Connects a signal handler to a signal for a particular object.
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
143 *
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
144 * The signal handler will take a va_args of arguments, instead of
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
145 * individual arguments.
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
146 *
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
147 * Take care not to register a handler function twice. Gaim will
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
148 * not correct any mistakes for you in this area.
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
149 *
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
150 * @param instance The instance to connect to.
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
151 * @param signal The name of the signal to connect.
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
152 * @param handle The handle of the receiver.
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
153 * @param func The callback function.
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
154 * @param data The data to pass to the callback function.
10656
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
155 * @param priority The order in which the signal should be added to the list
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
156 *
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
157 * @return The signal handler ID.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
158 *
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
159 * @see gaim_signal_disconnect()
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
160 */
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
161 gulong gaim_signal_connect_priority_vargs(void *instance, const char *signal,
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
162 void *handle, GaimCallback func, void *data, int priority);
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
163
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
164 /**
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
165 * Connects a signal handler to a signal for a particular object.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
166 * (priority defaults to 0)
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
167 * The signal handler will take a va_args of arguments, instead of
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
168 * individual arguments.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
169 *
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
170 * Take care not to register a handler function twice. Gaim will
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
171 * not correct any mistakes for you in this area.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
172 *
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
173 * @param instance The instance to connect to.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
174 * @param signal The name of the signal to connect.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
175 * @param handle The handle of the receiver.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
176 * @param func The callback function.
9b223bf37ca0 [gaim-migrate @ 12186]
Mark Doliner <mark@kingant.net>
parents: 10104
diff changeset
177 * @param data The data to pass to the callback function.
6548
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
178 *
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
179 * @return The signal handler ID.
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
180 *
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
181 * @see gaim_signal_disconnect()
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
182 */
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
183 gulong gaim_signal_connect_vargs(void *instance, const char *signal,
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
184 void *handle, GaimCallback func, void *data);
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
185
d01ba50e3f3e [gaim-migrate @ 7070]
Christian Hammond <chipx86@chipx86.com>
parents: 6509
diff changeset
186 /**
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
187 * Disconnects a signal handler from a signal on an object.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
188 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
189 * @param instance The instance to disconnect from.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
190 * @param signal The name of the signal to disconnect.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
191 * @param handle The handle of the receiver.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
192 * @param func The registered function to disconnect.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
193 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
194 * @see gaim_signal_connect()
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
195 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
196 void gaim_signal_disconnect(void *instance, const char *signal,
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
197 void *handle, GaimCallback func);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
198
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
199 /**
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
200 * Removes all callbacks associated with a receiver handle.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
201 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
202 * @param handle The receiver handle.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
203 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
204 void gaim_signals_disconnect_by_handle(void *handle);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
205
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
206 /**
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
207 * Emits a signal.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
208 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
209 * @param instance The instance emitting the signal.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
210 * @param signal The signal being emitted.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
211 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
212 * @see gaim_signal_connect()
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
213 * @see gaim_signal_disconnect()
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
214 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
215 void gaim_signal_emit(void *instance, const char *signal, ...);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
216
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
217 /**
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
218 * Emits a signal, using a va_list of arguments.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
219 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
220 * @param instance The instance emitting the signal.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
221 * @param signal The signal being emitted.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
222 * @param args The arguments list.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
223 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
224 * @see gaim_signal_connect()
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
225 * @see gaim_signal_disconnect()
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
226 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
227 void gaim_signal_emit_vargs(void *instance, const char *signal, va_list args);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
228
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
229 /**
10789
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
230 * Emits a signal and returns the first non-NULL return value.
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
231 *
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
232 * Further signal handlers are NOT called after a handler returns
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
233 * something other than NULL.
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
234 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
235 * @param instance The instance emitting the signal.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
236 * @param signal The signal being emitted.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
237 *
10789
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
238 * @return The first non-NULL return value
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
239 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
240 void *gaim_signal_emit_return_1(void *instance, const char *signal, ...);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
241
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
242 /**
10789
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
243 * Emits a signal and returns the first non-NULL return value.
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
244 *
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
245 * Further signal handlers are NOT called after a handler returns
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
246 * something other than NULL.
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
247 *
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
248 * @param instance The instance emitting the signal.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
249 * @param signal The signal being emitted.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
250 * @param args The arguments list.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
251 *
10789
0caa9827edf5 [gaim-migrate @ 12431]
Luke Schierer <lschiere@pidgin.im>
parents: 10656
diff changeset
252 * @return The first non-NULL return value
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
253 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
254 void *gaim_signal_emit_vargs_return_1(void *instance, const char *signal,
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
255 va_list args);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
256
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
257 /**
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
258 * Initializes the signals subsystem.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
259 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
260 void gaim_signals_init();
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
261
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
262 /**
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
263 * Uninitializes the signals subsystem.
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
264 */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
265 void gaim_signals_uninit();
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
266
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
267 /*@}*/
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
268
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
269 /**************************************************************************/
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
270 /** @name Marshal Functions */
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
271 /**************************************************************************/
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
272 /*@{*/
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
273
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
274 void gaim_marshal_VOID(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
275 GaimCallback cb, va_list args, void *data, void **return_val);
6822
7dba3e17cb21 [gaim-migrate @ 7366]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
276 void gaim_marshal_VOID__INT(
7dba3e17cb21 [gaim-migrate @ 7366]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
277 GaimCallback cb, va_list args, void *data, void **return_val);
7dba3e17cb21 [gaim-migrate @ 7366]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
278 void gaim_marshal_VOID__INT_INT(
7dba3e17cb21 [gaim-migrate @ 7366]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
279 GaimCallback cb, va_list args, void *data, void **return_val);
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
280 void gaim_marshal_VOID__POINTER(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
281 GaimCallback cb, va_list args, void *data, void **return_val);
9734
676cf082d29c [gaim-migrate @ 10595]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
282 void gaim_marshal_VOID__POINTER_UINT(
676cf082d29c [gaim-migrate @ 10595]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
283 GaimCallback cb, va_list args, void *data, void **return_val);
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
284 void gaim_marshal_VOID__POINTER_POINTER(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
285 GaimCallback cb, va_list args, void *data, void **return_val);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
286 void gaim_marshal_VOID__POINTER_POINTER_UINT(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
287 GaimCallback cb, va_list args, void *data, void **return_val);
9554
8b2451878e26 [gaim-migrate @ 10387]
Luke Schierer <lschiere@pidgin.im>
parents: 9514
diff changeset
288 void gaim_marshal_VOID__POINTER_POINTER_UINT_UINT(
8b2451878e26 [gaim-migrate @ 10387]
Luke Schierer <lschiere@pidgin.im>
parents: 9514
diff changeset
289 GaimCallback cb, va_list args, void *data, void **return_val);
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
290 void gaim_marshal_VOID__POINTER_POINTER_POINTER(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
291 GaimCallback cb, va_list args, void *data, void **return_val);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
292 void gaim_marshal_VOID__POINTER_POINTER_POINTER_POINTER(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
293 GaimCallback cb, va_list args, void *data, void **return_val);
9514
1fac0336890c [gaim-migrate @ 10341]
Luke Schierer <lschiere@pidgin.im>
parents: 8046
diff changeset
294 void gaim_marshal_VOID__POINTER_POINTER_POINTER_POINTER_POINTER(
1fac0336890c [gaim-migrate @ 10341]
Luke Schierer <lschiere@pidgin.im>
parents: 8046
diff changeset
295 GaimCallback cb, va_list args, void *data, void **return_val);
6509
e74e378e86bf [gaim-migrate @ 7026]
Ethan Blanton <elb@pidgin.im>
parents: 6488
diff changeset
296 void gaim_marshal_VOID__POINTER_POINTER_POINTER_UINT(
e74e378e86bf [gaim-migrate @ 7026]
Ethan Blanton <elb@pidgin.im>
parents: 6488
diff changeset
297 GaimCallback cb, va_list args, void *data, void **return_val);
10104
60db14d54914 [gaim-migrate @ 11131]
Stu Tomlinson <stu@nosnilmot.com>
parents: 9734
diff changeset
298 void gaim_marshal_VOID__POINTER_POINTER_POINTER_POINTER_UINT(
60db14d54914 [gaim-migrate @ 11131]
Stu Tomlinson <stu@nosnilmot.com>
parents: 9734
diff changeset
299 GaimCallback cb, va_list args, void *data, void **return_val);
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
300 void gaim_marshal_VOID__POINTER_POINTER_POINTER_UINT_UINT(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
301 GaimCallback cb, va_list args, void *data, void **return_val);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
302
6822
7dba3e17cb21 [gaim-migrate @ 7366]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
303 void gaim_marshal_INT__INT(
7dba3e17cb21 [gaim-migrate @ 7366]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
304 GaimCallback cb, va_list args, void *data, void **return_val);
7dba3e17cb21 [gaim-migrate @ 7366]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
305 void gaim_marshal_INT__INT_INT(
7dba3e17cb21 [gaim-migrate @ 7366]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
306 GaimCallback cb, va_list args, void *data, void **return_val);
11064
e4459e8ccfb5 [gaim-migrate @ 13035]
Richard Laager <rlaager@wiktel.com>
parents: 10789
diff changeset
307 void gaim_marshal_INT__POINTER_POINTER_POINTER_POINTER_POINTER(
e4459e8ccfb5 [gaim-migrate @ 13035]
Richard Laager <rlaager@wiktel.com>
parents: 10789
diff changeset
308 GaimCallback cb, va_list args, void *data, void **return_val);
6822
7dba3e17cb21 [gaim-migrate @ 7366]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
309
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
310 void gaim_marshal_BOOLEAN__POINTER(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
311 GaimCallback cb, va_list args, void *data, void **return_val);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
312 void gaim_marshal_BOOLEAN__POINTER_POINTER(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
313 GaimCallback cb, va_list args, void *data, void **return_val);
6509
e74e378e86bf [gaim-migrate @ 7026]
Ethan Blanton <elb@pidgin.im>
parents: 6488
diff changeset
314 void gaim_marshal_BOOLEAN__POINTER_POINTER_POINTER(
e74e378e86bf [gaim-migrate @ 7026]
Ethan Blanton <elb@pidgin.im>
parents: 6488
diff changeset
315 GaimCallback cb, va_list args, void *data, void **return_val);
e74e378e86bf [gaim-migrate @ 7026]
Ethan Blanton <elb@pidgin.im>
parents: 6488
diff changeset
316 void gaim_marshal_BOOLEAN__POINTER_POINTER_UINT(
e74e378e86bf [gaim-migrate @ 7026]
Ethan Blanton <elb@pidgin.im>
parents: 6488
diff changeset
317 GaimCallback cb, va_list args, void *data, void **return_val);
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
318 void gaim_marshal_BOOLEAN__POINTER_POINTER_POINTER_UINT(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
319 GaimCallback cb, va_list args, void *data, void **return_val);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
320 void gaim_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
321 GaimCallback cb, va_list args, void *data, void **return_val);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
322 void gaim_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_POINTER(
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
323 GaimCallback cb, va_list args, void *data, void **return_val);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
324
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
325 /*@}*/
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
326
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
327 #ifdef __cplusplus
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
328 }
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
329 #endif
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
330
9713
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 9554
diff changeset
331 #endif /* _GAIM_SIGNALS_H_ */