ardour.git
7 years agoThis is the wrong approach to this problem. 5.6
Paul Davis [Thu, 9 Feb 2017 16:03:42 +0000 (17:03 +0100)]
This is the wrong approach to this problem.

Revert "3 actions (trim-front, trim-back, set-sync-position) do not need to be region-selection sensitive."

This reverts commit 4aaf3fcb95e280a4348bced300553d4166f72a71.

7 years agoremove debug output from PresentationInfo changes
Paul Davis [Thu, 9 Feb 2017 15:49:11 +0000 (16:49 +0100)]
remove debug output from PresentationInfo changes

7 years agoNO-OP: whitespace conversion
Paul Davis [Thu, 9 Feb 2017 15:27:34 +0000 (16:27 +0100)]
NO-OP: whitespace conversion

7 years agowhen considering whether or not to autoscroll teh canvas, first translate allocation...
Paul Davis [Thu, 9 Feb 2017 15:27:16 +0000 (16:27 +0100)]
when considering whether or not to autoscroll teh canvas, first translate allocation boundary into toplevel coordinates

7 years agoremove debugging stacktrace from mackie code
Paul Davis [Thu, 9 Feb 2017 11:47:25 +0000 (12:47 +0100)]
remove debugging stacktrace from mackie code

7 years agoNO-OP: whitespace
Paul Davis [Thu, 9 Feb 2017 11:40:00 +0000 (12:40 +0100)]
NO-OP: whitespace

7 years agoexplanatory comment and logic change to cover when we switch to the new session after...
Paul Davis [Thu, 9 Feb 2017 11:39:44 +0000 (12:39 +0100)]
explanatory comment and logic change to cover when we switch to the new session after save-as

7 years agoalways hide splash screen after save-as session switch
Paul Davis [Thu, 9 Feb 2017 11:39:20 +0000 (12:39 +0100)]
always hide splash screen after save-as session switch

7 years agofix save_as()' inadvertent marking a session as dirty during the process of saving...
Paul Davis [Thu, 9 Feb 2017 11:25:09 +0000 (12:25 +0100)]
fix save_as()' inadvertent marking a session as dirty during the process of saving state to disk

7 years agoNO-OP: whitespace removal
Paul Davis [Thu, 9 Feb 2017 11:23:32 +0000 (12:23 +0100)]
NO-OP: whitespace removal

7 years agowhen adding a default start/end range to a Location while saving a template, do not...
Paul Davis [Thu, 9 Feb 2017 11:22:59 +0000 (12:22 +0100)]
when adding a default start/end range to a Location while saving a template, do not mark the current session dirty

7 years agoAdd a VC project for building the ardourvampplugins
John Emmas [Thu, 9 Feb 2017 09:39:53 +0000 (09:39 +0000)]
Add a VC project for building the ardourvampplugins

7 years agoNO-OP: whitespace
Paul Davis [Wed, 8 Feb 2017 21:24:17 +0000 (22:24 +0100)]
NO-OP: whitespace

7 years agomake rude alert buttons expand vertically to use all available space.
Paul Davis [Wed, 8 Feb 2017 21:23:43 +0000 (22:23 +0100)]
make rude alert buttons expand vertically to use all available space.

7 years agoNO-OP: whitespace changes
Paul Davis [Wed, 8 Feb 2017 19:00:49 +0000 (20:00 +0100)]
NO-OP: whitespace changes

7 years agoimproved fix for #7208, hopefully
Paul Davis [Wed, 8 Feb 2017 19:00:36 +0000 (20:00 +0100)]
improved fix for #7208, hopefully

7 years agouse centralized SMF tempo method in both places where we show it
Paul Davis [Wed, 8 Feb 2017 18:07:28 +0000 (19:07 +0100)]
use centralized SMF tempo method in both places where we show it

7 years agocentralize computation of tempo from SMF information
Paul Davis [Wed, 8 Feb 2017 18:07:10 +0000 (19:07 +0100)]
centralize computation of tempo from SMF information

7 years agoan automation control that has to do things before its value is set in an RT context...
Paul Davis [Wed, 8 Feb 2017 17:55:05 +0000 (18:55 +0100)]
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

