Commit graph

702 commits

Author SHA1 Message Date
Paul Davis
5132a6c2eb fix undo/redo for duplicate-regions in ripple mode
Also fix duplicate of multiple regions in the same track, and change "gap" variable
name to "span" for greater clarity
2018-03-28 14:24:21 -04:00
Paul Davis
9840f84830 duplicate (regions) should honor ripple edit mode 2018-03-27 10:19:12 -04:00
Ben Loftis
d88cdcc1bf Reinstate the ability to split regions while dragging playhead. I think this was unintentionally lost. 2018-02-27 13:08:40 -06:00
Ben Loftis
fcabb27561 Remove some redundant calls to snap_to(). get_preferred_edit_position() already did it. 2018-02-27 08:55:17 -06:00
Ben Loftis
5d423e38d5 Should be able to Split in range mode, with a selected track. 2018-02-26 20:38:50 -06:00
Ben Loftis
292f998298 Fix bug: sequential pasting to the same time, but different tracks, would trigger paste offset. 2018-02-26 19:40:24 -06:00
Ben Loftis
f64a39a07f Fixes for region_boundary_cache:
If no region-snaps are defined, bail out before generating cache.
 Avoid potential overflow at max_samplepos+1
 Snap should continue to work beyond the End marker.
2018-02-24 10:30:52 -06:00
Robin Gareus
ceac42cc03 NO-OP: whitespace
- remove trailing whitespace
- remove space after opening brackets and before closing brackets
- add space around operators
- do not use '//' for multi-line comments, do not use "//" on line-start
  to comment-out code breaking indenting (-Wmisleading-indent)
