# CmdAttribute

A type describing attributes of various command objects.

## Synopsis

Header:
  `<v/v_defs.h>`
Type name:
  CmdAttribute

## Description

These attributes are used when defining command items. They are used to modify default behavior. These attributes are bit values, and some can be combined with an OR operation. Note that not all attributes can be used with all commands.

## Attributes

`CA_DefaultButton` Used with a `C_Button` to indicate that this button will be the default button. The user can activate the default button by pressing the Enter key as well as using the mouse. It will most often be associated with the OK button.

`CA_Hidden` Sometimes you may find it useful to have a command object that is not displayed at first. By using the `CA_Hidden` attribute, the command object will not be displayed. The space it will require in the dialog or dialog pane will still be allocated, but the command will not be displayed. You can then unhide (or hide) the command using the `SetValue` method: `SetValue(CmdID, TrueOrFalse, Hidden)`.

`CA_Horizontal` Command will have horizontal orientation. This attribute is used with Sliders and Progress Bars.

`CA_Large` The object should be larger than usual. It can be used with Lists, Progress Bars, Sliders, Text Ins, and Value Boxes.

`CA_MainMsg` Used with a `C_Label` to indicate that its string will be replaced with the message supplied to the `ShowDialog` method.

`CA_NoBorderCA_NoBorder` specifies that the object is to be displayed with no border.

`CA_NoLabel` Used for progress bars to suppress display of the value label.

`CA_NoNotify` Used for combo boxes and lists. When specified, the program will not be notified for each selection of a combo box item or a list item. When specified, the program is notified only when the combo box button is pressed, and must then use `GetValue` to retrieve the item selected in the combo box list. For lists, you will need another command button in the dialog to indicate list selection is done.

`CA_NoSpace` Used for frames, this attribute causes the command objects within the frame to be spaced together as tightly as possible. Normally, command objects have a space of several pixels between them when laid out in a dialog. The `CA_NoSpace` attribute is especially useful for producing a tightly spaced set of command buttons.

`CA_None` No special attributes. Used as a symbolic filler when defining items, and is really zero.

`CA_Percent` Used with progress bars to add a % to the value label.

`CA_Size` The `size` element of the `CommandObject` is being used to specify a size for the control. This is used with buttons, spin controls, and lists.

`CA_Small` The object should be smaller than usual. It can be used with Progress Bars and Text Ins. On Progress Bars, `CA_Small` means that the text value box will not be shown.

`CA_Text` Used for Spinners to specify that a text list of possible values has been supplied.

`CA_Vertical` Command will have vertical orientation. This attribute is used with Sliders and Progress Bars.