7 years agodo NOT remove tracks from selection during drag selection on the basis of geometry...
Paul Davis [Wed, 8 Feb 2017 16:40:27 +0000 (17:40 +0100)]
do NOT remove tracks from selection during drag selection on the basis of geometry alone.

Membership of select-enabled route groups matters too.

7 years agostop a crash during selection
Paul Davis [Wed, 8 Feb 2017 15:27:36 +0000 (16:27 +0100)]
stop a crash during selection

7 years ago5.5 incorrectly marked the initial tempo as not locked to meter.
nick_m [Tue, 7 Feb 2017 22:58:15 +0000 (09:58 +1100)]
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.

7 years agoUpdate Russian translation
Alexandre Prokoudine [Mon, 6 Feb 2017 00:01:41 +0000 (03:01 +0300)]
Update Russian translation

7 years agoremove debug output
Paul Davis [Tue, 7 Feb 2017 16:09:28 +0000 (17:09 +0100)]
remove debug output

7 years ago3 actions (trim-front, trim-back, set-sync-position) do not need to be region-selecti...
Paul Davis [Tue, 7 Feb 2017 15:50:06 +0000 (16:50 +0100)]
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.

7 years agoonly reverse propagate solo-by-others-downstream if connections on a Route change...
Paul Davis [Tue, 7 Feb 2017 15:49:11 +0000 (16:49 +0100)]
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.

7 years agodon't call shared_from_this() for every route when doing solo-downstream propagation
Paul Davis [Tue, 7 Feb 2017 14:23:01 +0000 (15:23 +0100)]
don't call shared_from_this() for every route when doing solo-downstream propagation

7 years agofix legacy session where initial tempo was not locked to meter,
nick_m [Tue, 7 Feb 2017 15:23:54 +0000 (02:23 +1100)]
fix legacy session where initial tempo was not locked to meter,

7 years agotempo dialog uses three decimal places in numeric entry.
nick_m [Tue, 7 Feb 2017 12:31:40 +0000 (23:31 +1100)]
tempo dialog uses three decimal places in numeric entry.

7 years agoCategorize the mixer actions.
Ben Loftis [Tue, 7 Feb 2017 00:18:56 +0000 (18:18 -0600)]
Categorize the mixer actions.

7 years agoAdd several new categories and re-sort some keybindings so they display more nicely...
Ben Loftis [Tue, 7 Feb 2017 00:05:53 +0000 (18:05 -0600)]
Add several new categories and re-sort some keybindings so they display more nicely in html printout.

7 years agoSome tweaks to default keybindings:
Ben Loftis [Mon, 6 Feb 2017 18:49:41 +0000 (12:49 -0600)]
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

7 years agoRevert to allowing stacked layer region view for MIDI tracks, for now.
Ben Loftis [Mon, 6 Feb 2017 18:42:29 +0000 (12:42 -0600)]
Revert to allowing stacked layer region view for MIDI tracks, for now.

7 years agoTweak output formatting of save_all_bindings_as_html
Ben Loftis [Mon, 6 Feb 2017 18:39:42 +0000 (12:39 -0600)]
Tweak output formatting of save_all_bindings_as_html

7 years agohotfix for cross-track dragging bug with music-locked regions.
nick_m [Mon, 6 Feb 2017 18:08:54 +0000 (05:08 +1100)]
hotfix for cross-track dragging bug with music-locked regions.

7 years agoupdate note length when dragging notes (over tempo change)
nick_m [Mon, 6 Feb 2017 16:10:02 +0000 (03:10 +1100)]
update note length when dragging notes (over tempo change)

7 years agouse new PBD::Controllable API to correctly save solo and mute controls, which may...
Paul Davis [Mon, 6 Feb 2017 15:42:35 +0000 (16:42 +0100)]
use new PBD::Controllable API to correctly save solo and mute controls, which may be slaved to a master

7 years agoadd new API to PBD::Controllable, ::get_save_value()
Paul Davis [Mon, 6 Feb 2017 15:41:15 +0000 (16:41 +0100)]
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.

7 years agosave/restore VCA master state inside slaves, so that a reloaded session ends up back...
Paul Davis [Mon, 6 Feb 2017 15:18:09 +0000 (16:18 +0100)]
save/restore VCA master state inside slaves, so that a reloaded session ends up back in the same state

