13
0
Commit Graph

508 Commits

Author SHA1 Message Date
7ec397c019 add basics of Cut mouse mode, no functionality yet. Icon images are still required 2014-07-07 07:05:43 -04:00
043b76569d fix the naming and behavior of always-play-range to match the button, which is follow-edits. when you select a range, the playhead should jump to the start of the range and begin to play the selection. BUT (unlike previous implementation) if the user wants to relocate the playhead, then that should be allowed. The user should always remain in charge of the playhead location. NOTE: your previous config setting will be invalidated. You must re-save a session to overwrite with the new config variable 2014-07-03 12:56:33 -05:00
3c2c048f40 reinstate same logic, slightly differently implementedm, for choosing range/object mode when pointer is in smart mode and in a track but not in a region 2014-07-02 16:23:46 -04:00
e5e12acc56 Merge branch 'ripple-mode-cc' into cairocanvas
Fix up merge conflicts in
	gtk2_ardour/editor_mouse.cc
	gtk2_ardour/editor_ops.cc

Also fix up compile errors.
2014-07-01 19:10:47 +01:00
b47c20783d (hopefully) fix smart-mode breakage of xfade operations
We needed to set the selected regionview from a click when clicking on xfade items, but I also removed duplicate logic for some similar items
2014-06-30 19:18:34 -04:00
89f673a7a7 context click over a trim handle is semantically equivalent to a context click on the xfade 2014-06-30 13:58:46 -04:00
a9b3361081 use Editor::effective_mouse_mode() inside Editor::button_selection(); clean up special-case of fade in/out handles and mouse mode 2014-06-30 09:17:03 -04:00
4e689d9496 use new TrackingText for verbose cursor 2014-06-26 15:10:24 -04:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
e7895e1f80 more work on cursor tracking state 2014-06-18 21:03:25 -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
85e2c60673 add back click behaviour for canvas rulers, and also cursor enforcement 2014-06-12 16:06:31 -04:00
92bb0e0d7f fix problem with calls to Editor::trackview_by_y_position() when using motion events. The coordinate passed in was in canvas space and the method expected trackview space
To handle any further issues like this, I generalized and added an optional argument specifying that the canvas=>trackview transform is required, thus
centralizing where this done.
2014-06-08 14:41:29 -04:00
ba8d0e32f7 fix crash caused by click-on-region-name if name highlights are not in use - such a click is not a trim operation under those conditions 2014-06-08 11:26:32 -04:00
2aa32ed349 unify Fade-Handle Cursors 2014-06-05 18:58:21 +02:00
e0533e9dd7 more profound changes to canvas scrolling, in particular find appropriate ScrollGroup for Canvas::{window,canvas}_to_{canvas,window}() 2014-06-03 16:13:12 -04:00
dc349514fa remove utterly useless unused code 2014-06-03 16:11:24 -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
6019f06bdf different approach to independent scrolling, involving ArdourCanvas::ScrollGroup
The idea now is that a scroll group item can be added to the canvas which will causes its children to scroll in either or both
directions (horizontal or vertical). There are few complications: the position() of the ScrollGroup is ambiguous depending
on whether you want it with scroll taken into account or not, so Item::canvas_position() was added, which defaults to
the same value as Item::position() but is overridden by ScrollGroup to return the position independent of scrolling. This
method is used when translating between item/canvas/window coordinate systems.

Note that the basic idea is that we MOVE the scroll group when a scroll happens. This mirrors what happens in the GnomeCanvas,
where Nick Mainsbridge came up with a great idea that allowed unification of the time bar and track canvases.
2014-06-03 16:10:27 -04:00
d6b1a9f6e3 prepare fade+trim cursors (cursor image still missing) 2014-05-31 14:04:41 +02:00
bfa58e58c3 fix fade+trim handle hover color 2014-05-31 04:51:02 +02:00
4843c5d5cf towards region-trims preserving fade duration 2014-05-31 03:53:59 +02:00
918a0ac5f9 update x-fade context-menu 2014-05-29 07:49:26 +02:00
d75c7151d4 Ripple mode: basic implementation
Add a value for Ripple to EditMode enum.

Add Ripple edit mode to edit mode dropdown, by adding it to the
Editor::build_edit_mode_menu() helper function, and remove the old code that
added items to the (now unused) Editor::edit_mode_strings.

