# Class: CheckControl

## CheckControl

#### new CheckControl()

The base class for the Checkbox component. You will not typically create this class directly but instead use the Checkbox component.

Source:
  - ui/check-control.js, line 9

### Extends

- module:montage/ui/control.Control

### Members

#### accesskey :string

Specifies the shortcut key(s) that gives focuses to or activates the element.

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#accesskey
Default Value:
  - null
Source:
  - ui/component.js, line 4369
See:
  - http://www.w3.org/TR/html5/editing.html#the-accesskey-attribute

#### actionCompletionPromise

A promise that indicates an action event triggered an asynchronous task. The control will stop listening to user input until actionCompletionPromise is resoved or rejected, and uses CSS classes to represent the Promise resolution

##### Properties:

Name | Type | Description
--- | --- | ---
`value` | Promise |

Inherited From:
  - module:montage/ui/control.Control#actionCompletionPromise
Default Value:
  - undefined
Source:
  - ui/control.js, line 56

#### active :boolean

This property is meant to be used as a way to flag when a component is being interacted with, either through mouse or touch event. false by default, specialized components like controls would set it to true when being interacted with.

##### Type:

- boolean

Inherited From:
  - module:montage/ui/control.Control#active
Default Value:
  - false
Source:
  - ui/control.js, line 137

#### autofocus :boolean

Specifies if the control should receive focus when the document loads. Because Montage components are loaded asynchronously after the document has loaded, setting this property has no effect on the element's focus state.

##### Type:

- boolean

Inherited From:
  - module:montage/ui/control.Control#autofocus
Default Value:
  - false
Source:
  - ui/control.js, line 451

#### contenteditable :string

Specifies if the content is editable or not. Valid values are "true", "false", and "inherit".

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#contenteditable
Default Value:
  - null
Source:
  - ui/component.js, line 4378
See:
  - http://www.w3.org/TR/html5/editing.html#contenteditable

#### contextmenu :string

Specifies the ID of a `menu` element in the DOM to use as the element's context menu.

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#contextmenu
Default Value:
  - null
Source:
  - ui/component.js, line 4386
See:
  - http://www.w3.org/TR/html5/interactive-elements.html#attr-contextmenu

#### converter :Converter

A reference to a Converter object whose `revert()` function is invoked when a new value is assigned to the TextInput object's `value` property. The revert() function attempts to transform the newly assigned value into a "typed" data property. For instance, a DateInput component could assign a DateConverter object to this property to convert a user-supplied date string into a standard date format.

##### Type:

- Converter

Inherited From:
  - module:montage/ui/control.Control#converter
Default Value:
  - null
Source:
  - ui/control.js, line 367
See:
  - module:montage/core/converter.Converter

#### detail

The data property of the action event. Example to toggle the complete class: `"detail.get('selectedItem')" : { "<-" : "@repetition:iteration.object"}`

Inherited From:
  - module:montage/ui/control.Control#detail
Source:
  - ui/control.js, line 77

#### dir :string

Specifies the elements element's text directionality. Valid values are "ltr", "rtl", and "auto".

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#dir
Default Value:
  - null
Source:
  - ui/component.js, line 4394
See:
  - http://www.w3.org/TR/html5/elements.html#the-dir-attribute

#### disabled :boolean

Specifies if the control is disabled.

##### Type:

- boolean

Inherited From:
  - module:montage/ui/control.Control#disabled
Default Value:
  - false
Source:
  - ui/control.js, line 458

#### draggable :string

Specifies if the element is draggable. Valid values are "true", "false", and "auto".

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#draggable
Default Value:
  - null
Source:
  - ui/component.js, line 4402
See:
  - http://www.w3.org/TR/html5/dnd.html#the-draggable-attribute

#### dropzone :string

Specifies the behavior that's taken when an item is dropped on the element. Valid values are "copy", "move", and "link".

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#dropzone
Source:
  - ui/component.js, line 4409
See:
  - http://www.w3.org/TR/html5/dnd.html#the-dropzone-attribute

#### elementValue :String

This property is meant to return the value of a control's element. specialized controls can override this to access different DOM properties if needed

##### Type:

- String

Inherited From:
  - module:montage/ui/control.Control#elementValue
Source:
  - ui/control.js, line 298

#### error :boolean

If an error is thrown by the converter object during a new value assignment, this property is set to `true`, and schedules a new draw cycle so the the UI can be updated to indicate the error state. the `montage--invalidText` CSS class is assigned to the component's DOM element during the next draw cycle.

##### Type:

- boolean

Inherited From:
  - module:montage/ui/control.Control#error
Default Value:
  - false
Source:
  - ui/control.js, line 390

#### errorMessage :string

The message to display when the component is in an error state.

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#errorMessage
Default Value:
  - null
Source:
  - ui/control.js, line 411

#### form :string

The value of the id attribute of the form with which to associate the element.

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#form
Default Value:
  - null
Source:
  - ui/control.js, line 465

#### hidden :boolean

When specified on an element, it indicates that the element should not be displayed.

##### Type:

- boolean

Inherited From:
  - module:montage/ui/control.Control#hidden
Default Value:
  - false
Source:
  - ui/component.js, line 4416

#### isContinuous :Object

Returns a Boolean value indicating whether the control dispatched its action event continuously when value changes.

##### Type:

- Object

Inherited From:
  - module:montage/ui/control.Control#isContinuous
Default Value:
  - false
Source:
  - ui/control.js, line 438
See:
  - module:montage/core/converter.Converter

#### lang :string

Specifies the primary language for the element's contents and for any of the element's attributes that contain text.

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#lang
Default Value:
  - null
Source:
  - ui/component.js, line 4425
See:
  - http://www.w3.org/TR/html5/elements.html#attr-lang

#### name :string

The name part of the name/value pair associated with this element for the purposes of form submission.

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#name
Default Value:
  - null
Source:
  - ui/control.js, line 472

#### readonly :boolean

Specifies if this control is readonly.

##### Type:

- boolean

Inherited From:
  - module:montage/ui/control.Control#readonly
Default Value:
  - false
Source:
  - ui/control.js, line 479

#### spellcheck :string

Specifies if element should have its spelling and grammar checked by the browser. Valid values are "true", "false".

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#spellcheck
Default Value:
  - null
Source:
  - ui/component.js, line 4433
See:
  - http://www.w3.org/TR/html5/editing.html#attr-spellcheck

#### tabindex :number

Specifies the relative order of the element for the purposes of sequential focus navigation.

##### Type:

- number

Inherited From:
  - module:montage/ui/control.Control#tabindex
Default Value:
  - null
Source:
  - ui/component.js, line 4449
See:
  - http://www.w3.org/TR/html5/editing.html#attr-tabindex

#### title :string

Specifies advisory information about the element, used as a tooltip when hovering over the element, and other purposes.

##### Type:

- string

Inherited From:
  - module:montage/ui/control.Control#title
Default Value:
  - null
Source:
  - ui/component.js, line 4457
See:
  - http://www.w3.org/TR/html5/elements.html#the-title-attribute

### Methods

#### createActionEvent() → {AbstractControl#action}

Overrides Component#createActionEvent by adding AbstractControl#detail custom data

Inherited From:
  - module:montage/ui/control.Control#createActionEvent
Source:
  - ui/control.js, line 93

##### Returns:

Type
  AbstractControl#action

#### dispatchActionEvent()

Inherited From:
  - module:montage/ui/control.Control#dispatchActionEvent
Source:
  - ui/control.js, line 43

##### Fires:

- AbstractControl#event:action