7 years agoNoteDrag copy modifier detection is no longer explicit.
nick_m [Mon, 6 Feb 2017 14:56:47 +0000 (01:56 +1100)]
NoteDrag copy modifier detection is no longer explicit.

7 years agoModify our MSVC project to build the newer qm-dsp plugins
John Emmas [Mon, 6 Feb 2017 09:49:22 +0000 (09:49 +0000)]
Modify our MSVC project to build the newer qm-dsp plugins

7 years agoRemove a JE addition to one of the qm-dsp source files (no longer needed)
John Emmas [Mon, 6 Feb 2017 09:47:10 +0000 (09:47 +0000)]
Remove a JE addition to one of the qm-dsp source files (no longer needed)

7 years agoSome minor changes in preparation for building the newer Vamp plugins
John Emmas [Sun, 5 Feb 2017 15:05:32 +0000 (15:05 +0000)]
Some minor changes in preparation for building the newer Vamp plugins

7 years agounused code, showing basics of how to define a custom gtkmm-2.4 treemodel for stripables.
Paul Davis [Sun, 5 Feb 2017 14:51:00 +0000 (15:51 +0100)]
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

7 years agofix type warning
Paul Davis [Sun, 5 Feb 2017 09:58:10 +0000 (10:58 +0100)]
fix type warning

7 years agoremove overzealous bounds check when dropping notes.
nick_m [Sat, 4 Feb 2017 18:26:18 +0000 (05:26 +1100)]
remove overzealous bounds check when dropping notes.

7 years agomidi note drags are music-based.
nick_m [Sat, 4 Feb 2017 18:02:01 +0000 (05:02 +1100)]
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.

7 years agoIf 'MidiRegionView::find_canvas_sys_ex()' fails, make it return a boost::shared_ptr...
John Emmas [Sat, 4 Feb 2017 16:14:12 +0000 (16:14 +0000)]
If 'MidiRegionView::find_canvas_sys_ex()' fails, make it return a boost::shared_ptr<> (rather than returning an int)

7 years ago'CheckMenuItem' conflicts with an item already existing in MSVC
John Emmas [Sat, 4 Feb 2017 16:11:14 +0000 (16:11 +0000)]
'CheckMenuItem' conflicts with an item already existing in MSVC

7 years agomake more of an effort to ensure that the last element in Selection::tracks is the...
Paul Davis [Sat, 4 Feb 2017 14:08:04 +0000 (15:08 +0100)]
make more of an effort to ensure that the last element in Selection::tracks is the most-recently selected

7 years agofix potential absorption of music-locked tempo into meter-locked one.
nick_m [Sat, 4 Feb 2017 13:30:13 +0000 (00:30 +1100)]
fix potential absorption of music-locked tempo into meter-locked one.

7 years agoFix a crash in rhythm ferret if the relevant plugin couldn't be found for some reason
John Emmas [Sat, 4 Feb 2017 12:58:33 +0000 (12:58 +0000)]
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).

7 years agoSome paths weren't getting set up correctly for the MSVC build
John Emmas [Sat, 4 Feb 2017 12:54:19 +0000 (12:54 +0000)]
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

7 years agoclean up patch change/sysex headers.
nick_m [Wed, 1 Feb 2017 17:39:32 +0000 (04:39 +1100)]
clean up patch change/sysex headers.

7 years agoset sysex height & position on redisplay.
nick_m [Wed, 1 Feb 2017 16:58:01 +0000 (03:58 +1100)]
set sysex height & position on redisplay.

7 years agoimprove sysex data display.
nick_m [Wed, 1 Feb 2017 16:34:21 +0000 (03:34 +1100)]
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).

7 years agomore inconsistent menu item fiddling.
nick_m [Wed, 1 Feb 2017 12:50:42 +0000 (23:50 +1100)]
more inconsistent menu item fiddling.

7 years agomore messing about with inconsistent menu state.
nick_m [Wed, 1 Feb 2017 11:58:48 +0000 (22:58 +1100)]
more messing about with inconsistent menu state.

7 years agoallow "Glue to Bars & Beats" in region menu to be in an inconsistent state.
nick_m [Tue, 31 Jan 2017 15:08:04 +0000 (02:08 +1100)]
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

