summaryrefslogtreecommitdiffstats
path: root/src/controllers/midi/midicontroller.h
AgeCommit message (Collapse)Author
2020-04-18Merge branch 'master' of github.com:mixxxdj/mixxx into migrate-to-QJSEngineJan Holthuis
2020-04-09controllers: Fix comments and include guardsJan Holthuis
2020-04-08controllers: Move savePreset() from Controller into Preset classesJan Holthuis
2020-04-08controllers: Make applyPreset initializeScripts param optionalJan Holthuis
2020-04-08controllers: Move controller script file handling to FileHandler classesJan Holthuis
2020-04-07 controllers: Always load scripts from mapping dir (with system as fallback)Jan Holthuis
2020-03-27Merge branch 'master' into migrate-to-QJSEngineFerran Pujol Camins
# Conflicts: # appveyor.yml # build/depends.py # res/controllers/midi-components-0.0.js # src/controllers/controller.h # src/controllers/controllerengine.h # src/controllers/engine/colorjsproxy.cpp # src/controllers/engine/controllerengine.cpp # src/controllers/hid/hidcontroller.cpp # src/preferences/dialog/dlgpreferences.cpp # src/preferences/dialog/dlgpreferences.h # src/skin/skincontext.cpp # src/skin/skincontext.h # src/test/controller_preset_validation_test.cpp # src/test/controllerengine_test.cpp
2020-03-01Make all single argument constructors explicitJan Holthuis
2020-02-28Make UserSettings available in ControllerEngineFerran Pujol Camins
2019-11-21Revert "Merge pull request #2353 from daschuer/lp1850644"Daniel Schürmann
This reverts commit 35da91b786eb7979d4cacf1c7e650978c33ea499, reversing changes made to 7b1f4d106b14b5be9bee1a2e3d192c07a5ec5055.
2019-11-03Make UserSettings available in ControllerEngineFerran Pujol Camins
2019-10-23Format codeFerran Pujol Camins
2018-11-27Add missing Q_OBJECT macroBe
Co-Authored-By: ferranpujolcamins <ferranpujolcamins@gmail.com>
2018-11-27Rename MidiController memberFerran Pujol Camins
2018-11-26Let subclasses of Controller provide custom JS apiFerran Pujol Camins
Add MidiControllerJSProxy
2016-12-20move formatMidiMessage() and formatSysexMessage() from MidiController to ↵be_
MidiUtils plus miscellaneous small fixes
2016-12-20merge upstream/masterbe_
2016-09-08print debugging messages for outgoing MIDI from scriptsbe_
2015-12-27Merge branch 'master' into portmidi_testRJ Ryan
2015-12-23Merge branch '1.12' into timestampsRJ Ryan
2015-12-23Merge pull request #790 from daschuer/controllerpollDaniel Schürmann
removed while loop in poll slot, Bug #1520619
2015-12-22Return a status from Controller::applyPreset.RJ Ryan
Also make initializing the scripts optional.
2015-12-20Add timestamps to controller messages.RJ Ryan
* PortMIDI uses OS-provided millisecond-level timestamp. * HSS1394, HID, and bulk use Mixxx's internal clock to timestamp messages as they are received by Mixxx. We should work with these library owners to get access to better timestamps.
2015-12-19Refactor PortMidiController to support easier testing.RJ Ryan
Adds PortMidiDevice, a wrapper around our calls to PortMidi to allow a test suite to replace it with a mock. Also add a test suite documenting the current behavior of PortMidiController (and pointing out some behavior I think we get wrong).
2015-11-30Midi: Added a more debug messaged (experimental)Daniel Schürmann
2014-06-15split softtakover classDaniel Schürmann
2014-04-21Refactor how presets are loaded.RJ Ryan
* ControllerManager no longer supports loading presets by filename. * Move preset loading logic into PresetInfoEnumerator. * Don't get the preset file handler from the Controller anymore since it's purely a function of the extension.
2014-04-14Add MidiControllerTest for veriying we interpret MIDI messages as we intend to.RJ Ryan
2014-04-13Add support for 14-bit multi-message MIDI input mappings.RJ Ryan
This is compatible with multiple controls per input mapping.
2014-03-29Pay down some technical debt.RJ Ryan
* Switch to a single standard representation for MIDI input and output mappings. * Delete MixxxControl. * Support multiple input mappings per message. * Remove double-hash lookup for input mappings. * Clean up MIDI XML parsing/writing. We don't have tests for any of this code (except LearningUtils) but I compared the input and output mappings stored to XML after loading a bundled preset and they were the same (modulo order changing).
2014-03-24Refactor MIDI learning to support learning select knobs, jog wheels, etc.RJ Ryan
* Learn mappings over multiple MIDI messages instead of just one. * Allow the user to enable MIDI options from the GUI -- currently supports soft-takeover, invert, select-knob (two's complement), and switch mode. * Add Undo option for reverting the most recently learned mapping. * Introduce LearningUtils, a class that recognizes mappings from message streams. * LearningUtils has a test suite for each mapping type we want to recognize. If we don't recognize a mapping then we fall back on the 1.11.0 behavior of mapping the first message in the stream. This paves the way for learning 14-bit CC and pitch bend controls and providing richer user feedback about what we thought the control was or why we couldn't learn it.
2014-03-23Pull common MIDI utility methods in midimessage.h.RJ Ryan
2014-03-23Add ControllerVisitor for determining the true type of controllers without ↵RJ Ryan
dynamic_cast.
2013-11-30Fix shadowed overloads discovered with clang.RJ Ryan
2013-09-26Ignore clock signals when using Midi Mapping Wizard, fixes ↵Michael Sawyer
https://bugs.launchpad.net/mixxx/+bug/1176184
2013-06-19Moving mixxx/* to the root. A new era begins!RJ Ryan