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