Mercurial > pidgin.yaz
diff plugins/HOWTO @ 94:9f6ce50ffb78
[gaim-migrate @ 104]
Woohoo, the landing of the plugins. Nearly everything necessary is here. The
only thing missing is that you can't load a plugin without signing on first
(at least, not without some trickery).
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Sun, 09 Apr 2000 11:18:25 +0000 |
parents | 5ca21b68eb29 |
children | 19cffb5bd129 |
line wrap: on
line diff
--- a/plugins/HOWTO Sun Apr 09 08:25:15 2000 +0000 +++ b/plugins/HOWTO Sun Apr 09 11:18:25 2000 +0000 @@ -3,7 +3,7 @@ First off, before you do anything else, in all of the files for your plugin, put the lines -#define GAIM_PLUGIN +#define GAIM_PLUGINS #include "gaim.h" I mean this. Without this, all kinds of things will not work correctly. If you @@ -14,13 +14,19 @@ Ok, now you're ready to write the plugin. -The only function that is required is gaim_plugin_init(). This gets called as -soon as it gets loaded (sort of - man dlopen for more details). If your -function never returns, it will crash gaim! If your plugin uses up all the -memory in the system, it will crash gaim! Once your plugin gets loaded, it -effectively becomes a part of gaim, and anything that goes wrong will look +The only function that is required is gaim_plugin_init(void *). This gets +called as soon as it gets loaded (sort of - man dlopen for more details). If +your function never returns, it will crash gaim! If your plugin uses up all +the memory in the system, it will crash gaim! Once your plugin gets loaded, +it effectively becomes a part of gaim, and anything that goes wrong will look like it is a problem with gaim itself. I write bugfree code! :) Therefore, it -is your problem, not mine. +is your problem, not mine. (I'm usually nice and willing to help you with your +problems though.) + +The void * that gets passed to gaim_plugin_init is the handle for the plugin. +DO NOT CHANGE THIS POINTER! Bad things will happen. You've been warned. It's +needed for connecting to signals and things. It's a good idea to remember it +somehow. You can basically do anything you want in the plugin. You can make function calls, change public widgets, display new widgets, things like that. But the