13
0
Commit Graph

322 Commits

Author SHA1 Message Date
5285bb587f fix position where rubberband rect is drawn 2014-06-06 08:33:13 -04:00
ad346dc638 reinstate a canvas group where we reparent regions while dragging, so that they are always on top.
I mistakenly removed this during the onecanvas changes.
2014-06-05 15:16:55 -04: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
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
c9f890bd7c avoid recursing through the entire canvas when scrolling - only scroll explicitly identified ScrollGroups 2014-06-03 16:10:27 -04:00
da67cb92e9 whitespace deletion 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
97109672c7 initial redesign of canvas scrolling to facilitate independent x- and y-axis scrolling of specific groups within the canvas.
This commit should cause no change in behaviour, but contains all the code and changes necessary
for the next step
2014-06-03 16:09:06 -04:00
529a31bde7 remove unnecessary and wierd constant for bottom rect (drop zone) of track canvas 2014-05-19 14:00:36 -04:00
5668eea2a3 add a transparent rect that is always located at the bottom of the track canvas
This gives us an event/drag-n-drop/click target for things "at the bottom"
2014-04-16 04:16:56 -04:00
8b93576c18 not that anyone ever runs with the SAE profile and not that we want to support it, but don't crash if they do 2014-04-16 03:00:49 -04:00
dbb8501429 make our intentions even clearer when call Editor::track_canvas_viewport_size_allocated() 2014-04-16 02:55:08 -04:00
fea4f14242 make our intentions clear when call Editor::track_canvas_viewport_size_allocated() 2014-04-16 02:52:55 -04:00
f2673bb9bf remove reference to JACK constant 2014-04-10 10:22:13 -04:00
232cb73983 remove final reference to jack headers 2014-04-10 10:17:36 -04:00
Paul Davis
f89ddb10aa comment edit 2014-04-01 04:14:34 -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
4f7d94ea67 latest tweaks to autoscroll: symmetrical boundary on both sides, stop runaway scrolling, and more 2014-03-21 09:49:35 -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
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
cc22583c16 reorder (in source only) positioning of ruler/marker canvas groups 2014-02-25 12:02:50 -05:00
b2895eaa50 fix visibility of punch and loop rects.
They used to be in the time_line_group but this is regularly cleared of all its members (which were assumed to be time lines).
2014-01-26 14:04:23 -05:00
3020b224fa Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there 2014-01-10 16:07:57 -05:00
daf51a2e49 fix height issue with canvas-based rulers/bars, and use enums for outline specs 2014-01-10 10:57:33 -05:00
e841b33475 add (debug) names to various items 2013-12-30 14:01:56 -05:00
08b485db75 send enter events to EVERY newly entered item (ignore the bool return from the event handler); other canvas debugging aids;switch items_at_point() to use canvas coordinates 2013-11-03 10:07:00 -05:00
f8574fc39d 'gtk2_ardour' - Add namespaces + casting where necessary + general bits of 'correctness' to keep MSVC happy 2013-10-03 09:06:56 +01:00
0947791a80 remove debug output 2013-07-10 19:10:52 -04: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
b9c94f6dbf remove all calls to Outline::set_outline_width (1) because this is "wrong" when using Cairo - the default is 0.5 and it can remain that way 2013-04-17 10:56:04 -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
5cac4a6885 vtl: get rid of unused "bar" inside the ruler 2013-04-17 02:27:17 +02:00
1227f2b73e vtl: get rid of one more unnecessary canvas-group 2013-04-17 02:27:06 +02: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
cfe4bfb732 remove another pointless adjustment 2013-04-13 07:50:31 -04:00
05caa9caa1 removal of sundry Adjustments and consolidation of scrolling around two editor-owned Adjustments 2013-04-13 07:29:49 -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
b05968fb4e change frames_per_pixel to samples_per_pixel 2013-04-12 11:31:50 -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
204da61f98 remove incorrect merge of cairocanvas patch that stopped most tracks from displaying; add more debugging info 2013-04-10 14:42:36 -04:00
6830d83236 vtl: make videotimeline work with new cairo canvas
timeline thumbnail display, moving (drag/drop) and zoom works.

There still some crashes e.g. resizing the height of the timeline
and with off-screen image buffering when zooming in.
Likely due to concurrency issues:
VideoImageFrame::exposeimg() and direct access of the pixbuf:
"Assertion `!_bounding_box_dirty' failed." in canvas/item.cc:191

