libgaim/plugins/perl/perl-common.h

Tue, 29 Aug 2006 02:22:08 +0000

author
Hil <allhilbert@users.sourceforge.net>
date
Tue, 29 Aug 2006 02:22:08 +0000
changeset 14432
3710852cdab5
parent 14426
8d4f164c4979
child 20470
77693555855f
permissions
-rw-r--r--

[gaim-migrate @ 17076]
SF Patch #1547720 from Hilbert
Fixes SF Bug #1541097

If you search, leave the Find dialog open, switch tabs, and search again, the search happens in the original tab. This patch fixes that bug. Now when you search, it searches in the active conversation window.

committer: Richard Laager <rlaager@pidgin.im>

6508
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 #ifndef _GAIM_PERL_COMMON_H_
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 #define _GAIM_PERL_COMMON_H_
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents: 6566
diff changeset
4 #include <glib.h>
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents: 6566
diff changeset
5 #ifdef _WIN32
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents: 6566
diff changeset
6 #undef pipe
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents: 6566
diff changeset
7 #endif
6520
5386692555c9 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents: 6508
diff changeset
8 #include <XSUB.h>
5386692555c9 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents: 6508
diff changeset
9 #include <EXTERN.h>
5386692555c9 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents: 6508
diff changeset
10 #include <perl.h>
5386692555c9 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents: 6508
diff changeset
11
12872
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
12 #include "plugin.h"
6566
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
13 #include "value.h"
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
14
6508
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 #define is_hvref(o) \
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 ((o) && SvROK(o) && SvRV(o) && (SvTYPE(SvRV(o)) == SVt_PVHV))
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 #define hvref(o) \
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 (is_hvref(o) ? (HV *)SvRV(o) : NULL);
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20
12419
745d9e5460ea [gaim-migrate @ 14726]
Richard Laager <rlaager@pidgin.im>
parents: 11170
diff changeset
21 #define GAIM_PERL_BOOT_PROTO(x) \
12497
a17568773be3 [gaim-migrate @ 14809]
Richard Laager <rlaager@pidgin.im>
parents: 12419
diff changeset
22 void boot_Gaim__##x(pTHX_ CV *cv);
12419
745d9e5460ea [gaim-migrate @ 14726]
Richard Laager <rlaager@pidgin.im>
parents: 11170
diff changeset
23
6508
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
24 #define GAIM_PERL_BOOT(x) \
12419
745d9e5460ea [gaim-migrate @ 14726]
Richard Laager <rlaager@pidgin.im>
parents: 11170
diff changeset
25 gaim_perl_callXS(boot_Gaim__##x, cv, mark)
6508
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
26
12872
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
27 typedef struct
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
28 {
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
29 GaimPlugin *plugin;
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
30 char *package;
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
31 char *load_sub;
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
32 char *unload_sub;
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
33 char *prefs_sub;
14426
8d4f164c4979 [gaim-migrate @ 17070]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
34 #ifdef GAIM_GTKPERL
12872
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
35 char *gtk_prefs_sub;
14426
8d4f164c4979 [gaim-migrate @ 17070]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
36 #endif
12988
2a53945982f5 [gaim-migrate @ 15341]
Etan Reisner <deryni@pidgin.im>
parents: 12872
diff changeset
37 char *plugin_action_sub;
12872
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
38 } GaimPerlScript;
b3d38f1b9bd7 [gaim-migrate @ 15224]
Etan Reisner <deryni@pidgin.im>
parents: 12871
diff changeset
39
11170
d8941580d87f [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 6921
diff changeset
40 void gaim_perl_normalize_script_name(char *name);
d8941580d87f [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 6921
diff changeset
41
6566
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
42 SV *newSVGChar(const char *str);
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
43
6508
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
44 void gaim_perl_callXS(void (*subaddr)(pTHX_ CV *cv), CV *cv, SV **mark);
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
45 void gaim_perl_bless_plain(const char *stash, void *object);
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
46 SV *gaim_perl_bless_object(void *object, const char *stash);
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
47 gboolean gaim_perl_is_ref_object(SV *o);
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
48 void *gaim_perl_ref_object(SV *o);
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
49
6520
5386692555c9 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents: 6508
diff changeset
50 int execute_perl(const char *function, int argc, char **args);
5386692555c9 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents: 6508
diff changeset
51
6566
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
52 #if 0
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
53 gboolean gaim_perl_value_from_sv(GaimValue *value, SV *sv);
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
54 SV *gaim_perl_sv_from_value(const GaimValue *value);
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
55 #endif
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
56
6920
4f4931b005cb [gaim-migrate @ 7467]
Christian Hammond <chipx86@chipx86.com>
parents: 6816
diff changeset
57 void *gaim_perl_data_from_sv(GaimValue *value, SV *sv);
4f4931b005cb [gaim-migrate @ 7467]
Christian Hammond <chipx86@chipx86.com>
parents: 6816
diff changeset
58 SV *gaim_perl_sv_from_vargs(const GaimValue *value, va_list *args,
12871
3584d93ae63c [gaim-migrate @ 15223]
Etan Reisner <deryni@pidgin.im>
parents: 12497
diff changeset
59 void ***copy_arg);
6566
61eb35202526 [gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
60
6508
57d1df1ca3a0 [gaim-migrate @ 7025]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
61 #endif /* _GAIM_PERL_COMMON_H_ */

mercurial