Skip to content
git-moss edited this page Feb 14, 2017 · 62 revisions

#2.0 (unreleased) Requires Bitwig 2.0+

  • Switched to Bitwig API v2

  • BrowserProxy

    • Added isPresetContentType
    • Added getSelectedContentType
    • Added browseToInsertBeforeDevice
    • Added browseToInsertAfterDevice
    • Added isActive
    • Added getFilterColumn
    • Added getFilterColumnCount
    • Added getResultColumn
    • Removed get*Session
  • Removed BrowserSessionProxy (browser session are no longer necessary, relevant functions are moved to BrowserProxy)

  • Added onDeactivate hook to views. This can be used for deactivating unused observers.

  • Added CursorDeviceProxy.enableObservers

  • Removed Model.getUserControlBank

  • Removed UserControlBankProxy

  • CursorDeviceProxy

    • Added getModulatedValue
    • Added setLayerOrDrumPadColor
    • Added toggleLayerOrDrumPadIsActivated
    • Removed getCommonParameter
    • Removed getEnvelopeParameter
    • Removed getMacro
    • Removed getModulationSource
    • Removed getCommonParam
    • Removed getEnvelopeParam
    • Removed getMacroParam
    • Removed getModulationParam
    • Removed isMacroSectionVisible
    • Removed toggleMacroSectionVisible
    • Removed isMacroMapping
  • Added AbstractTrackBankProxy.setTrackColor

  • Added MasterTrackProxy.setColor

  • Added CursorClipProxy.setColor

  • Added Model.getProject

  • Fixed: AbstractDrumView.prototype.onSelect did not call parent function

#1.6 Requires Bitwig 1.3.15+

  • Added sendMidiEvent to AbstractControlSurface
  • Renamed Utilities.change*Value parameter to prevent confusion
  • Changed change* methods to use inc instead of set.
  • Use different colors for note starts and lengths in note and drum sequencer.
  • Removed ApplicationProxy.prototype.quantize
  • CursorClipProxy.quantize and CursorClipProxy.transpose
  • Added accent and quantize settings to AbstractConfig
  • Support for new 1.3.15 API functions.
  • Fixed: Scale not updated in sequencers when changed

#1.5

  • Added helper functions to MidiInput
  • Added AbstractConfig file for commonly used options.
  • Added abstract class for sequencer views.
  • Introduced harmonized note and raindrops sequencer views.
  • Added base class for drum views.
  • Added on-screen notification for grid resolutions
  • Added helper functions for mute and solo buttons.
  • Added hook function for translating grids which do not send midi notes from 36-100.
  • New 8th centered layout modes.
  • Added plugin mechanism to prevent clip selection on clip launch.

#1.0.1

  • Fixed: Endless selection of different tracks when left/right button were quickly pushed
  • Fixed: Wrong upper bound for Groove on function.

#1.0 Requires Bitwig 1.3

  • First official release.

#0.3 Requires Bitwig 1.2.x

  • Added new wrapper class for browser API.
  • Added support for groups
  • Removed old preset API.
  • Added reset functions for layer parameters.
  • TransportProxy
    • Added isAutomationOverride

#0.2.2

  • ApplicationProxy Added active engine impl
    • isEngineActive()
    • setEngineActive()
    • toggleEngineActive()
  • Added piano style matrix incl. related functions to Scales.
  • Added monitoring of master track color

#0.2.1 Requires Bitwig 1.1.6

  • Added a deactivation hook for modes: AbstractMode.prototype.onDeactivate
  • AbstractTrackBankProxy
    • Removed nextDeviceBank
    • Removed previousDeviceBank
  • CursorDeviceProxy
    • Added several functions to handle paging of direct parameters.
    • Adapted to 1.1.5 API to monitor direct parameter values
    • Added getSiblingDeviceName
    • Added getPositionInChain
    • Added getPositionInBank
    • Added selectNextBank
    • Added selectPreviousBank
    • Added getLayerOrDrumPad
    • Added getSelectedLayerOrDrumPad
    • Added selectLayerOrDrumPad
    • Added previousLayerOrDrumPad
    • Added previousLayerOrDrumPadBank
    • Added nextLayerOrDrumPad
    • Added nextLayerOrDrumPadBank
    • Added enterLayerOrDrumPad
    • Added selectFirstDeviceInLayerOrDrumPad
    • Added canScrollLayersOrDrumPadsUp
    • Added canScrollLayersOrDrumPadsDown
    • Added scrollLayersOrDrumPadsPageUp
    • Added scrollLayersOrDrumPadsPageDown
    • Added changeLayerOrDrumPadVolume
    • Added changeLayerOrDrumPadPan
    • Added toggleLayerOrDrumPadMute
    • Added toggleLayerOrDrumPadSolo
    • Added previousLayer
    • Added previousLayerBank
    • Added nextLayer
    • Added nextLayerBank
    • Added getSelectedDrumPad
    • Added selectDrumPad
    • Added previousDrumPad
    • Added previousDrumPadBank
    • Added nextDrumPad
    • Added nextDrumPadBank
    • Added enterDrumPad
    • Added changeDrumPadVolume
    • Added changeDrumPadPan
    • Added toggleDrumPadMute
    • Added toggleDrumPadSolo
    • Added selectFirstDeviceInDrumPad
    • Added canScrollDrumPadsUp
    • Added canScrollDrumPadsDown