7 years agoremove unused empoMap::round_to_beat_subdivision()
nick_m [Mon, 30 Jan 2017 18:02:02 +0000 (05:02 +1100)]
remove unused empoMap::round_to_beat_subdivision()

7 years agonon-primary music-locked regions follow tempo changes while dragging.
nick_m [Mon, 30 Jan 2017 17:15:21 +0000 (04:15 +1100)]
non-primary music-locked regions follow tempo changes while dragging.

- the contents still don't update but position is much
          more wysiwyg.

7 years agorework RegionMotionDrag so that we can actually drag a region to zero.
nick_m [Mon, 30 Jan 2017 16:06:13 +0000 (03:06 +1100)]
rework RegionMotionDrag so that we can actually drag a region to zero.

- did this ever work?

7 years agomake dragging a region from the list not crash.
nick_m [Mon, 30 Jan 2017 16:03:45 +0000 (03:03 +1100)]
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()?)

7 years agoensure region _quarter_note is set (factory).
nick_m [Mon, 30 Jan 2017 15:57:40 +0000 (02:57 +1100)]
ensure region _quarter_note is set (factory).

7 years agoensure region _quarter_note is set in offset ctor..
nick_m [Mon, 30 Jan 2017 15:56:41 +0000 (02:56 +1100)]
ensure region _quarter_note is set in offset ctor..

7 years agofix thinko wrt Drag::adjusted_frame()
nick_m [Mon, 30 Jan 2017 15:44:10 +0000 (02:44 +1100)]
fix thinko wrt Drag::adjusted_frame()

7 years agosetup_snap_delta() need only take a framepos_t.
nick_m [Thu, 26 Jan 2017 17:37:32 +0000 (04:37 +1100)]
setup_snap_delta() need only take a framepos_t.

7 years agorework snap
nick_m [Thu, 26 Jan 2017 13:41:17 +0000 (00:41 +1100)]
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.

7 years agoanother tweak to maybe-fix crash in Playlist::fade_range()
Paul Davis [Fri, 3 Feb 2017 22:02:37 +0000 (23:02 +0100)]
another tweak to maybe-fix crash in Playlist::fade_range()

7 years agoTweak MIDI channel dialog layout.
Ben Loftis [Fri, 3 Feb 2017 03:44:31 +0000 (21:44 -0600)]
Tweak MIDI channel dialog layout.

7 years agoRemove redundant MIDI submenu. The items are now in the main menu.
Ben Loftis [Fri, 3 Feb 2017 03:21:11 +0000 (21:21 -0600)]
Remove redundant MIDI submenu. The items are now in the main menu.

7 years agopotential fix for crashes when creating fade-ranges
Robin Gareus [Thu, 2 Feb 2017 22:02:48 +0000 (23:02 +0100)]
potential fix for crashes when creating fade-ranges

7 years agofix crash when closing session w/action hooks
Robin Gareus [Thu, 2 Feb 2017 20:42:23 +0000 (21:42 +0100)]
fix crash when closing session w/action hooks

drop_callback() deletes the Callback itself (lua state is invalid)

7 years agoRight-click on a VCA to assign it to the selected channels.
Ben Loftis [Thu, 2 Feb 2017 17:02:10 +0000 (11:02 -0600)]
Right-click on a VCA to assign it to the selected channels.

7 years agotoolbar building from file given by command line
Paul Davis [Thu, 2 Feb 2017 13:33:41 +0000 (14:33 +0100)]
toolbar building from file given by command line

7 years agoLua script to save a snapshot after export
Robin Gareus [Thu, 2 Feb 2017 12:49:15 +0000 (13:49 +0100)]
Lua script to save a snapshot after export

7 years agocanvas tester tweak
Paul Davis [Thu, 2 Feb 2017 13:16:27 +0000 (14:16 +0100)]
canvas tester tweak

7 years agotoolbar creation from text files
Paul Davis [Thu, 2 Feb 2017 13:16:17 +0000 (14:16 +0100)]
toolbar creation from text files

7 years agoshorten enum/string for icons by avoiding Gtkmm2ext namespace
Paul Davis [Thu, 2 Feb 2017 13:09:42 +0000 (14:09 +0100)]
shorten enum/string for icons by avoiding Gtkmm2ext namespace