more work is needed..
2013-04-06 04:10:27 +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
197e75ab80 allow Drag-n-Drop onto the empty canvas (again); always import MIDI files since we consider them writable and so embedding isn't a safe option 2013-03-29 14:09:03 -04:00
613678233a minor fix for misleading comment 2013-03-28 16:18:08 -04:00
268553ecd4 honor CTRL modifier when drag/drop importing files (copy vs embed) 2013-03-21 21:33:02 +01:00
7b998ceba1 fix an old bug introduced when cth tried (valiantly) to make region-list -> DnD -> canvas behave like a regular region drag. this doesnt' work because the RegionInsertDrag() grabs the mouse and breaks the DnD. in addition, the code failed to correctly indicate when a drop was possible (over a Track) and when it was not (over a Bus) - this has also been fixed. the actual code in Editor::drop_regions() could and should be simplified - no reason to use a RegionInsertDrag here, but it was fast 2013-03-20 17:33:25 -04:00
0c3e840700 videotimline
squashed 694 commits from http://gareus.org/gitweb/?p=ardour3.git
2013-03-13 20:28:15 +01:00
00e1b1410c fix reversion of keyboard focus from gain display editing widget in both mixer and editor windows
git-svn-id: svn://localhost/ardour2/branches/3.0@13628 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-10 02:03:45 +00:00
Carl Hetherington
2e71cb2e26 Add option to disable autoscroll of editor (#4721).
git-svn-id: svn://localhost/ardour2/branches/3.0@12744 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-17 12:38:59 +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
2b7d17e904 reorder editor route list columns to put visible and active first (from joern)
git-svn-id: svn://localhost/ardour2/branches/3.0@11732 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-20 17:08:07 +00:00
1b19db251b debug tracking mouse presence in track canvas
git-svn-id: svn://localhost/ardour2/branches/3.0@11650 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-12 14:29:48 +00:00
6c1000070b fix cut-n-pastie relating to tracking mouse presence in track canvas
git-svn-id: svn://localhost/ardour2/branches/3.0@11649 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-12 13:40:51 +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
Carl Hetherington
664cec2135 Don't autoscroll right if we are moving left, and vice versa; should fix #4676.
git-svn-id: svn://localhost/ardour2/branches/3.0@11393 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-30 21:33:32 +00:00
f758ed0f41 more fixups of various things including cursors when note editing. in particular, don't needlessly reset the cursor during a drag. note insertion with ctrl pressed now only works if in MouseObject mode.
git-svn-id: svn://localhost/ardour2/branches/3.0@11270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-19 22:23:28 +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
Carl Hetherington
b78cb4d41a Fix autoscroll fudge calculations. Remove some unused
code.  Should help with #4501.


git-svn-id: svn://localhost/ardour2/branches/3.0@10767 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-22 12:22:46 +00:00
Carl Hetherington
fe145ce380 Start autoscroll in from the right-hand edge of the screen if the editor list is not in view, so that autoscroll kind-of works in this situation (#4473 and #4216).
git-svn-id: svn://localhost/ardour2/branches/3.0@10718 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-20 19:38:37 +00:00
Carl Hetherington
adfce3b762 Trim includes.
git-svn-id: svn://localhost/ardour2/branches/3.0@10666 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-18 00:04:49 +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
86d2afaf4e colinf's patch for #4223.
git-svn-id: svn://localhost/ardour2/branches/3.0@9952 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-03 13:27:48 +00:00
af7ba3347c when tabbing between track/bus name entries, attempt to scroll appropriately (#4223)
git-svn-id: svn://localhost/ardour2/branches/3.0@9924 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-25 20:28:51 +00:00
65c2782e6e fix up horizontal sizing of the track controls area in the editor
git-svn-id: svn://localhost/ardour2/branches/3.0@9797 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-07 13:15:53 +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
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
4f73aabc13 remove unused signal
git-svn-id: svn://localhost/ardour2/branches/3.0@9058 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-03 18:51:54 +00:00
Carl Hetherington
2ffc0cbe25 Fix incorrect mouse cursors after zoom mode clicks.
git-svn-id: svn://localhost/ardour2/branches/3.0@8895 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-17 22:35:34 +00:00
314f0d91d3 a radically new approach to sizing the track header layout that now allows ardour to shrink dramatically in vertical height. current lower limit is about 763 pixels WITH the editor mixer strip, and something much, much smaller without it
git-svn-id: svn://localhost/ardour2/branches/3.0@8608 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-29 14:48:59 +00:00
Carl Hetherington
b6b0bce678 Use lines between marker bars from the SAE profile.
git-svn-id: svn://localhost/ardour2/branches/3.0@8517 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-16 19:33:04 +00:00
bb797943dd add configurable colors to stereo panner, plus keybindings for zero width (0), 1 (alt-up) or -1 (alt-down), plus M when its mono
git-svn-id: svn://localhost/ardour2/branches/3.0@8153 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-02 15:51:42 +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
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
b85b4d9e54 make ardour3 build and link on OS X (tiger, at least)
git-svn-id: svn://localhost/ardour2/branches/3.0@8018 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-13 05:14:48 +00:00
Carl Hetherington
fcfbd65268 Further fixes for #3529. Show marker lines the same colour as their marker; adjust height of lines.
git-svn-id: svn://localhost/ardour2/branches/3.0@8009 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-11 13:36:38 +00:00
Carl Hetherington
40ca64c659 Slight improvement to autoscroll behaviour when expanding tracks.
git-svn-id: svn://localhost/ardour2/branches/3.0@8008 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-11 13:36:20 +00:00
Carl Hetherington
ba8b84eed1 Option to show lines below markers (#3529).
git-svn-id: svn://localhost/ardour2/branches/3.0@7993 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-10 18:29:32 +00:00
Carl Hetherington
156f5e4a42 Only compute and render the visible portion of crossfades. Fixes #3498.
git-svn-id: svn://localhost/ardour2/branches/3.0@7901 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-17 23:35:05 +00:00
ded4a143db much craziness with canvas cursors; fix 0 beat cursor text when shortening notes; fix crash when trimming locked regions; don't show trim cursors when region is locked; partial version of enumwriter validation fix from 2.X (less necessary with 3.0; probably more ...
git-svn-id: svn://localhost/ardour2/branches/3.0@7831 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-22 15:21:06 +00:00
90e73a3a6d (1) remove almost-never used block/unlock_property_changes() methods from PBD::Stateful (2) hide used and path columns from region list (3) detect mouse position within MIDI notes and thus allow move or trim from the same mouse mode (object or trim; first & last 1/4 of each note is for trimming
git-svn-id: svn://localhost/ardour2/branches/3.0@7823 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-21 15:15:06 +00:00
Carl Hetherington
3aa1f21475 Updating zoom mouse cursor on modifier press. Fixes #274.
git-svn-id: svn://localhost/ardour2/branches/3.0@7820 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-21 14:22:13 +00:00
ede4ecbb00 megaopus patch #2 for today: remove nframes64_t and sframes_t from source
git-svn-id: svn://localhost/ardour2/branches/3.0@7792 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17 18:20:37 +00:00
10bdce85a0 megaopus commit: (1) add __STD_(LIMIT|FORMAT)_MACROS to command line flags for cc and c++ builds, remove them from source (2) add new Property::midi_data used by MidiRegion to signal that its (MIDI) contents have changed (3) massive switch from nframes_t to framepos_t/framecnt_t including removal of ARDOUR::max_frames (replaced by ARDOUR::max_frame{pos,cnt} (lots more to do but this set was driven by changes to the Diskstream API to use framepos_t
git-svn-id: svn://localhost/ardour2/branches/3.0@7791 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17 16:24:22 +00:00
4d112a8e6b remove Glib::ustring from libardour; allow any characters except '/' and '\' in paths (may cause issues when loading creatively named 2.X sessions; fix a couple of details of name collection and usage from the startup dialog
git-svn-id: svn://localhost/ardour2/branches/3.0@7772 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-14 15:45:21 +00:00
71a4796dc3 forward port of 7539 from 2.x
git-svn-id: svn://localhost/ardour2/branches/3.0@7667 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-22 16:28:26 +00:00
Carl Hetherington
7898aabcaa Fix vertical canvas autoscroll when dragging track heights. Fixes #3240.
git-svn-id: svn://localhost/ardour2/branches/3.0@7327 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-29 19:08:19 +00:00
Carl Hetherington
a54f107d4f Make summary zoom happen based on where the drag is started, rather than
needing a modifier.  Change mouse pointer shape in the summary to indicate
what will happen on a drag.  Allow vertical zoom in the summary, which modifies
track heights accordingly.


git-svn-id: svn://localhost/ardour2/branches/3.0@7275 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-18 00:05:44 +00:00
a04b1fee6a heavy-handed and crude way to stop WM-stolen-alt keys from causing MidiRegionView from losing track of SelectTouchDraggingMode (may not be optimal or in the right place, but it works for now); add primary-click-on-MRV-blank-space and tertiary-click-on-MRV-blank-space to select all notes above or below the click, using recently committed methods for Sequence
git-svn-id: svn://localhost/ardour2/branches/3.0@7192 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-28 21:39:12 +00:00
Carl Hetherington
792e3de1d4 Create the session range location as and when the session first gets some content. Allows both the beginning and end of the range to expand to contain the actual session contents.
git-svn-id: svn://localhost/ardour2/branches/3.0@7087 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-09 20:48:21 +00:00
Carl Hetherington
acfc44f388 Remove some hang-overs of the old horizontal scrollbar. Hence allow most things to happen beyond the session end marker.
git-svn-id: svn://localhost/ardour2/branches/3.0@7086 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-09 01:33:11 +00:00
Carl Hetherington
8c423ea228 Small cleanups to dragging code. Fix assertion failure on dragging a regions' parent entry from the region list to the canvas (which may be #2811). Fixes to drags of regions onto and then back off canvas; should fix #3109.
git-svn-id: svn://localhost/ardour2/branches/3.0@7068 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-05 22:09:07 +00:00
Carl Hetherington
061a85191c Move Diskstream ownership to Track, so that Session no longer holds lists of Diskstreams. Breaks 3.0 file format again.
git-svn-id: svn://localhost/ardour2/branches/3.0@6945 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-21 20:42:22 +00:00
6ef5d85ae1 changes from 2.X starting in march 2009 through oct 20 2009 (5826 inclusive)
git-svn-id: svn://localhost/ardour2/branches/3.0@6761 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-16 15:33:04 +00:00
Carl Hetherington
3ae1bd3723 Remove my attempts to autoscroll based on dragged region edges (rather than just pointer position); too many corner cases and not really worth the bother.
git-svn-id: svn://localhost/ardour2/branches/3.0@6645 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-07 03:23:20 +00:00
Carl Hetherington
11bd4eed89 Allow multiple simulataneous Drags to be active, and hence set up and drag time ranges when moving regions in PT-edit mode.
git-svn-id: svn://localhost/ardour2/branches/3.0@6478 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-12 16:14:49 +00:00
Carl Hetherington
e2981526ea Fix some bugs in autoscroll when dragging regions.
git-svn-id: svn://localhost/ardour2/branches/3.0@6460 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-06 01:14:56 +00:00
Carl Hetherington
ca602cf216 Refactor and clean up some confusion in dragging code.
git-svn-id: svn://localhost/ardour2/branches/3.0@6384 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 01:12:41 +00:00
f6fdd8dcbf switch to using boost::signals2 instead of sigc++, at least for libardour. not finished yet, but compiles, loads sessions, records and can close a session without a crash
git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 18:24:23 +00:00
8687895abb remove using namespace sigc everywhere to ensure clarity over which bind/mem_fun is being used; make Config::map_parameters take a boost::function rather than a sigc::slot ; continue debugging crash caused by regionviews not tracking their Region's lifetime
git-svn-id: svn://localhost/ardour2/branches/3.0@6357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-12 15:02:15 +00:00
64dc5427e4 make all use of bind/mem_fun be explicitly sigc::
git-svn-id: svn://localhost/ardour2/branches/3.0@6354 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 23:29:48 +00:00
Carl Hetherington
1e4280c9cd Remove unused editor hscroller code. Add buttons to the left and right of the summary to substitute for the equivalent buttons on a scrollbar.
git-svn-id: svn://localhost/ardour2/branches/3.0@6239 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 04:10:06 +00:00
1474b10d39 avoid .h pollution in last commit
git-svn-id: svn://localhost/ardour2/branches/3.0@6110 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-17 14:14:26 +00:00
29d677e668 allow use of Return, KP_Enter and more in key binding editor; better display of such bindings; potential fix for "crashes" caused by an endless loop of enter/hide events involving the verbose canvas cursor
git-svn-id: svn://localhost/ardour2/branches/3.0@6109 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-17 13:54:04 +00:00
c83e48e07a Trim session.h include dependency tree.
git-svn-id: svn://localhost/ardour2/branches/3.0@5979 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-30 15:30:22 +00:00
bb9cc45cd2 Strip trailing whitespace and fix other whitespace errors (e.g. space/tab mixing). Whitespace changes only.
Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red.  I don't know the emacs equivalent...


git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14 16:10:01 +00:00
3ae28868ff remove all MIDI-specific editing modes by making standard work either at object level or within (e.g. notes, etc) ; make tool buttons proxies for GtkActions ; internal sends have their own BufferSet now, instead of using Session ones; don't make internal sends to the monitor bus active when added to the Route
git-svn-id: svn://localhost/ardour2/branches/3.0@5434 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-28 20:51:28 +00:00
Carl Hetherington
b65f8073ba Fix some unused parameter warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@5403 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-21 15:55:17 +00:00
Carl Hetherington
402cc384ce Back out big shared_ptr change. Moving to a branch. Apologies all.
git-svn-id: svn://localhost/ardour2/branches/3.0@5343 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-09 17:58:13 +00:00
Carl Hetherington
4297071b3f Use shared_ptr for the TimeAxisView hierarchy.
git-svn-id: svn://localhost/ardour2/branches/3.0@5339 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-09 13:39:45 +00:00
Carl Hetherington
b233455b3f Split route group list out of Editor.
git-svn-id: svn://localhost/ardour2/branches/3.0@5308 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-03 18:37:15 +00:00
Carl Hetherington
5b97b13766 Separate route list code from Editor into its own object, EditorRouteList. Hopefully makes things a bit better.
git-svn-id: svn://localhost/ardour2/branches/3.0@5302 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-01 23:20:18 +00:00
Carl Hetherington
ece809f1db Fix sizing problems with edit group tabs.
git-svn-id: svn://localhost/ardour2/branches/3.0@5224 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-20 14:13:34 +00:00
daf0e333a9 pack zoom controls into upper right of editor table/packer
git-svn-id: svn://localhost/ardour2/branches/3.0@5209 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-17 18:11:04 +00:00
Carl Hetherington
34930fc8cf Add a playhead marker to the summary.
git-svn-id: svn://localhost/ardour2/branches/3.0@5206 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-17 00:29:56 +00:00
Carl Hetherington
478bab5380 Prevent vertical autoscroll when dragging the playhead.
git-svn-id: svn://localhost/ardour2/branches/3.0@5186 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-14 13:32:17 +00:00
Carl Hetherington
b192de88b6 Some cleanups to ruler drags.
git-svn-id: svn://localhost/ardour2/branches/3.0@5185 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-14 13:31:46 +00:00
Carl Hetherington
804da56531 Various fixes and improvements to editor summary widget.
git-svn-id: svn://localhost/ardour2/branches/3.0@5179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-13 17:52:51 +00:00
Carl Hetherington
8eb17211b5 Hopefully fix assertion failures in gnomecanvas when dragging track heights.
git-svn-id: svn://localhost/ardour2/branches/3.0@5175 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-12 19:05:16 +00:00
Carl Hetherington
c99ae648f0 Add a widget giving an overview of the editor, as (what I think is being) suggested in #2714. Many caveats: most notably that it looks quite ugly and you can't (yet) turn it off.
git-svn-id: svn://localhost/ardour2/branches/3.0@5162 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-11 01:05:01 +00:00
6e9b9294e1 nick m's fix for markers etc ; several tweaks for mute/solo ; rename run_in_place() as run()
git-svn-id: svn://localhost/ardour2/branches/3.0@5155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-10 18:10:07 +00:00
Carl Hetherington
0874426a5b Further refactoring of drag code. Changes so that drags from the region list display a region view during the drag.
git-svn-id: svn://localhost/ardour2/branches/3.0@5127 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-08 19:28:51 +00:00
Carl Hetherington
962efaf05e Pull dragging code out of the Editor class into its own hierarchy.
git-svn-id: svn://localhost/ardour2/branches/3.0@5113 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-30 18:25:59 +00:00
Nick Mainsbridge
882e3a690a A different fix for record crash, use pixfufs instead of canvas text in markers, use leftmost_frame instead of querying canvas coords when scrolling (speeds up canvas scrolling somewhat), remove old include, remove first_action_message and some other unused methods.
git-svn-id: svn://localhost/ardour2/branches/3.0@5108 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-21 17:30:45 +00:00
ace07c80a8 a gadzillion changes all over the place. nothing is finished, but all is better than it was. more to come on all almost everything touched by this commit, this is purely a sync-to-repository. compiles and runs, but now incompatible with all previous 3.0 session files (probably)
git-svn-id: svn://localhost/ardour2/branches/3.0@5084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-16 02:51:17 +00:00
e0aaed6d65 *** NEW CODING POLICY ***
All #include statements that include a header that is a part of a library
bundled with ardour MUST use quotes, not angle brackets.

Do this:

#include "ardour/types.h"

NOT this:

#include <ardour/types.h>

Rationale:

This is best practice in general, to ensure we include the local version
and not the system version.  That quotes mean "local" (in some sense)
and angle brackets mean "system" (in some sense) is a ubiquitous
convention and IIRC right in the C spec somewhere.

More pragmatically, this is required by (my) waf (stuff) for dependencies
to work correctly.  That is:

!!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!!

Failure to comply is punishable by death by torture. :)

P.S. It's not that dramatic in all cases, but this (in combination with some
GCC flags specific to the include type) is the best way I have found to be
absolutely 100% positive the local ones are being used (and we definitely
want to be absolutely 100% positive on that one).


git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 18:26:51 +00:00
64bf6f004a Fix a bunch of the ol' trivial audio-specific-for-no-particular-reason things.
Re-addition of this sort of thing is now officially punishable by death ;)


git-svn-id: svn://localhost/ardour2/branches/3.0@4603 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 07:04:27 +00:00
Carl Hetherington
f2058a3f87 Comment and (hopefully) simplify Editor::region_drag_motion_callback, fixing problems with dragging regions
to and from tracks in "stacked" display mode.  As a side-effect, enable dragging of regions between layers,
though I'm not entirely sure where this is useful or desirable just yet; dragging regions between layers
currently works in the GUI but has no effect on the model.


git-svn-id: svn://localhost/ardour2/branches/3.0@4389 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-06 03:18:09 +00:00
Carl Hetherington
042997e5ed Cleanups and a few comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@4374 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-02 00:17:55 +00:00
bc89fe0147 most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet
git-svn-id: svn://localhost/ardour2/branches/3.0@4313 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-12 14:43:24 +00:00
Nick Mainsbridge
b1c48972f2 Handle changed session duration & resizing canvas better wrt end marker, remove unused last_canvas_frame, don't redraw the entire mixer every time its presented, consistent space between rightmost horizontal scroller position and end marker when zooming, possible fix for gaps in tempo lines.
git-svn-id: svn://localhost/ardour2/branches/3.0@3982 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-19 07:55:42 +00:00
3d47c31d8f fix crash at startup caused by use of null session ptr to set end marker (from 2.0)
git-svn-id: svn://localhost/ardour2/branches/3.0@3975 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-16 11:16:41 +00:00
Nick Mainsbridge
a8baa20be8 Make tempo lines physical_screen_height high, add xml null check, Use clicked_regionview directly to calculate region movement. Using drag_info.data may result in the wrong regionbiew being used, don't use canvas coords for region_drag_finished_callback x calculation (eliminates speed adjustment), prevent incorrect updates on dropped regions by updating canvas before placing region copies.
git-svn-id: svn://localhost/ardour2/branches/3.0@3965 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-14 13:35:17 +00:00
Nick Mainsbridge
61b3131303 Fix non-disappearing transport range bar drag rects, use physical_screen_height for some canvas items.
git-svn-id: svn://localhost/ardour2/branches/3.0@3930 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-11 17:51:15 +00:00
Nick Mainsbridge
e17e94e55f Fix the nostar ruler hiding bug, rejig ruler bars again, this time making them physical_screen_width wide - preventing artefacts while hiding.
git-svn-id: svn://localhost/ardour2/branches/3.0@3912 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-11 00:04:33 +00:00
c64e96b6a8 add toggles for region fade in/out/both active, plus toggle for region fades visibility
git-svn-id: svn://localhost/ardour2/branches/3.0@3904 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-09 21:55:05 +00:00
Nick Mainsbridge
12cbe6d502 Improve scrolling performance for sessions containing hundreds of regions over many tracks by hiding offscreen tracks (scroll faster by making tracks larger, exposing fewer of them). Use distance from screen edges to drive autoscrolling distance. Avoid using canvas coordinates for displacement calculations where possible. Don't redisplay tempo in the colour handler.
git-svn-id: svn://localhost/ardour2/branches/3.0@3854 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-04 10:38:20 +00:00
ad4919ce92 Assortment of minor changes from 2.0-ongoing.
git-svn-id: svn://localhost/ardour2/branches/3.0@3852 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-03 18:24:38 +00:00
Nick Mainsbridge
80608f7594 Relayer punch/loop range rects, fix display of punch-in with no punch-out, ensure range selection rect is hidden after single click.
git-svn-id: svn://localhost/ardour2/branches/3.0@3836 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-29 20:35:44 +00:00