Paul Davis
dc96ea25d3
whitespace deletion
2014-08-17 13:37:33 -04:00
Paul Davis
cb9453b475
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-08-17 13:37:27 -04:00
Paul Davis
6e91e9fd5f
remove unused variable
2014-08-17 13:37:23 -04:00
Paul Davis
87fa554ac9
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-08-17 13:37:16 -04:00
Paul Davis
ce63f22d80
comment tweak
2014-08-17 13:32:47 -04:00
Paul Davis
a69f7a9282
adding a new track via copy-region-drag now works (and shares code with the non-copy case
...
Conflicts:
gtk2_ardour/editor_drag.cc
2014-08-17 13:32:39 -04:00
Paul Davis
6d3b9fe7e6
overwrite state of libs/canvas with code from corresponding period in ardour-cairocanvas
...
This makes continued merges with ardour codebase easier, at the
small cost of removing the XML-based constructors. They were not
in use anyway and their use doesn't really fit into the
conception of the canvas as a dynamic UI element. Could reintroduce
them at a later date.
2014-08-17 13:29:01 -04:00
Paul Davis
dcbcf09cf5
make creation of ArdourCanvas objects in waves_ui.cc conditional on ARDOUR_CANVAS_HAS_XML_UI
2014-08-17 13:27:00 -04:00
Paul Davis
4078063b00
non-copy region drag now creates a new track when a region is dragged to the drop zone
2014-08-16 21:48:25 -04:00
Paul Davis
56762ecf3e
part one of allowing region drag to the bottom (drop-zone) rect of track canvas
2014-08-16 21:48:12 -04:00
John Emmas
1d945f26be
When writing '.jackdrc' make sure we enclose any device names in quotation marks
...
(in Windows, device names almost always contain whitespace)
2014-08-16 21:48:07 -04:00
John Emmas
68a34d0d6f
Keep this #include consistent with similar ones
...
(evoral/evoral doesn't get used anywhere else)
2014-08-16 21:48:01 -04:00
Robin Gareus
7ade736a35
fix wscript for x-compiling
2014-08-16 21:47:55 -04:00
Robin Gareus
55c4c3d819
ALSA backend: tweak midi parser (fix start mid sequence)
2014-08-16 21:47:48 -04:00
Robin Gareus
151a410a13
ALSA backend: device detection
2014-08-16 21:47:40 -04:00
Robin Gareus
e1ec25ede9
fix linking against libasound
2014-08-16 21:47:34 -04:00
Robin Gareus
8f285657db
make ALSA backend optional and disable by default
...
Conflicts:
libs/backends/wscript
2014-08-16 21:47:25 -04:00
Robin Gareus
a5e1cbda85
ALSA backend: add raw midi parser
2014-08-16 21:44:58 -04:00
Robin Gareus
78d967d48c
ALSA backend: raw midi prototype
2014-08-16 21:44:51 -04:00
Robin Gareus
c90428b5b8
ALSA backend (based on Dummy backend and zita-alsa-pcmi)
...
Conflicts:
gtk2_ardour/ardev_common.sh.in
libs/backends/wscript
2014-08-16 21:44:42 -04:00
Robin Gareus
d150d76823
allow latency measurement at startup
2014-08-16 21:43:27 -04:00
Robin Gareus
f0ef57147c
tentative fix for requesting driver+device list from backend
2014-08-16 21:43:13 -04:00
Paul Davis
60bb0b5f58
substantive changes to the logic and safety for naming of (audio/MIDI) sources, especially when created via import
...
Conflicts:
libs/ardour/import.cc
2014-08-16 18:02:22 -04:00
Robin Gareus
206b9acb5f
DummyBackend: fix midi event mux+sorting
2014-08-16 18:00:48 -04:00
Robin Gareus
684927cce7
fix display of cd-track-detail UI
2014-08-16 18:00:38 -04:00
Robin Gareus
33b19c61d5
Dummy backend, revise small things
2014-08-16 18:00:01 -04:00
Robin Gareus
3d9498e351
dummy-backend, fix physical ports in/out convention.
2014-08-16 17:59:56 -04:00
Robin Gareus
1c17431aa6
disable snap fades to 'other' region (for now)
2014-08-16 17:59:50 -04:00
Robin Gareus
bafc5b816c
test possible 'flickering' with nvidia
2014-08-16 17:59:45 -04:00
Robin Gareus
a37a75a05c
do not thin() automation event list on load.
...
only thin() when writing automation. This fixes issues with
loading short x-fades (which can be stretched later).
TODO: thinning should not just drop, but interpolate and use
more elaborate logic, compared to A2/MB2 Curve::merge_nascent()
2014-08-16 17:59:35 -04:00
Robin Gareus
b1bf1fe34c
frankenstein'ed fade+trim cursors
2014-08-16 17:59:30 -04:00
Robin Gareus
ebc797115b
initialize variables
2014-08-16 17:59:25 -04:00
Robin Gareus
4b00dea155
show fade+trim handles only if the operation is possible
2014-08-16 17:59:20 -04:00
Robin Gareus
a8eb104f4c
session fade-region-visible is for fades - not controls
2014-08-16 17:59:15 -04:00
Robin Gareus
31c49330f0
don't allow waveform to bleed into TimeAxisViewItem frame border
2014-08-16 17:59:10 -04:00
Robin Gareus
ea9a5e45e6
prepare fade+trim cursors (cursor image still missing)
2014-08-16 17:59:05 -04:00
Robin Gareus
102c1dc66c
reduce outline of fade-in/active rectangle to line
2014-08-16 17:58:56 -04:00
Robin Gareus
7478412ce8
show x-fade-rectangle only when hovering
2014-08-16 17:58:49 -04:00
Robin Gareus
00dbbc6fdb
fix fade+trim handle hover color
2014-08-16 17:58:43 -04:00
Robin Gareus
23a711d370
reset [trim] fade handle position if track-height changes
2014-08-16 17:58:38 -04:00
Robin Gareus
40ffd0600b
towards region-trims preserving fade duration
2014-08-16 17:58:34 -04:00
Robin Gareus
f413ab6ace
use CubicSpline interpolation for x-fade preset Shapes
2014-08-16 17:58:29 -04:00
Robin Gareus
de84813c0d
update Evoral::Curve to honor ControlList::InterpolationStyle
2014-08-16 17:58:23 -04:00
John Emmas
8dd1ed2b7a
Add newly introduced sources to MSVC project
...
(xfade_curve stuff)
Conflicts:
libs/canvas/MSVCcanvas/cairocanvas.vcproj
2014-08-16 17:58:17 -04:00
John Emmas
c7dc741bed
Rearrange some #includes to keep MSVC happy
2014-08-16 17:58:01 -04:00
Robin Gareus
ece0d75122
Fix code to prepare re-enable cubic spline interpolation of automation data.
...
see also 24917e4c9e
2014-08-16 17:57:52 -04:00
Robin Gareus
9bbc29c022
panner: backwards compatibility, constrain pan-range in old sessions
...
fixes http://tracker.ardour.org/view.php?id=5823#c15686
This is only an issue when loading an old session
(pre 3.5.308 - actual change was 21ca6a10 ) for the first
time with newer ardour.
Saving and re-loading with ardour >= 3.5.308 fixed this as well.
2014-08-16 17:57:47 -04:00
Robin Gareus
81068a7932
smooth visual curve drawing
2014-08-16 17:57:42 -04:00
Robin Gareus
d8bdfa6f17
use fixed number of steps for dB-scale x-fade curves.
...
32 steps is sufficient for all practical musical purposes.
2014-08-16 17:57:13 -04:00
Robin Gareus
1685c2bff2
fixed number of steps for symmetric fades:
...
Extra steps are all below -20dB vs inverse signal being over -2dB.
linear interpolation -6dB steps is sufficient for the tail.
2014-08-16 17:57:08 -04:00