# Control (of `Object`)

class `Control`

  Defined in Controls.sc.

  A common base class for GUI controls.

Subclasses: `DText`, `DButton`, `DSelector`, `DEdit`, `DIcon`, `_DItem`.

## Properties

Inherited from `Object`:

Property | Description
--- | ---
name |

Defined in Control:

Property | Description
--- | ---
type |
state |
nsTop |
nsLeft |
nsBottom |
nsRight |
key | The keyboard key associated with this control.
said |
value | Arbitrary value associated with this control.

## Methods

`doit`()

`enable`(fEnable)

`select`(fSelect)

`handleEvent`(pEvent)

`check`(pEvent)

  Returns TRUE if the x and y of the event lie inside the control.

`track`(pEvent)

  Highlights the control if the mouse is over it.

`setSize`()

`move`(param1 param2)

`moveTo`(param1 param2)

`draw`()

  Draws the control.

`isType`(theType)

  Parameters: | theType (number) – ctlBUTTON, ctlTEXT, ctlEDIT, ctlICON or ctlSELETOR.
  Returns: | TRUE if this control is of the type specified.

`checkState`(stateFlags)

  Parameters: | stateFlags (number) – Any combination of csENABLED, csEXIT, csFILTER or csSELECTED.
  Returns: | A non-zero value if the control has this state.

`cycle`()