interplay v1.1.0
interplay
Modular UI controls library designed for both debugging and performance environments, with a focus on simplicity and providing multiple interaction methods.
Developing a new Input Node
JavaScript API
domElement = InputNode(node)
Each Input Node is exposed as a function which takes a node object and
returns a DOM element to be attached to the interplay input list. Interfacing
with interplay is done through the node object that's passed through to you.
node.input.manual = true|false
Should be set to true if manual input is supported, e.g. buttons, sliders,
and any other directly manipulable UI elements.
module.exports = function (node) {
node.input.manual = true
// ...
}node.input.keyboard = true|false
Should be set to true if keyboard input is supported, e.g. it can be triggered
using key presses without directly interacting with the node.
module.exports = function (node) {
node.input.keyboard = true
// ...
}node.input.midi = true|false
Should be set to true if MIDI input is supported.
module.exports = function (node) {
node.input.midi = true
// ...
}node.value
Change node.value to set the node's output value.
node.on('change', changed)
Calls the changed function whenever the Node's value is changed.
node.on('init', init)
Calls the init function when the Node is added to interplay. Should be used to set up event listeners, load assets, etc.
Note that init may be fired more than once if the node is added/removed multiple times.
node.on('stop', stop)
Calls the stop function when the Node is removed from interplay. Should be used to clean up any allocated resources created when firing the init function.
Note that stop may be fired more than once if the node is added/removed multiple times.
Required CSS Classes
.interplay-manual
Should wrap the manual input mode of the Input Node.
.interplay-keyboard
Should wrap the keyboard input mode of the Input Node.
.interplay-midi
Should wrap the MIDI input mode of the Input Node.