Add the regions that should be affected by the drag to RegionDrag::_views so
that the drag carries them along automatically.

Use a copy of the RegionList in Playlist::core_ripple(), since bad things
happen when iterating over regions and they get moved around in the list.

Handle rippling in removal of regions from playlist.

When dragging in ripple mode, exclude all regions that lie before the
original start position of the selected regions being dragged from
rippling: this is what Mixbus does.

Make editor dragging respect snap-to settings, by using the existing
compute_x_delta() function, which did almost the right thing. Move setting
of _last_frame_position out of that function so all ripple-dragged regions
can move.

Ripple when dragging from region list: even though Mixbus doesn't do this, it
seems like a good idea.

Prevent multi-track selection being dragged across tracks, by making
RegionMotionDrag::y_movement_allowed() virtual, and overriding it in
RegionRippleDrag to forbid dragging of selections containing regions on more
than one track to dofferent tracks in ripple mode.

Remember which TimeAxisView a ripple-mode drag that's allowed cross-track
drags started from, so that the effect of rippling regions after any region
that's dragged off that track can be undone.
2014-05-07 19:46:24 +01:00
0d1d50a8b4 remove pointless assert (since condition is if-tested just before it was used) 2014-04-15 14:30:37 -04:00
dc4eae5c37 hopefully fix issue with Editor::set_canvas_cursor_for_region_view() which was incorrectly switching to trim cursors.
This started happening more frequently after this function started to be called more often (which was the right thing to do, but
had this side effect (now fixed).
2014-04-15 12:44:49 -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
c04081681c remove debug output 2014-03-13 08:43:07 -04:00
95c214c923 fix up button selection operation so that fade drags work again 2014-03-13 08:39:14 -04:00
36160b88cd fixes, hopefully, for canvas cursor misbehaviour near/in regionviews 2014-03-11 22:39:04 -04:00
0ef3fedf9a fix up some logic that allowed hits (percussive note display) to be trimmed with the mouse, which was not intended 2014-03-07 11:22:49 -05:00
7d17db09ac when in smart mode, context-click on a region item should behave as if in object mode.
Specifically, select the region before displaying the context menu
2014-03-06 10:40:31 -05:00
5cbb60d339 fix display of time selection rect(s) when switching mouse modes 2014-02-26 10:50:51 -05:00
c04285addf convert canvas_event_frame() and window_event_frame() to canvas_event_sample() and window_event_sample() to go along with the convention adopted in cairocanvas code re: frames+samples 2014-02-26 08:43:53 -05:00
f5dbbe4ac6 ctrl-click when adding automation points no longer adds guard points 2014-02-25 11:59:02 -05:00
156a5a0e5f add the with-guard-point distinction to region gain lines 2014-02-20 14:01:40 -05:00
6e38ecc158 manually applied equivalent of 1d82f4ca07 in master (git could not apply successfully) 2014-02-19 23:37:46 -05:00
d23c2499bf rationalize, consolidate and make work dbl-click editing for regions and markers, as part of the Drag model rather than discretely 2014-01-27 10:09:58 -05:00
68af0fdc07 fix up visibility control for automation lines 2013-12-31 13:28:20 -05:00
87c29025de just use show() and hide() to manage control point visibility in automation lines
No need for the wierd old set_visible()/property_draw() stuff that was a hangover from gnomecanvas.
2013-12-31 11:55:30 -05:00
9fb3247350 rationalize color handling for fade in/out handles 2013-12-09 22:04:13 -05:00
ea1ccb869a fix merge with master 2013-10-31 13:16:51 -04:00
e7875954ca Edit tempo & meter markers on double-click. 2013-10-25 17:03:45 +01:00
efd2e1776d Double-click on region pops up region properties. 2013-10-25 17:03:45 +01:00
abb05680b4 Make double-click on marker pop up rename dialogue. 2013-10-25 17:03:45 +01:00
89193dc40b Add a double-click handler for items in the editor window. 2013-10-25 17:03:45 +01:00
525cb6b4a7 some sort-of-deep fixes to get autoscroll/vertical scroll to work properly for cairocanvas 2013-07-10 19:10:06 -04:00
479e97dc59 some prep work for generally handling dbl-click on draggable objects 2013-06-21 15:18:54 -04:00
f00b3b7f11 merge with master 2013-06-13 23:00:24 -04:00
50e3e61881 when exiting internal edit mode because of a mouse button press on a non-MIDI region, _join_object_range_state is set to NONE, not OBJECT, which would block selection of the clicked-upon region. fix that, to prevent an assert()-driven crash when the drag ends and there are no regions selected 2013-06-10 18:28:32 -04:00
97ec274512 Make mouse operations on grouped regions apply to pre-existing selection
On clicking on a region that is part of an active edit group with the
'selection' property enabled, its equivalent regions also become selected.
Thus, there's no need to reset the selection to the equivalent
regions when performing mouse drags on the region, and trim/fade in/fade
out/move/copy will always operate on the existing region selection if there
is one.

Fixes #5515.
2013-06-10 18:07:52 +01:00
e2f0c5f91e merge resolution with master 2013-05-02 20:21:54 -04:00
3973ce81b3 remove all of Gtk::Window::set_position (WIN_POS_MOUSE) for anything deriving from ArdourDialog or ArdourWindow; move the set_position() call into those classes' constructors, so that they are called before the windows are realized, and thus it actually works 2013-05-02 18:13:35 -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
ec102f94e1 various work waveview amplitude mgmt; fix playhead cursor drag from timebar click 2013-04-17 15:22:09 -04:00
d1a05240ef fix clamping of line and rect coordinates to avoid issues with cairo when drawing way outside a surface's dimensions; move various coordinate methods down to Canvas, because they don't require GTK information; make visible_area() a Canvas virtual method so that we don't have to cast to call it 2013-04-17 10:53:17 -04:00
96eee9e7a1 change UIConfig to use accessor/setter methods like RCConfig so that ParameterChanged methods can actually be emitted; add variable (over a small range) background shading for all TimeAxisViewItems 2013-04-16 23:46:22 -04:00
4e9108cd1e remove TimeAxisView::clip_to_viewport() and Editor::update_canvas_now() and Editor::flush_canvas() which should no longer be necessary with a sane canvas design 2013-04-12 18:01:44 -04:00
e9a82b6714 stop using vertical adjustment to account for scrolling, since event coordinates for all events that are delivered to the canvas are adjusted before Editor sees them 2013-04-12 12:53:52 -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
f208593249 Merge branch 'cairocanvas' of git.ardour.org:ardour/ardour into cairocanvas 2013-04-11 22:54:22 -04:00
ee1f0520a8 many changes to get the cairo-canvas version much, much more functional. still problems with a lot of subtle and not-so-subtle issues 2013-04-11 20:19:22 -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
07a505b1b2 lots of tweaking and adding debug output including operator<</dump(ostream&) methods to help visualize canvas structure 2013-04-05 11:27:26 -04:00
19bd641915 commit immediately post linking 2013-04-04 18:45:27 -04:00
aaea166135 initial commit of hand merging, plus getting "ancient" waf script to work correctly 2013-04-04 00:32:52 -04:00
0c3e840700 videotimline
squashed 694 commits from http://gareus.org/gitweb/?p=ardour3.git
2013-03-13 20:28:15 +01:00
1e30104c47 prevent smart mode from interfering with internal edit mode (note selection, etc)
git-svn-id: svn://localhost/ardour2/branches/3.0@13992 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-24 21:56:03 +00:00
d6d7fd8ba3 Fix MIDI region create drag for the eleventy billionth time.
Also make it work for pencil.

This is the canonical Ardour MIDI noob "I can't even create notes, this crap is
impossible to use or doesn't work at all" use case:

1) Create MIDI track
2) Click in that track, with object or pencil tool
3) ** A region is created ** - aha!
4) Click in that region, notes are created

