Custom Frame colors configuration
The following article uses options that are available starting with the Enterprise edition and project type.
Customizing the Custom Frame with colors supersedes Installation user interface frame customization
The 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)
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
If 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).
If 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)