Commit Graph

239 Commits

Author SHA1 Message Date
luz paz 364f2f0788 Fix typos in gtk2_ardour/ directory
Found via `codespell -q 3 -S *.po,./share/patchfiles,./libs -L ba,buss,busses,doubleclick,hsi,ontop,ro,seh,siz,sur,te,trough,ue`
2022-01-26 12:35:38 -05:00
Paul Davis c916d3d952 Substantial overhaul of tempo display code
Major changes: do not delete and recreate markers and curves for every tempo map
change, attach tempo curves directly to their (preceding) tempo marker, notable
cleanup of TempoCurve class to remove unnecessary members.

More tweaks expected since algorithm for matching markers and tempo map
points is not correct yet.
2022-01-18 19:47:20 -07:00
Paul Davis 1d2fa465d3 remove mistaken handling of cue marker bar events 2022-01-05 13:27:47 -07:00
Paul Davis b1f73d25bf actual GUI interaction for cue marker ruler 2022-01-04 15:23:51 -07:00
Paul Davis 845b5d81a9 add Drag::pixel_to_time() which reflects the Drag's _time_domain setting 2021-12-04 19:38:26 -07:00
Paul Davis fc155e76b4 give every Drag an explicit time domain 2021-12-04 18:44:57 -07:00
Paul Davis 7fca55eeb5 Fix placement of drawn MIDI notes.
Important logic from 6.9 was either missing or incorrectly implemented. New
version is much simpler - we just use the RoundDownMaybe mode of round_to_bbt()
to ensure that the note start is always within the current grid even if the
mouse is more than halfway "through" it.
2021-11-04 18:27:02 -06:00
Paul Davis b6f290add2 timeline type changes for new ripple code and post-conflict-resolution fixups 2021-08-13 12:51:36 -06:00
Paul Davis 31b7244856 fix timeline types (post rebase conflict resolution) 2021-08-13 12:51:36 -06:00
Paul Davis 39f52cd3ce remove unused and unnecessary Drag::snap_delta_music() code 2021-08-13 12:51:34 -06:00
Paul Davis cb66ae496c don't even pretend to use non-modal dialog API for the BBT marker dialog 2021-08-13 12:51:34 -06:00
Paul Davis d4f52498fa somewhat working dialog for BBT/Position marker creation 2021-08-13 12:51:34 -06:00
Paul Davis dee71c0a97 mostly fix region- and note-create drags 2021-08-13 12:51:32 -06:00
Paul Davis 84d33f3ec3 manual fixups after rebase against master (GUI edition) 2021-08-13 12:51:31 -06:00
Paul Davis f8df966914 clean up MeterMarkerDrag 2021-08-13 12:51:30 -06:00
Paul Davis 534c08074d changes to get program to actually run (missing symbols)
Still crashes at startup due to static initialization of initial tempo map.
2021-08-13 12:51:29 -06:00
Paul Davis 749a49c278 incorporating new tempo map API 2021-08-13 12:51:29 -06:00
Paul Davis f67029bd02 random commit to facilitate trivial move of work from laptop back to main system 2021-08-13 12:51:29 -06:00
Paul Davis 5b2a435e02 getting editor_drag.cc to compile 2021-08-13 12:51:29 -06:00
Paul Davis 7433bc27e0 intermediate, unfinished snapshot of ongoing timeline types work on GTK GUI 2021-08-13 12:51:29 -06:00
Paul Davis 0a469527f1 updated Temporal::Beats ... GUI edition 2021-08-13 12:51:28 -06:00
Paul Davis 23aa663f9d when doing a ripple-all drag, move relevant markers during the drag too
Note that this is purely GUI-level: the ARDOUR::Locations are changed at the end of the drag
in Editor::ripple_marks()
2021-08-13 12:51:28 -06:00
Paul Davis b04ea33f18 move Drag::_earliest_time_limit to be protected, not private 2021-08-13 12:51:27 -06:00
Paul Davis fbd6c7eaee add earliest_time_limit for Drag class 2021-08-13 12:51:27 -06:00
Paul Davis 0c77a35178 completely remove RegionRippleDrag, and merge Editor::add_region(_copy,}_drag() into one method 2021-08-13 12:51:27 -06:00
Paul Davis 9d54bb08e7 remove almost all of RegionRippleDrag, collapsing down to just collecting additional RegionViews that need to be moved during the drag 2021-08-13 12:51:27 -06:00
Paul Davis 77e67809f9 we removed Splice mode from the GUI 7 years ago; now remove all code related to Splice mode (GUI edition) 2021-08-13 12:51:27 -06:00
Paul Davis eac366ec8e remove RegionRippleDrag::allow_moves_across_tracks since this was already unconditionally set to false
It was also commented "rippling across all tracks is the future", and created notable technical debt
2021-08-13 12:51:27 -06:00
Ben Loftis 45bd2c47d8 Brush Drag: refactor Brush-drag into its own Drag class (operation is still weird though) 2021-06-17 10:56:30 -05:00
Ben Loftis 69af0e6964 Abort a copy-drag in the case where it would result in a copy at the same location
also code cleanup: clear_draggingview_list() avoids duplicated code
2021-06-17 10:56:30 -05:00
Ben Loftis f281e7e3c3 Slip Contents Drag: disambiguate Slip Contents from prior Contents Trim 2021-06-17 10:56:30 -05:00
Ben Loftis 3d8bccb508 Slip Contents Drag: remove ContentsTrim modifier from the region boundaries
*now that you can grab "anywhere" in the region, trim edges are inferior because they are hard to hit
*modifier had to change anyway (since CTRL is used as a copy-drag on both mac and win), so that invalidates prior muscle memory
*potentially frees up modifier on the trim edge for some other purpose (anchored_trim)
2021-06-17 10:56:27 -05:00
Ben Loftis fea3fb9e71 Slip Contents Drag: add ContentsDrag 2021-06-17 10:56:22 -05:00
Paul Davis ab2357dfa1 implement dragging for region/cue markers 2021-05-24 12:28:19 -06:00
Paul Davis 2016710865 skeleton for RegionMarkerDrag 2021-05-24 09:12:19 -06:00
Robin Gareus ce1e05fc3d
Update DnD min. movement threshold -- #8686
Previously x-axis threshold was in samples. This is
useless unless zoomed in to the max. So in most cases
the first-move was always in x-direction, making constrained
y-axis drags near impossible.

