LevelMeter

LevelMeter

new LevelMeter(optionsopt)

Source:
Properties:
Name Type Attributes Default Description
options.show_clip Boolean <optional>
false

If set to true, show the clipping LED.

options.clipping Number <optional>
0

If clipping is enabled, this is the threshold for the clipping effect.

options.auto_clip Integer | Boolean <optional>
false

This is the clipping timeout. If set to false automatic clipping is disabled. If set to n the clipping effect times out after n ms, if set to -1 it remains forever.

options.clip Boolean <optional>
false

If clipping is enabled, this option is set to true when clipping happens. When automatic clipping is disabled, it can be set to true to set the clipping state.

options.show_hold Boolean <optional>
false

If set to true, show the hold value LED.

options.hold_size Integer <optional>
1

Size of the hold value LED in the number of segments.

options.auto_hold Number | boolean <optional>
false

If set to false the automatic hold LED is disabled, if set to n the hold value is reset after n ms and if set to -1 the hold value is not reset automatically.

options.top Number <optional>
false

The top hold value. If set to false it will equal the meter level.

options.bottom Number <optional>
false

The bottom hold value. This only exists if a base value is set and the value falls below the base.

options.peak_value Integer | Boolean <optional>
false

If set to false the automatic peak label is disabled, if set to n the peak label is reset after n ms and if set to -1 it remains forever.

options.falling Number <optional>
0

If set to a positive number, activates the automatic falling animation. The meter level will fall by this amount over the time set via options.falling_duration.

options.falling_duration Number <optional>
1000

This is the time in milliseconds for the falling animation. The level falls by options.falling in this period of time.

options.falling_init Number <optional>
50

Initial falling delay in milliseconds. This option can be used to delay the start of the falling animation in order to avoid flickering if internal and external falling are combined.

options.layout String <optional>
"left"

A string describing the layout of the meter. Possible values are "left", "right", "top" and "bottom". "left" and "right" are vertical layouts, where the meter is on the left or right of the scale, respectively. Similarly, "top" and "bottom" are horizontal layouts in which the meter is at the top or the bottom, respectively. (Defined in Meter)

options.segment Integer <optional>
1

Segment size. Pixel positions of the meter level are rounded to multiples of this size. This can be used to give the level meter a LED effect and to reduce processor load. (Defined in Meter)

options.value Number <optional>
0

Level value. (Defined in Meter)

options.base Number <optional>
false

The base value of the meter. If set to false, the base will coincide with the minimum value options.min. The meter level is drawn starting from the base to the value. (Defined in Meter)

options.label Number <optional>
0

Value to be displayed on the label. (Defined in Meter)

options.format_label function <optional>
FORMAT("%.2f")

Function for formatting the label. (Defined in Meter)

options.show_label Boolean <optional>
false

If set to true a label is displayed. (Defined in Meter)

options.show_scale Boolean <optional>
true

Set to false to hide the scale. (Defined in Meter)

options.scale_base Number | Boolean <optional>
false

Base of the meter scale, see Scale for more information. (Defined in Meter)

options.show_labels Boolean <optional>
true

If true, display labels on the scale. (Defined in Meter)

options.format_labels function <optional>
FORMAT("%.2f")

Function for formatting the scale labels. This is passed to Scale as option labels. (Defined in Meter)

options.value_label Number <optional>
0

The value to be drawn in the value label. (Defined in Meter)

options.sync_value Boolean <optional>
true

Synchronize the value on the bar with the value label using options.format_value function. (Defined in Meter)

options.title String <optional>
""

A string to be set as title attribute on the main element to be displayed as tooltip. (Defined in Widget)

options.disabled Boolean <optional>
false

Toggles the class .aux-disabled. By default it disables all pointer events on the widget via CSS to make it unusable to the user. (Defined in Widget)

options.active Boolean <optional>

Toggles the class .aux-inactive. (Defined in Widget)

