Skin format
Skin overview   AREA_BY_COLOR

Our skin format was designed after analyzing of tons other skin formats. We decide to use 4 run-time states for all active areas of program's user interface:

Normal - default state when the area is not disabled.  
Selected - state when the cursor runs over the area and the area is not disabled (Hot track).  
Active- state when mouse is clicked and area responds this click as activating event (Pressed).  
Disabled - state when the area doesn't respond any events.  
The skin should contain images for all run-time states are used in the program. Active areas of program painted depending on its run-time state, so when you run mouse over some area it will be viewed as Selected, press some area and it will be viewed as Active and so on... Here are examples of skin images (Normal, Active and Disabled):

skin_normal.gif skin_active.gif skin_disabled.gif

Figure 8: Skin graphics.

Also our skin format supports masks. Masks are used to define a shape of the application window and as a hot area descriptor. See
AREA_BY_COLOR algorithm for details. This is an example of mask for the described above skin:


Figure 9: Skin mask.

We advice use a separate directory for each skin. Each skin must have a skin description file. We advice use a skin.ini file name for it. Skin description file is a standard windows *.INI file with following section and variables:

[Pictures] - this section contains names of all skin images. File names can be relative (Mask = ..\A\Mask.bmp).
Mask = file name of the mask graphic.
Normal = file name of the normal image.
Selected = file name of the selected image.
Active = file name of the active image.
Disabled = file name of the disabled image.

[FileInfo] - this section contains information about skin.
Project = specifies the project skin was designed for. abfPhotoCamera.exe in our case.
Description = description of the skin (Name, signature, etc).
Version = version of the skin.
Author = author information (Name, nickname, etc).
Copyright = legal copyright information.

This is an example of the skin description file:

Description=Default skin for ABF Photo Camera
© 2000-2002 ABF software, Inc.


Copyright © 2000-2002 ABF software, Inc. All rights reserved.

Created with the Help&Manual authoring tool by EC Software (