- do add a single space after comment-start /*{SPACE}... or //{SPACE}...
- reserve duplicate whitespace "  " for alignment, remove other duplicate
  whitespace
- use established "TODO" and "XXX" (highlighted keywords)
- remove equal-sign series "====" (those indicate merge conflicts)
2018-02-24 13:55:20 +01:00
Ben Loftis
881c8eeca8 Tell the user why Insert/Remove Time failed, rather than fail silently. 2018-02-23 14:37:32 -06:00
Ben Loftis
0299229e41 SoloSelection: gui part. 2018-02-11 09:39:45 -06:00
Ben Loftis
dc61256466 new_grid: Rewrite of Snap and Grid. (squashed commit)
Separate Snap from Grid.  Lots of naming changes.
Multiple simultaneous snap options allowed. Grid is one of the possible Snap options.
Grid uses the same data as the rulers.  Replace complicated tempo_lines with simple grid_lines.
The Grid is zoom-scale-sensitive along with the rulers.  If you are zoomed out, grid becomes coarser.
2018-02-09 09:59:39 -06:00
Robin Gareus
ba2b136af2 NO-OP: whitespace 2017-12-12 00:13:12 +01:00
Ben Loftis
aab02cac3d zoom-to-selection should clear the selection, afterwards. 2017-12-11 10:51:33 -06:00
Robin Gareus
c591368133 Remove unreachable code.
if (working_on_selection) {
  ...
} else {
  if (working_on_selection) { .. never reached .. }
}

Found by PVS: https://www.viva64.com/en/b/0540/
2017-11-23 10:51:20 +01:00
Paul Davis
5f60ff212d remove unused variable 2017-10-26 15:41:01 -04:00
Paul Davis
7db12f6b12 convert codebase to use Temporal for various time types 2017-09-24 12:03:54 -04:00
Paul Davis
30b087ab3d globally change all use of "frame" to refer to audio into "sample".
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
Paul Davis
e37558502e changes required to operate with the Evoral::Beats ticktime commit 2017-09-18 11:40:53 -04:00
Paul Davis
f9e7ffc601 no more per-track varispeed 2017-09-18 11:40:53 -04:00
Ben Loftis
631629b8e7 Editor zoom: add zoom_to_extents() 2017-08-26 23:06:29 -05:00
Ben Loftis
1c145ccfc3 Editor zooming: Config preference to define how much zooming will be easily allowed beyond the session_ui_extents() 2017-08-26 22:44:58 -05:00
Ben Loftis
901432f030 Editor zooming: refactor zoom-limiting code into editor::session_gui_extents. 2017-08-26 22:44:58 -05:00
Robin Gareus
ea5d75a05b Use new separate_by_channel API 2017-08-23 21:33:29 +02:00
Robin Gareus
9d1a793fec Mark session dirty after applying MIDI transform 2017-08-22 04:12:18 +02:00
Paul Davis
45eef0be1b slight tweak for more code consistency between ::toggle_solo() and ::toggle_mute() 2017-08-07 12:14:17 -04:00
Robin Gareus
c7237a606a Improve Track > Toggle Solo/Mute, include VCAs 2017-08-07 16:29:08 +02:00
Robin Gareus
1cbbbf6aad Update Remove Track(s) dialog to include VCAs 2017-08-06 22:17:54 +02:00
Robin Gareus
0ae9cda51d Allow to select VCAs 2017-08-06 22:17:42 +02:00
Robin Gareus
e91821bd76 Fix pasting automation at 0 2017-07-27 03:22:21 +02:00
Johannes Mueller
9bfe404b4e Fix #6280 – region (first_frame()==0) selectable with SnapRegionBoundary
Issue #6280 states that when selecting ranges using SnapToRegionBoundary it's
not possible to select regions with first_frame() == 0. This is because
Playlist::find_next_region() does not consider region boundaries == pos but
only > pos. Thus it never considers pos == 0 to be a region boundary.

This solution tries to be as little invasive as possible without changing the
semantics of PlayList::find_next_region(). Therefore position 0 is added to the
region boundary cache if there's a region starting at position 0 in any track.
2017-07-25 17:39:08 +02:00
nick_m
515cdb6b32 Rework region selection XML
Ensures that selection is restored in the same object type order
it was created in, which may some day make a difference.
2017-07-22 02:15:20 +10:00
nick_m
1d8548306b Cropping a single region to time selection works for multiple ranges
Should fix 7285.
2017-07-22 02:15:20 +10:00
nick_m
c54978bd5c Add missing braces to Editor::cut_copy conditional 2017-07-22 02:15:20 +10:00
nick_m
c9617b4b16 Editor::playhead_forward/backward_to_grid snaps even in magnetic mode 2017-07-22 02:15:20 +10:00
Ben Loftis
53fba8326c Rationalize Editor Zooming: make it harder for user to step into ridiculous zoom-out scales. 2017-07-19 15:37:59 -05:00
Robin Gareus
1f5ebc5485 Remove ArdourPrompter wrapper 2017-07-17 21:06:04 +02:00
Robin Gareus
eb1e423b75 Remove <gtkmm.h> include from header files. 2017-07-17 21:06:04 +02:00
Robin Gareus
f9e5e4360e Move more Gtkmm2ext widgets into libwidget 2017-07-17 21:06:04 +02:00
Robin Gareus
5c92613698 Separate Ardour UI widgets into dedicated library 2017-07-17 21:06:04 +02:00
Thomas Brand
63ea7b6516 NO-OP whitespace (updated GH PR #357) 2017-07-01 19:28:26 +02:00
Robin Gareus
555fcb89e5 GUI: prepare for API changes
remove use of
- unbound_min/max
- list->default_value and min/max_y
2017-06-21 18:12:16 +02:00
Robin Gareus
d88da33949 NO-OP: whitespace 2017-06-17 04:36:50 +02:00
Robin Gareus
dc3ae8d196 Add a "select topmost" track editor action 2017-04-29 12:38:53 +02:00
Tim Mayberry
1519565890 Fix crash when removing time from track with automation
Resolves : #7287
2017-03-10 22:59:58 +10:00
Tim Mayberry
ddb4b8a7c3 Add reset region gain action for selected regions 2017-03-04 15:26:00 +10:00
Robin Gareus
f0a3c84e8c Fix crash when inserting time with split intersected regions 2017-03-02 21:20:09 +01:00
nick_m
97c4c2a28c complete changes to tempo type.
- this implements in the intention behind the previous commit.
	  a tempo mark is constant until its end has been changed by a
	  shift-drag on the next marker.
2017-02-27 20:16:10 +01:00
nick_m
ccb51a8ddb rework tempo editing.
most changes are due to a new design where tempo discontinuities at the
beginning of a ramped section may be set.
this allows easier mapping of live performance, especially in
the common case of a ramped ritard before the beginning of a new section.

feature summary:

holding constraint modifier (shift) while dragging the BBT ruler area
drags the tempo lines by changing the start tempo (as before)

holding copy modifier (control) while dragging the BBT ruler area
drags the tempo lines by changing the end tempo (ahem. not quite there)

dragging a tempo mark while holding constraint (shift) will change the
previous end tempo to match the marker position *worth trying*.

holding constraint and copy modifier (control + shift) while dragging
the BBT ruler area attempts to'pinch' or twist the surrounding tempi
sp that later ones are not repositioned (currently suffereng from
rounding errors)
2017-02-27 20:16:10 +01:00
nick_m
b066ad3164 fix missing command in Editor::snap_regions_to_grid ()
- fixes 7246
2017-02-19 07:13:26 +11:00
Robin Gareus
65b38322db GUI action Transport/RecordCountIn 2017-02-13 23:01:11 +01:00