Tue, 21 Feb 2006 19:29:36 +0000
[gaim-migrate @ 15674]
Make 'E-Mail' consistent here. This string is already used in Jabber, so I'm effectively removing a string, which I've been told doesn't break freeze.
| 6508 | 1 | package Gaim; |
| 2 | ||
| 3 | use 5.008; | |
| 4 | use strict; | |
| 5 | use warnings; | |
|
6588
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
6 | use Carp; |
| 6508 | 7 | |
| 8 | require Exporter; | |
|
6588
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
9 | use AutoLoader; |
| 6508 | 10 | |
| 11 | our @ISA = qw(Exporter); | |
| 12 | ||
| 13 | # Items to export into callers namespace by default. Note: do not export | |
| 14 | # names by default without a very good reason. Use EXPORT_OK instead. | |
| 15 | # Do not simply export all your public functions/methods/constants. | |
| 16 | ||
| 17 | # This allows declaration use Gaim ':all'; | |
| 18 | # If you do not need this, moving things directly into @EXPORT or @EXPORT_OK | |
| 19 | # will save memory. | |
| 20 | our %EXPORT_TAGS = ( 'all' => [ qw( | |
| 21 | ||
| 22 | ) ] ); | |
| 23 | ||
| 24 | our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); | |
| 25 | ||
| 26 | our @EXPORT = qw( | |
| 27 | ||
| 28 | ); | |
| 29 | ||
| 30 | our $VERSION = '0.01'; | |
| 31 | ||
|
6588
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
32 | sub AUTOLOAD { |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
33 | # This AUTOLOAD is used to 'autoload' constants from the constant() |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
34 | # XS function. |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
35 | |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
36 | my $constname; |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
37 | our $AUTOLOAD; |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
38 | ($constname = $AUTOLOAD) =~ s/.*:://; |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
39 | croak "&Gaim::constant not defined" if $constname eq 'constant'; |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
40 | my ($error, $val) = constant($constname); |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
41 | if ($error) { croak $error; } |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
42 | { |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
43 | no strict 'refs'; |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
44 | |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
45 | *$AUTOLOAD = sub { $val }; |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
46 | } |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
47 | |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
48 | goto &$AUTOLOAD; |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
49 | } |
|
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
50 | |
| 6508 | 51 | require XSLoader; |
| 52 | XSLoader::load('Gaim', $VERSION); | |
| 53 | ||
| 54 | # Preloaded methods go here. | |
| 55 | ||
| 56 | 1; | |
|
6619
99d7562b5177
[gaim-migrate @ 7143]
Christian Hammond <chipx86@chipx86.com>
parents:
6601
diff
changeset
|
57 | __END__ |
| 6508 | 58 | |
| 59 | =head1 NAME | |
| 60 | ||
|
6594
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
61 | Gaim - Perl extension the Gaim instant messenger. |
| 6508 | 62 | |
| 63 | =head1 SYNOPSIS | |
| 64 | ||
| 65 | use Gaim; | |
| 66 | ||
| 67 | =head1 ABSTRACT | |
| 68 | ||
|
6598
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
69 | This module provides the interface for using perl scripts as plugins |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
70 | in Gaim. |
| 6508 | 71 | |
| 72 | =head1 DESCRIPTION | |
| 73 | ||
|
6594
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
74 | This module provides the interface for using perl scripts as plugins |
|
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
75 | in Gaim. With this, developers can write perl scripts that can be |
|
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
76 | loaded in Gaim as plugins. The scripts can interact with IMs, chats, |
|
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
77 | accounts, the buddy list, gaim signals, and more. |
| 6508 | 78 | |
|
6594
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
79 | The API for the perl interface is very similar to that of the Gaim C |
|
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
80 | API, which can be viewed at http://gaim.sourceforge.net/api/ or in |
|
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
81 | the header files in the Gaim source tree. |
| 6508 | 82 | |
|
6598
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
83 | =head1 FUNCTIONS |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
84 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
85 | =over |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
86 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
87 | =item @accounts = Gaim::accounts |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
88 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
89 | Returns a list of all accounts, online or offline. |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
90 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
91 | =item @chats = Gaim::chats |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
92 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
93 | Returns a list of all chats currently open. |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
94 | |
|
6601
e2993cf5c8a6
[gaim-migrate @ 7125]
Christian Hammond <chipx86@chipx86.com>
parents:
6598
diff
changeset
|
95 | =item @connections = Gaim::connections |
|
6598
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
96 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
97 | Returns a list of all active connections. |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
98 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
99 | =item @conversations = Gaim::conversations |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
100 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
101 | Returns a list of all conversations, both IM and chat, currently open. |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
102 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
103 | =item @conv_windows = Gaim::conv_windows |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
104 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
105 | Returns a list of all conversation windows currently open. |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
106 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
107 | =item @ims = Gaim::ims |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
108 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
109 | Returns a list of all instant messages currently open. |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
110 | |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
111 | =back |
|
13f98c3c9362
[gaim-migrate @ 7122]
Christian Hammond <chipx86@chipx86.com>
parents:
6594
diff
changeset
|
112 | |
| 6508 | 113 | =head1 SEE ALSO |
| 114 | ||
|
6594
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
115 | Gaim C API documentation - http//gaim.sourceforge.net/api/ |
| 6508 | 116 | |
|
6594
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
117 | Gaim website - http://gaim.sourceforge.net/ |
| 6508 | 118 | |
| 119 | =head1 AUTHOR | |
| 120 | ||
|
6588
187c6026c574
[gaim-migrate @ 7110]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
121 | Christian Hammond, E<lt>chipx86@gnupdate.orgE<gt> |
| 6508 | 122 | |
| 123 | =head1 COPYRIGHT AND LICENSE | |
| 124 | ||
| 125 | Copyright 2003 by Christian Hammond | |
| 126 | ||
| 127 | This library is free software; you can redistribute it and/or modify | |
|
6594
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
128 | it under the terms of the General Public License (GPL). For |
|
7217bb99c3f5
[gaim-migrate @ 7118]
Christian Hammond <chipx86@chipx86.com>
parents:
6588
diff
changeset
|
129 | more information, see http://www.fsf.org/licenses/gpl.txt |
| 6508 | 130 | |
| 131 | =cut |