Extended ControlBar Styles

The SECControlBar class introduces extended control bar styles. Set these extended control bar style bits via the m_dwExStyle class variable of the SECControlBar::Create() method. Here is an overview of the extended control bar styles that can be set for any class derived from SECControlBar.

Extended Control Bar Styles

Extended Style Flag

Description

CBRS_EX_STDCONTEXTMENU

When the extended control bar style is set, the control bar is automatically given the standard context menu items (for example, Show/Hide and Allow Docking).

CBRS_EX_STRETCH_ON_SIZE

The control bar is automatically stretched when resized so that all child windows of the control bar are proportionally scaled to fit the new size exactly. If you require a custom form of resize handling, do not set this extended style and override SECControlBar::OnSize().

CBRS_EX_DRAWBORDERS

Draw a border around the bar.

CBRS_EX_BORDERSPACE

Leave border space for ease of dragging. This style causes a very wide border around the client area of the window while floating.

CBRS_EX_ALLOW_MDI_FLOAT

Control bar can be re-parented by an MDI child window. Set this style if you want the control bar to have a context menu item that allows the control bar to be floated as a normal MDI child window. This style can only be used in MDI applications.

CBRS_EX_SIZE_TO_FIT

Size the (single) child to fit.

CBRS_EX_UNIDIRECTIONAL

The control bar can be sized horizontally or vertically but not diagonally (for example, a toolbar). The control bar can be sized in only one direction per sizing operation.

CBRS_EX_COOLBORDERS

Floating buttons, no border. This style only applies to toolbars.

CBRS_EX_GRIPPER

Draw the dragging gripper.

CBRS_EX_GRIPPER_CLOSE

Draw the close button on gripper.

CBRS_EX_GRIPPER_EXPAND

Expand/contract control bar button.

CBRS_EX_COOL

CBRS_EX_COOLBORDERS | CBRS_EX_GRIPPER | CBRS_EX_GRIPPER_CLOSE | CBRS_EX_GRIPPER_EXPAND Gives the control bar the cool look – a flat, painted look similar to the control bars seen in Microsoft Visual Studio. These extended style options allow you to customize the cool look for your application. By default, the customizable toolbars are: CBRS_EX_COOLBORDERS | CBRS_EX_GRIPPER; all other control bars are CBRS_EX_COOL. Note: Gripper requires coolborders, and Close requires Gripper. In addition, the gripper drawing code has been made virtual, so you can easily plug in your own gripper or modify the existing gripper with just one or two overrides.

CBRS_EX_FULL_ROW

Control bar always occupies entire row (menubars).

CBRS_EX_TRANSPARENT

Toolbar buttons drawn transparently.

CBRS_EX_MENU_STYLE

Do not become large unless a large object is dropped on bar.

Note: The extended control bar styles are distinct from the window styles to avoid value collisions.