options.visible Boolean <optional>

Toggles the class .aux-hide and .aux-show. This option also enables and disabled rendering by calling Widget#hide and Widget#show. (Defined in Widget)

options.needs_resize Boolean <optional>
true

Set to true if the resize function shall be called before the next redraw. (Defined in Widget)

options.dblclick Boolean <optional>
400

Set a time in milliseconds for triggering double click event. If 0, no double click events are fired. (Defined in Widget)

options.preset String <optional>

Set a preset. This string gets set as class attribute aux-preset-[preset]. If options.presets has a member of this name, all options of its option object are set on the Widget. Non-existent options are reset to the default. Defaults are updated on initialization and runtime. (Defined in Widget)

options.presets Object <optional>
{}

An object with available preset specific options. Refer to options.preset for more information. (Defined in Widget)

options.gradient Object | Boolean

Gradient definition for the background. Keys are ints or floats as string corresponding to the widgets scale. Values are valid css color strings like #ff8000 or rgb(0,56,103). If set to false the css style color is used. (Defined in Gradient)

options.background String | Boolean <optional>
"#000000"

Background color if no gradient is used. Values are valid css color strings like #ff8000 or rgb(0,56,103). If set to false the css style color is used. (Defined in Gradient)

options.scale String | Array.<Number> | function <optional>
"linear"

The type of the scale. Either one of linear, decibel, log2, frequency or frequency-reverse; or an array containing a piece-wise linear scale; or a callback function of type Ranged~scale_cb. (Defined in Ranged)

options.reverse Boolean <optional>
false

Reverse the scale of the range. (Defined in Ranged)

options.basis Number <optional>
1

The size of the linear scale. Set to pixel width or height if used for drawing purposes or to 100 for percentages. (Defined in Ranged)

options.min Number <optional>
0

Minimum value of the range. (Defined in Ranged)

options.max Number <optional>
1

Maximum value of the range. (Defined in Ranged)

options.log_factor Number <optional>
1

Used to overexpand logarithmic curves. 1 keeps the natural curve while values above 1 will overbend. (Defined in Ranged)

options.snap Number | Array.<number> <optional>
0

Defines a virtual grid. If options.snap is a positive number, it is interpreted as the distance of grid points. Then, inside of the interval options.min ... options.max the grid points are options.base + n * options.snap where n is any integer. Any values outside of that interval are rounded to the biggest or smallest grid point, respectively. In order to define grids with non-uniform spacing, set options.snap to an Array of grid points. (Defined in Ranged)

options.step Number <optional>
0

Step size. Used for instance by ScrollValue as the step size. (Defined in Ranged)

options.shift_up Number <optional>
4

Multiplier for increased stepping speed, e.g. used by ScrollValue when simultaneously pressing 'shift'. (Defined in Ranged)

options.shift_down Number <optional>
0.25

Multiplier for decreased stepping speed, e.g. used by ScrollValue when simultaneously pressing 'shift' and 'ctrl'. (Defined in Ranged)

LevelMeter is a fully functional meter bar displaying numerical values. LevelMeter is an enhanced Meter containing a clip LED and hold markers. In addition, LevelMeter has an optional falling animation, top and bottom peak values and more.

Parameters:
Name Type Attributes Default Description
options Object <optional>
{ }

An object containing initial options.

Extends

Members

_bar :HTMLDivElement

Source:
Inherited From:

The DIV element containing the masks and drawing the background. Has class .aux-bar.

Type:
  • HTMLDivElement

_canvas :HTMLCanvas

Source:
Inherited From:

The canvas element drawing the mask. Has class .aux-mask.

Type:
  • HTMLCanvas

element :HTMLDivElement

Source:
Overrides:

The main DIV container. Has class .aux-levelmeter.

Type:
  • HTMLDivElement

label :Label

Source:
Inherited From:

The Label displaying the title. Has class .aux-label.

Type:

