13
0
Commit Graph

23610 Commits

Author SHA1 Message Date
nick_m
5031bdcf10 midi note drags are music-based.
- wysiwyg (during drag) when dragging more than one note across
	  a tempo change.

	- introduces a muscal equivalent of snap_delta (only used for
	  note drags atm)

	- split earliest note in selection into a separate function

	- MRV::copy_selection() returns the equivalent _primary note
  	  to avoid offset hell.

	- RV::snap_frame_to_frame returns a MusicFrame

	- prevent note drag moving before region start.
2017-02-05 05:02:01 +11:00
fac04afbba If 'MidiRegionView::find_canvas_sys_ex()' fails, make it return a boost::shared_ptr<> (rather than returning an int) 2017-02-04 16:14:56 +00:00
70e4bb30a0 'CheckMenuItem' conflicts with an item already existing in MSVC 2017-02-04 16:14:55 +00:00
8e06f43f80 make more of an effort to ensure that the last element in Selection::tracks is the most-recently selected 2017-02-04 15:08:22 +01:00
nick_m
893d4e7a07 fix potential absorption of music-locked tempo into meter-locked one. 2017-02-05 00:30:13 +11:00
efd859a0ee Fix a crash in rhythm ferret if the relevant plugin couldn't be found for some reason
The crash was caused by not catching 'failed_constructor()' (which gets thrown in the c'tor for AudioAnalyser).
2017-02-04 12:58:33 +00:00
d1599abad3 Some paths weren't getting set up correctly for the MSVC build
Fortunately, only the VAMP_PATH was causing a problem. The others were only relevant for a Debug build
2017-02-04 12:54:19 +00:00
nick_m
f7b005ebf1 clean up patch change/sysex headers. 2017-02-04 22:57:36 +11:00
nick_m
2eca71e6f1 set sysex height & position on redisplay. 2017-02-04 22:57:36 +11:00
nick_m
3e4eaf3991 improve sysex data display.
- don't add a new SysEx canvas item every time we zoom or drag.

	- speed up redisplay generally using PatchChange-like method
	  for finding items (find_canvas_sys_ex() in boost::unordered_map).
2017-02-04 22:57:36 +11:00
nick_m
52d3c2216d more inconsistent menu item fiddling. 2017-02-04 22:57:36 +11:00
nick_m
1cfa6bd69f more messing about with inconsistent menu state. 2017-02-04 22:57:36 +11:00
nick_m
f336f4e6d1 allow "Glue to Bars & Beats" in region menu to be in an inconsistent state.
- toggling an inconsistent lock style sets all selected regions
	  to AudioTime
2017-02-04 22:57:36 +11:00
nick_m
f96d6894e8 remove unused empoMap::round_to_beat_subdivision() 2017-02-04 22:57:36 +11:00
nick_m
04c484089c non-primary music-locked regions follow tempo changes while dragging.
- the contents still don't update but position is much
          more wysiwyg.
2017-02-04 22:57:36 +11:00
nick_m
d38dc86380 rework RegionMotionDrag so that we can actually drag a region to zero.
- did this ever work?
2017-02-04 22:57:36 +11:00
nick_m
b04f89be51 make dragging a region from the list not crash.
- its still a fake event, but we can at least get the snap correct.

	- playlist->add_region() parameters were whacky
	  (for Playlist::add_region_internal()?)
2017-02-04 22:57:36 +11:00
nick_m
f751a0993b ensure region _quarter_note is set (factory). 2017-02-04 22:57:36 +11:00
nick_m
2ddc21c3a9 ensure region _quarter_note is set in offset ctor.. 2017-02-04 22:57:36 +11:00
nick_m
970ed12fee fix thinko wrt Drag::adjusted_frame() 2017-02-04 22:57:36 +11:00
nick_m
650c1381d4 setup_snap_delta() need only take a framepos_t. 2017-02-04 22:57:36 +11:00
nick_m
59daffea1d rework snap
snap now fills in a struct (MusicFrame) which contins a snapped frame
along with a music divisor.
this gives useful information wrt magnetic snap which may or may not
have rounded to an exact musical position.

region position may now be set musically (using quarter notes for now).

this patch fixes several problems in the current code:

	- dragging a list of music-locked regions now maintains correct
	  musical offsets within the list.

	- splitting regions using magnetic snap works correctly (#7192)

	- cut drag should now work correctly with magnetic snap.

	- musical length of split midi regions is no longer frame based.
2017-02-04 22:57:36 +11:00
a21a414615 another tweak to maybe-fix crash in Playlist::fade_range() 2017-02-03 23:03:01 +01:00
306647b1d0 Tweak MIDI channel dialog layout. 2017-02-02 21:44:43 -06:00
bc79fc07ce Remove redundant MIDI submenu. The items are now in the main menu. 2017-02-02 21:44:43 -06:00
a1c15586e0 potential fix for crashes when creating fade-ranges 2017-02-02 23:02:48 +01:00
f84cdb3381 fix crash when closing session w/action hooks
drop_callback() deletes the Callback itself (lua state is invalid)
2017-02-02 21:42:57 +01:00
b759bae0cd Right-click on a VCA to assign it to the selected channels. 2017-02-02 11:02:10 -06:00
71003b0235 toolbar building from file given by command line 2017-02-02 14:36:02 +01:00
f2327835f9 Lua script to save a snapshot after export 2017-02-02 14:20:08 +01:00
2283e3b6ce canvas tester tweak 2017-02-02 14:16:27 +01:00
c20ed6b9f6 toolbar creation from text files 2017-02-02 14:16:17 +01:00
61138a9ef8 shorten enum/string for icons by avoiding Gtkmm2ext namespace 2017-02-02 14:09:42 +01:00
d9dc2592d0 include ArdourIcon in declared enums 2017-02-02 14:05:11 +01:00
82f104b8f0 use different source file for canvas tester 2017-02-02 13:29:17 +01:00
f50c99e2a9 additional commit for removal of TransportControllables 2017-02-02 13:05:05 +01:00
35f35ad662 ARDOUR_UI transport buttons should use ArdourButton::set_related_action().
I have no idea what I or anyone was thinking with the silly
TransportControllable nonsense, but it's all gone now.
2017-02-02 13:05:05 +01:00
693baa8430 GUI to select export session/snapshot name 2017-02-02 12:44:08 +01:00
f74412c1e5 Export option to use snapshot name instead of session name 2017-02-02 12:40:26 +01:00
f4261f26a9 update link to MB manual 2017-02-01 23:33:44 +01:00
2721f2fc24 Reduce continuous stream of warning messages (latent plugin, PH @ zero) 2017-02-01 23:20:27 +01:00
ddd0e862ce Properly remember window position.
Querying the position of unmapped windows may or may not return a valid
position. -- the configure handler is also called after hiding a window.
2017-02-01 23:07:57 +01:00
9144cbe93a playing games with canvas (grid) test 2017-02-01 21:58:20 +01:00
f5d6c908ac canvas::grid - more tweaks and improvements 2017-02-01 21:58:20 +01:00
fa2c4c525b canvas::grid : compute all row/col extents 2017-02-01 21:58:20 +01:00
94443bab7e basics of row/col span for Canvas::Grid 2017-02-01 21:58:20 +01:00
33bd5b3939 use new Grid API 2017-02-01 21:58:20 +01:00
2c9b0796a3 change Grid API to avoid unnecessary Duple and open door for row/col span 2017-02-01 21:58:20 +01:00
91908dde7e clear up some CSS padding/margin confusion, and add row/col spacing 2017-02-01 21:58:20 +01:00
46041c0afa valgrind option (commented) for canvas tester 2017-02-01 21:58:20 +01:00