Bitwig Studio Control Surface API  5.0.11
Application Interface Reference

Public Member Functions

void createAudioTrack (int position)
 
void createInstrumentTrack (int position)
 
void createEffectTrack (int position)
 
Action[] getActions ()
 
Action getAction (String id)
 
ActionCategory[] getActionCategories ()
 
ActionCategory getActionCategory (String id)
 
void activateEngine ()
 
void deactivateEngine ()
 
BooleanValue hasActiveEngine ()
 
void addHasActiveEngineObserver (BooleanValueChangedCallback callable)
 
StringValue projectName ()
 
void addProjectNameObserver (StringValueChangedCallback callback, int maxChars)
 
void nextProject ()
 
void previousProject ()
 
void navigateIntoTrackGroup (Track track)
 
void navigateToParentTrackGroup ()
 
void undo ()
 
HardwareActionBindable undoAction ()
 
BooleanValue canUndo ()
 
void redo ()
 
HardwareActionBindable redoAction ()
 
BooleanValue canRedo ()
 
void setPanelLayout (String panelLayout)
 
void nextPanelLayout ()
 
void previousPanelLayout ()
 
StringValue panelLayout ()
 
void addPanelLayoutObserver (StringValueChangedCallback callable, int maxChars)
 
StringValue displayProfile ()
 
void addDisplayProfileObserver (StringValueChangedCallback callable, int maxChars)
 
void toggleInspector ()
 
void toggleDevices ()
 
void toggleMixer ()
 
void toggleNoteEditor ()
 
void toggleAutomationEditor ()
 
void toggleBrowserVisibility ()
 
void previousSubPanel ()
 
void nextSubPanel ()
 
void arrowKeyLeft ()
 
void arrowKeyRight ()
 
void arrowKeyUp ()
 
void arrowKeyDown ()
 
void enter ()
 
void escape ()
 
void selectAll ()
 
HardwareActionBindable selectAllAction ()
 
void selectNone ()
 
HardwareActionBindable selectNoneAction ()
 
void selectPrevious ()
 
HardwareActionBindable selectPreviousAction ()
 
void selectNext ()
 
HardwareActionBindable selectNextAction ()
 
void selectFirst ()
 
HardwareActionBindable selectFirstAction ()
 
void selectLast ()
 
HardwareActionBindable selectLastAction ()
 
void cut ()
 
HardwareActionBindable cutAction ()
 
void copy ()
 
HardwareActionBindable copyAction ()
 
void paste ()
 
HardwareActionBindable pasteAction ()
 
void duplicate ()
 
HardwareActionBindable duplicateAction ()
 
void remove ()
 
HardwareActionBindable removeAction ()
 
void rename ()
 
void zoomIn ()
 
HardwareActionBindable zoomInAction ()
 
void zoomOut ()
 
HardwareActionBindable zoomOutAction ()
 
RelativeHardwarControlBindable zoomLevel ()
 
void zoomToSelection ()
 
HardwareActionBindable zoomToSelectionAction ()
 
void zoomToSelectionOrAll ()
 
HardwareActionBindable zoomToSelectionOrAllAction ()
 
void zoomToSelectionOrPrevious ()
 
HardwareActionBindable zoomToSelectionOrPreviousAction ()
 
void zoomToFit ()
 
HardwareActionBindable zoomToFitAction ()
 
void focusPanelToLeft ()
 
void focusPanelToRight ()
 
void focusPanelAbove ()
 
void focusPanelBelow ()
 
void toggleFullScreen ()
 
void setPerspective (String perspective)
 
void nextPerspective ()
 
void previousPerspective ()
 
void addSelectedModeObserver (StringValueChangedCallback callable, int maxChars, String fallbackText)
 
SettableEnumValue recordQuantizationGrid ()
 
SettableBooleanValue recordQuantizeNoteLength ()
 

Public Attributes

String PANEL_LAYOUT_ARRANGE = "ARRANGE"
 
String PANEL_LAYOUT_MIX = "MIX"
 
String PANEL_LAYOUT_EDIT = "EDIT"
 

Detailed Description

An interface that provides methods for accessing the most common global application commands.

In addition, functions are provided for accessing any application action in a generic and categorized way, pretty much as displayed in the Bitwig Studio commander dialog (see getActions(), getAction(String), getActionCategories()), getActionCategory(String)).

To receive an instance of the application interface call ControllerHost#createApplication().

Member Function Documentation

◆ activateEngine()

void activateEngine ( )

