view pixmaps/smileys/THEMES-HOWTO @ 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 280ed2b617be
children 6fd7425133fc
line wrap: on
line source

Gaim Smiley Themes Documentation
Sean M. Egan
5 Jan 2003

Version 0.60 of Gaim brings up all themable smileys.  In the preferences dialog, a user can choose from a selection of looks his smileys will take.  This guide is to serve as a reference to those interested in creating third-party smiley themes.  

(SME: I'm doing this at 6:30AM; I'm tired, but I can't sleep.  Someone make sure I fix this up to make sure it all makes sense when I'm not tired anymore.  Right now it's mostly just unassembled thoughts)

Your theme should be contained in a single directory.  This directory will be installed in the Gaim smiley theme directory (SME: There should probably be a $HOME/.gaim/smileys/ that the theme could go in too.).  This directory will contain a file called `theme' that specifies the theme and image (SME: And possibly sound) files that are used by the theme.  The format of the `theme' file is as follows.

The beginning of the file contains some metainformation about the theme in the format

Key=Value

Valid keys include:
Name - Name of the theme
Description - Description of the theme
Icon - An image used to represent the theme in the theme selector UI
Author - The author's name

Following this meta-information are "sml" groups.  A "sml" group is a group of smileys that will be shown together.  For example, each protocol has its own "sml" group (MSN, Yahoo, Gadu-Gadu, etc.).  The name of the group is surrounded in square brackets, and each line beneath it (until the next sml group or the end of the file) defines a smiley.
Each line of the group starts with a filename of the icon (SME: Or sound?) followed by a space-delimited list of the characters that represent it. 

Example:
[AIM/ICQ]
smiley.png  :) :-)

In the smiley selector UI, each icon will only be shown once, and the first string representing it will be used.  To keep a smiley out of the selector altogether, make the first two characters of the line "! " followed by the filename and emoticons.