Interface Application
public interface Application
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().-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThis identifier can be used as parameter forsetPanelLayout(String)in order to switch to the `ARRANGE` panel layout that is available in various display profiles.static final StringThis identifier can be used as parameter forsetPanelLayout(String)in order to switch to the `MIX` panel layout that is available in various display profiles.static final StringThis identifier can be used as parameter forsetPanelLayout(String)in order to switch to the `EDIT` panel layout that is available in various display profiles. -
Method Summary
Modifier and TypeMethodDescriptionvoidActivates the audio engine in Bitwig Studio.voidaddDisplayProfileObserver(StringValueChangedCallback callable, int maxChars) Deprecated.voidDeprecated.UsehasActiveEngine()instead.voidaddPanelLayoutObserver(StringValueChangedCallback callable, int maxChars) Deprecated.UsepanelLayout()instead.voidaddProjectNameObserver(StringValueChangedCallback callback, int maxChars) Deprecated.UseprojectName()instead.voidaddSelectedModeObserver(StringValueChangedCallback callable, int maxChars, String fallbackText) Deprecated.voidEquivalent to an Arrow-Down key stroke on the computer keyboard.voidEquivalent to an Arrow-Left key stroke on the computer keyboard.voidEquivalent to an Arrow-Right key stroke on the computer keyboard.voidEquivalent to an Arrow-Up key stroke on the computer keyboard.canRedo()Value that reports if there is an action to redo.canUndo()Value that reports if there is an action to undo.voidcopy()Copies the selected items in Bitwig Studio to the clipboard if applicable.voidcreateAudioTrack(int position) Creates a new audio track at the given position.voidcreateEffectTrack(int position) Creates a new effect track at the given position.voidcreateInstrumentTrack(int position) Creates a new instrument track at the given position.voidcut()Cuts the selected items in Bitwig Studio if applicable.voidDeactivates the audio engine in Bitwig Studio.Value that reports the name of the active display profile.voidDuplicates the active selection in Bitwig Studio if applicable.voidenter()Equivalent to an Enter key stroke on the computer keyboard.voidescape()Equivalent to an Escape key stroke on the computer keyboard.voidMoves the panel focus to the panel above the currently focused panel.voidMoves the panel focus to the panel below the currently focused panel.voidMoves the panel focus to the panel on the left of the currently focused panel.voidMoves the panel focus to the panel right to the currently focused panel.Returns the action for the given action identifier.Returns a list of action categories that is used by Bitwig Studio to group actions into categories.Returns the action category associated with the given identifier.Action[]Returns a list of actions that the application supports.Value that reports whether an audio engine is active or not.voidnavigateIntoTrackGroup(Track track) Set BitwigStudio to navigate into the group.voidSet BitwigStudio to navigate into the parent group.voidSwitches to the next panel layout of the active display profile in Bitwig Studio.voidDeprecated.UsenextPanelLayout()instead.voidSwitches to the next project tab in Bitwig Studio.voidShows the next detail panel (note editor, device, automation).Value that reports the name of the active panel layout.voidpaste()Pastes the clipboard contents into the current selection focus in Bitwig Studio if applicable.voidSwitches to the previous panel layout of the active display profile in Bitwig Studio.voidDeprecated.UsepreviousPanelLayout()instead.voidSwitches to the previous project tab in Bitwig Studio.voidShows the previous detail panel (note editor, device, automation).Value that reports the name of the current project.Returns the record quantization grid setting from the preferences.Returns a settable value to choose if the record quantization should quantize note length.voidredo()Sends a redo command to Bitwig Studio.voidremove()Deletes the selected items in Bitwig Studio if applicable.voidrename()Opens a text input field in Bitwig Studio for renaming the selected item.voidSelects all items according the current selection focus in Bitwig Studio.voidSelects the first item in the current selection.voidSelects the last item in the current selection.voidSelects the next item in the current selection.voidDeselects any items according the current selection focus in Bitwig Studio.voidSelects the previous item in the current selection.voidsetPanelLayout(String panelLayout) Switches the Bitwig Studio user interface to the panel layout with the given name.voidsetPerspective(String perspective) Deprecated.UsesetPanelLayout(java.lang.String)instead.voidToggles the visibility of the automation editor panel.voidToggles the visibility of the browser panel.voidToggles the visibility of the device chain panel.voidToggles between full screen and windowed user interface.voidToggles the visibility of the inspector panel.voidToggles the visibility of the mixer panel.voidToggles the visibility of the note editor panel.voidundo()Sends an undo command to Bitwig Studio.voidzoomIn()Zooms in one step into the currently focused editor of the Bitwig Studio user interface.Same as zoomIn/zoomOut, but as a steppervoidzoomOut()Zooms out one step in the currently focused editor of the Bitwig Studio user interface.voidAdjusts the zoom level of the currently focused editor so that all content becomes visible.voidAdjusts the zoom level of the currently focused editor so that it matches the active selection.voidToggles between zoomToSelection and zoomToFit.voidToggles between zoomToSelection and the last śet zoom level.
-
Field Details
-
PANEL_LAYOUT_ARRANGE
This identifier can be used as parameter forsetPanelLayout(String)in order to switch to the `ARRANGE` panel layout that is available in various display profiles.- See Also:
-
PANEL_LAYOUT_MIX
This identifier can be used as parameter forsetPanelLayout(String)in order to switch to the `EDIT` panel layout that is available in various display profiles.- See Also:
-
PANEL_LAYOUT_EDIT
This identifier can be used as parameter forsetPanelLayout(String)in order to switch to the `MIX` panel layout that is available in various display profiles.- See Also:
-
-
Method Details
-
createAudioTrack
void createAudioTrack(int position) Creates a new audio track at the given position.- Parameters:
position- the 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
-
createInstrumentTrack
void createInstrumentTrack(int position) Creates a new instrument track at the given position.- Parameters:
position- the 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:
position- the 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
-
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
-
getAction
Returns the action for the given action identifier. For a list of available actions, seegetActions().- Parameters:
id- the 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
Returns the action category associated with the given identifier. For a list of available action categories, seegetActionCategories().- Parameters:
id- the 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
-
activateEngine
void activateEngine()Activates the audio engine in Bitwig Studio.- Since:
- API version 1
-
deactivateEngine
void deactivateEngine()Deactivates the audio engine in Bitwig Studio.- Since:
- API version 1
-
hasActiveEngine
BooleanValue hasActiveEngine()Value that reports whether an audio engine is active or not.- Since:
- API version 2
-
addHasActiveEngineObserver
Deprecated.UsehasActiveEngine()instead.Registers an observer that gets called when the audio engine becomes active or inactive.- Parameters:
callable- a 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
-
projectName
StringValue projectName()Value that reports the name of the current project.- Since:
- API version 2
-
addProjectNameObserver
Deprecated.UseprojectName()instead.Registers an observer that reports the name of the current project.- Parameters:
callback- a callback function that accepts a single string parameter.maxChars- the maximum length of the reported name. Longer names will get truncated.- Since:
- API version 1
-
nextProject
void nextProject()Switches to the next project tab in Bitwig Studio.- Since:
- API version 1
-
previousProject
void previousProject()Switches to the previous project tab in Bitwig Studio.- Since:
- API version 1
-
undo
void undo()Sends an undo command to Bitwig Studio.- Since:
- API version 1
-
undoAction
HardwareActionBindable undoAction() -
canUndo
BooleanValue canUndo()Value that reports if there is an action to undo.- Since:
- API version 15
-
redo
void redo()Sends a redo command to Bitwig Studio.- Since:
- API version 1
-
redoAction
HardwareActionBindable redoAction() -
canRedo
BooleanValue canRedo()Value that reports if there is an action to redo.- Since:
- API version 15
-
setPanelLayout
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:
panelLayout- the name of the new panel layout- Since:
- API version 1
-
nextPanelLayout
void nextPanelLayout()Switches to the next panel layout of the active display profile in Bitwig Studio.- 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
-
panelLayout
StringValue panelLayout()Value that reports the name of the active panel layout.- Since:
- API version 2
-
addPanelLayoutObserver
Deprecated.UsepanelLayout()instead.Registers an observer that reports the name of the active panel layout.- Parameters:
callable- a callback function object that accepts a single string parametermaxChars- the maximum length of the panel layout name- Since:
- API version 1
-
displayProfile
StringValue displayProfile()Value that reports the name of the active display profile.- Since:
- API version 2
-
addDisplayProfileObserver
Deprecated.UsedisplayProfile()instead.Registers an observer that reports the name of the active display profile.- Parameters:
callable- a callback function object that accepts a single string parametermaxChars- the maximum length of the display profile name- Since:
- API version 1
-
toggleInspector
void toggleInspector()Toggles the visibility of the inspector panel.- Since:
- API version 1
-
toggleDevices
void toggleDevices()Toggles the visibility of the device chain 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
-
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
-
previousSubPanel
void previousSubPanel()Shows the previous detail panel (note editor, device, automation).- Since:
- API version 1
-
nextSubPanel
void nextSubPanel()Shows the next detail panel (note editor, device, automation).- 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
-
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
-
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
-
selectAll
void selectAll()Selects all items according the current selection focus in Bitwig Studio.- Since:
- API version 1
-
selectAllAction
HardwareActionBindable selectAllAction() -
selectNone
void selectNone()Deselects any items according the current selection focus in Bitwig Studio.- Since:
- API version 1
-
selectNoneAction
HardwareActionBindable selectNoneAction() -
selectPrevious
void selectPrevious()Selects the previous item in the current selection.- Since:
- API version 10
-
selectPreviousAction
HardwareActionBindable selectPreviousAction() -
selectNext
void selectNext()Selects the next item in the current selection.- Since:
- API version 10
-
selectNextAction
HardwareActionBindable selectNextAction() -
selectFirst
void selectFirst()Selects the first item in the current selection.- Since:
- API version 10
-
selectFirstAction
HardwareActionBindable selectFirstAction() -
selectLast
void selectLast()Selects the last item in the current selection.- Since:
- API version 10
-
selectLastAction
HardwareActionBindable selectLastAction() -
cut
void cut()Cuts the selected items in Bitwig Studio if applicable.- Since:
- API version 1
-
cutAction
HardwareActionBindable cutAction() -
copy
void copy()Copies the selected items in Bitwig Studio to the clipboard if applicable.- Since:
- API version 1
-
copyAction
HardwareActionBindable copyAction() -
paste
void paste()Pastes the clipboard contents into the current selection focus in Bitwig Studio if applicable.- Since:
- API version 1
-
pasteAction
HardwareActionBindable pasteAction() -
duplicate
void duplicate()Duplicates the active selection in Bitwig Studio if applicable.- Since:
- API version 1
-
duplicateAction
HardwareActionBindable duplicateAction()- Since:
- API version 10
-
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
-
removeAction
HardwareActionBindable removeAction() -
rename
void rename()Opens a text input field in Bitwig Studio for renaming the selected item.- 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
-
zoomInAction
HardwareActionBindable zoomInAction() -
zoomOut
void zoomOut()Zooms out one step in the currently focused editor of the Bitwig Studio user interface.- Since:
- API version 1
-
zoomOutAction
HardwareActionBindable zoomOutAction() -
zoomLevel
RelativeHardwarControlBindable zoomLevel()Same as zoomIn/zoomOut, but as a stepper- Since:
- API version 14
-
zoomToSelection
void zoomToSelection()Adjusts the zoom level of the currently focused editor so that it matches the active selection.- Since:
- API version 1
-
zoomToSelectionAction
HardwareActionBindable zoomToSelectionAction() -
zoomToSelectionOrAll
void zoomToSelectionOrAll()Toggles between zoomToSelection and zoomToFit.- Since:
- API version 10
-
zoomToSelectionOrAllAction
HardwareActionBindable zoomToSelectionOrAllAction() -
zoomToSelectionOrPrevious
void zoomToSelectionOrPrevious()Toggles between zoomToSelection and the last śet zoom level.- Since:
- API version 10
-
zoomToSelectionOrPreviousAction
HardwareActionBindable zoomToSelectionOrPreviousAction() -
zoomToFit
void zoomToFit()Adjusts the zoom level of the currently focused editor so that all content becomes visible.- Since:
- API version 1
-
zoomToFitAction
HardwareActionBindable zoomToFitAction() -
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
-
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
-
toggleFullScreen
void toggleFullScreen()Toggles between full screen and windowed user interface.- Since:
- API version 1
-
setPerspective
Deprecated.UsesetPanelLayout(java.lang.String)instead.- Since:
- API version 1
-
nextPerspective
Deprecated.UsenextPanelLayout()instead.- Since:
- API version 1
-
previousPerspective
Deprecated.UsepreviousPanelLayout()instead.- Since:
- API version 1
-
addSelectedModeObserver
@Deprecated void addSelectedModeObserver(StringValueChangedCallback callable, int maxChars, String fallbackText) Deprecated.- Since:
- API version 1
-
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
-
displayProfile()instead.