#0.2.0 Requires Bitwig 1.1.1

  • Added AbstractTrackBankProxy.toggleIsActivated()
  • New functions in CursorDeviceProxy
    • CursorDeviceProxy.isWindowOpen()
    • CursorDeviceProxy.toggleWindowOpen()
    • CursorDeviceProxy.enterLayer()
    • CursorDeviceProxy.isExpanded()
    • CursorDeviceProxy.toggleExpanded()
    • CursorDeviceProxy.isMacroSectionVisible()
    • CursorDeviceProxy.toggleMacroSectionVisible()
    • CursorDeviceProxy.isParameterPageSectionVisible()
    • CursorDeviceProxy.toggleParameterPageSectionVisible()
  • Renamed slot.isSelected to slot.selected to be consistent with Track.

#0.1.9 Requires Bitwig 1.1

  • Added function AbstractControlSurface.resotoreMode().
  • Added SceneBankProxy and implementation.
  • Implemented in AbstractTrackBankProxy, addColorObserver() for track colors.
  • Implemented in CursorDeviceProxy, addColorObserver() to drum pad bank for pad colors.
  • New functions in AbstractTrackBankProxy
    • AbstractTrackBankProxy.getColorEntry()
    • AbstractTrackBankProxy.getColorIndex()
  • Added support for Polyphonic Aftertouch
  • TransportProxy.setCrossfade
  • New functions in AbstractTrackBankProxy
    • getCrossfadeMode
    • setCrossfadeMode
    • toggleCrossfadeMode
    • getSelectedSlots
  • Update API for 1.1 in ApplicationProxy.
  • Update API for 1.1 in ArrangerProxy (no-longer experimental).
  • Update API for 1.1 in CursorDeviceProxy.
  • Update API for 1.1 in MixerProxy (no-longer experimental).
  • Update API for 1.1 in TransportProxy.
  • Replaced all in 1.1 deprecated functions.
  • Implemented ApplicationProxy.quantize (only works if clip is already focused in editor).
  • New function MasterTrackProxy.resetVolume
  • New function MasterTrackProxy.resetPan

#0.1.8

  • New function Scales.getDrumRangeText
  • New function Scales.formatDrumNote
  • New function Scales.formatNoteAndOctave
  • Moved AbstractView to new view class.
  • Added new base class AbstractSessionView.
  • Fixed previously introduced bug in AbstractControlSurface.isPressed
  • Fixed problem with clip recording counter if controller has a different pad number as 64.

#0.1.7

  • New function Model.hasRecordingState
  • New function AbstractControlSurface.getView
  • New function createDeviceDiscoveryPairs to lookup 'simple' devices
  • Removed function Scales.getSequencerColor which was identical to Scales.getColor
  • Removed specific Push colors from Scales.getColor, you can now set the colors of your controller view the new Scales.SCALE_COLOR_XXX attributes.

#0.1.6 Fully API compatible to last version

  • Model
    • Constructor can be parametrized with the number of tracks, scenes and sends.
    • new function Model.isEffectTrackBankActive
  • TrackBankProxy
    • Constructor can be parametrized with the number of tracks, scenes and sends.
  • EffectTrackBankProxy
    • Constructor can be parametrized with the number of tracks and scenes.
  • TransportProxy
    • Stores state of launcher overdub in TransportProxy.isLauncherOverdub
    • Added fine parameter to TransportProxy.changeTempo
    • Added TransportProxy.getTempo function
  • CursorDeviceProxy
    • New function CursorDeviceProxy.canSelectPreviousFX
    • New function CursorDeviceProxy.prototype.canSelectNextFX
  • ApplicationProxy
    • Stores the current perspective in ApplicationProxy.perspective
  • Bugfix: setPendingMode did not work on first call if the mode was identical to the default mode

#0.1.5

  • Added EffectTrackBankProxy
    • Model.toggleCurrentTrackBank
    • Model.getCurrentTrackBank
    • Model.getEffectTrackBank
    • TrackBankProxy.TrackState must be renamed to just TrackState
  • TrackBankProxy:
    • Tracks have now an exists flag.
    • Listener to watch playing notes of current track.
  • CursorClipProxy: Renamed setStep to toggleStep. Added new setStep function. This is an incompatibility to the last version.
  • AbstractDisplay: Added showNotification
  • 8 track window now scrolls to the newly selected track (selected in Bitwig).
  • Memory savings due to change from inline functions to class functions.
  • Added Arranger and Mixer class. Note that the Bitwig API is a bit experimental in that area. Might crash Bitwig.
  • Set License to LGPL

#0.1.4 Fully API compatible to last version

  • Added feature to consume a pressed surface button. This allows to prevent the button UP event.
  • Added CursorClipProxy.clearRow

#0.1.3 Fully API compatible to last version

  • New class CursorClipProxy
  • Code cleanup

#0.1.2 Fully API compatible to last version

  • TrackBankProxy, MasterTrackProxy
  • Re-enabled VU Observers.

#0.1.1 Fully API compatible to last version

  • AbstractControlSurface
    • Added new getDisplay function. Use instead of direct accessing display.
    • Improvement for handling note off messages
    • Increased display refresh rate from 5 to 70 ms to prevent event queue pollution
  • AbstractDisplay
    • Added functions
  • TransportProxy
    • Added state of loop button
  • Utilities
    • BugFix: changeValue() - knob acceleration faster acceleration when turning to the right than to the left
  • ClassLoader
    • Added - FRAMEWORK_4_BITWIG_VERSION constant.

#0.1.0

  • Initial Port from Push4Bitwig
Clone this wiki locally