Class CvsKnob

This class represents a turnable knob with a surrounding status track (optional). Three modes are available to rotate the knob.

Major and minor tick marks can be added to the status track and supports stick-to-ticks if wanted.

Hierarchy

Properties

_inset: number
_limit0: number
_limit1: number
_majorTickSize: number
_majorTicks: number
_minorTickSize: number
_minorTicks: number
_s2ticks: boolean
_t01: number
_thumbCnrs: number[]
_thumbSize: number
_trackWeight: number

Accessors

  • get id(): string
  • The unique identifier for this control.

    Returns string

  • get isEnabled(): boolean
  • This is true if the control can respond to UI events else false.

    Use enable() and disable() to enable and disable it.

    Returns boolean

  • get isOpaque(): boolean
  • This is true if the control background is opaque else false.

    Use opaque() and transparent() display / hide the background.

    Returns boolean

  • get isVisible(): boolean
  • This is true if the control is visible else false.

    Use hide() and show() to set visibility.

    Returns boolean

  • get type(): string
  • The type name for this control.
    (type name = class name without the Cvs prefix)

    Returns string

Methods

  • Parameters

    • t: number

    Returns any

  • Add a child to this control using its relative position [rx, ry]. If rx and ry are not provided then it uses the values set in the child.

    Returns

    this control

    Parameters

    • c: string | CvsBaseControl

      is the actual control or its id

    • Optional rx: number
    • Optional ry: number

    Returns any

  • Get or set the corner radii used for this control.

    To set the radii the parameters must be one of the following

    • an array of 4 numbers.
    • a comma seperated list of 4 numbers.
    • a single number to be used for all 4 radii.

    If no parameter is passed or does not match one of the above then an array of the currently used radii values.

    Returns

    an array of the currently used radii values

    Parameters

    • Rest ...c: any

      valid radii combination

    Returns number[] | CvsBaseControl

  • Disables this control.

    Returns

    this control

    Parameters

    • Optional cascade: boolean

      if true disable child controls

    Returns CvsBaseControl

  • Enables this control.

    Returns

    this control

    Parameters

    • Optional cascade: boolean

      if true enable child controls

    Returns CvsBaseControl

  • If the turn angle is < 360° then there will be an 'unused' section of track. This is called the gap and this method sets the position of the gap center effectively rotating the whole knob.

    The angle is 0° along positive x-axis and increases clockwise. The default value is 90° which means the gap center is facing south.

    Returns

    this control

    Parameters

    • ang: number

      must be in the range ≥ 0 and ≤ 360

    Returns CvsKnob

  • Make this control invisible.

    Returns

    this control

    Parameters

    • Optional cascade: boolean

      if true hide children

    Returns CvsBaseControl

  • Checks whether a value is between the lower and upper limits for this control. It allows the user to prevalidate a value before attempting to change the control's value.

    Returns

    true if the value lies within the control's limits else false

    Parameters

    • value: number

      value to test

    Returns boolean

  • Set the lower and upper limits for the slider

    Returns

    this slider object

    Parameters

    • l0: number

      lower limit

    • l1: number

      upper limit

    Returns CvsSlider

  • Sets the interaction mode for rotating the knob.

    • 'x' : dragging left and right turns the knob anticlockwise and clockwise respectively.
    • 'y' : dragging down and up turns the knob anticlockwise and clockwise respectively.
    • 'a' : dragging in a circular motion round the knob center turns the knob to face the drag point.

    Rotation is constrained within the maximum turn angle for this knob.

    Any other parameter value is ignored and the mode is unchanged.

    Returns

    this control

    Parameters

    • mode: string

      'x', 'y' or 'a'

    Returns CvsKnob

  • Move this control relative to current position.

    Returns

    this control

    Parameters

    • x: number

      horizontal distance

    • y: number

      vertical distance

    Returns CvsKnob

  • Move this control to an absolute position.

    Returns

    this control

    Parameters

    • x: number

      horizontal position

    • y: number

      vertical position

    Returns CvsKnob

  • Makes the controls background opaque. The actual color depends on the controls color scheme.

    The second parameter, alpha, is optional and controls the level of opaqueness from 0 - transparent to 255 - fully opaque (efault value).

    Returns

    this control

    Parameters

    • alpha: number = 255

      alpha value for controls background color.

    Returns CvsBaseControl

  • Sets this controls display orientation to one of the four cardinal compass points. An invalid parameter will set the orientation to 'east' which is the default value.

    Returns

    this control

    Parameters

    • dir: string = 'east'

      'north', 'south', 'east' or 'west'

    Returns CvsBaseControl

  • Adds this control to another control which becomes its parent.

    Returns

    this control

    Parameters

    • parent: string | CvsBaseControl

      is the parental control or its id

    • Optional rx: number

      x position relative to parent

    • Optional ry: number

      y position relative to parent

    Returns CvsBaseControl

  • If the name of a valid color scheme is provided then it will use it to display the control, non-existant scheme names will be ignored. In both cases this control is returned.

    If there is no parameter it returns the name of the current color scheme used by this control.

    Returns

    this control or the control's color scheme

    Parameters

    • Optional name: string

      the color scheme name e.g. 'blue'

    • Optional cascade: boolean

      if true propogate scheme to all child controls.

    Returns ColorScheme | CvsBaseControl

  • Only applies to modes 'x' and 'y'. It controls how far the knob rotates for a given drag distance.

    The drag distance needed to rotate the knob by the maximum turn angle is the reciprocal of the parameter value i.e. 1.0 / sens.

    The default value is 0.005 which equates to a drag distance of 200 pixels and the minimum permitted value is 0.0025 (400 pixels).

    Returns

    this control

    Parameters

    • svty: number

      ≥0.0025

    Returns CvsKnob

  • This sets the event handler to be used when this control fires an event. The parameter can take one of three forms:

    1. Arrow function definition
    2. Anonymous function definition
    3. Named function declaration

    Returns

    this control

    Parameters

    • event_handler: Function

      the function to handle this control's events.

    Returns CvsKnob

  • Make this control visible.

    Returns

    this control

    Parameters

    • Optional cascade: boolean

      if true show children

    Returns CvsBaseControl

  • Shrink the control to fit contents.

    To shrink on one dimension only pass either 'w' (width) or 'h' (height) to indicate which dimmension to shrink

    Returns

    this control

    Parameters

    • Optional dim: string

      the dimension to shrink

    Returns CvsBaseControl

  • The track can be divided up into a number of domains separated with major ticks. The major domains and be further divided into subdomains separated with minor ticks. If the final parameter is true then values returned by the slider are consrained to the tick values.

    Returns

    this slider object

    Parameters

    • major: number

      the number of major domains on the track

    • minor: number

      the number of minor domains between major ticks

    • Optional stick2ticks: boolean

      slider value is constrainged to tick values

    Returns CvsBaseControl

  • Sets the size of the text to use in the tooltip.

    Parameters

    • Optional tsize: number

      text size for this tooltip

    Returns CvsKnob

  • Create a tooltip for this control.

    Returns

    this control

    Parameters

    • tiptext: string

      the text to appear in the tooltip

    Returns CvsKnob

  • Sets the width of the track surrounding the central knob-grip. The value will be constrained so the minimum width is 6 pixels upto the radius of the knob.

    The track is used to display current value bar as well as any user specified ticks.

    Returns

    this control

    Parameters

    • tw: number

      the width of the value track

    Returns CvsKnob

  • Sets the maximum angle the knob can be turned in degrees. Angles outside the range >0° and ≤360° will be ignored and the current turn angle is unchanged.

    Returns

    this control

    Parameters

    • ang: number

      max.turn angle >0 and ≤360 degrees

    Returns CvsKnob

  • If the parameter value is withing the slider limits it will move the thumb to the appropriate position. If no parameter is passed or is outside the limits this methods returns the current slider value.

    Returns

    the current value or this slider object

    Parameters

    • Optional value: number

      the selected value to be set

    Returns number | CvsBaseControl

  • Gets or sets the thickness of the track.

    If there is no parameter the currect track thickness is returned. Any other value is constrained to the range ≥ 4 and ≤ 0.1 * control width.

    Returns

    the curent track thickness or this control

    Parameters

    • tWgt: number

      the required track thickness)

    Returns number | CvsBaseControl

Generated using TypeDoc