|ICONS - Libraries|
For each icon style there are two libraries. A "sample" library containing the icons as produced by the creator/maintainer, and a "standard" library. The standard libraries all have equivalent icons with the same names. When using the standard libraries the icon theme of an application can be changed simply by using a different standard library without the need to amend the source code.
In order to ensure that all of the standard libraries have equivalent icons, it has sometimes been neccessary to create/edit icons to fill in where equivalent icons are not available.
|The icon samples below were all created using the following icons from the standard libraries:-|
|Crystal: by Everaldo|
|iKons: by Kristof Borrey|
|KDE: by The KDE Artists/Developers|
|Klassic: by Asif Ali Rizwaan|
|Slick: by Rob Cosgrove|
PLEASE NOTE: The icon sizes in the sample libraries are as specified by the creator/maintainer and in some cases do match the actual size "class".
Icon Library Download File Contents:
|tkIcons.theme||Standard Icon library.|
|tkIcons-sample.theme||Sample Icon library.|
Where theme identifies the icon style (For example:
To Install an Icon Library (TGZ):
To Install an Icon Library (ZIP):
To Set The Default Icon Library:
Icon libraries have the following format:
|name||Icon name (Must be unique).
||groups||List of groups to which icon belongs (Must be at least one).
||type||Image data type (Only photo currently supported).
||size||Size of icon (widthxheight, In pixels).
||image-data||Image data (Base64 encoded GIF).
Icons can belong to any number of groups. The order in which the groups are specified is not important.
In the current release, the type and size fields are not used and are included for information only. However, they should be specified as they may be required by future releases.
As viewIcons orders the icons by name, the included candidate "standard" libraries use a simple naming scheme in order to group related icons when using this utility:
primary-group-id description size
Example: actreload16 (action group, reload image, size 16x16)
The size used in the naming scheme should relect the size "class" of the icon, which in some cases will be approximate as some of the icons may actually be 15 or 17 pixels in size. I feel that it is more important to get a good looking icon than to stick rigidly to a partictlar size. If it is important to line up buttons created with slightly different sized icons, the button width/height can be set to the size of the largest icon image (bearing in mind that other libraries may be used with the application).
If the above icon were to belong to two groups action and mygroup the library record will be:
actreload16:action mygroup:photo:16x16:R0lGODlhEAAQAIUAAPwCBCRaJBxW ...
(In the above examples the data field is truncated)