Activates the audio engine in Bitwig Studio.

Since
API version 1

◆ addDisplayProfileObserver()

void addDisplayProfileObserver ( StringValueChangedCallback  callable,
int  maxChars 
)

Registers an observer that reports the name of the active display profile.

Parameters
callablea callback function object that accepts a single string parameter
maxCharsthe maximum length of the display profile name
Since
API version 1
Deprecated:
Use displayProfile() instead.

◆ addHasActiveEngineObserver()

void addHasActiveEngineObserver ( BooleanValueChangedCallback  callable)

Registers an observer that gets called when the audio engine becomes active or inactive.

Parameters
callablea callback function that accepts a single boolean parameter. The callback parameter indicates whether the audio engine became active (true) or inactive (false).
Since
API version 1
Deprecated:
Use hasActiveEngine() instead.

◆ addPanelLayoutObserver()

void addPanelLayoutObserver ( StringValueChangedCallback  callable,
int  maxChars 
)

Registers an observer that reports the name of the active panel layout.

Parameters
callablea callback function object that accepts a single string parameter
maxCharsthe maximum length of the panel layout name
Since
API version 1
Deprecated:
Use panelLayout() instead.

◆ addProjectNameObserver()

void addProjectNameObserver ( StringValueChangedCallback  callback,
int  maxChars 
)

Registers an observer that reports the name of the current project.

Parameters
callbacka callback function that accepts a single string parameter.
maxCharsthe maximum length of the reported name. Longer names will get truncated.
Since
API version 1
Deprecated:
Use projectName() instead.

◆ addSelectedModeObserver()

void addSelectedModeObserver ( StringValueChangedCallback  callable,
int  maxChars,
String  fallbackText 
)

◆ arrowKeyDown()

void arrowKeyDown ( )

Equivalent to an Arrow-Down key stroke on the computer keyboard. The concrete functionality depends on the current keyboard focus in Bitwig Studio.

Since
API version 1

◆ arrowKeyLeft()

void arrowKeyLeft ( )

Equivalent to an Arrow-Left key stroke on the computer keyboard. The concrete functionality depends on the current keyboard focus in Bitwig Studio.

Since
API version 1

◆ arrowKeyRight()

void arrowKeyRight ( )

Equivalent to an Arrow-Right key stroke on the computer keyboard. The concrete functionality depends on the current keyboard focus in Bitwig Studio.

Since
API version 1

◆ arrowKeyUp()

void arrowKeyUp ( )

Equivalent to an Arrow-Up key stroke on the computer keyboard. The concrete functionality depends on the current keyboard focus in Bitwig Studio.

Since
API version 1

◆ canRedo()

BooleanValue canRedo ( )

Value that reports if there is an action to redo.

Since
API version 15

◆ canUndo()

BooleanValue canUndo ( )

Value that reports if there is an action to undo.

Since
API version 15

◆ copy()

void copy ( )

Copies the selected items in Bitwig Studio to the clipboard if applicable.

Since
API version 1

◆ createAudioTrack()

void createAudioTrack ( int  position)

Creates a new audio track at the given position.

Parameters
positionthe index within the list of main tracks where the new track should be inserted, or -1 in case the track should be inserted at the end of the list. Values outside the valid range will get pinned to the valid range, so the actual position might be different from the provided parameter value.
Since
API version 1

◆ createEffectTrack()

void createEffectTrack ( int  position)

Creates a new effect track at the given position.

Parameters
positionthe index within the list of effect tracks where the new track should be inserted, or -1 in case the track should be inserted at the end of the list. Values outside the valid range will get pinned to the valid range, so the actual position might be different from the provided parameter value.
Since
API version 1

◆ createInstrumentTrack()

void createInstrumentTrack ( int  position)

Creates a new instrument track at the given position.

Parameters
positionthe index within the list of main tracks where the new track should be inserted, or -1 in case the track should be inserted at the end of the list. Values outside the valid range will get pinned to the valid range, so the actual position might be different from the provided parameter value.
Since
API version 1

◆ cut()

void cut ( )

Cuts the selected items in Bitwig Studio if applicable.

Since
API version 1

◆ deactivateEngine()

void deactivateEngine ( )

Deactivates the audio engine in Bitwig Studio.

Since
API version 1

◆ displayProfile()

StringValue displayProfile ( )

Value that reports the name of the active display profile.

Since
API version 2

◆ duplicate()

void duplicate ( )

Duplicates the active selection in Bitwig Studio if applicable.