scale :Scale

Source:
Inherited From:

The Scale of the meter.

Type:

value :Label

Source:
Inherited From:

The Label displaying the value.

Type:

Methods

add_child(child)

Source:
Inherited From:
See:

Registers a widget as a child widget. This method is used to build up the widget tree. It does not modify the DOM tree.

Parameters:
Name Type Description
child Widget

The child to add.

Fires:
  • Widget#event:child_added

add_children(a)

Source:
Inherited From:

Registers an array of widgets as children.

Parameters:
Name Type Description
a Array.<Widget>

An array of Widgets.

addEventListener(event, func)

Source:
Inherited From:

Register an event handler.

Parameters:
Name Type Description
event string

The event descriptor.

func function

The function to call when the event happens.

all_children()

Source:
Inherited From:

Returns an array of all children.

append_child(child)

Source:
Inherited From:

Appends child.element to the widget element and registers child as a child widget.

Parameters:
Name Type Description
child Widget

The child widget to append.

append_children(children)

Source:
Inherited From:

Calls Widget#append_child for an array of widgets.

Parameters:
Name Type Description
children Array.<Widget>

The child widgets to append.

delegate_events(element) → {HTMLElement}

Source:
Inherited From:

Delegates all occuring DOM events of a specific DOM node to the widget. This way the widget fires e.g. a click event if someone clicks on the given DOM node.

Parameters:
Name Type Description
element HTMLElement

The element all native events of the widget should be bound to.

Fires:
Returns:

The element

Type
HTMLElement

destroy()

Source:
Inherited From:

Destroys all event handlers and the options object.

dispatchEvent(event, …args)

Source:
Inherited From:

Fires an event.

Parameters:
Name Type Attributes Description
event string

The event descriptor.

args * <repeatable>

Event arguments.

enable_draw()

Source:
Inherited From:

Schedules this widget for drawing.

Fires:

enable_draw_children()

Source:
Inherited From:

Enables rendering for all children of this widget.

force_hide()

Source:
Inherited From:

Hide the widget immediately by applying the class aux-hide. Does not call disable_draw().

force_show()

Source:
Inherited From:

Show the widget immediately by applying the class aux-show. Does not call enable_draw().

get(key)

Source:
Inherited From:

Get the value of an option.

Parameters:
Name Type Description
key string

The option name.

get_default()

Source:
Inherited From:

Returns the default value of a given option. If the option does not exist, an exception is thrown.

get_option_type()

Source:
Inherited From:

Returns the type of an option. If the given option does not exist, 'undefined' is returned.

get_style()

Source:
Inherited From:

Returns the computed style of this widget's DOM element.

has_event_listeners(event) → {boolean}

Source:
Inherited From:

Test if the event descriptor has some handler functions in the queue.

Parameters:
Name Type Description
event string

The event desriptor.

Returns:

True if the event has some handler functions in the queue, false if not.

Type
boolean

hidden()

Source:
Inherited From:

Returns the current hidden status.

hide()

Source:
Inherited From:

Hide the widget. This will result in the class aux-hide being applied to this widget in the next rendering step.

off(event, fun)

Source:
Inherited From:

Removes the given function from the event queue. If it is a native DOM event, it removes the DOM event listener as well.

Parameters:
Name Type Description
event string

The event descriptor.

fun function

The function to remove.

remove_child(child)

Source:
Inherited From:

Removes a child widget. Note that this method only modifies the widget tree and does not change the DOM.

Parameters:
Name Type Description
child Widget

The child to remove.

Fires:
  • Widget#event:child_removed

remove_children(a)

Source:
Inherited From:

Removes an array of children.

Parameters:
Name Type Description
a Array.<Widget>

An array of Widgets.

reset(key)

Source:
Inherited From:

Resets an option to its default value.

Parameters:
Name Type Description
key string

The option name.

reset_all()

Source:

Resets all hold features.

Fires:

reset_bottom()

Source:

Resets the bottom hold.

Fires:

reset_clip()

Source:

Resets the clipping LED.

Fires:

reset_top()

Source:

Resets the top hold.

Fires:

reset_value()

Source:

Resets the value.

Fires:

set(key, value)

Source:
Inherited From:

Sets an option.

Parameters:
Name Type Description
key string

The option name.

value

The option value.

set_options(optionsopt)

Source:
Inherited From:

Merges a new options object into the existing one, including deep copies of objects. If an option key begins with the string "on" it is considered an event handler. In this case the value should be the handler function for the event with the corresponding name without the first "on" characters.

Parameters:
Name Type Attributes Default Description
options Object <optional>
{ }

An object containing initial options.

set_style()

Source:
Inherited From:

Sets a CSS style property in this widget's DOM element.

show()

Source:
Inherited From:

Make the widget visible. This will apply the class aux-show during the next rendering step.

toggle_hidden()

Source:
Inherited From:

Toggle the hidden status. This is equivalent to calling hide() or show(), depending on the current hidden status of this widget.

update(key, value)

Source:
Inherited From:

Conditionally sets an option unless it already has the requested value.

Parameters:
Name Type Description
key string

The name of the option.

value mixed

The value of the option.

Fires:

userset(key, value)

Source:
Inherited From:

Sets an option by user interaction. Emits the userset event. The userset event can be cancelled (if an event handler returns false), in which case the option is not set. Returns true if the option was set, false otherwise. If the option was set, it will emit a useraction event.

Parameters:
Name Type Description
key string

The name of the option.

value mixed

The value of the option.

Fires:
  • Base#event:userset
  • Base#event:useraction

visible_children()

Source:
Inherited From:

Returns an array of all visible children.

Events

delegated

Source:
Inherited From:

Is fired when an element is delegated.

Parameters:
Name Type Description
element HTMLElement | Array

The element which receives all native DOM events.

old_element HTMLElement | Array

The element which previously received all native DOM events.

destroy

Source:
Inherited From:

Is fired when a widget is destroyed.

doubleclick

Source:
Inherited From:

Is fired after a double click appeared. Set dblclick to 0 to disable click event handling.

Parameters:
Name Type Description
event string

The browsers MouseEvent.

GenericDOMEvents

Source:
Inherited From:

Generic DOM events. Please refer to W3Schools for further details.

hide

Source:
Inherited From:

The hide event is emitted when a widget is hidden and is not rendered anymore. This happens both with browser visibility changes and also internally when using layout widgets such as Pager.

initialized

Source:
Inherited From:

Is fired when a widget is initialized.

redraw

Source:
Inherited From:

The redraw event is emitted when a widget is redrawn. This can be used to do additional DOM modifications to a Widget.

resetbottom

Source:

Is fired when the bottom hold was reset.

resetclip

Source:

Is fired when the clipping LED was reset.

resettop

Source:

Is fired when the top hold was reset.

resetvalue

Source:

Is fired when the value label was reset.

resize

Source:
Inherited From:

The resize event is emitted whenever a widget is being resized. This event can be used to e.g. measure its new size. Note that some widgets do internal adjustments after the resize event. If that is relevant, the Widget#resized event can be used instead.

resized

Source:
Inherited From:

The resized event is emitted after each rendering frame, which was triggered by a resize event.

set

Source:
Inherited From:

The set event is emitted when an option was set using the Widget#set method. The arguments are the option name and its new value.

Note that this happens both for user interaction and programmatical option changes.

set_[option]

Source:
Inherited From:

Is fired when an option is set.

Parameters:
Name Type Description
value mixed

The value of the option.

show

Source:
Inherited From:

The show event is emitted when a widget is shown and is being rendered. This is the counterpart to Widget#hide.

visibility

Source:
Inherited From:

Is fired when the visibility state changes. The first argument is the visibility state, which is either true or false.