eb1373404a
FP8: do not reset fader to unity on re-selecting
...
This disables the feature added in 057fd9259e
.
The idea was to use double-click to reset the fader (like
Harrison consoles). Simply re-select can lead to accidents.
2022-12-13 18:01:27 +01:00
bd091906ac
Fix OSC/liblo zeroconf, properly query server URL
2022-12-13 17:15:54 +01:00
d704572ed5
FP8: fix monitor control
...
monitor_active() is the wrong API (it checks if any
monitor-bus settings are enabled or used).
2022-12-13 17:14:52 +01:00
9403b116ad
Mackie: make AudioInstruments button work correctly
...
Also toggle Global View LED appropriately
2022-12-10 10:32:47 -07:00
716501defa
potential fix for "/bus/... master ..." target in MIDI binding maps failing
2022-12-06 11:11:08 -07:00
7d928bf265
Announce OSC via mDNS
2022-12-02 17:34:10 +01:00
aae15e3c90
Fix Wreorder, initialize variables
2022-12-02 13:13:13 +01:00
d903bcff17
Disambiguate "types.h" (see also 705386842b
)
2022-11-20 00:32:55 +01:00
3f3d0c7e49
Surfaces and panners should not export headers
...
Those are not shared libraries but only dynamically loaded
plugin objects. Their headers are their own.
2022-11-19 01:11:53 +01:00
a6f8f2dd9e
Consolidate search/file-system paths (fixes vst builds)
...
Keep file-system paths and PBD::Searchpath mostly separate.
This amends 58c2b0a848
libs/fst directly includes relevant
ardour C++ code, so lib/fst must not link against libardour.
The problem was that 58c2b0a848
introduced additional
dependencies on other libardour functions.
2022-11-19 00:48:11 +01:00
d521c2ede6
src-tree cleanup: separate surfaces from libraries
...
libardourcp and now libardour_midisurface are not control
surfaces, but helper libraries for those.
They need to be deployed to the library folder (shared between
ctrl surfaces) and not scanned as ctrl surfaces at runtime.
2022-11-19 00:09:17 +01:00
58c2b0a848
move midi maps folders and file extension out of control surfaces library
2022-11-18 14:04:59 -07:00
Gon Solo
85a45b2645
Fix missing glib include path
2022-11-17 03:21:25 +01:00
a130041547
use MIDISurface in original Faderport support, plus required changes in MIDISurface & Push 2
2022-11-16 08:37:57 -07:00
e5bbccef28
various changes to get Push 2 surface support functional after inheriting from MIDISurface
2022-11-16 08:37:57 -07:00
99712e7585
surfaces; convert push2 to inherit from MIDISurface
2022-11-16 08:37:57 -07:00
4fbf3028aa
basic skeleton for new MIDISurface base class
2022-11-16 08:37:57 -07:00
7038e586d0
OSC: add support for Mixer Scenes: save, recall, and state feedback
2022-11-07 10:28:30 -06:00
0bda71b40b
BasicUI: Add simple functions to store and recall Mixer Scenes
2022-11-07 10:28:30 -06:00
6813884857
Restore custom generic midi settings #9062
...
DeviceInfo (bindings file) can include explicit motorized
and threshold settings. These values, when specified, are
used during load_bindings() during set_state and overwrote
any user customization.
Furthermore showing the GUI invalidated any prior setting
by explicitly calling binding_changed, which re-applies.
2022-11-02 17:44:00 +01:00
c6dade9484
OSC: implement controls and feedback for a banked trigger grid controller
...
(first iteration ... API may change)
2022-11-01 13:52:54 -05:00
bdf9cedb0e
triggers: implement grid banking in BasicUI so it can be shared (?)
2022-11-01 13:52:54 -05:00
0851d230cd
basic_ui: add convenience functions to access an NxM bank of triggers
2022-11-01 13:52:54 -05:00
c23210aae8
various fixes to prevent BasicUI diverging from GUI behaviors
2022-11-01 13:52:54 -05:00
bdacfb8724
Fix invalid use of Doxygen "@param" command
...
This is never for inline references to parameters, only for starting parameter
documentation blocks. The "@p" command is for this, although unfortunately
Doxygen doesn't actually do anything with it and it's just an alias for code
text.
2022-10-30 20:44:28 -04:00
2939ed3164
Add dedicated InsertReturnLevel type
...
This is preparation for PortInsert Send and Return
level control.
2022-10-14 02:21:49 +02:00
f3423b8a77
Consolidate send/delivery gain control
...
This moves the _amp from send to delivery (which already
applies gain for the master-bus normalization). This generalizes
the use of a gain stage for use in port-inserts.
2022-10-14 02:21:49 +02:00
3c0820e36e
move default_triggers_per_box into a namespace ; change value for Ardour to 16
2022-10-04 19:55:05 -06:00
a0c93328ea
push2: fix intended behavior of push2 "lower buttons"
2022-10-03 15:41:50 -06:00
42a4216f22
osc: publish session-provided trigger functions: bang/unbang
2022-10-01 09:13:14 -05:00
7fe7adb83c
push2: adapt to new unbang and 'stop' semantics (needs testing)
2022-10-01 09:13:14 -05:00
6c292a83da
basic_ui: use session-provided bang/unbang functions
2022-10-01 09:13:14 -05:00
1e283adb22
disambiguate trigger functions: stop_all_triggers -> trigger_stop_all
2022-10-01 09:13:14 -05:00
75ae0fd4b1
disambiguate trigger functions: cue_bang -> trigger_cue_row
2022-10-01 09:13:14 -05:00
be28c9ff88
osc: add functions to trigger cue rows, and stop all triggers
2022-10-01 09:13:14 -05:00
9a34d15b3c
Fix crash when disabling generic MIDI surface
...
The event-loop has to be stopped before unregistering ports
and deleting the instance.
2022-09-30 01:58:24 +02:00
0cd87a917c
push2: apply concept in 0af0e3a8e8
to push2 code (unused follow action icon)
2022-09-22 09:20:01 -06:00
af28394bfd
push2: fix an apparent bug in cairo when drawing follow action icons
...
It seems that using ::move_to() followed by Pango::Layout::show_in_cairo_context() leaves
the context in a state that is not correctly restored when using ::restore(). Therefore,
clear the path to avoid leaving any dangling current point
2022-09-22 00:43:38 -06:00
10ac1901dd
push2: temporarily comment display of jump loop actions due to cairo oddity
2022-09-07 17:03:08 -06:00
1eab84b7da
push2: remove unconditional setting of canvas item names
2022-09-03 17:48:03 -06:00
4863e6b45e
Fix mac and windows builds (resolve namespace ambiguities)
2022-09-04 01:37:48 +02:00
97540dafde
push2: update cue layout when tracks are added
2022-09-03 16:46:41 -06:00
2d4042abd7
push2: fix handling of pads-as-note-entry during selection changes
2022-09-03 16:46:41 -06:00
b3b6e94297
push2: fix canvas level meter object so that it draws
2022-09-03 16:46:41 -06:00
b7d86cb118
push2: track mix layout needs to be setup even if not currently visible
2022-09-03 16:46:41 -06:00
96a9c1df7f
push2: bug fixes for pad color mgmt and other fixes/improvements
2022-09-02 17:57:46 -06:00
49e6066306
Fix mac and windows builds (resolve namespace ambiguities)
2022-09-02 12:44:44 +02:00
f8312cacc4
add back Rect -> ArdourCanvas::Rect define
2022-09-01 22:03:11 -06:00
55ff73a2ad
fix clang/macos compilation
2022-09-01 16:23:12 -06:00
cbbc6f9b84
push2: use vector of pads rather than map when shutting down
2022-08-31 10:23:12 -06:00
253dac007d
push2: fully init and de-init buttons and pads at startup and shutdown
2022-08-31 10:22:24 -06:00
681ca38848
push2: fix a couple of potential crashes
2022-08-31 10:11:02 -06:00
678ed40bd3
push2: fix pad colors etc. after layout switches
2022-08-30 21:37:16 -06:00
748fbf6fb1
push2: add follow action icons to display
2022-08-30 16:51:34 -06:00
6986c18163
push2: add clip names to display and slightly shift progress circle
2022-08-28 22:37:31 -06:00
b98ec59ed8
push2: another bunch of Live-chasing functionality for trigger control
2022-08-28 18:58:50 -06:00
a06ed85269
push2: prep for triggerbox property changes
2022-08-27 21:21:22 -06:00
f6cfa3c3e1
push2: let's not crash
2022-08-27 16:25:09 -06:00
741ff552a0
push2: start tracking route properties in cue layout
2022-08-27 16:22:07 -06:00
06abdb4c4e
push2: vector, not map
2022-08-27 16:03:01 -06:00
6627d24c2b
push2: add an (x,y) map for pads and use it
2022-08-27 15:53:03 -06:00
a5dd6c1128
push2: lots more clip control functionality and display
2022-08-27 12:55:16 -06:00
b10a99dcad
push2: clip stop ala Live
2022-08-27 08:32:15 -06:00
19db8f9c68
control protocols: fix design of trigger unbang method
2022-08-27 08:32:03 -06:00
3cffca9178
control protocols: add trigger unbang method
2022-08-27 08:26:08 -06:00
8ed8895439
push2: launch clips with pads
2022-08-27 08:15:40 -06:00
26c48aae1b
control protocols: add trigger bang method to BasicUI
2022-08-27 08:15:17 -06:00
092fdb5b46
push2: turn off scene buttons when appropriate
2022-08-26 19:31:15 -06:00
1ecdeb25a7
push2: an ever-growing array of cue-related support
2022-08-26 19:23:43 -06:00
f835fb279a
push2: don't like the clip button since it does nothing
2022-08-26 17:40:41 -06:00
f57669fbde
push2: rename things to match the rest of ardour, and use Session button not Clip
...
the clip button is intended to "look at" a single clip and edit it
2022-08-26 17:40:04 -06:00
17b0764639
push2: clip view actually visible via button on surface
2022-08-26 16:39:36 -06:00
dd2442b0c2
push2: skeleton for new clip view layout
2022-08-26 16:15:32 -06:00
58d262384b
fix error during rebase fixup
2022-08-26 14:49:29 -06:00
7670f87d0a
Push2: Use condensed font to avoid overlap in scale menu
2022-08-26 14:10:40 -06:00
7883695ba9
Push2: Implement special "sequential" mode for in-key note grids
...
This makes "sequential" more or less mean an octave vertical interval,
but only for in-key mode. For chromatic mode, "sequential" is still just a
naive wrap-around layout for every note.
2022-08-26 14:10:40 -06:00
a6cd0a3f6e
Push2: Ensure every pad is set up once when the grid layout changes
...
This juggles the implementation slightly in a way that's more resilient to
mistakes: the representation of pads in the surfaces is always fully reset
before setting up the grid, and a state message is sent for every single pad
once after the scale algorithm sets things up.
This means that scale algorithms don't need to deal with hairy edge cases like
running off the end of the scale or the valid range of MIDI notes.
2022-08-26 14:10:40 -06:00
b6389bf274
Push2: Show both row and column interval explicitly in the same way
...
This hopefully makes the layout clearer to people who aren't familiar with what
all the settings mean.
2022-08-26 14:10:40 -06:00
e4e874bed0
Push2: Add "fixed" and "rooted" note grid option
2022-08-26 14:10:40 -06:00
ecd1a9660b
Push2: Fix Db root button
2022-08-26 14:10:40 -06:00
380a24b837
Push2: Remove debug printing
2022-08-26 14:10:40 -06:00
e93b7e2507
Push2: Add UI for changing the vertical interval
2022-08-26 14:10:40 -06:00
d5ca05edff
Push2: Implement a vertical interval for "tuning" the pads
...
The implementation is generic, but the actual call is hardcoded to 4ths here.
UI to follow.
2022-08-26 14:10:40 -06:00
b35796af75
Push2: Factor out set_pad_note_kind()
...
Factors button details out of the scale algorithm, to make it more clear.
2022-08-26 14:10:40 -06:00
2af9c2180a
Push2: Mostly fix scale menu text rendering ( #8599 )
...
"Mostly" because there are still some issues with horizontal overlap between
entries, but I think that's something that needs to be addressed separately.
Like earlier issues, this was caused by using a screen-derived or default
cairo/pango context. I also tinkered with some constants to make things look
sensible to me, and hopefully everywhere since it should always look the same
with the context fix.
2022-08-26 14:10:40 -06:00
2a31e0721d
Push2: Invert splash screen
...
This looked janky and out of place to me, since everything else is on black and
the LCD doesn't seem to do light backgrounds very well in general.
2022-08-26 14:10:40 -06:00
c4632da2e7
Push2: Drop "using namespace std"
...
No functional changes, just makes some more context explicit like the previous
commit.
2022-08-26 14:10:40 -06:00
61088a1a01
Push2: Use consistent naming convention for private member variables
...
No functional changes, just makes code easier to read.
2022-08-26 14:10:36 -06:00
Mads Kiilerich
3fa64af624
osc: fix warning message
...
Apparently just a missing update from copy-paste.
2022-08-19 10:58:41 -06:00
Mads Kiilerich
1f1565e08b
surface faderport: drop old debug print
...
This showed up in test output, and was introduced 5 years ago in
ecc2348ecc
.
2022-08-19 10:56:55 -06:00
db8262bd7b
Mackie Control: Use view names from Mackie spec and define them all
2022-08-05 00:50:27 +02:00
de0893cc8d
backport to Ardour: Don't set the MCU Click led state from the button
...
Allow the update process to get the correct state and update the LED.
2022-08-05 00:43:02 +02:00
luz paz
47c525315d
Fix various typos
...
Found via `codespell -q 3 -S *.po,./.git,./share/patchfiles,./libs,./msvc_extra_headers,./share/web_surfaces,*.patch -L ba,buss,busses,discreet,doubleclick,hsi,ontop,ro,scrollin,seh,siz,sord,sur,te,trough,ue`
2022-08-03 12:10:01 -06:00
1f65c66727
MCU: fix mixer-strip buttons (see also 0d9656ef82
)
2022-07-15 23:46:28 +02:00
c6566f3933
mackie protocol: add more null checks; remove some debug msgs
2022-06-30 16:47:17 -05:00
198df78cfe
mackie debugging: ugly printouts
2022-06-30 14:04:51 -05:00
66bd195030
mackie protocol: potential crash-fix
2022-06-30 11:30:07 -05:00
0d9656ef82
use new macros to cleanup #ifndef NDEBUG as much as possible (libs edition)
2022-06-22 13:31:08 -06:00
41948821e2
fix optimized unused variable warning
2022-06-22 13:31:08 -06:00
ebb9d3d4dc
fix optimized unused variable warning
2022-06-22 13:31:08 -06:00
26d2c8a7fa
handle compiler stupidity with early return
2022-06-22 13:31:08 -06:00
bb5798ee66
fix may-be-used-unset warning and bizarre brace/indent style
2022-06-22 13:31:08 -06:00
6fd4c01fc9
fix optimized unused variable warning
2022-06-22 13:31:08 -06:00
4878c48386
fix optimized unused variable warning
2022-06-22 13:31:08 -06:00
7a32ff33d4
handle compiler stupidity with early return
2022-06-22 13:31:08 -06:00
f7b91d577b
handle compiler stupidity with early return
2022-06-22 13:31:08 -06:00
9922daf284
handle compiler stupidity with early return
2022-06-22 13:31:08 -06:00
d66bda9f07
mackie send subview: potential fix for send-enable banking (vpot push)
2022-06-16 13:27:30 -05:00
75fe2ce095
generic MIDI: extend select function API and make argument be bank-relative, always
2022-06-05 15:37:04 -06:00
eb4ac77a7b
control protocol: allow protocol implementations to override rid selection API
2022-06-05 15:36:41 -06:00
2e027e5894
generic MIDI: re-enable the "select" function
2022-06-05 15:03:48 -06:00
33b7c38e42
control protocols: add API to control selection by RID
2022-06-05 15:03:48 -06:00
dancesWithBugs
e505407b76
fix boundary check
2022-05-28 19:14:57 +02:00
cc2e6b3cf8
libardour: change API of Session::request_locate() to include "force" argument
...
No behavior should be changed by this modification; the argument has a default value of false, which
matches previous semantics, and every instance where the argument is specified, it is given as false.
2022-05-27 18:49:11 -06:00
9758e6280f
use new event loop callback to ensure that all surface/control protocol threads have tempo map ptr set
2022-05-16 15:24:52 -06:00
2079a150dd
probable fix for Mackie vpot press/release misbehavior in sends (and plugin) subview
...
The accessed control needs to reflect the current subview banking
2022-05-16 15:24:52 -06:00
be90b4e0ca
US2400 - fix crash when no strip is selected
...
first selected could be null, so check that first.
This is untested since I don't have a surface.
2022-05-10 09:17:33 -05:00
44bb8caa65
Use new Route fed-by API (2/2)
2022-05-06 14:02:35 +02:00
3862d13e21
Prepare for GraphNode::feeds () and fed-by API update (2/2)
2022-05-06 14:02:34 +02:00
Caleb Potter
b689d2881e
M: US2400: allows user to bank over sends while in TrackView.
...
Sends only appear on the last 8 vpots, which means sends to matrices 9-12
are unreachable without banking.
2022-05-02 22:41:40 -06:00
Caleb Potter
20fff72370
US2400: Use Bank- and Bank+ to page over sends on pots
2022-05-02 22:41:40 -06:00
Caleb Potter
0d05cd231b
US2400: maps track parameters and sends to vpots
...
Pots 0-4 now display the 5 parameters from the Mackie track subview when a
track is selected and pots 8-23 will display up to the first 16 sends.
2022-05-02 22:41:40 -06:00
7cd16d9473
Apply new Item method name to various other usage sites
2022-04-27 13:16:18 +02:00
c9b8a91edb
apply new Item method name to various other usage sites
2022-04-26 22:04:08 -06:00
Caleb Potter
8b82de7ac1
Prevents user from infinitely banking right in mackie plugin subview
...
Changes handle_cursor_right_press() in PluginSubviewState to pure virtual
function so that PluginSelect and PluginEdit can each have their own
version.
2022-04-18 11:14:53 -06:00
Caleb Potter
f3bd740913
Formatting. Adds spaces before parentheses
2022-04-18 11:07:45 -06:00
Caleb Potter
8e375f5acd
Moves left brackets to be on the same line as conditionals
2022-04-18 11:07:45 -06:00
Caleb Potter
bc6461dc76
Prevents user from infinitely banking right in mackie sends subview
2022-04-18 11:07:45 -06:00
Caleb Potter
17a7dbe06d
adds ability to bank over in mackie sends subview
...
The cursor_left and cursor_right mackie control buttons will now move the
sends subview left and right like it does in the plugin subview. Previously,
if you had more than 8 sends (which is almost always the case for Mixbus),
then sends 9+ were unreachable on an 8 channel controller.
2022-04-18 11:07:45 -06:00
844479568b
fix building OSC surface (amend 9b89dd7967
)
2022-04-14 04:49:23 +02:00
Mads Kiilerich
49855e52aa
wscript: consistently have at most one empty separator line
2022-04-09 12:16:40 +02:00
Mads Kiilerich
bac32a8c2d
wscript: consistently use 4 spaces for indentation
2022-04-09 12:16:40 +02:00
Mads Kiilerich
c3bdcdd3fa
wscript: consistently use space indentation instead of tab indentation
2022-04-09 12:16:40 +02:00
Mads Kiilerich
06f8936a73
wscript: remove trailing whitespace
2022-04-09 12:16:37 +02:00
7c3268d12f
temporal: TempoMap::use() returns a const ptr to enforce semantics (library version)
...
This commit leaves two issues outstanding:
1. unclear/ugly semantics for drag operations that reset the GUI thread's tempo map to the writable copy
2. undo/redo for the tempo map
These will be addressed in future commits
2022-04-08 11:58:04 -06:00
Remi Thebault
a77ac7107f
fix websockets toggle_roll
...
Also fix BasicUI::toggle_roll who is supposed to do
the same as spacebar but doesn't.
2022-04-08 19:48:23 +02:00
Remi Thebault
93987de09f
websockets provide BBT
2022-04-08 19:39:25 +02:00
Mads Kiilerich
9b89dd7967
wscript: drop liblo check in libs/surfaces - it is already mandatory in top level wscript
2022-04-08 18:39:15 +02:00
7bf89ce109
Constification: make Stateful::get_state() const, with all other required const-ness added (libs)
2022-04-06 21:56:59 -06:00
CalebJPotter
e64fdcfb55
fixes issue where monitor section gets stuck on mute
...
This mute button wasn't meant to mute the monitor section in the first
place.
2022-03-17 15:37:07 -06:00
Caleb Potter
643342995d
fixes issue where MCP controller strips got stranded switching banks
...
This commit fixes an issue where if your controller was currently on a
bank not near the first few tracks, and you then deleted tracks, the
controller bank buttons would appear unresponsive because of the
"if (initial >= sorted.size())" check in switch_banks().
This would occur when the difference between the _initial_bank and
whatever sorted.size() returns was greater than or equal to strip_cnt.
For example, if your _initial_bank was 48, your strip_cnt was 24 and you
had 24 tracks after the deletion, then the above conditional would evaluate
to true and exit out of switch_banks BEFORE actually switching the bank,
effectively stranding the controller unless you added enough tracks back.
2022-03-17 15:37:07 -06:00
Caleb Potter
e89d85f776
remaps button handlers specific to iCon QCon ProG2
...
If the QCon ProG2 is selected as the device profile, then the button map
will be built with handlers that map specific to the iCon QCon ProG2
controller.
2022-03-17 15:37:07 -06:00
Caleb Potter
ad4475fe7a
adds iCon QCon ProG2 specific MCP button handlers
...
Adds function to clear solo and (with shift) mute all channels.Adds
function to save and (with shift) save as. Adds function to toggle all
processors on selected track. Adds functions to select track to the
left/right. Adds function to add marker and (with shift) remove marker at
playhead. Adds function to undo without needing shift modifier.
2022-03-17 15:37:07 -06:00
Caleb Potter
b846356f87
adds MCP button to toggle between master fader and monitor fader
...
Adds an MCP button function to switch the master fader on the controller
between the session master fader and (if enabled) monitor fader.
2022-03-17 15:37:07 -06:00
Caleb Potter
b6a1144472
adds a few general purpose MCP button functions
...
Adds a function to go to the next and previous marker. Adds a function to
redo (without requiring a shift modifier). Adds a function to open a
project.
2022-03-17 15:37:07 -06:00
Caleb Potter
381276e862
adds support for iCon QCon ProG2 controller
...
This commit does no remapping, but it adds the Pro G2 as a value in the
device profiles.
2022-03-17 15:37:07 -06:00
Caleb Potter
d1f4679abc
adds support for iCon Platform M+ controller
...
Adds a device profile for iCon Platform M+ controller and new function
that flips between editor and mixer window. This function is mapped to
"mixer" button on controller.
2022-03-17 15:37:07 -06:00
Caleb Potter
fc961f1622
adds support for MCP device-specific button to function remapping
...
Adding this function so that different devices can remap their buttons
to functions based on device profile.
2022-03-17 15:37:07 -06:00
7633005a22
Fix solo control activation
2022-03-17 13:51:30 -07:00
f58b8e3cb4
fix accidental insertion of "x1"
2022-02-09 10:08:01 -07:00
e77e3b35b8
mackie: fix crash when using thread-local tempo map
...
TempoMap::use() assumes the thread_local pointer has been set up. This
is not the case for the control protocol event loop, so call ::fetch()
instead which does not require this assumption (and sets the thread_local
pointer too, though nothing else in the Mackie code uses it)
2022-02-09 10:08:01 -07:00
Mads Kiilerich
8bb91099c5
wscript: drop configure statements already present in the top level wscript
...
Avoid repeated pointless configure messages like:
Checking for 'g++' (C++ compiler!) : /usr/lib64/ccache/g++
Checking for 'gcc' (C compiler) : /usr/lib64/ccache/gcc
2022-01-22 22:19:03 +01:00
9ee4c14bce
generic MIDI: extend menu options to drop ALL MIDI bindings, not just a binding map
2022-01-15 13:15:38 -07:00
16511974e2
Fix class/struct mismatch C++ ABI [-Wmismatched-tags]
2022-01-10 00:06:24 +01:00
12847b0125
remove Session::bbt_time() and use TempoMap::use()->bbt_at() explicitly everywhere
2021-12-14 21:59:33 -07:00
58796e6b19
fix likely crash in faderport8 support, from calling TempoMap::use() and not TempoMap::fetch()
2021-12-13 21:07:18 -07:00
Marijn Kruisselbrink
0e799357a8
Fix crash in mackie strip code.
...
Strip::notify_property_changed accesses _stripable without verifying
that is not null. However it is possible for this to be null, so
add a null check.
2021-12-13 21:03:38 -07:00
d04d25e7c7
Mackie Control: Clean up detection of QCon master display and meter.
...
Only enable the master display and meter modes for Qcon devices if this
surface is in the master position. Extenders don't have master meters
or master displays.
2021-12-13 21:26:45 -06:00
d60a5187bd
Mackie Control: Fix detection of QCon Extenders so 2nd LCD is correct
...
Logic to detect an extender has to be based on if this surface object is
the master position. Has master fader is true for all surfaces in this
"device".
2021-12-13 21:25:07 -06:00
60be0c27a1
Use updated temporal API 1/2
2021-12-11 14:42:36 +01:00
fcf0c253ad
control surface changes to follow TempoMap::sample_at() API change
2021-11-17 15:57:54 -07:00
Bruno Vernay
e3836e1162
Typo in code Paramater
2021-10-30 23:02:04 +02:00
2066b6b33a
websockets: require Windows7 (with pollfd)
2021-10-13 21:40:39 +02:00
2e0a069c51
WebSockets: use v7 tempo-map correctly
2021-10-12 15:32:41 +02:00
9e763c2672
remove all dangling event-loop-precall code
2021-10-11 17:48:53 -06:00
9adc336d50
control surfaces: fix BasicUI::jump_by_bars() to use tempo map correctly
2021-10-11 17:48:53 -06:00
52decdd1b4
push2: prevent crash caused by missing per-thread tempo map ptr
2021-10-09 11:47:13 -06:00
3475350d7c
push2: session button should be lit
2021-10-09 11:46:53 -06:00
ed3d374f47
Fix --no-nls compilation 1/2 -- #8802
...
pbd/i18n.h MUST NEVER be included from header files and always be
the last include. This is because `_` is declared other headers
notably boost and some apple headers.
leading to issues like
../libs/pbd/gettext.h:58:27: error: expected unqualified-id before ‘const’
58 | # define gettext(Msgid) ((const char *) (Msgid))
2021-09-27 16:28:44 +02:00
b3fff25d5c
Fix --maschine builds (pure virtual)
2021-08-13 21:53:18 +02:00
c0425ba70f
canvas: items should not add child bboxes in their ::compute_bounding_box() method, Item::bounding_box() does that
2021-08-13 12:51:37 -06:00
8bada4b5e1
remove public ::bbt_at (INTEGER) methods, because of superclock_t/samplepos_t confusion
...
libtemporal still needs ::bbt_at (superclock_t) fairly often so retain it as a private method, but public
interfaces take either Beats or timepos_t
2021-08-13 12:51:35 -06:00
3702da5488
fix up osc support after rebase/merge conflicts
2021-08-13 12:51:33 -06:00
364fffd458
temporal: TempoMap::Changed is now a static member named TempoMap::MapChanged
2021-08-13 12:51:32 -06:00
c64db47b37
use new libtemporal sample rate mechanism (libs edition)
2021-08-13 12:51:31 -06:00
bed76798f3
manual fixups after rebase against master (general libs edition)
2021-08-13 12:51:31 -06:00
11af6253f5
mackie: NOOP: fix whitespace
2021-08-13 12:51:31 -06:00
b866335d8f
add glib event loop callback to Generic MIDI surface support
2021-08-13 12:51:30 -06:00
ce7ea4ec36
Use glib event callback in Mackie Control support to set thread-local variables
2021-08-13 12:51:30 -06:00
79763893b3
remove/hide Session::tempo_map() and use TempoMap::use() instead (thread local shared ptr)
2021-08-13 12:51:30 -06:00
f67029bd02
random commit to facilitate trivial move of work from laptop back to main system
2021-08-13 12:51:29 -06:00
086e48796c
surfaces: first round of conversion to use timeline types
2021-08-13 12:51:29 -06:00
f4490f54c5
change Timecode::BBT_Time to use Temporal namespace, plus a couple of other minor changes to enable compilation
...
This still uses the tempo map object in libs/ardour, not the new one in libs/temporal, and isn't likely to be functional
(though it could be)
2021-08-13 12:51:28 -06:00
60f3985957
replace push2 call to Canvas::Box::pack_start() with Canvas::Box::add() which is equivalent
...
::pack_start() was removed
2021-08-13 12:51:26 -06:00
210702481b
add required virtual method to Push2Canvas
2021-08-13 12:51:26 -06:00
9e5354a65e
tweak a minor issue with canvas API
2021-08-13 12:51:26 -06:00
bd008fb87c
Mackie Control: Fix logic in timecode display update
...
Old and new strings are compared before sending to keep traffic down. To
ensure that we send all the required characters be sure to init the last
value to characters that are never going to appear in a real string.
Space is a bad choice since it is a valid character. Use NUL instead.
2021-08-10 16:20:36 -05:00
4001fc2cff
Mackie Control: Use space as replacement for invaild characters on TC disp
2021-08-10 16:17:11 -05:00
563309f6d1
Mackie Control: Fix one off error in timecode display that broke spaces
...
Ignored spaces and allowed character 0x60 which is not valid on the display
2021-08-10 16:16:08 -05:00
8cf7204917
Mackie Control: Use selected device's info when building the Keys dialog
...
The device info file allows key names and values to be configured in each
device file. Use that information when building the Functions Keys tab in
the Mackie protocol setup dialog.
2021-08-06 12:18:24 -05:00
c1dddb1b25
Mackie Control: Be consistent and take the surfaces lock when iterating.
...
Some places in the code take the lock, others don't. This makes everyone
take the lock.
2021-08-03 16:26:26 -05:00
a84543bcc7
Mackie Control: Don't crash when the master is on the right
...
While surfaces are being created it is possible to have surfaces, but
not have a master surface yet. This happens when the config calls
for extenders to the left of the master section. Don't assume that
if we have surfaces, the master surface is available.
2021-08-03 16:26:26 -05:00
454b330950
Mackie Control: Hold the surfaces lock while resetting the master_surface
2021-08-03 16:26:26 -05:00
193cebc912
US2400: build-fix: need some IFDEFs for Mixbus.
2021-08-03 10:58:30 -05:00
521117054e
US2400: Fix order of mixbuses in Flip mode (Mixbus only)
2021-08-03 10:38:19 -05:00
398a1efbd5
US2400: Fix send levels from joystick ("surround pan" on mixbuses 11,12) (Mixbus32C only)
2021-08-03 10:38:18 -05:00
0b5ab1b570
US2400: Fix direction of pan knob LEDs
2021-08-03 10:38:18 -05:00
a22fe3cdc8
Amend 285bb4ac7f
: remove incomplete code
2021-07-19 20:32:11 -05:00
285bb4ac7f
Mackie Control : Improve debug trace output by skipping meter write output
2021-07-19 12:25:27 -05:00
581589f080
Mackie Control: Don't call port write directly since it bypasses active chk
...
This keeps the master fader from sending midi output before everything
is initialized.
2021-07-19 12:24:36 -05:00