System Colours
By Dean Roddey
SYSCLR_SHADOWHILITEBGND SYSCLR_SHADOWHILITEFGND |
These values drive the colours of the text of a WPS Shadow icon when it is 'hilited' i.e., it is the selected WPS object. The foreground colour drives the text and the background drives the background colour of the text. |
SYSCLR_SHADOWTEXT | This value drives the foreground of the text of a WPS Shadow icon when it is not the 'hilited' object, i.e. some other object has the selected emphasis. |
SYSCLR_ENTRYFIELD | This value is kind of overloaded. It controls the background of an entryfield control, as the name would suggest. But is also controls the backgrounds of list boxes and MLEs. |
SYSCLR_MENUDISABLEDTEXT | As the name would suggest, the foreground colour of the text in disabled menu entries is controlled by this value. |
SYSCLR_MENUHILITE SYSCLR_MENUHILITEBGND |
These values control the foreground and background colours of the text of menu items that are 'depressed', i.e. the one that you've moved the selection to via the keyboard or the submenu item that's depressed when you drop down its submenu. It does not affect disabled menu items. |
SYSCLR_PAGEBACKGROUND | This value controls the background of notebook pages, but usually this seems to be overridden by pres params. |
SYSCLR_FIELDBACKGROUND | This value controls the colour of the shaft of scroll bars that are disabled because there is not enough data to need them. It is also used as the background colour of the frames that WPS settings dialogs are in.
It is also used to colour that little leftover square at the bottom right of list boxes when they have a horizontal scroll bar. |
SYSCLR_BUTTONDARK SYSCLR_BUTTONLIGHT |
These values are used to drive the 3D look of controls when they want to do a raised or sunken look. Frame size borders, menus, scroll bars, system menus, disabled title bars, buttons, entry fields, spin boxes, group boxes, and MLEs all use these colours for this purpose.
On MLE's, which use two interwoven boxes around them (of different colours) to achieve a sunken look, this controls the colour that's usually the lighter colour. |
SYSCLR_BUTTONMIDDLE | This value is often used on the inside of any area that is surrounded by a 3D effect caused by the previous two values. For instance, the middle of the thumb slider on scroll bars and the middle of buttons. |
SYSCLR_BUTTONDEFAULT | This value is used to control the colour of the 'default pushbutton emphasis.' You will notice that a DEFPUSHBUTTON has an extra (usually black) border around it and this border moves to the button that currently has the focus.
The colour of this extra border is controlled by this value. If you tab such that a non-pushbutton has the focus, the dialog code will find the first push button that has the DEFBUTTON style and put the default emphasis back on it. |
SYSCLR_TITLEBOTTOM | When a frame is activated, its title bar paints itself in the activated mode. When it paints in this way, it will draw a line of this colour along its bottom border to separate it from the menu or client area. |
SYSCLR_ICONTEXT | This value drives the colour of the text in the task list. It also drives the colour of the title text in container windows. |
SYSCLR_DIALOGBACKGROUND | This value is used to colour the client area of dialogs, which have no client window. It colours the background of the toolbar and the backgrounds of WPS settings dialogs. |
SYSCLR_HILITEFOREGROUND SYSCLR_HILITEBACKGROUND |
These values drive the colour of the text in any non-disabled, hilited text. So if you drop down a menu, or select some text in an entry field, or select an item in a list box or container, these will control the colours used. Strangely it does not appear to colour the selected text of an MLE.
These also control the text drawn under non-shadow WPS icons, when they are selected, i.e. you click on them and put the selection emphasis on them. The foreground colour drives the text foreground. The background colour drives the block of colour that the WPS draws behind the icon to indicate that it is selected. If the icon is also active, then this colour is just cross hatched. |
SYSCLR_INACTIVETITLETEXTBGND SYSCLR_ACTIVETITLETEXTBGND |
These values drive the colour used to draw the text of the titlebars of active or inactive frame windows. The background just affects the background of the text itself, it is not the colour used to fill the title bar. |
SYSCLR_INACTIVETITLETEXT SYSCLR_ACTIVETITLETEXT |
Cousins of the previous two values, these control the foreground colour of the text of active and inactive title bars. |
SYSCLR_OUTPUTTEXT | This value drives the foreground colour of unselected text in entry fields. |
SYSCLR_WINDOWSTATICTEXT | As the name would suggest, this value drives the foreground colour of text in static controls such as static text and group boxes. |
SYSCLR_SCROLLBAR | This value drives the background colour of the shafts of enabled scroll bars. |
SYSCLR_BACKGROUND | This value drives the default background colour of the desktop. |
SYSCLR_ACTIVETITLE SYSCLR_INACTIVETITLE |
These values drive the background colour used to fill in the titlebars of active and inactive frames. For dialog borders, this colour also is used to draw the border of the dialog. |
SYSCLR_MENU | This value drives the background colour of menus, except for the 'depressed' menu items that are clicked on, or keyboarded to, or submenu items whose sub menus are dropped down. |
SYSCLR_WINDOW | This colour is generally used to colour the backgrounds of user windows or non-dialog frames that have no client window. It is also used as the disabled background colour of the arrow buttons on notebook windows and the background colour of containers.
Like SYSCLR_FIELDBACKGROUND, discussed above, it also seems to drive the colour of that little blank area at the bottom right of list boxes that have a horizontal scroll bar. It controls the colour of SS_BKGNDFRAME style static windows. |
SYSCLR_WINDOWFRAME | This value drives a couple of things. Drop down and popup menus use it as their border. It is also used by buttons and list boxes on their left and bottom sides, in conjunction with the 3D colours discussed above, to provide contrast in case they are placed on a window that has a background colour similar to their 'light' 3D colour. This avoids having the 3D colour just blend into the background and look bad.
Pushbuttons draw a single pixel all the way around the button in this colour, then do the 3D effect inside of it. The default pushbutton emphasis is done outside of this border. This colour is drawn around the outside of a frame with a dialog border. When a dialog border is not active, a single pixel of this colour is used as the border. Thin dialog borders are always drawn using this colour, whether active or not. On MLE's, which use two interwoven boxes around them (of different colours) to achieve a sunken look, this controls the colour that's usually the darker colour. In details mode containers, this controls the colour of the horizontal and vertical separator lines. It controls the colour of SS_FGNDFRAME type static windows. |
SYSCLR_MENUTEXT | This value drives the foreground colour of the text in menus. Only menu items that are not depressed or disabled are affected by this values.
This value also controls the foreground colour of the text in buttons, whether enabled or disabled. |
SYSCLR_WINDOWTEXT | This value drives the foreground colour of the text in most of the standard controls. In listboxes, it colours the text of the non-selected items. In entry fields, spinboxes, and MLEs, it colours the text when its not selected. It is used by the 'page text' on the pages of a notebook control. |
SYSCLR_TITLETEXT | The docs say it colours title bars, size box, and scroll bar arrow boxes, but it does not seem to as far as I can tell. |
SYSCLR_ACTIVEBORDER SYSCLR_INACTIVE |
These values drive the colour of the centre part of an active or inactive frame's sizing border, usually a pale yellow and grey, respectively. The outside colours of these borders are driven by other colours in order to make them look 3D. It does not affect dialog or thin borders. |
SYSCLR_APPWORKSPACE | This value is often used to drive the colour of the client areas of windows that implement a 'multi-document interface', i.e. they have a number of child frames within themselves. |
SYSCLR_HELPBACKGROUND | This value drives the background colour of the help panels displayed by OS/2's online help system. |
SYSCLR_HELPTEXT | This value drives the foreground colour of the text displayed in the help panels of OS/2's online help system. It only controls text that is not coloured specifically by the help author or which is a hyperlink. |
SYSCLR_HELPHILITE | This value drives the foreground colour of hyperlink text in the OS/2 online help system. |