Furthermore the threshold for copy-drags was increased
as per #8686
2021-05-08 04:28:36 +02:00
Paul Davis b59e687f83 prevent addition mouse button press/release events while an existing drag is still underway from interfering (fixes #8529) 2021-01-07 22:55:44 -07:00
Tyler Stank 0cfee47867
Disable vertical autoscroll for UI elements where it doesn't make sense
Fixes issue 6396 as well as a few other instances where autoscroll could be annoying
2020-12-02 23:10:13 +01:00
Johannes Mueller d2f5edf64f Fix #8012 to some extent.
As soon as we ripple drag the selected region out of the original track,
::remove_unselected_from_views() is called and the rippled regions on the
original track are not covered when ::remove_selected_from_views() is called
again in ::finished(). Therefore we need to shift the regions remaining on the
original track back and forth again, in order to have them properly in the undo
history.
2020-04-14 22:43:15 +02:00
Robin Gareus a8f9ba4a5e
Preview video frame when dragging 2019-11-09 06:00:01 +01:00
Robin Gareus 4050ca5633
Update GPL boilerplate and (C)
Copyright-holder and year information is extracted from git log.

git history begins in 2005. So (C) from 1998..2005 is lost. Also some
(C) assignment of commits where the committer didn't use --author.
2019-08-03 15:53:15 +02:00
Robin Gareus 31815b5f26
NO-OP: whitespace
This fixes mostly <tab> after <space> and similar <tab> not used
for indenting as well as some related code alignment issues.
2019-04-13 17:57:46 +02:00
Robin Gareus 50303d90bd
NO-OP: whitespace, indent 2019-04-08 20:58:18 +02:00
Robin Gareus 56047a094c
AutomationRangeDrag tweaks for stacked layer view
Use y-pos and height of given TAV *layer* where the drag was initiated.
2019-03-30 01:19:47 +01:00
Robin Gareus 546d5d09b5
Remove unused variable 2019-03-30 01:15:17 +01:00
Robin Gareus d8571e2572
cont'd AutomationRangeDrag updates -- safety commit
This is work in progress towards fixing stacked region's region-gain
and multiple discontinuous regions spanning multiple tracks.

AutomationRangeDrag::setup() still does not collect all AutomationLine
points for certain overlap scenarios. There's more to come...
2019-03-29 15:57:07 +01:00
Robin Gareus 0ee6b03144
Implement multi-region AutomationRange drag/drop 2019-03-27 23:25:28 +01: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
Ben Loftis c6eab71435 new_snap: Snapped Cursor ( squashed commit )
Snapped Cursor is a line that follows the edit point, and indicates where the operation will occur.
This replaces and extends the line that appears with the Cut tool.
New associated preferences:  snap_threshold and show_snap_cursor.
2018-02-09 08:21:45 -06: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