13
0
Commit Graph

696 Commits

Author SHA1 Message Date
49be513bfa fix rebase conflicts left over after pull 2015-10-08 13:40:00 -04:00
0cb1c7b58c lots of changes to try to get the Mackie Control display be more useful and usable 2015-10-08 12:51:44 -04:00
4677d047a5 more mackie strip redisplay renames, and add a global block to redisplays\n 2015-10-08 12:51:18 -04:00
0f978a90f4 subtle rework/rename of per-strip revert-to-vpot-display code 2015-10-08 12:50:05 -04:00
4a1790b75e remove unused per-surface button timer 2015-10-08 12:50:05 -04:00
6899bd7c15 Add Trim to Mackie controls. 2015-10-07 21:36:16 -07:00
c9658134ce add button time and explicit bank switching to MCP support 2015-10-07 15:13:03 -04:00
ce9b271a92 track Mackie MIDI port connection status as primary trigger for handshake with device 2015-10-07 13:17:49 -04:00
33d614359a only use HUI heartbeat with HUI devices 2015-10-05 12:24:15 -04:00
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
4dc63966f0 globally remove all trailing whitespace from ardour code base.
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
a333edcb28 Initialize variable every loop so MCP devices don't accumulate too. 2015-10-03 13:15:18 -07:00
4b69495f82 Initialize variable every loop so MCP profiles don't accumulate. 2015-10-03 13:06:34 -07:00
2dddf6504b NOOP: delete trailing whitespace 2015-10-03 14:03:29 -04:00
1e5672de98 reset IP MIDI port when deleting a mackie surface port 2015-10-03 13:51:17 -04:00
9d7b5f6df9 reset shared_ptr to master surface when clearing surfaces, to ensure Surface destructor is called 2015-10-03 13:50:59 -04:00
4403ce4bd4 make a start on providing direct choice of MIDI ports where an MCP device can be reached 2015-10-03 13:13:58 -04:00
91d3aabf53 NOOP: reformat indentation 2015-10-03 13:13:58 -04:00
76398911d4 more code-control when laying out Mackie Control GUI panel 2015-10-03 13:13:58 -04:00
6bf0d4f627 add basic support for HUI heartbeat, only used for HUI devices 2015-10-03 13:13:58 -04:00
4ef45aacc1 add DeviceType specifier for mackie devices.
Incomplete, because we need a way to handle multiple devices of different types
2015-10-03 13:13:58 -04:00
13765d41e3 NOOP: reformat indentation 2015-10-03 13:13:58 -04:00
c8448cb0dd add device type to Mackie device info 2015-10-03 13:13:57 -04:00
53c47e0ccd add support to display and set key aliases in mackie GUI 2015-10-03 13:13:57 -04:00
f0c1d58f59 fix windows compilation 2015-10-03 11:20:15 +02:00
3733fd7f31 remove undefined and unused method declaration 2015-10-02 22:08:15 -04:00
0ee737f129 another change from modifier_state() to main_modifier_state() 2015-10-02 22:08:15 -04:00
c78426968f avoid handling pitchbend (fader) messages while SHIFT modifier is active.
See comment in code for more detail
2015-10-02 22:08:15 -04:00
40a4e2e6af no longer call ::zero_all() when deleting an MCP surface object.
The ports required may no longer exist, and it requires a lot of messages. A reset is sent instead
2015-10-02 22:08:14 -04:00
9476657cd1 use ::main_modifier_state() in some more places 2015-10-02 22:08:14 -04:00
ef6b0bdb07 necessary header changes for new redisplay code in MCP 2015-10-02 22:08:14 -04:00
4d47760d61 add new (fast) redisplay timer that pushes parameter display text to MCP device.
Changes are queued in a FIFO, and pulled when a timeout in the MCP event loop fires.
2015-10-02 22:08:14 -04:00
05a8107ff6 fix comment spelling 2015-10-02 22:08:14 -04:00
2cdfeda884 use Surface::reset() when deleting MackieControlProtocol, rather than sending lots of messages.
This may be a bit "strong" because on the MCU Pro (at least) it causes a fader recalibration.
2015-10-02 22:08:14 -04:00
ccf505c3a2 implement backlight, fader touch sensitivity and recalibrate fader functions for MCP GUI 2015-10-02 22:08:14 -04:00
04b9df1fd9 avoid sending replicated fader set position messages 2015-10-02 22:08:14 -04:00
918133a342 fix handler of fader (pitchbend) messages in Mackie Control so that the outbound messages match the inbound ones
Pitch bend values really can span 0 to 16384, not 16383
2015-10-02 10:22:00 -04:00
71bf231199 allow aliasing Mackie Control buttons to other buttons 2015-10-02 10:21:20 -04:00
5c63ed589c catch changes in click status and alter LED appropriately 2015-10-02 07:32:56 -04:00
a4fced6d63 change zoom and scrub handling to use modifier bits 2015-10-02 07:32:56 -04:00
d28c8c9bb4 spelling correction in error message 2015-10-02 07:32:56 -04:00
239da0efb5 Fix Mackie control metering (fixes #6608). 2015-09-28 20:13:15 -07:00
b1424dab79 Vpot assign buttons don't do anything, don't light LEDs either. 2015-09-21 10:04:06 +02:00
47976ed4fa Make Mackie control surface LEDs for modifier keys only light while pressed. (fixes #6601) 2015-09-21 10:03:56 +02:00
f8912b8b57 Made master fader touch and jog go to _master_surface instead of first surface. 2015-09-08 20:47:16 -07:00
4129b8865c Fixed Mackie control port naming for extender use (fixes #6500) 2015-08-14 08:57:13 -07:00
962ba01cfd Fixed feedback for MCP buttons and LEDs not working. 2015-08-13 13:00:04 -07:00
39240c9d37 Added end of line to debug statment 2015-08-13 09:55:32 -07:00
2a3f5d0107 Make MCP MasterPosition match MIDI port number. 2015-08-09 22:27:40 -04:00
2ea5962af2 rationalize save/restore of control surface "feedback" property 2015-06-24 13:46:07 -04:00
974e5dcc0c Add option to mackie control profile editor to remove binding (fixes #6301) 2015-06-21 12:42:48 -04:00
801af5df9e Add the new (UINTSDEFINED) preprocessor directive to all out MSVC projects (just to be on the safe side) 2015-06-09 13:18:42 +01:00
72416e9432 Don't allow user to change function of modifier buttons. 2015-06-08 17:22:34 -04:00
71ae8d2abe Add an option in the MCP .device file to set master position (fixes #6357) 2015-06-04 15:07:43 -07:00
71feea97a0 Clean up mackie surface profile editor from things that don't work or match the mackie hardware (fixes #6342) 2015-06-04 15:02:51 -07:00
f8c4c0b5b8 Make ctl put v-pot in fine mode. 2015-06-04 14:04:46 -07:00
5e1ba50731 fix unsigned/signed math error 2015-05-27 08:57:16 -04:00
e5c3efe9a3 ensure that Mackie Control bank left/right commands always hit the same boundary (Len Ovens) 2015-05-27 07:11:15 -04:00
fb649f43ea fix for MCP panner width - closes #6341 2015-05-24 17:56:40 +02:00
ce259edbcd professionalize peak-meters
The peak meter needs to withstand various test-signals
without visual jitter (in particular 1kHz sine) regardless
of settings (period-size, sample-rate, custom fall-off).

This needs to be done in sync (and not by a random non-rt
‘smoothing’ thread).

On the downside this voids the ‘visual smoothing’ particularly 
with large buffersizes - but then again exactly this “always 
fall-off no matter what [the next real data will be]” is the
problem.

One the upside, there’s one less high-frequency (100Hz) thread
(Yay!) PS. it probably never worked on windows, anyway.

Only peak-meters are affected by his change.
K-meters, IEC I/II and VU were never visually smoothed.
2015-05-02 03:46:49 +02:00
4512d013eb put all of the Mackie control surface code into the ArdourSurface namespace 2015-04-15 20:37:20 -04:00
40c04867ef Bundle API user update
cherry-pickable follow up to 0582221
2015-03-08 22:39:34 +01:00
8a93a87db0 remove lib versioning for internal plugins
Those objects do not have a versioned API by themselves.
This fixes issues with duplicate deployment (OSX, Linux bundles: cp) and
ardour listing control-surfaces multiple times (file index plugin dir).
2015-02-16 17:32:56 +01:00
95091a52a0 When building with MSVC make sure any backends / panners etc get copied to the correct target folder
(i.e. 'lib/ardour3' or 'lib/mixbus3' as appropriate)

These changes are MSVC specific and shouldn't affect the other builds
2015-01-12 14:43:22 +00:00
0fdb846625 try alternate Glib:: API for conversion from UTF-8 to ascii in Mackie support code 2014-12-15 15:06:10 -05:00
e3f376107e nominal fix for sending UTF-8 text to Mackie surface 2014-12-15 14:44:05 -05:00
602e390649 changes to Mackie Control support for new crossthreadchannel implementation 2014-12-03 21:22:34 -05:00
d3e2de8b4e modify Mackie surface code to use crossthreadchannel on all platforms 2014-12-03 20:57:58 -05:00
25e1eddc50 remove "port sources" management from MidiControlUI and Mackie support.
This was necessary due to a bug/design issue between Glibmm and Glib (see https://bugzilla.gnome.org/show_bug.cgi?id=561885)
 but the problem needs to be managed by the *creator* of the IOSource and that has now moved inside CrossThreadChannel.
2014-11-26 18:22:22 +02:00
1f58f81aa6 Fix order of parameters to stop_touch() in Mackie::Control
Reverse the parameters of Mackie::Control::stop_touch() to make them
consistent with AutomationControl::stop_touch(), and fix up the call to
AutomationControl::stop_touch() to have the parameters in the correct
order.

Unfortunately, I don't possess any devices that speak the Mackie protocol, so
though the patch seems logical and correct to me, I have no way of testing it.
If anyone has a device with touch faders that speaks Mackie, I'd be glad of any
confirmation that it at least doesn't break anything.
2014-11-25 14:59:48 +00:00
ea5876b836 Remove dead code. 2014-11-25 02:11:44 -05:00
bfe49540b9 remove use of CrossThreadChannel::selectable() to allow cross-platform implementation of CrossThreadChannel via Glib::IOSource 2014-11-23 17:37:13 +02:00
973d40e3ac Add support for USE_CAIRO_IMAGE_SURFACE when building with MSVC
(new preprocessor directive - greatly improves CPU loading)
2014-10-29 17:36:30 +00:00
d8e64103a6 fix CPI window handling:
Move control-surface editor-window management to the control surface.
The Preferences-Dialog is not aware of session specific or surface
specific actions and cannot properly manage the window.
2014-09-13 16:59:02 +02:00
65715dd298 Make sure all our VC projects agree that the product is called 'Mixbus3' (as opposed to just 'Mixbus')
It'd be nice if we could use 'ARDOUR::config_dir_name' for this purpose (or perhaps 'PROGRAM_VERSION'). However, neither is implemented widely enough at present to make this practical. Keep an eye on them though, as possible future strategies.
2014-08-28 07:57:20 +01:00
45afed5e9a Modify our VC project files to work with msvc32-fixup.pl 2014-08-04 09:02:17 +01:00
928881b24a Update vcproj files for changed LILV config define. 2014-07-15 15:50:12 -04:00
d9a7d419b2 Change PBD::find_files_matching_regex and PBD::find_files_matching_filter to take a Searchpath 2014-06-25 12:40:10 -04:00
547689a055 Replace all use of PathScanner with equivalent functions from pbd/file_utils.h 2014-06-17 21:41:29 +10:00
0e96d84079 Change PBD::PathScanner API to return results by value to avoid inadvertent memory leaks 2014-06-17 21:13:05 +10:00
12cf9d5be8 fix pathscanner / stl_vector related memory leaks 2014-06-15 13:24:39 +02:00
5fba8a2015 and one more gettimeofday() transition (mackie timers) 2014-05-16 18:35:42 +02:00
058986f77b finish unfinished work at basing all install paths on the program name 2014-04-28 21:11:08 -04:00
077a194430 Add the main VC project files for building Ardour3 with Microsoft Visual Studio
Note that there's no 'VS Solution' file at present and some targets haven't been built yet (e.g. 'fst')
2014-04-08 09:49:35 +01:00
912f07b919 mingw build fixes (tested with i686-w64-mingw32 on linux-x86_64) 2014-03-04 15:25:58 +01:00
80d83fd238 add a hack to deal with device discovery race, in which the devices were not actually known to be ready before the last update_surfaces() call (which is where binding between strips and routes occurs) ; add support for Mackie Control touch on/off messages 2014-02-19 23:25:08 -05:00
79b7fb82f3 try to get export/visibility and build conditionals right for surfaces/, once more 2014-01-25 13:57:28 -05:00
9d01082243 mackie code does not use poll(2) and so does not need poll.h 2014-01-23 13:38:23 -05:00
37b1f5017e merge with master 2014-01-14 21:13:21 -05:00
35c170937d NOOP, semantic update, don't pannable's panner for direct access. 2014-01-15 02:51:53 +01:00
3020b224fa Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there 2014-01-10 16:07:57 -05:00
b0e4f81eb3 merge exportvis branch into cairocanvas, to reduce the number of "floating" branches.
Still need to add API export/visibility macros for the canvas library.
2013-12-27 14:29:06 -05:00
362769e967 new CP API and fix several egregious bugs with port handling when switching devices, setting state etc. 2013-12-21 15:31:28 -05:00
644ead06b4 remove debug output 2013-12-21 15:31:28 -05:00
f6c9fa4d89 fix a crash caused by not checking if MackieControlProtocol::_surfaces_state exists
I forgot to add this check when i changed the member variable to a pointer.
2013-12-14 11:10:54 -05:00
85cd647226 Mackie Control support now saves & restores port connections for devices not using ipMIDI (not required for ipMIDI anyway) 2013-12-13 16:04:34 -05:00
a17bafa964 remove some unused code from mackie support 2013-12-13 16:04:34 -05:00
f85c67501c reverse the visibility.h files assumptions that we don't build shared libs by default
This avoids having to define define LIBFOO_DLL=1 all over the place. If we ever go with static libs we will
need to define LIBFOO_STATIC=1 but hopefully in some central location like the top level wscript.

Oh, and I also dropped support for gcc older than version 4.x because ardour will already not build
on such an old version.
2013-10-18 11:50:44 -04:00
b855e5f322 Merge remote-tracking branch 'remotes/origin/exportvis' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/wscript
	libs/ardour/ardour/audioregion.h
	libs/ardour/ardour/debug.h
	libs/ardour/ardour/directory_names.h
	libs/ardour/ardour/filesystem_paths.h
	libs/ardour/ardour/session_event.h
	libs/gtkmm2ext/gtkmm2ext/utils.h
	libs/panners/1in2out/wscript
	libs/panners/2in2out/wscript
	libs/panners/vbap/wscript
	libs/pbd/pbd/debug.h
	libs/pbd/pbd/file_utils.h
	libs/pbd/pbd/pathexpand.h
	libs/pbd/pbd/ringbuffer.h
	libs/pbd/pbd/ringbufferNPT.h
	libs/pbd/pbd/search_path.h
	libs/pbd/pbd/stacktrace.h
	libs/pbd/pbd/uuid.h
	libs/pbd/pbd/uuid_boost.h
	libs/surfaces/control_protocol/control_protocol/basic_ui.h
	libs/surfaces/control_protocol/control_protocol/control_protocol.h
2013-10-18 10:03:22 +01:00
61c1956ef9 add -fvisibility=hidden to evoral, and make things work 2013-10-17 15:02:20 -04:00
2fab8182cc add -fvisibility=hidden to libgtkmm2ext, and make things work 2013-10-17 14:36:41 -04:00
98c93ee53e tweak up DLL=1 defs for control surfaces 2013-10-17 13:30:18 -04:00
75b933eadb Merge remote-tracking branch 'remotes/origin/master' into windows+cc 2013-10-16 15:55:59 +01:00
58e8f43052 reduce default height of mackie control GUI, as per #5713 2013-10-15 13:28:01 -04:00
69a8fc43e2 Merge branch 'master' into windows 2013-10-15 11:17:12 -04:00
f6ba1d2271 fix signed/unsigned issue pointed out by old apple gcc 2013-10-15 10:58:46 -04:00
bb826f4bee incomplete merge of master into windows (requires upcoming changes to master to be complete) 2013-09-12 11:28:50 -04:00
79fed95c1b tighten up error handling a little bit during various setup functions for Mackie Control 2013-09-06 10:39:14 -04:00
8ddd12a60d Rename SearchPath class Searchpath
Windows headers define SearchPath which means we have to undefine it
where necessary. This is a pain and can be tricksy, so I feel renaming
the class slightly is the easiest solution.
2013-09-06 14:31:11 +10:00
f225eaa919 'surfaces/mackie' - Platform specific changes 2013-09-05 10:04:18 +01:00
447e986a0a 'surfaces/mackie' - Other minor changes needed for building with MSVC 2013-09-05 10:03:07 +01:00
a7ab40e8ae 'surfaces/mackie' - Comment out some structure field names which MSVC didn't like 2013-09-05 10:02:11 +01:00
d074bc586e Merge branch 'master' into audioengine 2013-09-03 17:41:49 -04:00
a6e0b60ae1 Merge branch 'master' into windows 2013-09-03 08:50:38 -04:00
9261d5908d fix error introduced during recent changes to Mackie control support, involving ambiguous enum usage 2013-09-03 08:48:11 -04:00
a435e6357f use visibility macros to control visibility in control surface DLL/DSO's 2013-09-03 08:33:51 -04:00
41f6f5574b fix confusion about whether flip_mode in the Mackie support code is a bool or an enum 2013-08-24 11:46:44 -04:00
e711dfae12 remove misleading + incorrect documentation 2013-08-14 12:44:59 -04:00
1ab61b8564 major redesign of MIDI port heirarchy and management (part 2) 2013-08-07 22:22:11 -04:00
9ac6bb9bef part-way through getting the audioengine changes to compile 2013-07-24 19:29:45 -04:00
cd6cbba299 rename Route::is_hidden() to Route::is_auditioner() and Route::Hidden to Route::Auditioner. this has been the meaning of these terms for years now and it would be better to make it explicit 2013-04-06 16:04:02 -04:00
Julien de Kozak
27d77b8719 Fix some compilation warnings 2013-03-30 18:09:40 +01:00
8f091de64b for MCP devices that don't handshake, turn them on as soon as we call ::connectivity_established() so that _active == true, and we will actually write to them
git-svn-id: svn://localhost/ardour2/branches/3.0@14165 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-06 20:15:28 +00:00
4ecb07aaee fix up Location::first_location_(after|before) to do the right thing when marks + ranges are interleaved (functions renamed)
git-svn-id: svn://localhost/ardour2/branches/3.0@13869 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 13:19:16 +00:00
2eb43c8310 add copyright comments
git-svn-id: svn://localhost/ardour2/branches/3.0@13859 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-16 18:22:15 +00:00
99b94fad77 avoid crash when switching devices in mackie control code, add locks to protect surfaces list (hopefully done without adding any deadlocks - can't test this at present)
git-svn-id: svn://localhost/ardour2/branches/3.0@13750 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-31 16:04:46 +00:00
104da317ff avoid crashing in a wierd case (possibly a race) in Mackie support
git-svn-id: svn://localhost/ardour2/branches/3.0@13749 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-31 15:27:38 +00:00
3cd8138a41 convert from Glib:: to Glib::Threads for all thread-related API
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25 17:48:55 +00:00
4b96a5b34d Use std::string and Glib instead of pbd/filesystem.h in DeviceProfile
git-svn-id: svn://localhost/ardour2/branches/3.0@12902 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:44 +00:00
105caf23da Use std::string instead of PBD::sys::path in pbd/search_path.h, pbd/file_utils.h and ardour/session_dir.h
git-svn-id: svn://localhost/ardour2/branches/3.0@12829 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:06:54 +00:00
Carl Hetherington
daffec502e Return silence from read_from_sources() if we try to read a channel that our source does not have (if replicate-missing-region-channels is turned off); should fix #4934.
git-svn-id: svn://localhost/ardour2/branches/3.0@12741 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-16 18:18:30 +00:00
9429401f11 MCP: patch from seablade to fix pot displays (both absolute value and negative values)
git-svn-id: svn://localhost/ardour2/branches/3.0@12739 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-16 03:10:26 +00:00
Carl Hetherington
d8f48e6a9d Fix uninitialised variable.
git-svn-id: svn://localhost/ardour2/branches/3.0@12721 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-14 11:32:12 +00:00
Carl Hetherington
d341088f13 Fix some uninitialised variable warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@12702 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13 15:38:15 +00:00
Rodrigo Severo
1bd34a34f7 Small change to Timecode display (SMTPE) in the Mackie.
git-svn-id: svn://localhost/ardour2/branches/3.0@12694 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13 03:09:46 +00:00
Rodrigo Severo
335bf3d21e Prevents a master fader being created without a control at Surface::setup_master_fader;
Several DEBUG_TRACE changes to help identify race conditions;

git-svn-id: svn://localhost/ardour2/branches/3.0@12693 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13 03:07:50 +00:00
Rodrigo Severo
0d002fb231 Bogus commit to comment commit 12689:
Small patch to fix the "Solo" global button in the transport section of Mackie's.

git-svn-id: svn://localhost/ardour2/branches/3.0@12690 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-12 21:09:53 +00:00
Rodrigo Severo
32541205dd git-svn-id: svn://localhost/ardour2/branches/3.0@12689 d708f5d6-7413-0410-9779-e7cbd77b26cf 2012-06-12 21:04:13 +00:00
Carl Hetherington
661a0444f4 Fix crash in tests; not sure about the root cause.
git-svn-id: svn://localhost/ardour2/branches/3.0@12639 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-09 22:36:59 +00:00
Carl Hetherington
2492b43b56 Fix crash when MackieControlProtocol has gone away.
git-svn-id: svn://localhost/ardour2/branches/3.0@12634 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-09 21:06:22 +00:00
71427323ec MCP: latest patch from Rodrigo:
* fixes Master Fader Touch button in the Mackie;
    * implements a MasterFaderTouch global button;
    * removes unused MackieControlProtocol::_transport_previously_rolling property;
    * implements DeviceInfo::get_global_button() method;
    * creates GlobalButtonsInfo and StripButtonsInfo types in DeviceInfo;
    * implements Surface::_last_master_gain_written property to help master fader feedback;
    * makes Surface respect _mcp.device_info().strip_cnt() to create master fader and when connecting signals for strips and master fader instead of using hardcoded 8;
    * removed a few unnecessary updates in Surface::turn_it_on();
    * included master_gain_changed() in Surface::periodic();
    * implemented MackieControlProtocol::master_fader_touch_press and
    * MackieControlProtocol::master_fader_touch_release;



git-svn-id: svn://localhost/ardour2/branches/3.0@12631 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-09 19:06:52 +00:00
a56ab30261 MCP: latest patch from Rodrigo:
* delays Mackie's led initialization until the Mackie is actually ready to receive messages;
    * at the button X function mapping customization interface in Preferences:
          o show specific device names instead of global ones;
          o mark the buttons that are actually available in the device with a *;
          o included a bottom text explaining what the * means;
    * created a DeviceInfo::get_global_button_name(Button::ID) method;
    * included several DEBUG_TRACE in mackies code;
    * renamed device buttons and groups according to the following logic: Mackie buttons are named exactly like a actual (mine) Mackie names them on the interface itself. Logic Control buttons are named exactly like they appear at Logic Pro 7.2.1 Dedicated Control Surface Support manual;
    * improved timecode display (new format);


git-svn-id: svn://localhost/ardour2/branches/3.0@12582 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-06 12:20:57 +00:00
6d46299df3 MCP: another patch from rodrigo:
* setting a (arbitraty) limit to zoom out to prevent segfaults because out of memory condition;
    * setting initial update of master fader, and read, play and stop leds on the Mackie;
    * changed the timecode display char selection for update algorithm as chars are sent one by one and not all right most;
    * implemented method of showing timecode at the mackie to better deal with the differences between Ardour's foramts and Mackie's, i.e, use spaces in place of the zeros that had no meaning;
    * preventing timecode display updates when the surface isn't yet active.


git-svn-id: svn://localhost/ardour2/branches/3.0@12541 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-02 14:51:53 +00:00
bbcfffc2da revert part of earlier MCP patch from rodrigo
git-svn-id: svn://localhost/ardour2/branches/3.0@12534 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-01 21:25:12 +00:00
ba5e71b50f MCP: Patch from Rodrigo that:
* implements Metering on/off through Button::Read as per Seablade's suggestion. I choose this button as it's the "Show meters" button in Traktion;
    * removes redundant code from Meter::update_transport_rolling();
    * renames Meter::update_transport_rolling() to Meter::notify_metering_state_changed();
    * renamed Surface::notify_transport_state_changed() to Surface::notify_metering_state_changed();
    * renamed Strip::notify_transport_state_changed() to Strip::notify_metering_state_changed();
    * created MackieControlProtocol::notify_metering_state_changed() and made MackieControlProtocol::notify_transport_state_changed() use it;
    * implemented turning off of timecode display and two char display in Surface::zero_all ();
    * implemented master fader zeroing in Surface::zero_all ();
    * calling Surfaces->zero_all() at MackieControlProtocol destructor;
    * implemented restore of 2nd LCD line content after metering being active.



git-svn-id: svn://localhost/ardour2/branches/3.0@12520 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-01 12:56:20 +00:00
28e3bc3ac7 MCP: metering changes from rodrigo, makes metering work correctly on the MC Pro (also checked on the nucleus)
git-svn-id: svn://localhost/ardour2/branches/3.0@12489 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-30 14:32:27 +00:00
cd58caa93b MCP: remove misleading and confusing and out of date comment
git-svn-id: svn://localhost/ardour2/branches/3.0@12485 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-30 00:01:15 +00:00
28aed9e0d1 MCP: correct display of timecode
git-svn-id: svn://localhost/ardour2/branches/3.0@12484 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29 23:44:34 +00:00
1491787cfb MCP: fix assigment of outbound sysex messages, and don't drain port->selectable() for ipMIDI devices, since this throws away all incoming data, which arrives on the same fd as port->selectable() (unlike JACK MIDI)
git-svn-id: svn://localhost/ardour2/branches/3.0@12483 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29 23:30:13 +00:00
40ef762db4 fix missing negation from previous MCP commit
git-svn-id: svn://localhost/ardour2/branches/3.0@12482 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29 20:34:19 +00:00
1d5bade8a1 patch from rodrigo severo to make mackie timecode display work
git-svn-id: svn://localhost/ardour2/branches/3.0@12480 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29 20:18:43 +00:00
d7a32eb85e MCP: remember to drain the x-thread FIFO that tells us that JACK MIDI data has been received
git-svn-id: svn://localhost/ardour2/branches/3.0@12453 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-27 10:57:36 +00:00
8d41955b3d missing method for MCP
git-svn-id: svn://localhost/ardour2/branches/3.0@12449 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-25 17:56:26 +00:00
7d252412c3 add support for <HasMeters value=XX/> stanza in MCP device info file
git-svn-id: svn://localhost/ardour2/branches/3.0@12440 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 19:27:29 +00:00
ccfeb90bdc MCP: pay attention to listen changes as well as solo changes, and reflect listen state with solo button, just like solo
git-svn-id: svn://localhost/ardour2/branches/3.0@12385 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-22 21:38:03 +00:00
8c73a62ee0 split apart mackie meter messages when we have to send two, one to turn on/off the overload indicator and one to set the level. this avoids MIDI bridge issues with non-canonical MIDI messages
git-svn-id: svn://localhost/ardour2/branches/3.0@12367 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-21 19:02:44 +00:00
813c5f0af9 major rationalization of use of search paths. ardour now has just 4 functions used to define how external resources are located: ardour_config_search_path() (for system or user specific configuration data), ardour_data_search_path() (for machine, user and system independent data), ardour_dll_directory() (base directory where shared libraries are found) and user_config_directory(). These are now used throughout the code. the config, data and dll paths/directories can be overridden by environment variables. the user config dir is added as the first element of the first two search paths, and use selectively when searching for a few other things.
This commit re-enabes ./waf install, and it is believed that it works fully at this point (more testing likely required)

git-svn-id: svn://localhost/ardour2/branches/3.0@12326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-18 17:24:06 +00:00
60904be8ef fully tear down Mackie GUI when disabling mackie
git-svn-id: svn://localhost/ardour2/branches/3.0@12258 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-12 14:12:51 +00:00
4d780bdcd0 provide some support for mackie devices like Steinberg's CMCs that do not do the normal Mackie spec handshaking
git-svn-id: svn://localhost/ardour2/branches/3.0@12252 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-11 16:04:09 +00:00
7b903febf9 remove debug output
git-svn-id: svn://localhost/ardour2/branches/3.0@12229 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-09 18:15:58 +00:00
5a7a89e068 add a (potentially temporary) discover button for mackie devices
git-svn-id: svn://localhost/ardour2/branches/3.0@12228 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-09 16:44:06 +00:00
962cb31294 tweak MCP search paths
git-svn-id: svn://localhost/ardour2/branches/3.0@12195 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-05 20:29:46 +00:00
4235e9a1a2 a variety of mostly unused parameter errors from OS X Lion's compiler
git-svn-id: svn://localhost/ardour2/branches/3.0@12148 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-02 20:29:46 +00:00
eaa7cc5a73 fix up some const-ness issues starting from Evoral::Event::set(), and intersect with removing Mackie..MidiByteArray::bytes() method which made a copy of the data every time we wrote it
git-svn-id: svn://localhost/ardour2/branches/3.0@12124 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-30 15:54:13 +00:00
edad92a944 control surfaces: make it possible to keep display of current GUI/selection state as we bank through tracks/bussses. note careful use of weak_ptr<Route> to avoid messing with Route lifetimes. this scheme may change
git-svn-id: svn://localhost/ardour2/branches/3.0@12115 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-28 01:43:38 +00:00
d1af0b89a8 MCP: failure to rebank for cases where num_routes < num_strips but we're not on bank 0
git-svn-id: svn://localhost/ardour2/branches/3.0@12112 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-27 20:35:45 +00:00
ae2e8c6765 MCP: ctrl-select toggle selections status, analogous to GUI op
git-svn-id: svn://localhost/ardour2/branches/3.0@12102 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 22:10:32 +00:00
cafbc632fb MCP: more sensible version of previous commit, and better behaviour for play button after ffwd or rewind
git-svn-id: svn://localhost/ardour2/branches/3.0@12101 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 21:57:47 +00:00
ab8ebe97bb MCP: fix handling of vpot presses
git-svn-id: svn://localhost/ardour2/branches/3.0@12100 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 21:22:36 +00:00
834f94c60a fix initialization of control protocols so that brand new sessions get working control protocols if the user's ardour.rc file indicates to do so; fix MCP bank scrolling
git-svn-id: svn://localhost/ardour2/branches/3.0@12096 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 16:18:03 +00:00
3b7e2f7d67 MCP: properly (?) handle bank/channel scrolling with locked strips
git-svn-id: svn://localhost/ardour2/branches/3.0@12095 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 14:28:41 +00:00
ec97b8e58d MCP: lots of good stuff - recenable bug fixed, cursor keys for vertical scroll work, loop button lights/unlightspan pots don't adjust if there is no panner, etc.
git-svn-id: svn://localhost/ardour2/branches/3.0@12093 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 03:46:18 +00:00
2bae75fa0b MCP: dynamic ipMIDI ports, more default key bindings, various minor fixes
git-svn-id: svn://localhost/ardour2/branches/3.0@12092 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-25 21:21:36 +00:00
eac10ca71c MCP: quick build fix
git-svn-id: svn://localhost/ardour2/branches/3.0@12087 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-25 12:57:37 +00:00
b31400207e MCP: various fixes, plus removal of ui_bind() (just for mackie code)
git-svn-id: svn://localhost/ardour2/branches/3.0@12086 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-25 04:42:01 +00:00
d5e14b3d91 eventloop and abstractui debugging, lots more commenting on abstractui/eventloop implementation; minor tweaks elsewhere
git-svn-id: svn://localhost/ardour2/branches/3.0@12076 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 16:45:38 +00:00
0c026a6dc5 MCP: remove debug output
git-svn-id: svn://localhost/ardour2/branches/3.0@12073 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 03:18:16 +00:00
954b022e19 MCP: remove debugging related to selection that turned out to be about some JACK/IP MIDI layer
git-svn-id: svn://localhost/ardour2/branches/3.0@12071 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 02:41:07 +00:00
a9d77d1a70 remove various debugging output
git-svn-id: svn://localhost/ardour2/branches/3.0@12070 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 02:35:33 +00:00
33140f3267 add support for IP MIDI (multicast MIDI over IP UDP sockets) to ardour and use it if requested inside MCP code. required renaming the pre-existing MIDI::Port as MIDI:JackMIDIPort - MIDI::Port becomes the base type for both JackMIDIPort and IPMIDIPort
git-svn-id: svn://localhost/ardour2/branches/3.0@12069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 02:28:51 +00:00
4bfdcc18bd ControlProtocol doesn't actually need any record of an event loop and doesn't need to connect to any signals itself
git-svn-id: svn://localhost/ardour2/branches/3.0@12063 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-23 10:54:34 +00:00
ac1b2a6647 MCP: another bevy of changes, including working jog wheel
git-svn-id: svn://localhost/ardour2/branches/3.0@12056 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-22 17:37:52 +00:00
82c867bf2a MCP: a fistful of improvements. probably best to just try it and see what it broken. KNOWN: pressing vpots without a bank/channel shift will crash ardour
git-svn-id: svn://localhost/ardour2/branches/3.0@12053 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-22 02:15:24 +00:00
Carl Hetherington
9befa88deb Fix some warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@12048 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-20 23:34:15 +00:00
95f5c3cc80 MCP: some button handling fixes
git-svn-id: svn://localhost/ardour2/branches/3.0@12019 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 21:34:15 +00:00
260db68a69 update timecode/position display where appropriate
git-svn-id: svn://localhost/ardour2/branches/3.0@12015 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 18:27:06 +00:00
c7c9c1bd26 MCP: next try at vpot mode for pan width
git-svn-id: svn://localhost/ardour2/branches/3.0@12013 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 17:34:31 +00:00
e9dcd14bb4 MCP: bettetr vpot mode for pan width
git-svn-id: svn://localhost/ardour2/branches/3.0@12012 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 17:05:13 +00:00
028727e85c MCP: space for %
git-svn-id: svn://localhost/ardour2/branches/3.0@12011 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 17:03:21 +00:00
3cc358bc87 MCP: missing break
git-svn-id: svn://localhost/ardour2/branches/3.0@12010 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 17:01:02 +00:00
e06620280b MCP: maybe fix vpot display behavior for pan width
git-svn-id: svn://localhost/ardour2/branches/3.0@12009 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 16:52:38 +00:00
adbfd1b262 MCP: maybe fix vpot behaviour as seen with pan width
git-svn-id: svn://localhost/ardour2/branches/3.0@12008 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 16:26:43 +00:00
d53364f2cf MCP: gui stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@12007 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 16:21:16 +00:00
7a2c0b9d9a MCP: maybe really fix fader dB display
git-svn-id: svn://localhost/ardour2/branches/3.0@12006 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 14:48:37 +00:00
3620530e62 MCP: maybe fix fader dB display
git-svn-id: svn://localhost/ardour2/branches/3.0@12005 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 14:24:00 +00:00
b253f464a5 MCP: more fader debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@12004 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 13:36:26 +00:00
d5db31f1e4 MCP: fader debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@12003 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 13:13:42 +00:00
56281ba906 MCP: gui changes; more debugging for button bnding lookup
git-svn-id: svn://localhost/ardour2/branches/3.0@12002 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 12:20:28 +00:00
40750ba0bb MCP:maybe functioning button binding stuff, plus save-to-disk-on-change (still needs naming interaction for new profile)
git-svn-id: svn://localhost/ardour2/branches/3.0@12000 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-18 03:24:59 +00:00
6bd6f58dee MCP: somewhat functional (?) full keybinding GUI
git-svn-id: svn://localhost/ardour2/branches/3.0@11999 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-17 21:36:48 +00:00
b9ff443085 MCP: various work on the button binding GUI
git-svn-id: svn://localhost/ardour2/branches/3.0@11997 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-17 20:41:31 +00:00
0078582a5f MCP: work on rec-enable
git-svn-id: svn://localhost/ardour2/branches/3.0@11993 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16 22:33:09 +00:00
b5276aa4ab MCP: work on vpots
git-svn-id: svn://localhost/ardour2/branches/3.0@11992 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16 22:30:38 +00:00
e3d353715a MCP: bit more debugging for vpot press
git-svn-id: svn://localhost/ardour2/branches/3.0@11991 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16 21:01:59 +00:00
bf107f93e1 MCP: no fake touch for anything, actually
git-svn-id: svn://localhost/ardour2/branches/3.0@11989 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16 19:08:22 +00:00
4da123458e MCP: no fake touch for vpot
git-svn-id: svn://localhost/ardour2/branches/3.0@11988 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16 19:07:37 +00:00
72d17d326e MCP: a fistful of changes
git-svn-id: svn://localhost/ardour2/branches/3.0@11987 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16 19:05:27 +00:00
02c498a8fa MCP: make v-pot press work; work ongoing on general keybindings
git-svn-id: svn://localhost/ardour2/branches/3.0@11985 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16 13:06:39 +00:00
Carl Hetherington
23973bae24 A few tweaks to make Ardour build in GCC -std=c++0x mode.
git-svn-id: svn://localhost/ardour2/branches/3.0@11983 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-15 19:28:44 +00:00
bef36b6f65 cmd-press on vpot should lock strip; shift-press resets pot param to default
git-svn-id: svn://localhost/ardour2/branches/3.0@11980 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-15 15:43:25 +00:00
97c2832d35 MCP: probably fix issues with vpots not working
git-svn-id: svn://localhost/ardour2/branches/3.0@11979 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-15 14:30:03 +00:00
2926372b75 add mapping from button ID to name for new button IDs
git-svn-id: svn://localhost/ardour2/branches/3.0@11978 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-15 13:50:43 +00:00
d314490797 share buttons IDs where feasible
git-svn-id: svn://localhost/ardour2/branches/3.0@11977 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-15 13:41:20 +00:00
65fe4f9edf new button IDs, one for MCP one for LCP, plus methods associated with them; SSL Nucleus now declares itself to be using Logic Control
git-svn-id: svn://localhost/ardour2/branches/3.0@11976 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-15 13:28:45 +00:00
24377e9fb2 MCP: the return of the master fader
git-svn-id: svn://localhost/ardour2/branches/3.0@11973 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-14 20:38:42 +00:00
2ed2b61224 MCP: redesign to allow device-specific button IDs, since we know that at least one device (nucleus) does not honor mackie's specification document
git-svn-id: svn://localhost/ardour2/branches/3.0@11972 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-14 19:02:54 +00:00
32766ce215 MCP: hack test for ssl nucleus fader touch
git-svn-id: svn://localhost/ardour2/branches/3.0@11970 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-14 11:39:25 +00:00
3789e7cdef MCP: hack #2 for Nucleus fader touch messages
git-svn-id: svn://localhost/ardour2/branches/3.0@11969 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-14 01:02:40 +00:00
e240fb16bd MCP: hack for Nucleus fader touch messages
git-svn-id: svn://localhost/ardour2/branches/3.0@11968 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 22:49:58 +00:00
e36aa889eb MCP: off by one error
git-svn-id: svn://localhost/ardour2/branches/3.0@11967 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 22:10:41 +00:00
69830c477e MCP: catch noteOff to see note-on+velocity=zero messages; more GUI tweaks
git-svn-id: svn://localhost/ardour2/branches/3.0@11966 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 21:46:26 +00:00
565be46ea1 MCP: more of the same
git-svn-id: svn://localhost/ardour2/branches/3.0@11965 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 20:39:59 +00:00
ae09d046c1 MCP: better display of parameter values, off by one error when collecting controls for buttons, more GUI
git-svn-id: svn://localhost/ardour2/branches/3.0@11964 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 20:27:08 +00:00
9502fa261d MCP: more button tracing, more config stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@11963 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 19:17:28 +00:00
411e2536c2 MCP: more button tracing, more config stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@11962 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 17:58:36 +00:00
2329be8f6c MCP: fix uninitialized variable; start work on extending MCP gui
git-svn-id: svn://localhost/ardour2/branches/3.0@11961 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 17:06:35 +00:00
8f7fa7d93b MCP: timeout display of value when altering with fader or pot; range ops on strip buttons should work; select logic may be broken
git-svn-id: svn://localhost/ardour2/branches/3.0@11959 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 16:11:55 +00:00
f511b7cc6b show gain level as its adjusted from ardour GUI (not reverted back); basic support for select/solo/mute/recenabel range ops, but not functioning yet
git-svn-id: svn://localhost/ardour2/branches/3.0@11958 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 03:46:38 +00:00
13699251d9 convert rec-enable control for a Track from PBD::COntrollable to ARDOUR::AutomatioNControl, and use in MCP
git-svn-id: svn://localhost/ardour2/branches/3.0@11956 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 00:35:42 +00:00
d7595f71be MCP: make select button work again
git-svn-id: svn://localhost/ardour2/branches/3.0@11955 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 23:46:17 +00:00
5f1251edd7 MCP: try an alternate mode for gain pot mode
git-svn-id: svn://localhost/ardour2/branches/3.0@11954 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 23:02:12 +00:00
d84fedac0a MCP: button debugging, plus don't do much/aything on button release
git-svn-id: svn://localhost/ardour2/branches/3.0@11953 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 22:59:26 +00:00
f04b55af3a MCP: display label change
git-svn-id: svn://localhost/ardour2/branches/3.0@11952 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 22:17:58 +00:00
454359a321 MCP: reverse pot labelling re: flip mode
git-svn-id: svn://localhost/ardour2/branches/3.0@11951 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 22:16:01 +00:00
43556cce5a MCP: fix confusion between normal and modified AutomationControl
git-svn-id: svn://localhost/ardour2/branches/3.0@11950 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 22:09:30 +00:00
939801a8d8 MCP: start generalizing mapping between surface controls and ARDOUR::AutomationControl; simplify flip mode; more good stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@11949 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 21:02:43 +00:00
b4235221ab remove old mcp config params, use new one
git-svn-id: svn://localhost/ardour2/branches/3.0@11948 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 18:36:14 +00:00
5ee1aaf8d0 MCP: rename ports again, remove ports from MCP bundles, wakeup devices
git-svn-id: svn://localhost/ardour2/branches/3.0@11947 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 18:16:16 +00:00
17b442971b MCP: more surface properties, correctly close IOSources when switching surfaces; write select button msgs one by one, change port name back to generic terms
git-svn-id: svn://localhost/ardour2/branches/3.0@11945 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 17:52:57 +00:00
cd78f52bd8 missing initialization
git-svn-id: svn://localhost/ardour2/branches/3.0@11944 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 16:57:34 +00:00
0c4fe26b41 MCP: switch devices on the fly; name MIDI ports appropriately; fix active state; move sysex parsing into Surface
git-svn-id: svn://localhost/ardour2/branches/3.0@11942 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 16:41:07 +00:00
62620122a9 propagate GUI track selection to control protocols; make MCP update when GUI track selection changes
git-svn-id: svn://localhost/ardour2/branches/3.0@11941 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 14:34:03 +00:00
abf8069d7f MCP: loading device info files basically operational
git-svn-id: svn://localhost/ardour2/branches/3.0@11939 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 12:58:42 +00:00
3a4a45caae MCP: stubbed device info file loading
git-svn-id: svn://localhost/ardour2/branches/3.0@11938 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 12:16:55 +00:00
c410d9e567 new files
git-svn-id: svn://localhost/ardour2/branches/3.0@11937 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 11:46:35 +00:00
d6051c9953 move string_is_affirmative() into libpbd
git-svn-id: svn://localhost/ardour2/branches/3.0@11936 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 11:45:40 +00:00
f991e11b77 MCP: shift-select resets gain to unity; don't jump back to last transport start unless playing normally; footswitch 1 and 2 do play/stop
git-svn-id: svn://localhost/ardour2/branches/3.0@11934 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 01:51:57 +00:00
6c9dc8f0b3 MCP: track control press/release events
git-svn-id: svn://localhost/ardour2/branches/3.0@11933 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 01:14:43 +00:00
dd81c77161 MCP: probably fix crash from flip mode, and debug modifier state in pothandler
git-svn-id: svn://localhost/ardour2/branches/3.0@11932 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 01:05:18 +00:00
5b34da2f96 MCP: check on whether we using pan width control; flip mode may change display
git-svn-id: svn://localhost/ardour2/branches/3.0@11931 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 00:52:02 +00:00
ac284a4ea1 MCP: check on whether we using pan width control
git-svn-id: svn://localhost/ardour2/branches/3.0@11930 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 00:50:18 +00:00
cf6d8b0e67 MCP: probably fix ardour->surface for faders
git-svn-id: svn://localhost/ardour2/branches/3.0@11929 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 00:45:11 +00:00
9c281228b3 MCP: debug continues
git-svn-id: svn://localhost/ardour2/branches/3.0@11928 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 00:28:16 +00:00
d5a5c66d46 MCP: debug continues
git-svn-id: svn://localhost/ardour2/branches/3.0@11927 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 00:27:25 +00:00
1aa8baf6f9 MCP: maybe get vpot id's right; more debug tracing for gain notify
git-svn-id: svn://localhost/ardour2/branches/3.0@11926 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 23:52:37 +00:00
d00a797461 MCP: cursor left should scroll left
git-svn-id: svn://localhost/ardour2/branches/3.0@11923 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 22:57:01 +00:00
d96edb4dcb MCP: hopefully fix ardour->controller for faders
git-svn-id: svn://localhost/ardour2/branches/3.0@11922 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 22:50:21 +00:00
c8ea24d2f4 MCP: cursor left/right should scroll; maybe fix vpots
git-svn-id: svn://localhost/ardour2/branches/3.0@11921 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 22:47:02 +00:00
bc52377c3e MCP: reverse operation of cursor up/down in zoom mode; more tracign for vpot
git-svn-id: svn://localhost/ardour2/branches/3.0@11920 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 22:32:02 +00:00
96d4ba88d1 MCP: more tracing for rewind; change play LED illumination rule
git-svn-id: svn://localhost/ardour2/branches/3.0@11919 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 20:48:51 +00:00
496a1e6965 MCP: repeated presses of play button will jump back to previous start (like GUI button)
git-svn-id: svn://localhost/ardour2/branches/3.0@11918 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 20:25:14 +00:00
5ae258e23b MCP: share add-marker code with BasicUI; don't allow route locking if the strip has no current route
git-svn-id: svn://localhost/ardour2/branches/3.0@11916 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 20:18:01 +00:00
b2cd8b004c MCP: make BasicUI::rewind() behave symmetrically to BasicUI::ffwd(); basics of route locking and an API to put the master/monitor on a strip
git-svn-id: svn://localhost/ardour2/branches/3.0@11915 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 20:10:10 +00:00
c0bdc7f31e MCP: fix missing message when setting a button(led) to its current state; more view mode stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@11914 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 19:47:41 +00:00
1ce39cfb25 MCP: more view mode stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@11913 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 19:27:13 +00:00
f40d6b6440 MCP: more view mode support, use 6 bits for pot information, more mute debug trace
git-svn-id: svn://localhost/ardour2/branches/3.0@11912 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 19:16:49 +00:00
5097af6a13 MCP: start adding different view modes and support for Flip
git-svn-id: svn://localhost/ardour2/branches/3.0@11911 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 18:51:01 +00:00
21f038c280 MCP: more mute button debug tracing; fix action for fn keys
git-svn-id: svn://localhost/ardour2/branches/3.0@11910 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 17:34:04 +00:00
220095b8e0 MCP: use goto-visual-state-N as default function key bindings
git-svn-id: svn://localhost/ardour2/branches/3.0@11909 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 17:18:32 +00:00
b3db38a34f MCP: provide basic mechanism for configuring function keys
git-svn-id: svn://localhost/ardour2/branches/3.0@11908 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 17:13:20 +00:00
337b420266 MCP: rename raw_id() to id(); add missign modifier_state() function
git-svn-id: svn://localhost/ardour2/branches/3.0@11907 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 16:31:23 +00:00
83c765b405 MCP: more debug traces for button press
git-svn-id: svn://localhost/ardour2/branches/3.0@11905 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 16:24:52 +00:00
20d38b1c25 MCP: make vpots control pan width + direction/position
git-svn-id: svn://localhost/ardour2/branches/3.0@11904 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 16:21:23 +00:00
b98efa7893 MCP: better debug traces for button press
git-svn-id: svn://localhost/ardour2/branches/3.0@11903 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 16:13:05 +00:00
1554e9ad9e MCP: more twiddling with code
git-svn-id: svn://localhost/ardour2/branches/3.0@11902 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 16:11:55 +00:00
753096ec18 MCP: probably fix crash on solo, another debug trace
git-svn-id: svn://localhost/ardour2/branches/3.0@11901 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 15:50:02 +00:00
9b6c41c134 MCP: more clarification of control ID scheme
git-svn-id: svn://localhost/ardour2/branches/3.0@11899 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 15:37:06 +00:00
7a221363bb MCP: handle control IDs a little better
git-svn-id: svn://localhost/ardour2/branches/3.0@11898 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 15:22:05 +00:00
8c9f9e746b MCP: further objectification of event handling code
git-svn-id: svn://localhost/ardour2/branches/3.0@11896 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 13:39:25 +00:00
02c8ccf348 move all code to construct MIDI messages into relevant Control/Strip/Surface object; remove MackieMidiBuilder
git-svn-id: svn://localhost/ardour2/branches/3.0@11895 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 13:03:41 +00:00
7c9c4d6dc7 MCP: breakout Led class code; remove builder code for Led changes and put it into Led::set_state() which returns the (possibly empty) MIDI data needed to go back to the MCP device to change the LED visible state
git-svn-id: svn://localhost/ardour2/branches/3.0@11886 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 04:02:46 +00:00
dbd6ae23d0 MCP: send nothing if LedState is none in build_led(); return none from all transport button presses
git-svn-id: svn://localhost/ardour2/branches/3.0@11884 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 03:24:20 +00:00
0b69a2d3e1 MCP: slightly cleaner code for button map definition
git-svn-id: svn://localhost/ardour2/branches/3.0@11883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 03:18:35 +00:00
72719ba1b6 MCP: actually build button map
git-svn-id: svn://localhost/ardour2/branches/3.0@11882 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 03:13:19 +00:00
fa638e5e98 MCP: fix n_strips() count; new button dispatch scheme
git-svn-id: svn://localhost/ardour2/branches/3.0@11881 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 03:11:56 +00:00
261738d01e MCP: debug tracing, plus start of a new cleaner handling system for button handling
git-svn-id: svn://localhost/ardour2/branches/3.0@11880 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 02:54:25 +00:00
f387e834fd MCP: tweak operation of most transport buttons, make save button work, start using button enums more widely
git-svn-id: svn://localhost/ardour2/branches/3.0@11879 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 02:30:35 +00:00
f03ff886c9 remove debugging output, and fix MCP to use MISSING_INVALIDATOR to stop crash on close
git-svn-id: svn://localhost/ardour2/branches/3.0@11878 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 00:10:31 +00:00
aa22f85c1b MCP: fix fader touch button IDs; remove last traces of MidiControlUI
git-svn-id: svn://localhost/ardour2/branches/3.0@11873 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 17:26:31 +00:00
01c1eeb279 give MackieControlProtocol its own thread and make it parse incoming MIDI in that thread, as well as doing timeouts there too
git-svn-id: svn://localhost/ardour2/branches/3.0@11872 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 17:13:55 +00:00
a8094bb49c MCP: debug tracing
git-svn-id: svn://localhost/ardour2/branches/3.0@11870 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 16:02:34 +00:00
f89d0ea069 MCP: debug tracing
git-svn-id: svn://localhost/ardour2/branches/3.0@11869 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 15:59:43 +00:00
fcff349ba5 MCP: fix 2-char display message to avoid running status issues with JACK MIDI
git-svn-id: svn://localhost/ardour2/branches/3.0@11866 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 15:21:56 +00:00
43a6662357 MCP: actually map routes to strips, more debug tracing
git-svn-id: svn://localhost/ardour2/branches/3.0@11865 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 15:13:37 +00:00
342a78c9a3 MCP: actually connect surfaces to incoming MIDI events
git-svn-id: svn://localhost/ardour2/branches/3.0@11864 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 14:46:51 +00:00
12357ec4bb MCP: more debug tracing
git-svn-id: svn://localhost/ardour2/branches/3.0@11863 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 14:45:21 +00:00
fb4816f010 MCP: fix build
git-svn-id: svn://localhost/ardour2/branches/3.0@11862 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 14:32:30 +00:00
5ace191bff drastic, fundamental redesign of MCP code
git-svn-id: svn://localhost/ardour2/branches/3.0@11861 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 14:27:44 +00:00
ac7ade93bd MCP: make rightward bank shift work, and add a flag for scrub mode; more code rearrangement
git-svn-id: svn://localhost/ardour2/branches/3.0@11860 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 19:47:06 +00:00
562016339d use correct per-MCU index when building fader, pot, ledring messages
git-svn-id: svn://localhost/ardour2/branches/3.0@11859 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 19:10:24 +00:00