Custom Frame colors configuration

ImportantThe following article uses options that are available starting with the Enterprise edition and project type.

Caution!Customizing the Custom Frame with colors supersedes Installation user interface frame customization

ImportantThe method presented in this article requires the AI_CF_TYPE property to be set to either 1 - always use a custom frame or 2 - use a custom frame only when the glass is not available(Vista and above)

Caution!If AI_CF_FRAME_STYLE is configured with NoInactive, the configuration of the Inactive state of all the other properties will be ignored and the normal state colors will be used.

Advanced color customization for the custom frame can be achieved using the following MSI properties:

Frame Base Color property

AI_CF_FRAME_BASE_COLOR

The base color from which frame all colors are derived and used to generate the custom frame colors. It is encoded in HTML format #RRGGBB.

Minimize and Close buttons properties

AI_CF_MINBTN_BASE_COLOR

The base color from which minimize button colors are derived. Color is encoded in HTML format #RRGGBB. If not specified, a default color will be used.

AI_CF_CLOSEBTN_BASE_COLOR

The base color from which close button colors are derived. Color is encoded in HTML format #RRGGBB. If not specified, a default color will be used.

Detailed customization

ImportantIf FlatCaption is defined in AI_CF_FRAME_STYLE, the detailed customization will be ignored and the caption will be drawn with the base color (no gradients).

ImportantIf FlatBorder is defined in AI_CF_FRAME_STYLE, the detailed customization will be ignored and the border will be drawn with a single color derived from the base one.

AI_CF_FRAME_BASE_INACTIVE_COLOR

The base color from which frame all colors are derived and used to generate the inactive frame color.

It is encoded in HTML format #RRGGBB.

AI_CF_FRAME_CAPTION2_COLORS

Caption2, Border1, Border2 and Border3 are optional. If not specified their corresponding colors are derived from AI_CF_FRAME_BASE_COLOR.

All custom frame caption2 colors Caption2 is the frame gradient end color (gradient from base color to caption2 color). Gradient style can be changed using AI_CF_FRAME_STYLE property.

The color is encoded in HTML format #RRGGBB.

Caption2;Caption2Inactive;Border1;Border2;Border3;BorderInactive1;BorderInactive2;BorderInactive3

AI_CF_FRAME_BORDER1_COLORS

Custom frame outer frame has three pixels. The color of these pixels can be changed using border1, border2 and border3 colors.

All custom frame border1 colors. Color is encoded in HTML format #RRGGBB.

Border1;Border1Inactive

AI_CF_FRAME_BORDER2_COLORS

All custom frame border2 colors. Color is encoded in HTML format #RRGGBB

Border2;Border2Inactive

AI_CF_FRAME_BORDER3_COLORS

All custom frame border3 colors. Color is encoded in HTML format #RRGGBB.

Border3;Border3Inactive

AI_CF_CLOSEBTN_COLORS

The close button colors. Normal color is set with AI_CF_CLOSEBTN_BASE_COLOR. The color is encoded in HTML format #RRGGBB.

InactiveColor;HotColor;HotInactiveColor;PressedColor

Leave an empty position if you want default color to be used:

InactiveColor;;;PressedColor

AI_CF_CLOSEBTN_BORDER_COLORS

The close button colors. The color is encoded in HTML format #RRGGBB.

NormalColor;InactiveColor;HotColor;HotInactiveColor;PressedColor

Leave an empty position if you want the default color to be used:

InactiveColor;;PressedColor

AI_CF_MINBTN_COLORS

The min button colors. Normal color is set with AI_CF_MINBTN_BASE_COLOR. The color is encoded in HTML format #RRGGBB.

InactiveColor;HotColor;HotInactiveColor;PressedColor

Leave an empty position if you want the default color to be used:

InactiveColor;;;PressedColor

AI_CF_MINBTN_BORDER_COLORS

The close button colors. Color is encoded in HTML format #RRGGBB.

NormalColor;InactiveColor;HotColor;HotInactiveColor;PressedColor

Leave an empty position if you want the default color to be used:

InactiveColor;;PressedColor

AI_CF_SYS_BTNS_BORDER_WIDTH

System buttons (min, close) border width (can be 1, 2 etc). If not set border width is 1

AI_CF_FRAME_METRICS

Custom frame metrics. Note: Used only if AI_CF_FRAME_BASE_COLOR is not empty. If empty, the custom frame metrics are set from custom frame images.

  • Caption size
  • X, Y frame border size
  • min, close button width, height

Property format: CaptionSize;xFrame;yFrame;sysBtnWidth;sysBtnHeight

Leave an empty position if you want to use system metric for that field.

Example:

CaptionSize;;;sysBtnWidth;sysBtnHeight

Sizes are in pixels and 96 DPI. They are automatically scaled when loaded if DPI is not 96.

AI_CF_FRAME_STYLE

Custom frame style

Property format: FlatCaption;FlatBorder;NoInactive

Values can be 0 or 1, true, false, ''(empty) or name like "FlatCaption" etc. Any other value is considered false

All ';' separators are mandatory

  • FlatCaption means that the caption is drawn with the base color (no gradients)
  • FlatBoder means that border is drawn with a single color derived from the base one instead of three colors
  • NoInactive means that inactive state is the same as normal state (colors used for normal state are used also for inactive state)