nick_m
44203ce955
Fix AutomationTrackItem rubberband click thinking it was unhandled.
...
Fix several other cases where a single mouse click could cause several
(not nested) selection ops.
Fix missing selection memento for midi notes and midi commands.
Rename some variables.
Fix random style issues.
2015-01-11 04:07:31 +11:00
David Robillard
2eef0612b9
Start step entry at playhead.
2015-01-07 20:46:21 -05:00
David Robillard
04bbe402b0
Factor out grid beat divisions.
2015-01-07 19:05:41 -05:00
David Robillard
2a251b4570
MusicalTime => Beats.
2015-01-07 00:12:07 -05:00
David Robillard
12a7f12b0b
Context menu for applying edits to note selection.
2014-12-25 15:32:10 -05:00
David Robillard
1de39b8971
Add instrument selector to import dialog.
...
Idea here is for importing large multi-track MIDI files to be immediately
listenable upon play without tediously adding a ton of instrument plugins
manually.
2014-12-24 20:07:10 -05:00
Ben Loftis
7ab8a11fb5
Enforce internal/external selection exclusivity.
2014-12-18 20:22:48 -05:00
David Robillard
5fef655380
Remove internal edit mode and add "content" tool.
2014-12-18 20:21:01 -05:00
nick_m
9af9e17adc
Add editor selection state to session history via a SelectionMemento, which
...
combines selection related editor properties with the current editor selection.
The related editor properties are:
mouse mode,
zoom setting,
left frame of the canvas,
y origin of the canvas.
Selection state now includes region views (storing the underlying region id)
and time.
This patch also fixes a region mute undo bug.
2014-12-18 11:03:10 -05:00
David Robillard
fd9ccc7058
Use an enum for RoundMode instead of magic numbers.
...
No functional changes in this one (for easier auditing), but towards having
round up/down only if necessary modes, rather than kludging around that
situation with a double round as we do currently.
2014-11-16 22:35:45 -05:00
David Robillard
31acd96384
Implement "multi-paste" for notes, regions, and automation.
...
The idea here is that pasting several times to the same location doesn't make
sense. Instead, the paste is appended past the last paste, snapped to the
grid. This make it simple to replicate a given section a number of times,
simply by copying once and pasting several times.
This behaviour only appears when successive pastes are done to the same
location (whatever the edit point is). When the paste point changes, the
"multi-paste" state is reset.
Boots 'n cats 'n boots 'n cats.
2014-11-14 20:04:19 -05:00
Paul Davis
b73f725676
remove mouse zoom mode; bind z to zoom-to-range
2014-10-21 12:47:53 -04:00
Paul Davis
8d8717800d
add tearoff reattach for the editor
2014-10-16 13:44:36 -04:00
Ben Loftis
02af7cb418
alternate layout with a full-height editor-mixer, for mixbus
2014-07-28 11:27:02 -05:00
Paul Davis
d0bc4b55fa
scroll up/down by tracks uses top edge as "focal point"; fix some other nasty code details
2014-07-14 12:36:51 -04:00
Paul Davis
67eaa62ee9
fix build after copy-n-paste/code change collision
2014-07-07 10:21:47 -04:00
Paul Davis
d97199088b
some code shuffling to make sure that cut mode always operates at the mouse location, with (maybe) the right regions
2014-07-07 10:13:26 -04:00
Paul Davis
779fe6c082
add functionality for cut tool
2014-07-07 07:05:44 -04:00
Ben Loftis
555a5d6348
lots of keybinding changes. added a new action to allow removing markers at the playhead location. numpad now allows you to access marks higher than 9. to locate to a marker, use the numpad decimal to start and end the operation - for example press .19. to locate to marker 19. also added alternate bindings for redo, delete, and several other alternates that will be needed in subsequent commits. tab is not working, using either Tab or nabla in the binding.in file
2014-07-03 17:50:14 -05:00
Robin Gareus
77216ac468
add RAII DisplaySuspender
2014-06-28 23:22:15 +02:00
Paul Davis
242181dc10
add commentary on why PublicEditor::{_,}ensure_time_axis_view_is_visible() both exist
2014-06-27 10:48:04 -04:00
Robin Gareus
a3c378cf62
move utility functions into a dedicated namespace
2014-06-25 21:47:54 +02:00
Paul Davis
6a5d805b38
more canvas refactoring.
...
Remove Canvas::Layout, use Canvas::Container for the same purpose, move child-rendering into Item::render_children() so that it
could theoretically be used by any derived type.
2014-06-22 11:41:05 -04:00
Paul Davis
0796ccfb65
use newly factored canvas in gtk2_ardour
2014-06-21 11:44:22 -04:00
Paul Davis
becf857f48
a whole slew of changes related to centralizing and rationalizing cursor management.
...
Debugging output left in place to help address the reports that will come in as people test this more
2014-06-18 10:24:59 -04:00
Paul Davis
7a0b2e1c18
fix scrolling behaviour in track headers (event was stolen by rulers because event coordinates made it look as if the event happened there)
2014-06-13 14:27:59 -04:00
Paul Davis
d36afa6b8b
forward scroll events from track control headers to the canvas, to get consistent scroll behaviour (whatever that behaviour is)
2014-06-09 10:02:38 -04:00
Paul Davis
da7a860256
remove useless groups from timebar area, clarify scroll group naming in editor
2014-06-03 16:11:24 -04:00
Paul Davis
5696199daf
remove timebar canvas and just use a single canvas instead. This is just part one - lots of minor fixes to be done
2014-06-03 16:10:27 -04:00
Robin Gareus
4843c5d5cf
towards region-trims preserving fade duration
2014-05-31 03:53:59 +02:00
Paul Davis
68c5f05704
remove final reference to jack headers
2014-04-10 10:14:45 -04:00
Paul Davis
200a67fba8
most of the support for save/restore of visible track count
2014-03-25 10:33:18 -04:00
Paul Davis
95f81e2d24
add optional arg to Editor::ensure_time_axis_view_is_visible() to "force" "make it visible as the top track" behaviour
2014-03-24 19:46:45 -04:00
Paul Davis
65b4308c84
first pass at quantizing vertical scroll to whole tracks.
...
Dragging regions vertically does the quantization BUT speed control is lacking and the region ends up on
a track that is still invisible ... to be fixed as the sun rises.
2014-03-21 07:02:32 -04:00
Paul Davis
9df3157dfc
big rework of scrolling, horizontal part considered almost 100% done.
...
Many more changes than I would typically like in a single commit, but this was all very intertwined.
Vertical scrolling using track-stepping still to follow.
2014-03-20 13:29:45 -04:00
Paul Davis
84f55440a3
fix redrawing of canvas with an optimized build
...
Best guess right now is that optimization does something bad when ceil() is called twice on a very large dbl-precision number,
which results in a zero (empty) redraw area. Without the removal of the redundant ceil & floor functions, no expose events
would be delivered to the canvas in an optimized build during drags (and maybe more).
2013-12-23 15:35:49 -05:00
Robin Gareus
dc7878760d
vtl: do not lock audio [to video] when extracting audio-only.
2013-12-23 10:28:32 +01:00
Paul Davis
e5888d3983
merge with master and fix 2 conflicts
2013-10-16 22:06:56 -04:00
Robin Gareus
c2b2953f8c
export video-range: add to context menu
2013-10-12 22:56:08 +02:00
Paul Davis
aaaeb958c1
switch samples_per_pixel to integer type
2013-06-18 23:02:54 -04:00
Robin Gareus
11619a37bf
Merge branch 'master' into cairocanvas
...
Conflicts:
gtk2_ardour/editor_canvas.cc
gtk2_ardour/imageframe_time_axis.cc
gtk2_ardour/imageframe_time_axis.h
gtk2_ardour/imageframe_time_axis_group.cc
gtk2_ardour/imageframe_time_axis_group.h
gtk2_ardour/imageframe_time_axis_view.cc
gtk2_ardour/imageframe_time_axis_view.h
gtk2_ardour/imageframe_view.cc
gtk2_ardour/imageframe_view.h
gtk2_ardour/marker_time_axis.cc
gtk2_ardour/marker_time_axis.h
gtk2_ardour/marker_time_axis_view.cc
gtk2_ardour/marker_time_axis_view.h
gtk2_ardour/marker_view.cc
gtk2_ardour/marker_view.h
gtk2_ardour/video_image_frame.cc
gtk2_ardour/visual_time_axis.cc
gtk2_ardour/visual_time_axis.h
libs/canvas/canvas/circle.h
2013-06-14 21:09:24 +02:00
Robin Gareus
084af4727d
remove cruft - old CMT imageframe*
2013-06-14 17:18:59 +02:00
Paul Davis
f00b3b7f11
merge with master
2013-06-13 23:00:24 -04:00
Robin Gareus
6b480bb2f7
vtl: make "Remove Video" insensitive if N/A
2013-06-13 00:58:19 +02:00
Paul Davis
bebe2af95a
merge with master
2013-05-08 14:48:28 -04:00
Paul Davis
a902737db9
various changes to window visibility mgmt, including use of the mixbus2 code for toggling editor + mixer windows. no longer attempt to track changes made outside of ardour, which is a lost cause
2013-05-07 13:01:26 -04:00
Paul Davis
e2f0c5f91e
merge resolution with master
2013-05-02 20:21:54 -04:00
Paul Davis
d14f43ccf2
fix operation of right-click on selected MIDI note to bring up the note editor. this is still not really right long term, but it is better than displaying the channel selector
2013-05-02 15:16:56 -04:00
Paul Davis
81485faa83
remove CMT code - has not been used for years, and will become irrelevant with VTL and cairocanvas
2013-05-02 12:21:41 -04:00
Paul Davis
f88cfdb478
remove Editor::redraw_measures to improve efficiency of tempo measure line redraws
2013-04-20 16:11:40 -04:00