Since
API version 1

◆ duplicateAction()

HardwareActionBindable duplicateAction ( )
Since
API version 10

◆ enter()

void enter ( )

Equivalent to an Enter key stroke on the computer keyboard. The concrete functionality depends on the current keyboard focus in Bitwig Studio.

Since
API version 1

◆ escape()

void escape ( )

Equivalent to an Escape key stroke on the computer keyboard. The concrete functionality depends on the current keyboard focus in Bitwig Studio.

Since
API version 1

◆ focusPanelAbove()

void focusPanelAbove ( )

Moves the panel focus to the panel above the currently focused panel.

Since
API version 1

◆ focusPanelBelow()

void focusPanelBelow ( )

Moves the panel focus to the panel below the currently focused panel.

Since
API version 1

◆ focusPanelToLeft()

void focusPanelToLeft ( )

Moves the panel focus to the panel on the left of the currently focused panel.

Since
API version 1

◆ focusPanelToRight()

void focusPanelToRight ( )

Moves the panel focus to the panel right to the currently focused panel.

Since
API version 1

◆ getAction()

Action getAction ( String  id)

Returns the action for the given action identifier. For a list of available actions, see getActions().

Parameters
idthe action identifier string, must not be null
Returns
the action associated with the given id, or null in case there is no action with the given identifier.
Since
API version 1

◆ getActionCategories()

ActionCategory [] getActionCategories ( )

Returns a list of action categories that is used by Bitwig Studio to group actions into categories.

Returns
the list of action categories
Since
API version 1

◆ getActionCategory()

ActionCategory getActionCategory ( String  id)

Returns the action category associated with the given identifier. For a list of available action categories, see getActionCategories().

Parameters
idthe category identifier string, must not be null
Returns
the action associated with the given id, or null in case there is no category with the given identifier
Since
API version 1

◆ getActions()

Action [] getActions ( )

Returns a list of actions that the application supports. Actions are commands in Bitwig Studio that are typically accessible through menus or keyboard shortcuts.

Please note that many of the commands encapsulated by the reported actions are also accessible through other (probably more convenient) interfaces methods of the API. In contrast to that, this method provides a more generic way to find available application functionality.

Returns
the list of actions
Since
API version 1

◆ hasActiveEngine()

BooleanValue hasActiveEngine ( )

Value that reports whether an audio engine is active or not.

Since
API version 2

◆ navigateIntoTrackGroup()

void navigateIntoTrackGroup ( Track  track)

Set BitwigStudio to navigate into the group.

Since
API version 2

◆ navigateToParentTrackGroup()

void navigateToParentTrackGroup ( )

Set BitwigStudio to navigate into the parent group.

Since
API version 2

◆ nextPanelLayout()

void nextPanelLayout ( )

Switches to the next panel layout of the active display profile in Bitwig Studio.

Since
API version 1

◆ nextPerspective()

void nextPerspective ( )
Deprecated:
Use nextPanelLayout() instead.
Since
API version 1

◆ nextProject()

void nextProject ( )

Switches to the next project tab in Bitwig Studio.

Since
API version 1

◆ nextSubPanel()

void nextSubPanel ( )

Shows the next detail panel (note editor, device, automation).

Since
API version 1

◆ panelLayout()

StringValue panelLayout ( )

Value that reports the name of the active panel layout.

Since
API version 2

◆ paste()

void paste ( )

Pastes the clipboard contents into the current selection focus in Bitwig Studio if applicable.

Since
API version 1

◆ previousPanelLayout()

void previousPanelLayout ( )

Switches to the previous panel layout of the active display profile in Bitwig Studio.

Since
API version 1

◆ previousPerspective()

void previousPerspective ( )
Deprecated:
Use previousPanelLayout() instead.
Since
API version 1

◆ previousProject()

void previousProject ( )

Switches to the previous project tab in Bitwig Studio.

Since
API version 1

◆ previousSubPanel()

void previousSubPanel ( )

Shows the previous detail panel (note editor, device, automation).

Since
API version 1

◆ projectName()

StringValue projectName ( )

Value that reports the name of the current project.

Since
API version 2

◆ recordQuantizationGrid()

SettableEnumValue recordQuantizationGrid ( )

Returns the record quantization grid setting from the preferences. Possible values are "OFF", "1/32", "1/16", "1/8", "1/4".

Since
API version 10

◆ recordQuantizeNoteLength()

SettableBooleanValue recordQuantizeNoteLength ( )