Breaking step 3 ruins everything.  Please don't.


git-svn-id: svn://localhost/ardour2/branches/3.0@13932 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 19:16:58 +00:00
54ce76e8fd remove "edit" property from track/bus groups; use "select" property which should force region selection to propagate, and then rely on "edit-applies-to-selection"
git-svn-id: svn://localhost/ardour2/branches/3.0@13734 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-26 17:50:29 +00:00
4471f53643 prevent cursor from changing when in smart+internal object mode
git-svn-id: svn://localhost/ardour2/branches/3.0@13704 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-21 21:39:36 +00:00
42b59bb992 no region trimming on the region itself when in range mode
git-svn-id: svn://localhost/ardour2/branches/3.0@13685 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-19 18:48:29 +00:00
40e9dae606 various fixes for "advanced" operations on range selections. ctrl-drags now add a new range selection, allowing discontiguous selections as in ardour2, shift-click extends an existing range selection to the clicked position, alt-drag on a range selection moves it, and to do a so-called "separation drag" now use ctrl-alt-drag (or ctrl-alt-click)
git-svn-id: svn://localhost/ardour2/branches/3.0@13660 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-13 19:39:36 +00:00
Ben Loftis
2292e33ee4 crossfade hack and slash. removed overlap checks, overlap mode, default length, fade_is_xfade, fade_is_short, and other leftovers from previous crossfade models. Draw crossfade drags in realtime so fade_line is no longer needed. remove code for hiding crossfades during a drag. moved crossfade rect to top layer so crossfade lines dont grab mouse focus. drag-trim-with-fixed-fade-anchor is partially implemented and needs discussion
git-svn-id: svn://localhost/ardour2/branches/3.0@13659 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-13 16:42:05 +00:00
159b8face7 allow button release events to be processed for region selection ops
git-svn-id: svn://localhost/ardour2/branches/3.0@13591 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-02 20:56:33 +00:00
Ben Loftis
e63da83c53 tweak Smart Mode to be more like Mixbus. Smart mode is just a modifier on Object mode which provides Range selection in the top half of the waveform. probably lots of corner cases to clear up before its all over, but at least we can use Mixbus as a consistent target rather than making it all up again.
git-svn-id: svn://localhost/ardour2/branches/3.0@13551 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-26 22:43:10 +00:00
Ben Loftis
beb3ec2d7a Always Play Range is now Follow Edits, and is based on Mixbus implementation. Added menu item. Follow Edits button replaces Auto Play; removed the connector between play and play-range. Some Smart Mode changes came along for the ride but will be cleaned up shortly
git-svn-id: svn://localhost/ardour2/branches/3.0@13537 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-20 19:43:43 +00:00
2409f9ee5b reset default transport speed when leaving audition mouse mode
git-svn-id: svn://localhost/ardour2/branches/3.0@13088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-26 15:40:46 +00:00
9a3d9dcb3c outline fade in/out handles in black (#3828)
git-svn-id: svn://localhost/ardour2/branches/3.0@13014 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-10 17:19:17 +00:00
Carl Hetherington
a766fe1fd9 Somewhat primitive implementation of allowing the edit note dialog to handle multiple notes (#4096).
git-svn-id: svn://localhost/ardour2/branches/3.0@12623 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-09 01:51:34 +00:00
Carl Hetherington
0ac73d8513 Extend a previous region if we click in a MIDI automation lane where there is no region (#4155).
git-svn-id: svn://localhost/ardour2/branches/3.0@12622 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-09 00:36:21 +00:00
ba418958bf patch from dave flick to tackle a variety of cursor issues
git-svn-id: svn://localhost/ardour2/branches/3.0@12481 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29 20:29:47 +00:00
9d40a072a4 arguably cleaner tweak to previous commit
git-svn-id: svn://localhost/ardour2/branches/3.0@12479 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29 18:38:54 +00:00
f1505b631d substantive change to try to provide some rationality for region gain line visibility (and automation line visibility in general
git-svn-id: svn://localhost/ardour2/branches/3.0@12478 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29 18:30:10 +00:00
6fa6514cfd Remove over 500 unnecessary includes (including 54 of session.h).
It's slightly possible that this causes trivial build failures on different
configurations, but otherwise shouldn't cause any problems (i.e. no actual
changes other than include/naming/namespace stuff).  I deliberately avoided
removing libardour-config.h since this can mysteriously break things, though a
few of those do seem to be unnecessary.

This commit only targets includes of ardour/*.h.  There is also a very large
number of unnecessary includes of stuff in gtk2_ardour; tackling that should
also give a big improvement in build time when things are modified.


git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 06:09:29 +00:00
8d5065bc32 remove, convert, comment several cerr statements
git-svn-id: svn://localhost/ardour2/branches/3.0@12378 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-22 12:57:05 +00:00
a98fa4bc61 switch to 5 new fade curves, taken from mixbus2 branch. make xfade context menus functional even though the images are not accurate
git-svn-id: svn://localhost/ardour2/branches/3.0@12253 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-11 21:30:36 +00:00
c6d983bda5 incorrect but visible context menu for xfades
git-svn-id: svn://localhost/ardour2/branches/3.0@12243 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-10 19:14:11 +00:00
e3a9576aed basic xfade dragging
git-svn-id: svn://localhost/ardour2/branches/3.0@12236 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-10 00:46:22 +00:00
25655e1a6d skeleton for crossfade edge dragging
git-svn-id: svn://localhost/ardour2/branches/3.0@12235 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-09 23:04:18 +00:00
7bc425fd0d framework for handling events on the xfade rects
git-svn-id: svn://localhost/ardour2/branches/3.0@12213 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-08 17:13:59 +00:00
Carl Hetherington
b5a9d37cb0 Fix toggle selection for control points.
git-svn-id: svn://localhost/ardour2/branches/3.0@12057 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-22 23:14:27 +00:00
Carl Hetherington
3b5f017eb9 Add missing break; (#4820).
git-svn-id: svn://localhost/ardour2/branches/3.0@11810 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 01:57:11 +00:00
Carl Hetherington
3120bae8b4 Don't leave internal edit mode when clicking on an automation region view (#4747).
git-svn-id: svn://localhost/ardour2/branches/3.0@11749 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-22 16:41:23 +00:00
Carl Hetherington
e9bf20021e Remove unused RegionGainDrag; fix logic in adding new
region gain points; remove unreached switch {} that may
have come from a mis-merge.


git-svn-id: svn://localhost/ardour2/branches/3.0@11631 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-09 20:47:40 +00:00
c52c2b7368 forward-port some fixes from a2
git-svn-id: svn://localhost/ardour2/branches/3.0@11630 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-09 17:15:25 +00:00
671ec99bac (1) remove magic number voodoo when saving zoom focus/snap settings to instant.xml etc. (this has a minor breaking-behaviour for existing sessions etc (2) keep track of grid type/settings in and out of note edit mode and switch back and forth, thus allowing independent grids while working at the note or region level
git-svn-id: svn://localhost/ardour2/branches/3.0@11486 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-13 14:34:21 +00:00
d73815ccf2 range mode should not allow trim of MIDI notes
git-svn-id: svn://localhost/ardour2/branches/3.0@11471 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-08 12:52:04 +00:00
53cb1b6572 mouse draw mode can draw AND select (and trim) notes (but trim cursors don't appear yet)
git-svn-id: svn://localhost/ardour2/branches/3.0@11470 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-08 12:50:32 +00:00
b3652ddc3d fix for #4689 from dave flick
git-svn-id: svn://localhost/ardour2/branches/3.0@11467 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-07 17:51:50 +00:00
c21c9e6662 use button joiner for smart mode; polish up the visuals on the joiner a bit
git-svn-id: svn://localhost/ardour2/branches/3.0@11439 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-03 18:31:10 +00:00
7629120cda many changes, large and small, related to smart mode editing, range/region selection, and behaviour of playhead when always-play-range is enabled. could be buggy, but probably in subtle (or even very subtle) ways rather than obvious
git-svn-id: svn://localhost/ardour2/branches/3.0@11394 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-30 22:53:22 +00:00
0740fab6ed leave note edit mode with a click on any track background, not just non-midi
git-svn-id: svn://localhost/ardour2/branches/3.0@11349 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-25 19:38:14 +00:00
34581e4de9 fix breakage of normal method of creating an empty MIDI region
git-svn-id: svn://localhost/ardour2/branches/3.0@11341 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 22:17:24 +00:00
f3624c1874 exit internal/note edit mode when clicking on anything that is not a MIDI region view or a note (or various modeless items like markers and the playhead)
git-svn-id: svn://localhost/ardour2/branches/3.0@11333 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 16:20:31 +00:00
efab36a85e new mouse mode (Draw (notes)); switch into internal mode when draw is selected; notably improve use of dbl-click to enter and exist internal/note edit mode
git-svn-id: svn://localhost/ardour2/branches/3.0@11269 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-19 15:23:51 +00:00
c43f1d22c8 enter and exit node edit mode with dbl-click in any MIDI region
git-svn-id: svn://localhost/ardour2/branches/3.0@11268 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-19 00:14:58 +00:00
7856f14c44 when a context click event occurs in the editor, store the event so we can use it to determine position later during its handling, if necessary
git-svn-id: svn://localhost/ardour2/branches/3.0@11081 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 23:18:24 +00:00
Carl Hetherington
60fa99a34d Remove hopelessly inadequate attempt at last_item_entered
and ask the canvas where we are instead.  Should fix #4532.


git-svn-id: svn://localhost/ardour2/branches/3.0@10907 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-05 20:47:53 +00:00
Carl Hetherington
ec90b0ceb0 Use a Drag class for midi note selection, so that it
gets autoscroll (#4474).


git-svn-id: svn://localhost/ardour2/branches/3.0@10650 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-16 20:11:33 +00:00
Carl Hetherington
28123e436d Snap new automation points on audio lanes (part of #4297).
git-svn-id: svn://localhost/ardour2/branches/3.0@10570 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-13 16:28:20 +00:00
6449c2e5c8 more ardour-button-ization; fix transparency of selection rects; use "correct" cursors when entering and leaving selection rect handles; color tweaks for a few buttons
git-svn-id: svn://localhost/ardour2/branches/3.0@10527 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-10 15:25:01 +00:00
Carl Hetherington
c0b59854ff Trim includes.
git-svn-id: svn://localhost/ardour2/branches/3.0@10357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-31 21:16:32 +00:00
0938a42440 fixes for 98% of all the warnings/errors reported by OS X gcc on tiger
git-svn-id: svn://localhost/ardour2/branches/3.0@10179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-30 17:55:14 +00:00
Carl Hetherington
632c4ab264 Don't allow non-movable meter / tempo markers to be
dragged (part of #4313).


git-svn-id: svn://localhost/ardour2/branches/3.0@10067 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-08 17:49:36 +00:00
Carl Hetherington
3ba6804f27 Don't create new regions on clicks on MIDI plugin automation
tracks (#4298).


git-svn-id: svn://localhost/ardour2/branches/3.0@10062 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-07 13:45:52 +00:00
Carl Hetherington
982bfd08db Add context menu for control points.
git-svn-id: svn://localhost/ardour2/branches/3.0@9890 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-17 20:10:31 +00:00
Carl Hetherington
82ec615da3 Make MIDI automation tracks behave the same as MIDI
tracks when they are clicked in an area with no region
(approximation to a fix for #4155).


git-svn-id: svn://localhost/ardour2/branches/3.0@9860 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-13 12:34:11 +00:00
ed626628b5 Delete trailing whitespace
git-svn-id: svn://localhost/ardour2/branches/3.0@9656 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01 17:00:29 +00:00
d4d5b30aeb remove unused and useless "src" argument for a number of Region property modifying methods
git-svn-id: svn://localhost/ardour2/branches/3.0@9632 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-30 13:54:44 +00:00
Carl Hetherington
29ee63707f Fix crash when clicking on a hit (may be #4036).
git-svn-id: svn://localhost/ardour2/branches/3.0@9491 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-11 11:55:36 +00:00
Carl Hetherington
988348185e Separate verbose cursor out into its own class and clean up the API. Fixes #4010.
git-svn-id: svn://localhost/ardour2/branches/3.0@9455 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-02 13:38:16 +00:00
Carl Hetherington
8ca87df015 Fix subtraction of bar/beat/tick for verbose canvas cursor (#4011).
git-svn-id: svn://localhost/ardour2/branches/3.0@9426 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-25 21:19:25 +00:00
Carl Hetherington
33cd347529 Fix crash due to _over_region_trim_target not being updated when a RegionView disappears (#3956).
git-svn-id: svn://localhost/ardour2/branches/3.0@9332 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-07 23:14:04 +00:00
Carl Hetherington
ad942b104a Prevent region drags with the middle button in internal edit mode (#3869).
git-svn-id: svn://localhost/ardour2/branches/3.0@9199 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-24 11:48:12 +00:00
4f84a6cd1d remove spurious debug line
git-svn-id: svn://localhost/ardour2/branches/3.0@9105 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-08 14:45:51 +00:00
07e607ebad reinstate (de)selection operations that should happen on mouse button release
git-svn-id: svn://localhost/ardour2/branches/3.0@9104 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-08 12:45:23 +00:00
b88c773894 when leaving internal edit mode, if the current mode is range ("draw") and it wasn't before we entered internal edit mode, flip back to whatever it was before we entered
git-svn-id: svn://localhost/ardour2/branches/3.0@9102 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-08 01:55:50 +00:00
f649d775bc prevent trim cursors appearing, and prevent note trimming, when in a MIDI note that is too small on-screen. avoids silliness with trim cursors appearing while drawing small notes on screen, though really, it would nice to avoid them appearing ever in a note that was just added. not sure how to do that.
git-svn-id: svn://localhost/ardour2/branches/3.0@9077 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-05 23:00:49 +00:00
d08e3b94c5 basic adoption of new mouse binding facility
git-svn-id: svn://localhost/ardour2/branches/3.0@9063 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-04 03:10:48 +00:00
2c72f58aa1 experiment with making MIDI region boxes vanish when in note/internal edit mode ... to be continued
git-svn-id: svn://localhost/ardour2/branches/3.0@9054 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-03 14:51:02 +00:00
Carl Hetherington
292cda7865 No-op: coding style.
git-svn-id: svn://localhost/ardour2/branches/3.0@9036 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-02 17:00:54 +00:00
Carl Hetherington
0d61f205ab Bring up the click tab of the RC options window when right-clicking on the click button (#3783).
git-svn-id: svn://localhost/ardour2/branches/3.0@8889 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-17 18:53:31 +00:00
7a5b6a5031 patches from lincoln to speed up the regionlist and provide region removal (causes dangling shared ptrs to regions, fix to come
git-svn-id: svn://localhost/ardour2/branches/3.0@8845 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-14 21:49:43 +00:00
44f99e9217 make name-highlight bar active for trims even in internal edit mode, again
git-svn-id: svn://localhost/ardour2/branches/3.0@8800 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-09 14:02:49 +00:00
Carl Hetherington
ce91b0953b Remove always-true should_show_selection code.
git-svn-id: svn://localhost/ardour2/branches/3.0@8769 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-08 14:08:05 +00:00
Carl Hetherington
49869c98f3 Prevent various things from stopping the transport by requesting a transport speed of exactly 0 when they are really just continuously varying it. Fixes strange playhead behaviour during varispeed when the user varispeeds to exactly 0 and auto-return is triggered.
git-svn-id: svn://localhost/ardour2/branches/3.0@8733 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-07 01:12:47 +00:00
15b5fce904 merge 3.0-panexp (pan experiments) branch, revisions 8534-8585 into 3.0, thus ending 3.0-panexp. THIS COMMIT WILL BREAK ALL EXISTING 3.0 SESSIONS IN SOME WAY (possibly not fatally).
git-svn-id: svn://localhost/ardour2/branches/3.0@8586 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-27 01:31:03 +00:00
Carl Hetherington
1e8586742e Fix session range location by hooking into the undo system. Fixes #3654.
git-svn-id: svn://localhost/ardour2/branches/3.0@8539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-19 17:38:56 +00:00
f09524b9d3 move ticks per beat from Meter to Timecode::BBT_Time, add new constructor for BBT_Time based on a double value; reduce BeatFramesConverted to 1 liners pending likely removal
git-svn-id: svn://localhost/ardour2/branches/3.0@8277 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-14 20:28:37 +00:00
4b861e6039 Rename libmusictime libtimecode (consistent with already used namespace "Timecode").
Move BBT_Time to libtimecode.


git-svn-id: svn://localhost/ardour2/branches/3.0@8271 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-14 18:13:37 +00:00
0a19ce6f1c fix crash when dragging percussive-mode notes due to a bad dynamic cast
git-svn-id: svn://localhost/ardour2/branches/3.0@8205 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07 14:45:24 +00:00
8b68ed57ec Fix some messed up code (spacey tabs).
(There is faar more of this... FIX YOUR EDITORS!)


git-svn-id: svn://localhost/ardour2/branches/3.0@8086 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-25 20:37:39 +00:00
Carl Hetherington
03d2864820 Update ghost note presence when mouse mode is changed. Fixes #3559.
git-svn-id: svn://localhost/ardour2/branches/3.0@8066 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-21 23:54:57 +00:00
Carl Hetherington
8fc660e76e Move mouse cursor stuff out of Editor into its own class.
git-svn-id: svn://localhost/ardour2/branches/3.0@8048 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-16 14:53:16 +00:00
Carl Hetherington
ee76685f8d Modify region trim cursor if a region can only be trimmed in one direction.
git-svn-id: svn://localhost/ardour2/branches/3.0@8045 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-15 22:55:39 +00:00