13
0
Commit Graph

253 Commits

Author SHA1 Message Date
baf307838c push2: change ordering within destructor to avoid event loop thread drawing-after-delete 2023-05-04 12:34:37 -06:00
336f51e1f0
Push2: implement MIDI port probing, auto-enable 2023-05-04 00:57:16 +02:00
65346496f5
Refactor Ctrl Surface API
* reserve "probe" to actually probe for devices
* use separate probe for libusb and MIDI port devices
* use "available" to check if surface can be used
* allow both methods to be NULL
* remove unused ControlProtocolDescriptor* argument

Most surface just return `true` for available.
2023-05-03 15:38:42 +02:00
847f1e54c1
Clean up ctrl surface API
Remove unused fields, no mandatory surfaces
2023-05-01 02:22:45 +02:00
8629aea237 push2: shift held while using touch strip sends modulation, not pitch bend 2023-04-21 17:20:17 -06:00
f718279949 surfaces & event loops: i really mean no more request buffer factories 2023-04-21 13:55:58 -06:00
ba66381ab0 push2: remove unused member 2023-04-21 12:16:37 -06:00
b35518e212 switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr
This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
2023-03-24 14:19:15 -06:00
39ed528e25 std-ize: convert all boost shared/weak ptr includes to <memory>
Also fix stdint.h -> cstdint and alphabetically order std includes
2023-03-24 14:19:15 -06:00
2c7f8eeb97
Indicate UTF8 literals - fixes glyph rendering with MSVC (1/2) 2023-01-16 21:41:09 +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
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
2939ed3164
Add dedicated InsertReturnLevel type
This is preparation for PortInsert Send and Return
level control.
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
7fe7adb83c push2: adapt to new unbang and 'stop' semantics (needs testing) 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
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
8ed8895439 push2: launch clips with pads 2022-08-27 08:15:40 -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