Creating Iconsets
From PsiWiki
Contents |
[edit] What is an Iconset?
The answer to this question can be found here.
[edit] Iconset editors
Jisp Editor for Windows (GNU/GPL)
[edit] How to Make Iconsets
Step-by-step guide how to create an iconset.
- Create a directory, and name it somehow. For example "my-first-iconset".
- Create a file named "icondef.xml" in that directory.
- Place all icons and sounds you want to use in iconset, in that directory.
- Start editing "icondef.xml" with your favourite XML editor.
- Write the following tags in it:
<?xml version='1.0' encoding='UTF-8'?> <icondef> </icondef>
- First, add the iconset meta information:
<?xml version='1.0' encoding='UTF-8'?> <icondef> <meta> <name>Iconset Name</name> <version>Iconset Version</version> <description>Iconset Description</description> <creation>2003-01-25</creation> <home>http://www.myiconsethomepage.com</home> <author jid='mblsha@jabber.ru' email='mblsha@spammeanddie.com' www='http://maz.sf.net'>Michail Pishchagin</author> <author>I.M. Anonymous</author> </meta> </icondef>
- Now, it's time to add some icons:
<?xml version='1.0' encoding='UTF-8'?> <icondef> <meta> </meta> <icon> <text>:-)</text> <text>:)</text> <text xml:lang='en'>:smiley:</text> <object mime='image/png'>smiley.png</object> <object mime='audio/x-wav'>smiley.wav</object> </icon> </icondef>
This iconset contains only one icon, that is associated with the following strings: ':-)', ':)', ':smiley:'. When it is shown on screen, it will be displayed as 'smiley.png' image, and will play the 'smiley.wav' sound.
[edit] Icon Definitions
- status/online
- the contact's status is Online or set Your status to Online
- status/offline
- the contact's status is Offline (disconnected) or set Your status to Offline
- status/away
- the contact's status is Away or set Your status to Away
- status/xa
- the contact's status is XA (Extended Away) or set Your status to XA
- status/dnd
- the contact's status is DND (Do Not Disturb) or set Your status to DND
- status/invisible
- set Your status to Invisible
- status/chat
- the contact's status is FFC (Free For Chat, Chat) or set Your status to FFC
- status/ask and status/noauth
- You've added a contact to You roster (list of contacts) but You cannot see its status (yet)
- status/error
- there was an error connecting to server the contact uses
- psi/chat
- incoming chat
- psi/message
- incoming message
- psi/headline
- incoming headline (news)
- psi/file
- incoming file transfer
- psi/system
- incoming system message
- psi/connect
- connecting to server
- psi/groupEmpty
- empty contact group
- psi/groupOpen
- opened non-empty contact group
- psi/groupClosed
- closed non-empty contact group
[edit] Available Mime-types
- For images:
- image/png -- preferred image format
- video/x-mng (animated format) - not yet supported for EMOTICONS by the interface
- image/gif (animated format) - not yet supported for EMOTICONS by the interface
- image/x-xpm
- image/bmp
- image/jpeg
- image/svg+xml - not yet supported by Psi
- For sounds:
- audio/x-wav -- preferred sound format, as it can be played on all Psi platforms
- audio/x-ogg
- audio/x-mp3
- audio/x-midi -- not really supported (? someone fix this)
Multiple graphic mime types, and sound mime types can be specified simultaneously:
<icon> <object mime='image/png'>smiley.png</object> <object mime='video/x-mng'>smiley.mng</object> <object mime='image/gif'>smiley.gif</object> <object mime='audio/x-wav'>smiley.wav</object> <object mime='audio/x-ogg'>smiley.ogg</object> </icon>
[edit] Advanced Psi Icon Tags
[edit] Name
The following icon specifies its name. It is primately used in system Psi iconsets:
<icon> <object mime='image/png'>smiley.png</object> <object mime='audio/x-wav'>smiley.wav</object> <x xmlns='name'>emoticon/smiley</x> </icon>
[edit] Animation
And it can be forced for icon to be animated, or not:
<icon> <object mime='image/png'>connect.png</object> <x xmlns='name'>psi/connect</x> <x xmlns='type'>animation</x> </icon>
This way, icon will be animated. Animation frames are laid horizontally in that single .png graphic.
Note: emoticons cannot be animated right now.
<icon> <object mime='image/png'>connect.png</object> <x xmlns='name'>psi/connect</x> <x xmlns='type'>image</x> </icon>
And this way, it will be loaded as single graphic.
[edit] Packing it all together
Pack your 'my-first-iconset' directory in a my-first-iconset.zip archive using your favourite archiver. Please note, that name of directory and name of archive MUST be the same. Then, you should rename the resulting file to my-first-iconset.jisp and distribute that file. The iconset is installed by copying it to the relevant subdirectory (emoticons, roster or system) of $PSIDATADIR/iconsets
Good Luck! :-)
[edit] System Iconsets
- Stellar: Up to 0.10, this was the standard system iconset of Psi.
[edit] Roster Iconsets
- Stellar: Up to 0.10, this was the standard roster iconset of Psi.
- Stellar Transport: Up to 0.10, this was the standard transport iconset of Psi
- Stellar ICQ:
- Lightbulb:
- AIM:
- ICQ:
- Yahoo:
- MSN:

