13
0
Commit Graph

23889 Commits

Author SHA1 Message Date
994f5cec0e centralize computation of tempo from SMF information 2017-02-08 19:07:10 +01:00
bbbb874c03 an automation control that has to do things before its value is set in an RT context should potentially tell its ControlGroup
This fixes record-enable controls in a group failing generate
a call to the required stuff for tracks (moving meter position,
preparing diskstream) #7213
2017-02-08 18:55:05 +01:00
234ea15499 do NOT remove tracks from selection during drag selection on the basis of geometry alone.
Membership of select-enabled route groups matters too.
2017-02-08 17:40:27 +01:00
62995bd38d stop a crash during selection 2017-02-08 16:27:36 +01:00
nick_m
2d47705998 5.5 incorrectly marked the initial tempo as not locked to meter.
- the initial tempo must always be locked to meter,
	  so i think it is safe to explicitly set it anyway.
2017-02-08 09:58:15 +11:00
d806c973d6 Update Russian translation 2017-02-07 17:29:01 +01:00
948a041736 remove debug output 2017-02-07 17:09:28 +01:00
4aaf3fcb95 3 actions (trim-front, trim-back, set-sync-position) do not need to be region-selection sensitive.
They get regions via ::get_regions_from_selection_and_edit_point().

Many other editor operations need to be manually evaluated for this change, also.
2017-02-07 16:51:32 +01:00
e42c0ff1ea only reverse propagate solo-by-others-downstream if connections on a Route change, not just configuration changes.
This prevents a scenario where the route has had its solo control's state set from
XML, but then we configure the route's output, and invoke output_change_handler().
Without the new conditional, this would check which downstream routes are soloed,
find none, and then unset the soloed-by-downstream state of the solo control.
2017-02-07 16:51:32 +01:00
08657843ac don't call shared_from_this() for every route when doing solo-downstream propagation 2017-02-07 16:51:32 +01:00
nick_m
2e8e5f14fd fix legacy session where initial tempo was not locked to meter, 2017-02-08 02:23:54 +11:00
nick_m
bd8ab472f5 tempo dialog uses three decimal places in numeric entry. 2017-02-07 23:31:40 +11:00
c59dded55d Categorize the mixer actions. 2017-02-06 18:18:56 -06:00
d5f150b51b Add several new categories and re-sort some keybindings so they display more nicely in html printout. 2017-02-06 18:05:53 -06:00
c3d8967870 Some tweaks to default keybindings:
* Moved some actions to match the file organization: actions are in the order they appear on a qwerty keyboard
* Removed actions for F1 and F2, these were hiding View actions
* Removed action H for hide, which was conflicting with play-selected-regions
* Moved the grouping of jump-to-mark actions into Moving the Playhead
2017-02-06 12:52:40 -06:00
cdab4c9906 Revert to allowing stacked layer region view for MIDI tracks, for now. 2017-02-06 12:52:40 -06:00
e16141c9aa Tweak output formatting of save_all_bindings_as_html 2017-02-06 12:52:39 -06:00
nick_m
931910b046 hotfix for cross-track dragging bug with music-locked regions. 2017-02-07 05:08:54 +11:00
nick_m
b24dd49c1a update note length when dragging notes (over tempo change) 2017-02-07 03:10:02 +11:00
7a1404ff8b use new PBD::Controllable API to correctly save solo and mute controls, which may be slaved to a master 2017-02-06 16:49:08 +01:00
5d5d9b8114 add new API to PBD::Controllable, ::get_save_value()
Designed to allow derived classes to *save* a different value
than would be reported by ::get_value().

Specifically there so that slaved controls can save/restore
their *own* state, not the value that ::get_value() would
return.
2017-02-06 16:49:08 +01:00
edd1061c3d save/restore VCA master state inside slaves, so that a reloaded session ends up back in the same state 2017-02-06 16:49:08 +01:00
nick_m
4161a60244 NoteDrag copy modifier detection is no longer explicit. 2017-02-07 01:56:47 +11:00
4b7d902cc0 Modify our MSVC project to build the newer qm-dsp plugins 2017-02-06 09:49:22 +00:00
715b9a959a Remove a JE addition to one of the qm-dsp source files (no longer needed) 2017-02-06 09:47:10 +00:00
5dabe45341 Some minor changes in preparation for building the newer Vamp plugins 2017-02-05 15:05:32 +00:00
ea2b00c263 unused code, showing basics of how to define a custom gtkmm-2.4 treemodel for stripables.
Not used because it turns out that the model in the GUI
needs to be based on axisviews, some of which correspond
directly to Stripables and some do not
2017-02-05 15:51:00 +01:00
5c1efd864c fix type warning 2017-02-05 10:58:10 +01:00
nick_m
987c1cb94a remove overzealous bounds check when dropping notes. 2017-02-05 05:26:18 +11:00
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