Commit Graph

113 Commits

Author SHA1 Message Date
Carl Hetherington
f722858e43 Patch from tophatdave to improve display of timestretch in
stacked layers mode (#4379).


git-svn-id: svn://localhost/ardour2/branches/3.0@12460 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-27 20:07:13 +00:00
Carl Hetherington
e65d84d37c Re-add erroneously-removed methods related to cut/copy of
automation time ranges.


git-svn-id: svn://localhost/ardour2/branches/3.0@12114 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-27 21:34:44 +00:00
Carl Hetherington
a4434809e1 Use a list of ControlPoints to hold the automation selection,
rather than a time range.  This makes more sense now that we
display every point on an automation line, rather than just
a subset.  Makes the code a fair bit simpler, and should fix
some unexpected behaviours, especially when cutting automation
points.


git-svn-id: svn://localhost/ardour2/branches/3.0@12054 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-22 14:03:07 +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
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
80972784e3 Fix non visibility of previously-visible MIDI automation
tracks on session reload.


git-svn-id: svn://localhost/ardour2/branches/3.0@9863 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-13 17:13:30 +00:00
10cb0a7646 introduce GUIObjectState; massive, pervasive changes in visibility and height management for track displays in the editor
git-svn-id: svn://localhost/ardour2/branches/3.0@9796 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-07 00:37:13 +00:00
1060243302 major, substantive reworking of how we store GUI information (visibility, height) for automation data. old design stored (insufficient) identifying information plus actual data in a GUI-only XML node; new scheme adds GUI data via extra_xml node to each AutomationControl object. reworked public/private methods for showing/hiding TimeAxisView objects; changed labelling of automation tracks to just show the name of the controlled parameter - more info can be viewed in the tooltip for the track headers. NOTE: Session file format ALTERED. No data loss but track visibility may be different than previous ardour3 versions
git-svn-id: svn://localhost/ardour2/branches/3.0@9703 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-11 15:35:34 +00:00
83f385d263 audio clock switchover part2: remove most egregious include-time dependency on audio_clock.h, and alter API for a few utilities along the way
git-svn-id: svn://localhost/ardour2/branches/3.0@9673 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-02 17:50:37 +00:00
Carl Hetherington
32df620938 Fix a few missing drops of Route references.
git-svn-id: svn://localhost/ardour2/branches/3.0@9571 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-23 10:03:14 +00:00
Carl Hetherington
5576faf943 Clean up some confusion with AutomationControls in AutomationTimeAxisViews that have regions.
git-svn-id: svn://localhost/ardour2/branches/3.0@8883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-17 16:18:27 +00:00
Carl Hetherington
81aef8b491 Minor tidying-up.
git-svn-id: svn://localhost/ardour2/branches/3.0@8882 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-17 16:18:15 +00:00
Carl Hetherington
73192bc1a7 Remove all use of nframes_t.
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03 22:26:29 +00:00
Carl Hetherington
86244875a4 Allow drags of automation in time ranges where the automation is on a MIDI track and may span different regions. Fixes #3366.
git-svn-id: svn://localhost/ardour2/branches/3.0@7765 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-09 21:35:28 +00:00
Carl Hetherington
136b8ed747 Fix restore of fader automation from 2.X sessions.
git-svn-id: svn://localhost/ardour2/branches/3.0@7754 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-07 23:26:21 +00:00
Carl Hetherington
579fcb70e2 First go at saving window visibility and position state across saves.
git-svn-id: svn://localhost/ardour2/branches/3.0@7644 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-18 02:20:15 +00:00
Carl Hetherington
c06c6c153d Fix up selection of automation points.
git-svn-id: svn://localhost/ardour2/branches/3.0@7556 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-06 23:28:44 +00:00
Carl Hetherington
5e3ca4db5c Support cut / copy / paste of MIDI automation.
git-svn-id: svn://localhost/ardour2/branches/3.0@7545 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-05 13:36:38 +00:00
Carl Hetherington
e7a2b99f3d Clean up handling of track vs region automation a bit.
git-svn-id: svn://localhost/ardour2/branches/3.0@7544 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-05 13:35:43 +00:00
Carl Hetherington
593b421180 A few fixes to interpolation of MIDI controller data. Don't interpolate
when writing these data back to a source, otherwise surprising new
interpolated points appear in MIDI automation.  Similarly don't interpolate
when reading the model during MIDI stretch.  Fix handling of interpolation state;
controllers that have been set by the user to use a different interpolation style
are noted in the <Source> tag of the session file and this state is sprayed around
to MidiModel and the GUI as necessary.


git-svn-id: svn://localhost/ardour2/branches/3.0@7409 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-14 00:58:15 +00:00
Carl Hetherington
a57b9cdd99 Allow region-based automation axes to report whether they
have automation data or not.  Should fix #3177.


git-svn-id: svn://localhost/ardour2/branches/3.0@7158 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-25 15:51:32 +00:00
ca2f505ec1 lots of debug code still in place, but get a much improved structure for MIDI automation menus actually working. tweaks to follow
git-svn-id: svn://localhost/ardour2/branches/3.0@6470 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-09 02:36:47 +00:00
Carl Hetherington
f5acf93672 First cut of some Pro-tools inspired editing features; linked play/play range
and linked object/range modes.


git-svn-id: svn://localhost/ardour2/branches/3.0@6431 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-01 22:11:15 +00:00
f450df300c fully implement and deploy explicit x-thread signal connection syntax (testing comes next)
git-svn-id: svn://localhost/ardour2/branches/3.0@6379 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-21 18:23:07 +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
8713667ec1 rework Stateful::set_state() patch to avoid default version argument
git-svn-id: svn://localhost/ardour2/branches/3.0@5787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 18:56:11 +00:00
Carl Hetherington
79f91c7a20 Part 1 of loading 2.X sessions; some things work, some things don't, hacks a-plenty.
LOADING 2.X SESSIONS WITH THIS COMMIT IN PLACE WILL (PROBABLY) CORRUPT THE .ardour FILE,
MAKING THE SESSION UNLOADABLE ON 2.X AND LOSING INFORMATION.

So don't do that unless you make a backup of the session file first.



git-svn-id: svn://localhost/ardour2/branches/3.0@5786 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 00:57:55 +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
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
3b89d9eaa0 Remove most using declarations from header files.
git-svn-id: svn://localhost/ardour2/branches/3.0@5069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-12 17:03:42 +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
6b8c6128cb Remove clear button from automation track headers so controller isn't cut off at normal/default track height.
git-svn-id: svn://localhost/ardour2/branches/3.0@4632 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-19 00:37:18 +00:00
1380f4fafb Trim include dependency tree (particularly on evoral/Sequence.hpp).
git-svn-id: svn://localhost/ardour2/branches/3.0@4589 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 23:47:09 +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
b0424889b3 make tracks visible again
git-svn-id: svn://localhost/ardour2/branches/3.0@3719 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-12 09:01:52 +00:00
68e943265e merge from 2.0-ongoing @ 3581
git-svn-id: svn://localhost/ardour2/branches/3.0@3711 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-10 15:03:30 +00:00
1b65758557 Committed underlay support (from Audun).
git-svn-id: svn://localhost/ardour2/branches/3.0@3037 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-10 18:16:25 +00:00
c190aca4a0 Deep "automation regions" support.
Fix zoom/height/etc changing for automation region views.
Broke smooth automation region dragging (make omelette, break eggs, etc).


git-svn-id: svn://localhost/ardour2/trunk@2424 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-06 02:30:39 +00:00
68653307e6 Note modes: note, percussion.
Percussion tracks display diamonds.
	Separated/fixed MIDI and audio mode menus.
CC automation modes: discrete, line.
	Bar controllers follow setting (hard steps or line) on playback.
	Sent CC data is always discrete (line not implemented yet).
	Discrete tracks show no lines, and always show control points.
Separated ControlPoint from AutomationLine.
Added some basic information (range) to Parameter (to be fleshed out..).


git-svn-id: svn://localhost/ardour2/trunk@2123 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-07 03:19:04 +00:00
2177f00841 Add AutomationControl::parameter() for terseness.
Future-proof automation track GUI 'extra' XML (<GUI><AutomationChild automation-id="gain"> instead of <GUI><gain> so Parameter.to_string isn't used as an XML node name).
Fix automation track controller bar shown/hidden state.
Fix automation track initial show bug.


git-svn-id: svn://localhost/ardour2/trunk@2103 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-04 00:39:00 +00:00
9decb3e027 remove static Pango::FontDescriptions, they cause glib errors because of initialization before Glib::thread_init() has been called
git-svn-id: svn://localhost/ardour2/trunk@2100 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-03 21:02:29 +00:00
bbf4175713 Another not-quite-there-but-better commit.
Brought plugin automation into the fold of new automation system.
Fixed plugin automation, broke panner automation :] (pending Panner work).
Made AutomationController better at automatically following it's controller value (mimic what gain meter does).
Fixed some visible automation track bugs (but still broken WRT serialization).


git-svn-id: svn://localhost/ardour2/trunk@2092 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-30 18:41:50 +00:00
24ccaac67e Further automation refactoring - bring in the concept of Controllable, work towards
making automation + GUI + play/write/touch generic and easily reusable.
Added bar controller to automation track controls (mostly relevant for MIDI CC, but added for gain and pan too Just Because).
Fixed glaring "redirect" list errors.
Fix plugin controls/automation loading.


git-svn-id: svn://localhost/ardour2/trunk@2080 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-29 04:02:58 +00:00
Doug McLain
789cbb2181 Major Theme Manager changes, see ardour-dev
git-svn-id: svn://localhost/ardour2/trunk@1987 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-15 22:08:27 +00:00
87726495c3 Merged changes from trunk 1699:1751 into 2.1-staging
git-svn-id: svn://localhost/ardour2/branches/2.1-staging@1752 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-04-26 20:54:31 +00:00
45d3ec1437 merged with 1697 revision of trunk (which is post-rc1 but pre-rc2
git-svn-id: svn://localhost/ardour2/branches/2.1-staging@1698 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-04-11 13:07:51 +00:00
0d6c5f78e9 fix for crash when loading a session after running another, caused by not checking for _view != 0 in route_time_axis.cc; make fit_to_pixels() more useful and use it to truncate redirect and redirect parameters names in track control area
git-svn-id: svn://localhost/ardour2/trunk@1212 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-12-14 16:21:43 +00:00
93c7aeba04 fixes for destructive track offsets of various kinds; move from jack_nframes_t -> nframes_t
git-svn-id: svn://localhost/ardour2/trunk@933 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-09-28 17:23:52 +00:00
Sampo Savolainen
b74c572900 Small rehaul of track and automation track headers. This should now
initialize cleanly and be more easily controlled. show_all() calls from 
upper levels will not mess the track headers any more.


git-svn-id: svn://localhost/ardour2/trunk@749 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-03 11:54:06 +00:00
6f4a92f740 Heavy-duty abstraction work to split type-specific classes into
specializations of (new, for the most part) generic bases.  (eg. most everything
from the MIDI branch except for actual MIDI things, so merges have a chance of
succeeding).  Also the new edit toolbar, and various other cleanup things I did
along the way.

Should be functionally equivalent (except the toolbar), this is just design work.

She's a big'un....



git-svn-id: svn://localhost/ardour2/trunk@727 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-01 03:23:35 +00:00
cc2767caf3 added RCU handling of Session route list, and major use of shared_ptr<T> everywhere else. plus a few bug fixes for issues discovered with -Wextra
git-svn-id: svn://localhost/ardour2/trunk@707 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-27 16:52:14 +00:00
Sampo Savolainen
f0484eee89 Make it possible to edit multiple pan automation lines
git-svn-id: svn://localhost/ardour2/trunk@679 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-11 20:43:39 +00:00
9c6984dbbb allow for mandatory control protocols, plus some ongoing work on automation control point selection (unfinished)
git-svn-id: svn://localhost/trunk/ardour2@516 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-19 20:10:35 +00:00
Karsten Wiese
5c819462b8 s/stringcr_t/const string &/
git-svn-id: svn://localhost/trunk/ardour2@201 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-12-22 12:23:54 +00:00
Karsten Wiese
170d6b24ce use stringcr_t and gain 1/1000 binary size reduction. not thaat much...
git-svn-id: svn://localhost/trunk/ardour2@194 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-12-16 22:30:49 +00:00
f16caf535c get editor.cc to compile
git-svn-id: svn://localhost/trunk/ardour2@99 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-11-16 02:57:22 +00:00
adacfd9b24 latest work
git-svn-id: svn://localhost/trunk/ardour2@98 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-11-15 04:47:01 +00:00
Nick Mainsbridge
183f69970c some C++-ification of GnomeCanvasBlah
git-svn-id: svn://localhost/trunk/ardour2@82 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-11-13 03:53:51 +00:00
Taybin Rutkin
14d43ca9fe Switched to use libgnomecanvas (not the C++ one).
git-svn-id: svn://localhost/trunk/ardour2@30 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-09-25 22:26:56 +00:00
Taybin Rutkin
e493b2b7c4 Fly my pretties!
git-svn-id: svn://localhost/trunk/ardour2@28 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-09-25 20:33:00 +00:00
Taybin Rutkin
209d967b1b Initial import of gtk2_ardour.
git-svn-id: svn://localhost/trunk/ardour2@24 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-09-25 18:42:24 +00:00