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
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
b73f725676
remove mouse zoom mode; bind z to zoom-to-range
2014-10-21 12:47:53 -04:00
8d8717800d
add tearoff reattach for the editor
2014-10-16 13:44:36 -04:00
02af7cb418
alternate layout with a full-height editor-mixer, for mixbus
2014-07-28 11:27:02 -05:00
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
67eaa62ee9
fix build after copy-n-paste/code change collision
2014-07-07 10:21:47 -04:00
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
779fe6c082
add functionality for cut tool
2014-07-07 07:05:44 -04:00
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
77216ac468
add RAII DisplaySuspender
2014-06-28 23:22:15 +02:00
242181dc10
add commentary on why PublicEditor::{_,}ensure_time_axis_view_is_visible() both exist
2014-06-27 10:48:04 -04:00
a3c378cf62
move utility functions into a dedicated namespace
2014-06-25 21:47:54 +02:00
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
0796ccfb65
use newly factored canvas in gtk2_ardour
2014-06-21 11:44:22 -04:00
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
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
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
da7a860256
remove useless groups from timebar area, clarify scroll group naming in editor
2014-06-03 16:11:24 -04:00
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
4843c5d5cf
towards region-trims preserving fade duration
2014-05-31 03:53:59 +02:00
68c5f05704
remove final reference to jack headers
2014-04-10 10:14:45 -04:00
200a67fba8
most of the support for save/restore of visible track count
2014-03-25 10:33:18 -04:00
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
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
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
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
dc7878760d
vtl: do not lock audio [to video] when extracting audio-only.
2013-12-23 10:28:32 +01:00
e5888d3983
merge with master and fix 2 conflicts
2013-10-16 22:06:56 -04:00
c2b2953f8c
export video-range: add to context menu
2013-10-12 22:56:08 +02:00
aaaeb958c1
switch samples_per_pixel to integer type
2013-06-18 23:02:54 -04:00
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
084af4727d
remove cruft - old CMT imageframe*
2013-06-14 17:18:59 +02:00
f00b3b7f11
merge with master
2013-06-13 23:00:24 -04:00
6b480bb2f7
vtl: make "Remove Video" insensitive if N/A
2013-06-13 00:58:19 +02:00
bebe2af95a
merge with master
2013-05-08 14:48:28 -04:00
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
e2f0c5f91e
merge resolution with master
2013-05-02 20:21:54 -04:00
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
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
f88cfdb478
remove Editor::redraw_measures to improve efficiency of tempo measure line redraws
2013-04-20 16:11:40 -04:00
84fb0a8dce
remove all XML related API from canvas. it may have been useful during development, but it is just a distraction - we will NEVER be saving or restoring canvas state via XML or any kind of serialized state
2013-04-15 21:57:08 -04:00
64c861a791
fix markers so that the blue line spans both canvases
2013-04-15 16:10:13 -04:00
7e19053b88
Fix dragging objects on the canvas and remove redundant canvas groups
...
Delivery of fake motion events to the editor needed the event coordinates to be
in canvas space, as they are with "real" events. Editor and other objects had
many redundant groups from timbyr's work on gnomecanvas to scroll by moving
groups. We don't need this anymore with cairo-canvas (though possibly a
stationay background group for the canvas might be useful again one day as in
the SAE logo. Its implementation would be fairly different though, since we
would have to explicitly move the group on every scroll, since nothing else
ever moves on scroll).
Also tweaks to text item placement, and switch TimeAxisViewItem from
name_pixbuf to name_text, since ArdourCanvas::Text is already "pixbuf optimized".
2013-04-15 13:50:05 -04:00
af4539f857
a few changes to fix region dragging, all related to coordinate system handling, which is now much simpler with the new canvas; more debugging output when asked for
2013-04-15 10:38:12 -04:00
8877199ae0
leftmost_position => leftmost_sample, current_page_frames => current_page_samples
2013-04-12 11:21:12 -04:00
4258a34912
change all frame_to_pixel and pixel_to_frame to sample_to_pixel and pixel_to_sample
2013-04-12 11:15:45 -04:00
ecfd2a7455
remove all unit-based methods from (Public)Editor; rationalize Editor::event_frame() to clearly identify whether the passed-in GdkEvent has window units or canvas units (the latter will be true for all events that are handled by the canvas and then passed to Editor
2013-04-12 11:09:49 -04:00
6ae4f10437
Merge branch 'master' into cairocanvas
...
Conflicts:
gtk2_ardour/editor.h
gtk2_ardour/editor_canvas.cc
gtk2_ardour/wscript
2013-04-11 22:24:05 +02:00
66ee2c8e59
enable videotimeline by default
2013-04-11 19:49:48 +02:00