doc/plugin-ids.dox

Fri, 01 Dec 2006 20:02:32 +0000

author
Daniel Atallah <datallah@pidgin.im>
date
Fri, 01 Dec 2006 20:02:32 +0000
changeset 15144
d936faa32f0e
parent 13925
cf8ee500a599
child 16257
66f737e6b718
permissions
-rw-r--r--

[gaim-migrate @ 17868]
wingaim build process no longer needs to re-build everything for the non-debug version.
`make -f Makefile.mingw installers` will now produce the "regular", "no-gtk" and "debug" installers.

7335
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 /** @page plugin-ids Plugin IDs
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3 @section Introduction
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
4 Every plugin contains a unique identifier to prevent duplicate plugin
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
5 loading and conflicts. This, which will be called a plugin ID from here
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
6 on, must follow a specific format. This format categorizes a plugin and
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 makes duplicate IDs unlikely.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
8
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
9
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
10 @section Format
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 The basic format of a plugin ID is as follows:
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 <tt><i>type</i>-<i>username</i>-<i>pluginname</i></tt>
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 The @em type indicator specifies the type of plugin. This must be one
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 of the following:
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 - core - Core plugin, capable of being loaded in any program using
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 libgaim. It must not use any UI-specific code.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 - prpl - Protocol plugin, providing additional protocols to
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 connect to.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22 - lopl - Loader plugin, which loads scripts as plugins (like Perl
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 or TCL).
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
24 - gtk - GTK+ 2.x plugin. It may use GTK+ code, but cannot use any
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
25 window toolkit code (such as X11 or Win32).
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
26 - gtk-x11 - GTK+ 2.x plugin using X11 code.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
27 - gtk-win32 - GTK+ 2.x plugin using Win32 code.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
28 - qpe - Gaim for Qtopia plugin.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
29
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
30 The @em username must be a unique identifier for that person. It
13925
cf8ee500a599 [gaim-migrate @ 16326]
Riley Patterson <therylz@users.sourceforge.net>
parents: 7335
diff changeset
31 @em should be your SourceForge ID. Do @em not leave this field
7335
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
32 blank.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
33
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
34 The @em pluginname is the name of your plugin. It can be whatever you like,
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
35 though it's common to keep it all lowercase. Do not use spaces! If you
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
36 want a space, use a '-'. Please do not put a version indicator in the ID.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
37 The GaimPlugin structure already has a field for this.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
38
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
39
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
40 @section plugin-db Plugin Database
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
41 Although it doesn't exist yet, in time there will be a plugin database
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
42 on the Gaim website, where users can download and install new plugins.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
43 Plugins will be accessed by your plugin ID, which is one reason why it
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
44 must be unique.
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
45
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
46 */
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
47
6e5ba33ea062 [gaim-migrate @ 7923]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
48 // vim: syntax=c tw=75 et

mercurial