7 years agoinclude ArdourIcon in declared enums
Paul Davis [Thu, 2 Feb 2017 13:05:11 +0000 (14:05 +0100)]
include ArdourIcon in declared enums

7 years agouse different source file for canvas tester
Paul Davis [Thu, 2 Feb 2017 12:29:17 +0000 (13:29 +0100)]
use different source file for canvas tester

7 years agoadditional commit for removal of TransportControllables
Paul Davis [Thu, 2 Feb 2017 12:04:06 +0000 (13:04 +0100)]
additional commit for removal of TransportControllables

7 years agoARDOUR_UI transport buttons should use ArdourButton::set_related_action().
Paul Davis [Thu, 2 Feb 2017 12:03:32 +0000 (13:03 +0100)]
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.

7 years agoGUI to select export session/snapshot name
Robin Gareus [Thu, 2 Feb 2017 11:44:08 +0000 (12:44 +0100)]
GUI to select export session/snapshot name

7 years agoExport option to use snapshot name instead of session name
Robin Gareus [Thu, 2 Feb 2017 11:40:26 +0000 (12:40 +0100)]
Export option to use snapshot name instead of session name

7 years agoupdate link to MB manual
Robin Gareus [Wed, 1 Feb 2017 22:33:44 +0000 (23:33 +0100)]
update link to MB manual

7 years agoReduce continuous stream of warning messages (latent plugin, PH @ zero)
Robin Gareus [Wed, 1 Feb 2017 22:20:27 +0000 (23:20 +0100)]
Reduce continuous stream of warning messages (latent plugin, PH @ zero)

7 years agoProperly remember window position.
Robin Gareus [Wed, 1 Feb 2017 22:05:49 +0000 (23:05 +0100)]
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.

7 years agoplaying games with canvas (grid) test
Paul Davis [Wed, 1 Feb 2017 20:30:46 +0000 (21:30 +0100)]
playing games with canvas (grid) test

7 years agocanvas::grid - more tweaks and improvements
Paul Davis [Wed, 1 Feb 2017 20:30:29 +0000 (21:30 +0100)]
canvas::grid - more tweaks and improvements

7 years agocanvas::grid : compute all row/col extents
Paul Davis [Wed, 1 Feb 2017 19:35:52 +0000 (20:35 +0100)]
canvas::grid : compute all row/col extents

7 years agobasics of row/col span for Canvas::Grid
Paul Davis [Wed, 1 Feb 2017 19:22:19 +0000 (20:22 +0100)]
basics of row/col span for Canvas::Grid

7 years agouse new Grid API
Paul Davis [Mon, 30 Jan 2017 17:41:20 +0000 (18:41 +0100)]
use new Grid API

7 years agochange Grid API to avoid unnecessary Duple and open door for row/col span
Paul Davis [Mon, 30 Jan 2017 17:41:11 +0000 (18:41 +0100)]
change Grid API to avoid unnecessary Duple and open door for row/col span

7 years agoclear up some CSS padding/margin confusion, and add row/col spacing
Paul Davis [Mon, 30 Jan 2017 16:11:22 +0000 (17:11 +0100)]
clear up some CSS padding/margin confusion, and add row/col spacing

7 years agovalgrind option (commented) for canvas tester
Paul Davis [Mon, 30 Jan 2017 15:32:10 +0000 (16:32 +0100)]
valgrind option (commented) for canvas tester

7 years agomore sophisticated canvas tester
Paul Davis [Mon, 30 Jan 2017 15:31:52 +0000 (16:31 +0100)]
more sophisticated canvas tester

7 years agocanvas::grid starts being able to do its job a little
Paul Davis [Mon, 30 Jan 2017 15:31:35 +0000 (16:31 +0100)]
canvas::grid starts being able to do its job a little

7 years agoadd basic data members and methods for adding an explicit size allocation for Canvas...
Paul Davis [Fri, 20 Jan 2017 11:08:58 +0000 (12:08 +0100)]
add basic data members and methods for adding an explicit size allocation for Canvas::Item

7 years agosome initial bits of work on canvas allocation
Paul Davis [Mon, 30 Jan 2017 13:46:14 +0000 (14:46 +0100)]
some initial bits of work on canvas allocation