13
0
Commit Graph

176 Commits

Author SHA1 Message Date
0d36301907 3 notable patches from lincoln (a) non-layered track mode (NOTE: this is broken for loop recording right now) (b) trim region to previous/next region (c) region push/pull trimming. work on these 3 features should be assumed to be still slightly ongoing (eg. default bindings and more). great stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@4994 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-20 21:02:46 +00:00
54d9f2f2d8 first half of the mega-by-hand-commit-by-commit merge from 2.X
git-svn-id: svn://localhost/ardour2/branches/3.0@4980 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-15 18:04:23 +00:00
03536cd399 Fix a bunch of warnings.
Clean up.


git-svn-id: svn://localhost/ardour2/branches/3.0@4668 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-26 00:58:35 +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
458c588e2c Don't bind playlist_modified with a shared_ptr<Playlist> parameter.
Clean up.


git-svn-id: svn://localhost/ardour2/branches/3.0@4599 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 05:13:05 +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
5b71b9333a Bring the note mode menu back from the dead.
Fix percussive note (diamonds) placement.


git-svn-id: svn://localhost/ardour2/branches/3.0@4587 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 21:19:01 +00:00
aaa91db6d9 Trim include dependency graph, especially for io.h and session.h.
Clean up some stuff and other such gruntwork in the process.


git-svn-id: svn://localhost/ardour2/branches/3.0@4468 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-30 20:18:31 +00:00
Hans Baier
33852a0728 * Added Menu to add a Program change parameter lane
* made adding automation lanes add them for every active channel on the track
* Evoral::Parameter.hpp: Strict weak ordering again: make the proof a bit easier to read
                         Make the implementation conform to the proof
                         order Parameters according to type, then channel, then id