Returns a settable value to choose if the record quantization should quantize note length.

Since
API version 10

◆ redo()

void redo ( )

Sends a redo command to Bitwig Studio.

Since
API version 1

◆ remove()

void remove ( )

Deletes the selected items in Bitwig Studio if applicable. Originally this function was called delete (Bitwig Studio 1.0). But as delete is reserved in JavaScript this function got renamed to remove in Bitwig Studio 1.0.9.

Since
API version 1

◆ rename()

void rename ( )

Opens a text input field in Bitwig Studio for renaming the selected item.

Since
API version 1

◆ selectAll()

void selectAll ( )

Selects all items according the current selection focus in Bitwig Studio.

Since
API version 1

◆ selectFirst()

void selectFirst ( )

Selects the first item in the current selection.

Since
API version 10

◆ selectLast()

void selectLast ( )

Selects the last item in the current selection.

Since
API version 10

◆ selectNext()

void selectNext ( )

Selects the next item in the current selection.

Since
API version 10

◆ selectNone()

void selectNone ( )

Deselects any items according the current selection focus in Bitwig Studio.

Since
API version 1

◆ selectPrevious()

void selectPrevious ( )

Selects the previous item in the current selection.

Since
API version 10

◆ setPanelLayout()

void setPanelLayout ( String  panelLayout)

Switches the Bitwig Studio user interface to the panel layout with the given name. The list of available panel layouts depends on the active display profile.

Parameters
panelLayoutthe name of the new panel layout
Since
API version 1

◆ setPerspective()

void setPerspective ( String  perspective)
Deprecated:
Use setPanelLayout(java.lang.String) instead.
Since
API version 1

◆ toggleAutomationEditor()

void toggleAutomationEditor ( )

Toggles the visibility of the automation editor panel.

Since
API version 1

◆ toggleBrowserVisibility()

void toggleBrowserVisibility ( )

Toggles the visibility of the browser panel.

Since
API version 1

◆ toggleDevices()

void toggleDevices ( )

Toggles the visibility of the device chain panel.

Since
API version 1

◆ toggleFullScreen()

void toggleFullScreen ( )

Toggles between full screen and windowed user interface.

Since
API version 1

◆ toggleInspector()

void toggleInspector ( )

Toggles the visibility of the inspector panel.

Since
API version 1

◆ toggleMixer()

void toggleMixer ( )

Toggles the visibility of the mixer panel.

Since
API version 1

◆ toggleNoteEditor()

void toggleNoteEditor ( )

Toggles the visibility of the note editor panel.

Since
API version 1

◆ undo()

void undo ( )

Sends an undo command to Bitwig Studio.

Since
API version 1

◆ zoomIn()

void zoomIn ( )

Zooms in one step into the currently focused editor of the Bitwig Studio user interface.

Since
API version 1

◆ zoomLevel()

Same as zoomIn/zoomOut, but as a stepper

Since
API version 14

◆ zoomOut()

void zoomOut ( )

Zooms out one step in the currently focused editor of the Bitwig Studio user interface.

Since
API version 1

◆ zoomToFit()

void zoomToFit ( )

Adjusts the zoom level of the currently focused editor so that all content becomes visible.

Since
API version 1

◆ zoomToSelection()

void zoomToSelection ( )

Adjusts the zoom level of the currently focused editor so that it matches the active selection.

Since
API version 1

◆ zoomToSelectionOrAll()

void zoomToSelectionOrAll ( )

Toggles between zoomToSelection and zoomToFit.

Since
API version 10

◆ zoomToSelectionOrPrevious()

void zoomToSelectionOrPrevious ( )

Toggles between zoomToSelection and the last śet zoom level.

Since
API version 10

Member Data Documentation

◆ PANEL_LAYOUT_ARRANGE

String PANEL_LAYOUT_ARRANGE = "ARRANGE"

This identifier can be used as parameter for setPanelLayout(String) in order to switch to the ARRANGE panel layout that is available in various display profiles.

◆ PANEL_LAYOUT_EDIT

String PANEL_LAYOUT_EDIT = "EDIT"

This identifier can be used as parameter for setPanelLayout(String) in order to switch to the MIX panel layout that is available in various display profiles.

◆ PANEL_LAYOUT_MIX

String PANEL_LAYOUT_MIX = "MIX"

This identifier can be used as parameter for setPanelLayout(String) in order to switch to the EDIT panel layout that is available in various display profiles.


The documentation for this interface was generated from the following file: