original software by Doug Melton

iContact - HOWTO Create Skins

New submissions, please send to

So, HOWTO create a skin?

Take a VERY close look at the skin. Notice how the last row of the skin file contains 16 pixels of seemingly random colors? Well those are not just random colors. iContact uses these pixels for the colors to create the display. Cool, huh?

So what do each of these color pixels represent? Here are the constants I've used in iContact:

#define SKIN_COLOR_HIGHLIGHT              0  //4b5ab5
#define SKIN_COLOR_HEADER_TEXT            1  //ffffff
#define SKIN_COLOR_HEADER_LOADING_TEXT    2  //7f7f7f
#define SKIN_COLOR_LIST_GROUP_TEXT        4  //ffffff
#define SKIN_COLOR_LIST_ITEM_TEXT         6  //dcdcdc
#define SKIN_COLOR_LIST_ITEM_MISSED       7  //ff0000
#define SKIN_COLOR_LIST_ITEM_FAVORITE     8  //ffff00
#define SKIN_COLOR_LIST_ITEM_SEPARATOR    9  //323232
#define SKIN_COLOR_DETAIL_MAIN_TEXT       10 //e6e6e6
#define SKIN_COLOR_DETAIL_MAIN_SHADOW     11 //505050
#define SKIN_COLOR_KEYBOARD_TEXT          13 //dcdcdc
#define SKIN_COLOR_KEYBOARD_GRID          15 //646464

The number "0-15" is the x-coordinate of the pixel that represents that skin color. The 6-digit hex number is the actual color I've used in my default skin.

Please note: For VGA skins, these color pixels are actually 2x2 pixel squares. This was done so that if the skin has to be shrunk down to QVGA, the pixels will still be intact.


The following GIMP .xcf templates are available as a starting point:


To submit a new skin, you simply need to send the skin.png file and a screenshot (if desired) to and I will add it. It is no longer necessary to create a .cab file. My site can generate it automatically. Please let me know if I can make it any easier!