git-svn-id: svn://localhost/ardour2/branches/3.0@4421 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-21 08:32:23 +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
Hans Baier
22d73333c6 * fixed missing track color mode persistence
git-svn-id: svn://localhost/ardour2/branches/3.0@4357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-29 01:02:41 +00:00
Hans Baier
e2147fbc5b * implemented three coloring modes for MIDI tracks (untested yet)
git-svn-id: svn://localhost/ardour2/branches/3.0@4344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-24 01:24:49 +00:00
Carl Hetherington
331de3dc38 Fix visibility of automation tracks on reloading sessions.
git-svn-id: svn://localhost/ardour2/branches/3.0@4334 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-19 18:08:35 +00:00
Carl Hetherington
4e1f451520 Remove unnecessary 0 checks before delete; see http://www.parashift.com/c++-faq-lite/freestore-mgmt.html#faq-16.8 Apologies for the big commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@4332 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-18 19:31:00 +00:00
Carl Hetherington
2ebb1af299 Implement #2425: option for automation to follow region moves.
git-svn-id: svn://localhost/ardour2/branches/3.0@4326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-16 23:21:01 +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
42db44c193 merge 3870-3890 from 2.0-ongoing into 3.X (compiles, runs, no other promises
git-svn-id: svn://localhost/ardour2/branches/3.0@4303 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-08 18:16:12 +00:00
3be16e8afb partial patch/partial by-hand merge of 2.X commits 3169&3170 to 3.X codebase
git-svn-id: svn://localhost/ardour2/branches/3.0@4300 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-08 16:07:28 +00:00
Sampo Savolainen
d64ff6b659 Added take system from 2.0. Thanks to torben for the patch.
git-svn-id: svn://localhost/ardour2/branches/3.0@3873 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-06 18:04:12 +00:00
b5ec66ae6c Can't call the wrong function when there's only one of them: remove ARDOUR::Parameter and just use Evoral::Parameter (move Ardour specific functionality to EventTypeMap where it belongs).
Less than pretty in places but easily seddable just in case...


git-svn-id: svn://localhost/ardour2/branches/3.0@3838 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-29 22:47:40 +00:00
e14187aadd Display recorded controller data (fix show all/existing automation).
git-svn-id: svn://localhost/ardour2/branches/3.0@3779 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-21 16:17:02 +00:00
7aea02083a Restore visible CC/etc automation tracks on session load.
Fix CC/channel mismatch when creating a new CC track.
Always display CC with 1-based numbering (like channel).


git-svn-id: svn://localhost/ardour2/branches/3.0@3763 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-19 17:24:52 +00:00
d357eca668 Factor out sequencing related things into an independant new library: "evoral".
Anything related to the storage of events/values over a range of time lives in evoral.
This includes MidiModel (Evoral::Sequence) and automation data (AutomationList (Evoral::ControlList),
	Automatable (Evoral::ControlSet), etc).
libs/evoral synced with http://svn.drobilla.net/lad/trunk/evoral r1511.


git-svn-id: svn://localhost/ardour2/branches/3.0@3754 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-19 00:47:49 +00:00
da6e0a95bb get the notebook back again (or rather, realize that it can now be toggled and that the default is to hide it)
git-svn-id: svn://localhost/ardour2/branches/3.0@3720 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-12 11:03:51 +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
Hans Baier
0c25b2aa8e * Fixed crash on closing MIDI automation tracks, because ARDOUR::Parameter::operator< violated strict weak ordering,
which is necessary for std::set to work correctly
* few small style guide corrections


git-svn-id: svn://localhost/ardour2/branches/3.0@3363 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-16 20:54:24 +00:00
da45f489dd Fixes for GCC 4.3.
git-svn-id: svn://localhost/ardour2/branches/3.0@3303 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-02 18:35:05 +00:00
cb41314642 merge 3.0 from 2.0-ongoing@3243
git-svn-id: svn://localhost/ardour2/branches/3.0@3248 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-11 14:06:50 +00:00
8aa9508c82 Merge with 2.0-ongoing R3071.
git-svn-id: svn://localhost/ardour2/branches/3.0@3073 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-16 22:43:18 +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
4ca1fe7993 Merge with trunk R2935.
git-svn-id: svn://localhost/ardour2/branches/3.0@2943 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-01-19 03:49:52 +00:00
bb457bb960 Merge libs/ardour and gtk2_ardour with 2.0-ongoing R2837.
git-svn-id: svn://localhost/ardour2/trunk@2883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-01-10 21:20:59 +00:00
Doug McLain
b42213bb04 Port level meters to trunk
git-svn-id: svn://localhost/ardour2/trunk@2802 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-12-20 23:25:19 +00:00
239ec39da6 new internal port type, round I, plus tiny fix for legalize_for_xml() (also for 2.0-ongoing)
git-svn-id: svn://localhost/ardour2/trunk@2559 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-17 16:49:31 +00:00
f3cf31009a virtualize Port object; clean up automation tracks from track deletion
git-svn-id: svn://localhost/ardour2/trunk@2556 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-16 21:01:12 +00:00
Carl Hetherington
61872c5663 Fix things so that selecting a region always selects equivalent regions in the same edit group, even if the appropriate tracks aren't selected at the time.
git-svn-id: svn://localhost/ardour2/trunk@2523 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-06 16:24:08 +00:00
Carl Hetherington
9bcd3f1d16 Make hide all automation work again.
git-svn-id: svn://localhost/ardour2/trunk@2507 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-02 16:37:26 +00:00
Carl Hetherington
5ea5cc6034 Prevent plugins appearing twice on the automation submenu.
git-svn-id: svn://localhost/ardour2/trunk@2505 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-01 17:19:09 +00:00
Carl Hetherington
15e3c93f0e Fix GTK warning.
git-svn-id: svn://localhost/ardour2/trunk@2464 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-13 14:48:00 +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
e486a8d86f Per-region MIDI CC "automation".
Extremely broken in several ways.
This commit brought to you by the letters D, R, and my need to switch machines.


git-svn-id: svn://localhost/ardour2/trunk@2323 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-17 17:25:20 +00:00
332a3d9813 Selection of visible note range (full range vs fit contents, selectable from midi track menu).
Added note pencil tool, mock note adding (notes can be added visually but don't yet play).
Reworked MidiModel to be notes w/ duration instead of realtime style MIDI events.
Moved layering (stacked/overlaid) from auto time axis down to route time axis since it applies
to MIDI tracks as well.


git-svn-id: svn://localhost/ardour2/trunk@2128 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-15 01:56:11 +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
b57510a3a9 Display correct value for verbose control point cursor for Midi CC (int) and plugin automation (map to parameter range).
Use double throughout for automation control point y coordinate instead of casting to this and that losing precision.
Fix crash bug in route automation menu.


git-svn-id: svn://localhost/ardour2/trunk@2107 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-04 22:57:13 +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
133a66920b s/ParamID/Parameter/
git-svn-id: svn://localhost/ardour2/trunk@2098 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-03 18:39:09 +00:00
0da2977027 Pan automation/serialization fixes.
"Live" Midi CC sending from Midi CC automation track controllers.


git-svn-id: svn://localhost/ardour2/trunk@2097 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-03 02:37:24 +00:00
ef0b9a7409 Pan automation work. Almost, but not quite, working.
git-svn-id: svn://localhost/ardour2/trunk@2093 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-30 22:08:39 +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
Doug McLain
4c000c13ee Moved canvas colors and theme file selection into new ui specific config system
git-svn-id: svn://localhost/ardour2/trunk@2086 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-29 17:13:09 +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
fc7a2e9ee1 Added dialog to allow adding any Midi CC track.
Fix display/menu generation when adding a MIDI CC track.
Fix crash bug triggered by recording MIDI track with visible CC child track.


git-svn-id: svn://localhost/ardour2/trunk@2073 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 21:37:08 +00:00
a43185634c plugin_automation_line.[h|cc] -> processor_automation_line.[h|cc]
git-svn-id: svn://localhost/ardour2/trunk@2072 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 20:36:58 +00:00
05bcdd1d4c Renamed Insert to Processor and Redirect to IOProcessor.
git-svn-id: svn://localhost/ardour2/trunk@2071 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 20:23:48 +00:00
d7bd270aa1 Big ol' automation refactor.
Things with automation parameters now inherit from Automatable, which handles serialization, fetching/adding/removing parameters, etc.
Use AutomationList everywhere instead of Curve, make Curve a member of AutomationList instead (towards other types of "Curve" needed for CC, among other things).
Work towards MIDI CC sending "automation" tracks.


git-svn-id: svn://localhost/ardour2/trunk@2069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 15:51:50 +00:00
49ee64ada7 Insert/Redirect refactoring, towards better MIDI support in mixer strip, and
http://ardour.org/node/1043 style things.


git-svn-id: svn://localhost/ardour2/trunk@2027 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-23 20:13:13 +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
cd9fdb935f Use boost::shared_ptr instead of raw pointers for RouteUI track (etc) accessors (fix FIXME in route_ui.h).
git-svn-id: svn://localhost/ardour2/trunk@1986 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-15 22:05:07 +00:00
Carl Hetherington
aa3bb18b17 Re-work main right-click context menu to operate on the selection, and remove some confusion about what region(s) will be affected by menu selections.
git-svn-id: svn://localhost/ardour2/trunk@1831 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-10 11:53:35 +00:00
b3fe7cfc89 Merged with trunk R1761
git-svn-id: svn://localhost/ardour2/branches/midi@1762 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-04-29 17:23:11 +00:00
99904735e0 Merged with trunk R1612.
git-svn-id: svn://localhost/ardour2/branches/midi@1614 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-03-18 06:07:08 +00:00
532f6aad4a Merged with trunk R1283.
NOTE: Compiles, but broken (crash on adding MIDI track).


git-svn-id: svn://localhost/ardour2/branches/midi@1292 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-01-09 23:24:54 +00:00
ef6b25432d Merged with trunk R1141
git-svn-id: svn://localhost/ardour2/branches/midi@1142 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-19 16:45:16 +00:00
22e41063d5 Merged with trunk R999.
git-svn-id: svn://localhost/ardour2/branches/midi@1000 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-10-21 22:59:29 +00:00
fedf3d34f3 Merged with trunk R992.
Completely untested other than it compiles, runs, and records somewhat (need to merge again).


git-svn-id: svn://localhost/ardour2/branches/midi@999 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-10-21 19:01:50 +00:00
7bd41538d9 Merged with trunk R920.
git-svn-id: svn://localhost/ardour2/branches/midi@921 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-09-19 03:29:16 +00:00
82232f06ba Merged with trunk R861
Possible new bugs - not very thoroughly tested, but at least functional at first glance


git-svn-id: svn://localhost/ardour2/branches/midi@870 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-29 21:21:48 +00:00
25d1670a61 Merged with trunk R846
Removed some overly verbose debug printing


git-svn-id: svn://localhost/ardour2/branches/midi@847 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-24 07:37:17 +00:00
a98a67120e Merged with trunk R795
Fiddled with scrolling to leave a bit of context on each side.  'scroll interval' is a single float, should make it a configuration variable some day


git-svn-id: svn://localhost/ardour2/branches/midi@796 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-12 19:43:09 +00:00
ab6f1ed9ba Merged with trunk R776
git-svn-id: svn://localhost/ardour2/branches/midi@777 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-10 01:22:45 +00:00
79fc27de2e Mostly Cosmetic/Design changes to bring trunk and midi branch closer
git-svn-id: svn://localhost/ardour2/branches/midi@733 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-01 17:19:38 +00:00
9d5d82b4df Abstraction cleanups/polish, towards merging with trunk
git-svn-id: svn://localhost/ardour2/branches/midi@720 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-30 03:25:38 +00:00
8277d134b9 Merged with trunk R708
git-svn-id: svn://localhost/ardour2/branches/midi@712 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-28 01:08:57 +00:00
60454cc8dc Split pretty much the entire GUI in 3. Audio and Midi "editor strips" and
associated stuff are now separated (with common things in base classes).

Extremely dirty and in progress, but builds, runs, and audio/midi tracks/busses
all look (and really are) distinct in the GUI.


git-svn-id: svn://localhost/ardour2/branches/midi@691 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-23 12:03:19 +00:00