Commit graph

50 commits

Author SHA1 Message Date
Paul Davis
69a789c513 push2: make quantize and duplicate buttons do something useful 2016-09-27 14:59:31 -05:00
Paul Davis
f35c5fd5a6 push2: master button now does something useful 2016-09-27 14:59:31 -05:00
Paul Davis
f12150a1ed push2: always use a contrasting color when flashing played pads 2016-09-27 14:59:31 -05:00
Paul Davis
cb340bf190 push2: when playing pads, flash all pad LEDs for the same note number for the pressed pad 2016-09-27 14:59:31 -05:00
Paul Davis
13295cf060 use ArdourCanvas::Color not uint32_t for push2 color decls 2016-09-27 14:59:31 -05:00
Paul Davis
6f2ac5d6ad push2: various changes in support of menus and scale mode 2016-09-27 14:59:31 -05:00
Paul Davis
216ce7bcb8 a slew of unconnected mostly minor tweaks to get Push2 support back to where it was...
... prior to using the canvas for the video screen
2016-09-27 14:59:31 -05:00
Paul Davis
b835486170 tweaks and so forth to get first canvas-based rendering to Push2 display 2016-09-27 14:59:31 -05:00
Paul Davis
7c9f3acc60 first compiling and theoretically correct version of Push2 canvas display.
Not tested with device at this point
2016-09-27 14:59:31 -05:00
Paul Davis
b822d8be36 basic code to get/set pressure mode to/from the push2 2016-09-27 14:59:31 -05:00
Paul Davis
11843e00ba continuing work on refining push2 mix layout 2016-09-27 14:59:31 -05:00
Paul Davis
b830965288 push2: steps toward a more ableton-like layout in mix mode 2016-09-27 14:59:31 -05:00
Paul Davis
4cc71d2966 push2: parameterize and centralize colors 2016-09-27 14:59:31 -05:00
Paul Davis
ccbe1797d6 push2: color palette management, and responding to 2 track properties in TrackMix layout 2016-09-27 14:59:31 -05:00
Paul Davis
a4324d79a7 push2: add a little meat to the bones of the TrackMix layout (just a name, for now) 2016-09-27 14:59:31 -05:00
Paul Davis
2689458500 push2: rearrange and separate header file material 2016-09-27 14:59:31 -05:00
Paul Davis
64d390ff13 push2: remove unneeded maps from Push2 object 2016-09-27 14:59:30 -05:00
Paul Davis
14d80ec5f8 refactor Push2 GUI into modular "layouts" that encapsulate a given screen, its drawing and event handling 2016-09-27 14:59:30 -05:00
Paul Davis
86578ea0cc push2: first somewhat operational versions of menus 2016-09-27 14:59:30 -05:00
Paul Davis
b37531e04f push2: basics of 4x 4x4 percussive mode, similar to MPC (and vaguely to Live) 2016-09-27 14:59:30 -05:00
Paul Davis
b31df0db2c add bundle support to push2 2016-09-27 14:59:30 -05:00
Paul Davis
33a2995fd8 push2: save and restore push2 pad state, etc. 2016-09-27 14:59:30 -05:00
Paul Davis
70477e6fed push2: almost fully operational ableton style pad mapping, etc 2016-09-27 14:59:30 -05:00
Paul Davis
2aec2161f9 push2: initial sort of working pad remapping 2016-09-27 14:59:30 -05:00
Paul Davis
597c737ab5 push2: get automatic pad connection to selected MIDI track working again 2016-09-27 14:59:30 -05:00
Paul Davis
afef816a7b push2: use a map for direct lookup of pad note 2016-09-27 14:59:30 -05:00
Paul Davis
66453868cd push2: update GUI pad display when octave shift is used, or pad map is changed 2016-09-27 14:59:30 -05:00
Paul Davis
eff67c8a8f push2: basics of octave shifting 2016-09-27 14:59:30 -05:00
Paul Davis
cf28d71783 push2: basic GUI dialog 2016-09-27 14:59:30 -05:00
Paul Davis
67620c353f push2: connect first selected track to pad port (and disconnect).
Provisional. Lots of (fun) work to do here
2016-09-27 14:59:30 -05:00
Paul Davis
eb43344cf6 use modified add_shadow_port API(); make pads flash when pressed 2016-09-27 14:59:30 -05:00
Paul Davis
1448be481f push2: splash screen
Coded while the paint prep dries in the sun
2016-09-27 14:59:29 -05:00
Paul Davis
169cf294c5 push2: expose page right/left buttons for scrolling; use right/left for banking; mute+solo debugging in place 2016-09-27 14:59:29 -05:00
Paul Davis
3932f07b6b push2: numerous changes, including long press actions 2016-09-27 14:59:29 -05:00
Paul Davis
f699773490 clear button states at startup *and* shutdown 2016-09-27 14:59:29 -05:00
Paul Davis
2afb7f1a30 basic implementation of scrubbing via push2 touch strip 2016-09-27 14:59:29 -05:00
Paul Davis
6691975031 gain automation implemented.
Push 2 is rather slow to send touch-end messages.
2016-09-27 14:59:29 -05:00
Paul Davis
c26de72870 use encoders for gain control 2016-09-27 14:59:29 -05:00
Paul Davis
f290be21ee use right-side buttons to goto_nth_marker() 2016-09-27 14:59:29 -05:00
Paul Davis
93dd5414d6 beginning of stripable control; solo+mute mostly operational 2016-09-27 14:59:29 -05:00
Paul Davis
c6faede00c add shift modifier support 2016-09-27 14:59:29 -05:00
Paul Davis
98335084c7 turn on all buttons that be envisaged as useful in ardour (for now); add support for edit-range-from-playhead ops 2016-09-27 14:59:29 -05:00
Paul Davis
eadf9bbef1 light solo button, and do cancel_all_solo() when it is pressed 2016-09-27 14:59:29 -05:00
Paul Davis
a96b320e3d expand display contents to include TC & BBT clocks, plus button function and track indicators
So many possibilities, so little time. Really going to need a "native" widget kit before this is finished
2016-09-27 14:59:29 -05:00
Paul Davis
5ae72d574c only 1 MIDI port needed; more button functionality 2016-09-27 14:59:29 -05:00
Paul Davis
4991bf5a1a push2: working bidirectional communication, some transport control/display (LED only); some scrolling 2016-09-27 14:59:29 -05:00
Paul Davis
96db13e1ba push2: working port i/o 2016-09-27 14:59:29 -05:00
Paul Davis
67698b8232 push2: port registration, LED setup 2016-09-27 14:59:29 -05:00
Paul Davis
189173c1b1 various fixes for push2 support. Now setups video display when enabled 2016-09-27 14:59:29 -05:00
Paul Davis
413fe2cf9a adjustments to build nascent push2 surface support 2016-09-27 14:59:29 -05:00