Creating skins

Top  Previous 

 

 

Creating a skin is simple. You are not limited by window size, window shape and position of elements. Also skin can be transparent. All you need is background bitmap and positions of elements written in the ini file.

 

Skins are stored in “Skins” subdirectory of Memory Manager. Each skin has its own subdirectory under “Skins”. Directory name is also skin name.

 

Memory Manager->Skins        ->Default

                       ->Classic

                       ->Only data

                       

 

Each skin consists of two parts “main.bmp” image file and “skin.ini” ini file that holds all information about placement of the elements on the skin.

 

When creating a new skin, first create subdirectory under “Skins”. Then create background bitmap with buttons, captions… drawn on it and save it to that directory with name “main.bmp”. Bitmap must be true color (24 bit) and saved without RLE compression.

 

Than copy “skin.ini” from “Skins\Default” directory to your skin directory. Now you can edit copied “skin.ini” file with any text editor (e.g. Notepad). Remember to save it with same name and as normal textual file (not Word document or some other word processor type).

Description of “skin.ini” file parts:

 

[Info]

Transparent=0

R=255

G=0

B=255

 

Info part describes transparency. If “Transparent” is 1, main window will be transparent for the parts of the bitmap that have color set in R G B keys. Transparency can be used to create windows with different shapes: circular, with rounded corners, with “holes”. You are not limited to rectangular shape.

 

[BarFreeMemory]

PosX=15

PosY=41

Width=230

Height=16

R=0

G=0

B=255

FontName=MS Sans Serif

FontSize=8

FontCharset=1

FontBold=1

FontItalic=0

ShowPercent=1

Enabled=1

StartColR=255

StartColG=255

StartColB=0

EndColR=255

EndColG=0

EndColB=0

BackColR=192

BackColG=192

BackColB=192

 

“BarFreeMemory” and “BarMemoryLoad” sections describe two gradient progress bars that show free memory and memory load. PosX, PosY, Width and Height describe position and size in pixels. R, G, and B are font color. Other font properties: FontSize, FontCharset, FontBold, FontItalic.

FontCharset is a number from this list:

 

# ANSI_CHARSET        0        ANSI characters.
# DEFAULT_CHARSET        1        Font is chosen based solely on Name and Size. If the described font is not available on the system, Windows will substitute another font.
# SYMBOL_CHARSET        2        Standard symbol set.
# MAC_CHARSET        77        Macintosh characters.
# SHIFTJIS_CHARSET        128        Japanese shift-jis characters.
# HANGEUL_CHARSET        129        Korean characters (Wansung).
# JOHAB_CHARSET        130        Korean characters (Johab).
# GB2312_CHARSET        134        Simplified Chinese characters (mainland china).
# CHINESEBIG5_CHARSET136        Traditional Chinese characters (taiwanese).
# GREEK_CHARSET        161        Greek characters.
# TURKISH_CHARSET        162        Turkish characters.
# VIETNAMESE_CHARSET163        Vietnamese characters.
# HEBREW_CHARSET        177        Hebrew characters.
# ARABIC_CHARSET        178        Arabic characters.
# BALTIC_CHARSET        186        Baltic characters.
# RUSSIAN_CHARSET        204        Cyrillic characters.
# THAI_CHARSET        222        Thai characters.
# EASTEUROPE_CHARSET238        Includes diacritical marks for eastern european countries.
# OEM_CHARSET        255        Depends on the codepage of the operating system.

 

If ShowPercent is 1, percentage will be shown on progress bar.

If Enabled is 1, bar is visible, otherwise it will be invisible (not active). It is useful for removing controls and labels that you don’t want on skin.

 

StartColR=255

StartColG=255

StartColB=0

EndColR=255

EndColG=0

EndColB=0

BackColR=192

BackColG=192

BackColB=192

 

These are colors for gradient progress bar. Start and End color, and BackColor for part that is not covered with gradient.

 

[Chart]

PosX=41

PosY=167

Width=165

Height=82

Enabled=1

Col1R=255

Col1G=0

Col1B=0

Col2R=128

Col2G=128

Col2B=128

Col3R=0

Col3G=255

Col3B=0

ColBackR=0

ColBackG=0

ColBackB=0

ColGridR=0

ColGridG=70

ColGridB=0

HorGridCount=40

VerGridCount=11

 

This is a section describing chart. Col1, Col2 and Col3 are colors for lines on chart (free mem, cpu and memory load).

ColBack is background color.

ColGrid is grid color.

HorGridCount is horizontal grid count

VerGridCount is vertical grid count.

 

[ButtonOptions]

PosX=71

PosY=129

Width=54

Height=20

 

Describes position and size of a button. If you want to disable a button, put all keys to 0.

 

Buttons described in “skin.ini”:

 

ButtonOptions - when clicked, options are shown

ButtonFree- when clicked, popup with different memory amounts is shown

ButtonHelp- when clicked, help file is shown

ButtonAbout- when clicked, about dialog is shown

ButtonFreeDirect- when clicked, default amount of memory is freed (same as clicking on popup menu item “Free RAM now (XX MB)”

ButtonExit- when clicked, application terminates

 

[Caption]

PosX=224

PosY=3

Width=15

Height=13

 

This describes “Caption” position.

 

Areas on the main window:

 

Caption- When caption is clicked onto, program window can be moved same as normal application caption.

Minimize - minimize button position

Close - close (X) button position

HomepageLink - Home page link. When clicked, opens default browser to www.finitysoft.com

 

 

[LabelFreeMemory]

PosX=15

PosY=26

Width=51

Height=13

R=0

G=255

B=0

FontName=MS Sans Serif

FontSize=8

FontCharset=1

FontBold=0

FontItalic=0

Enabled=1

Prefix=Free RAM (

Sufix= MB ):

 

Describes label “LabelFreeMemory” properties (position, size, Font …). Labels write out different data on main window (free mem, cpu usage, memory size …)

New properties are:

Prefix - string that will be appended in front of the label

Sufix - string that will be appended at the end of the label

 

For example “LabelFreeMemory” shows amount of free memory in megabytes with two decimal point (e.g. 75.35). With following:

Prefix=Free RAM (

Sufix= MB ):

Label will be written like this:

Free RAM (75.35 MB ):

 

Labels on the main window:

 

LabelFreeMemory - amount of free memory in MB

LabelMemoryLoad - memory load percentage

LabelUptime - How long computer was turned on. This label uses “Sufix” as string for “days”

LabelCPU - CPU usage percentage

LabelFreePercent - amount of free memory %

LabelLoadPercent - memory load percentage

LabelMemoryFull - Total physical memory in MB (used on the right side of the chart)

LabelMemoryHalf - Half of  physical memory in MB (used on the right side of the chart)

LabelMemoryZero - Shows 0

LabelPercent100 - 100 % (used on the left side of the chart)

LabelPercent50 - 50 % (used on the left side of the chart)

LabelPercent0 - 0 % (used on the left side of the chart)

 

If you don’t wand some labels to be visible, put their property “Enabled” to 0.