view doc/plugin-ids.dox @ 12115:e9790eb93216

[gaim-migrate @ 14415] quoth charkins: " This patch has a few small fixes for the visibility stuff in gtkblist.c. First, tracking of the ICONIFIED state of the blist was removed. This was intended to allow the blist to "remember" if it was minimized between restarts. Unfortunately, this is not possible because the ICONIFIED state gets set when the blist is on a different desktop with many window managers. Second, while talking about the ICONIFIED issue on #gtk@GIMPNet, muntyan_ asked about a bug where the blist would get shown on an account re-connect with 1.5.0. Luke mentioned something about this with cvs as well. This patch introduces a check in gaim_gtk_blist_show() to prevent the window from being shown if it already exists and is visible. Third, sadrul pointed me to a one-line fix for the missing blist on startup. I added a second line to make sure the blist restores its proper size as well. Finally, when the last visibility manager is removed, gaim will now minimize the blist if it was previously hidden, rather than showing it. This could prevent a race condition with out-of-process applets, preventing gaim from maintaining the visibility state properly between restarts. This was 'cvs diff'ed against the last available anon cvs from Friday. Hopefully it'll apply cleanly." it did. committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Wed, 16 Nov 2005 17:55:26 +0000
parents 3c3039aa7259
children cf3eb9f311b2
line wrap: on
line source

/** @page plugin-ids Plugin IDs

 @section Introduction
  Every plugin contains a unique identifier to prevent duplicate plugin
  loading and conflicts. This, which will be called a plugin ID from here
  on, must follow a specific format. This format categorizes a plugin and
  makes duplicate IDs unlikely.


 @section Format
  The basic format of a plugin ID is as follows:

  <tt><i>type</i>-<i>username</i>-<i>pluginname</i></tt>

  The @em type indicator specifies the type of plugin. This must be one
  of the following:

    - core      - Core plugin, capable of being loaded in any program using
                  libgaim. It must not use any UI-specific code.
    - prpl      - Protocol plugin, providing additional protocols to
                  connect to.
    - lopl      - Loader plugin, which loads scripts as plugins (like Perl
                  or TCL).
    - gtk       - GTK+ 2.x plugin. It may use GTK+ code, but cannot use any
                  window toolkit code (such as X11 or Win32).
    - gtk-x11   - GTK+ 2.x plugin using X11 code.
    - gtk-win32 - GTK+ 2.x plugin using Win32 code.
    - qpe       - Gaim for Qtopia plugin.

  The @em username must be a unique identifier for that person. It
  @em should be your Gaim website user ID
  (registered <a href="http://gaim.sourceforge.net/register.php">here</a>).
  If for some reason you cannot register there (it shouldn't be a
  problem!), you can use your SourceForge ID. Do @em not leave this field
  blank.

  The @em pluginname is the name of your plugin. It can be whatever you like,
  though it's common to keep it all lowercase. Do not use spaces! If you
  want a space, use a '-'. Please do not put a version indicator in the ID.
  The GaimPlugin structure already has a field for this.


 @section plugin-db Plugin Database
  Although it doesn't exist yet, in time there will be a plugin database
  on the Gaim website, where users can download and install new plugins.
  Plugins will be accessed by your plugin ID, which is one reason why it
  must be unique. 

 */

// vim: syntax=c tw=75 et