Commit Graph

6726 Commits

Author SHA1 Message Date
Robin Gareus
0889336aac disable pluginbox in RouteUI window when a track is frozen 2014-06-04 02:19:46 +02:00
Paul Davis
8b745aa4b4 fix two mysterious problems with stdint types 2014-06-03 16:38:33 -04:00
Paul Davis
8fa81c1436 merge onecanvas and cairocanvas branches, and manually resolve conflicts, including rounding in item_to_window() methods 2014-06-03 16:37:53 -04:00
Paul Davis
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
Paul Davis
dc349514fa remove utterly useless unused code 2014-06-03 16:11:24 -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
ee8fb7758a remove timebar canvas item from markers 2014-06-03 16:10:27 -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
Paul Davis
c9f890bd7c avoid recursing through the entire canvas when scrolling - only scroll explicitly identified ScrollGroups 2014-06-03 16:10:27 -04:00
Paul Davis
a551181842 remove incorrect calls to Editor::maybe_autoscroll() from specific Drag classes (autoscroll is handled by the Drag manager) 2014-06-03 16:10:27 -04:00
Paul Davis
da67cb92e9 whitespace deletion 2014-06-03 16:10:27 -04:00
Paul Davis
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
Paul Davis
fc9e6651dd remove unused variable 2014-06-03 16:09:06 -04:00
Paul Davis
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
Paul Davis
ee6c483d18 non-copy region drag now creates a new track when a region is dragged to the drop zone 2014-06-03 16:07:05 -04:00
Paul Davis
7e36d4c9bb part one of allowing region drag to the bottom (drop-zone) rect of track canvas 2014-06-03 16:06:41 -04:00
Robin Gareus
d5fa80e01d fix linking against libasound 2014-06-02 21:09:21 +02:00
Robin Gareus
8e9b02cfa2 ALSA backend (based on Dummy backend and zita-alsa-pcmi) 2014-06-02 19:23:07 +02:00
Robin Gareus
b517695256 allow latency measurement at startup 2014-06-02 19:21:15 +02:00
Robin Gareus
6dfb63bb46 tentative fix for requesting driver+device list from backend 2014-06-02 19:21:15 +02:00
Paul Davis
8c9749e42f merge with master and fix 4 conflicts by hand 2014-06-02 11:32:13 -04:00
Robin Gareus
3f82052d11 fix display of cd-track-detail UI 2014-06-01 19:48:21 +02:00
Robin Gareus
ea3918ba2d disable snap fades to 'other' region (for now) 2014-06-01 00:40:07 +02:00
Robin Gareus
3b717da783 frankenstein'ed fade+trim cursors 2014-05-31 16:07:38 +02:00
Robin Gareus
6894b1c7de initialize variables 2014-05-31 15:18:43 +02:00
Robin Gareus
12d4989067 show fade+trim handles only if the operation is possible 2014-05-31 15:15:46 +02:00
Robin Gareus
ef3c27bc1d session fade-region-visible is for fades - not controls 2014-05-31 14:16:15 +02:00
Robin Gareus
d6b1a9f6e3 prepare fade+trim cursors (cursor image still missing) 2014-05-31 14:04:41 +02:00
Robin Gareus
f0536816ab reduce outline of fade-in/active rectangle to line 2014-05-31 14:00:28 +02:00
Robin Gareus
1c32e45771 show x-fade-rectangle only when hovering 2014-05-31 14:00:04 +02:00
Robin Gareus
bfa58e58c3 fix fade+trim handle hover color 2014-05-31 04:51:02 +02:00
Robin Gareus
9decd39de9 reset [trim] fade handle position if track-height changes 2014-05-31 04:17:47 +02:00
Robin Gareus
4843c5d5cf towards region-trims preserving fade duration 2014-05-31 03:53:59 +02:00
Paul Davis
08a1409b1f back port 6576105 from cairocanvas as fix for data loss/file deletion 2014-05-29 16:28:57 -04:00
Paul Davis
be575b7945 fix data loss/file deletion caused by mistaken used of Session::source_by_path() to check if an AUDIO filesource with a given path already exists.
::source_by_path() was written for MIDI files only. I fixed the call and renamed the two similar functions (one for audio and one for MIDI) to make it more clear.
2014-05-29 16:27:41 -04:00
Robin Gareus
2d82446f59 set Gtk::RadioAction state on instant.xml load.
This should really be done in ArdourDropdown somehow.

Fixes issues introduced at b9708d5: If after session-load some
radio-item other than the first one is set active, it is
impossible to switch to the first.
e.g. set "Snap to Grid", Save Session, Load Session, trying to
switch to "Snap to None" fails until another mode is selected first.
2014-05-29 14:16:15 +02:00
Robin Gareus
bc523665fe more new fade icons from Chris Goddard 2014-05-29 13:19:47 +02:00
Robin Gareus
918a0ac5f9 update x-fade context-menu 2014-05-29 07:49:26 +02:00
Robin Gareus
7e44308471 replace use of Curve with XFadeCurve. 2014-05-29 03:10:22 +02:00
Robin Gareus
f226ed086b update fade icons 2014-05-28 22:23:42 +02:00
Robin Gareus
d96a6ed247 fix x-fade icons in context menu 2014-05-28 19:46:31 +02:00
Robin Gareus
034f3dafd7 Revert "cairo sub-surface prototype & example
This reverts commit c57fcde78c.
and also     commit f1f8f89fcb.
2014-05-28 19:13:25 +02:00
Paul Davis
24537477c4 fix up operation of Editor::temporal_zoom_to_frame() which had not been updated since samples_per_pixel was changed to an integer (framecnt_t) 2014-05-28 12:18:37 -04:00
Robin Gareus
f1f8f89fcb exercise subsurface rendering for x-fade curves 2014-05-28 17:38:42 +02:00
Paul Davis
d9b7c8b864 for trx, use the primary clock for verbose cursor units 2014-05-27 13:26:49 -04:00
Robin Gareus
4cf93fffc2 x-fade drawing rework, part one 2014-05-27 16:37:01 +02:00
Robin Gareus
cadf07e362 global one-time setup of waveform preferences.
see note in previous commit.
2014-05-27 16:37:01 +02:00
Robin Gareus
a8f11b6004 persistent waveform shape setting.
NOTE: the call to set_global_shape() only needs to happen once,
presumably in a hook in the editor that catches Config::Changed

The same is true for waveform-scale and clipping. But for now it's
at least consistent.
2014-05-27 16:37:01 +02:00
Robin Gareus
a0037ee2d8 fixup freeze operation.
since rev. 1e3a955, Session::write_one_track() gets and drops
thread buffers.
2014-05-26 07:00:00 +02:00
Robin Gareus
58d6c39b3d fix sensitivity of engine dialog driver_combo. 2014-05-24 20:10:14 +02:00