Commit Graph

140 Commits

Author SHA1 Message Date
Carl Hetherington
d80482dddf Check for panner_shell rather than panner before
connecting to it.  This means that we connect to mono
routes (without panners) so that if they do get panners
we find out about it.  Should help with #5093.


git-svn-id: svn://localhost/ardour2/branches/3.0@13190 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-15 12:18:41 +00:00
6fa6514cfd Remove over 500 unnecessary includes (including 54 of session.h).
It's slightly possible that this causes trivial build failures on different
configurations, but otherwise shouldn't cause any problems (i.e. no actual
changes other than include/naming/namespace stuff).  I deliberately avoided
removing libardour-config.h since this can mysteriously break things, though a
few of those do seem to be unnecessary.

This commit only targets includes of ardour/*.h.  There is also a very large
number of unnecessary includes of stuff in gtk2_ardour; tackling that should
also give a big improvement in build time when things are modified.


git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 06:09:29 +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
Carl Hetherington
a2897ecef6 Fairly major change to the way in which crossfades are handled;
they are now done with region fades, rather than separate objects.
After this commit, Ardour will try to convert your session files
to the new crossfade format, but will make a backup in your
session folder first.

If you have works in progress using Ardour 3 it is
***STRONGLY RECOMMENDED*** that you back up session files before
updating to this commit.


git-svn-id: svn://localhost/ardour2/branches/3.0@11986 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16 16:32:22 +00:00
Carl Hetherington
6304261b98 Re-work layering in possibly debatable ways. Sketchy docs in doc/layering.
git-svn-id: svn://localhost/ardour2/branches/3.0@11088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 01:42:49 +00:00
Carl Hetherington
7e5dea02fb Fix mute display on session load (#4480).
git-svn-id: svn://localhost/ardour2/branches/3.0@10703 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-19 12:18:20 +00:00
11fdd6cd18 solo buttons are now ArdourButtons
git-svn-id: svn://localhost/ardour2/branches/3.0@10401 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-02 18:48:32 +00:00
592bfa3616 mute and send-alert buttons are now ArdourButtons
git-svn-id: svn://localhost/ardour2/branches/3.0@10397 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-02 16:46:49 +00:00
58a3d6c720 fix crashing bug where pan_tracks.front() was used without checking for pan tracks and a related one with gain_track; also uses new GUIObjectState stuff coming up in next commit
git-svn-id: svn://localhost/ardour2/branches/3.0@9842 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-11 20:31:12 +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
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
8f45604f27 Make Active apply to the selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@9089 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-07 13:04:46 +00:00
Carl Hetherington
92a5e4da48 Make stuff in the automation menu apply to the track selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@9088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-07 13:04:36 +00:00
477fca0de0 deframe audio regions as well as MIDI when entering internal edit mode
git-svn-id: svn://localhost/ardour2/branches/3.0@9057 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-03 18:32:06 +00:00
Carl Hetherington
ed93d47e7c Make hide/show all crossfades apply to the selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@8939 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-23 02:08:46 +00:00
2daa616e02 add scroll event handling to the vbap panner GUI; clamp vbap pos+width values (but not via clamp_*())
git-svn-id: svn://localhost/ardour2/branches/3.0@8932 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-22 21:55:25 +00:00
13bf1fff6f remove some useless buttons from vbap panner gui, make bypass button work
git-svn-id: svn://localhost/ardour2/branches/3.0@8926 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-22 20:49:04 +00:00
75abb09f32 remove semantic-free Panner::Changed signal; make mackie code pay attention to actual pan controls; make GUI watch PannerShell::Changed for news that the currently chosen panner has changed or changed configuration
git-svn-id: svn://localhost/ardour2/branches/3.0@8924 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-22 18:44:22 +00:00
Carl Hetherington
9ac5fdfefb Don't show Crossfade-related menu items on busses.
git-svn-id: svn://localhost/ardour2/branches/3.0@8913 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-21 00:16:36 +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
15b5fce904 merge 3.0-panexp (pan experiments) branch, revisions 8534-8585 into 3.0, thus ending 3.0-panexp. THIS COMMIT WILL BREAK ALL EXISTING 3.0 SESSIONS IN SOME WAY (possibly not fatally).
git-svn-id: svn://localhost/ardour2/branches/3.0@8586 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-27 01:31:03 +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
8000b39c8c Create MIDI track gain automation tracks as non-region-based. Fix construction of MidiTimeAxisViews to use the same first_idle arrangement as AudioTimeAxisViews to prevent use of partially constructed objects.
git-svn-id: svn://localhost/ardour2/branches/3.0@7847 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-27 02:04:16 +00:00
be85889464 fix load+save of plugin parameter automation
git-svn-id: svn://localhost/ardour2/branches/3.0@7678 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-24 22:07:53 +00:00
Carl Hetherington
8dd31447be Fix handling of the mapping between parameters and automation CheckMenuItems. Should fix #3206, #3215 and the remainder of #3228.
git-svn-id: svn://localhost/ardour2/branches/3.0@7245 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-08 21:48:38 +00:00
a01dc9b6f2 remove almost-unusued stop_signal.h and clean up the one (unused) place where it was present (VisualTimeAxis, not used in current ardour)
git-svn-id: svn://localhost/ardour2/branches/3.0@7196 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-31 14:21:43 +00:00
Carl Hetherington
494f53059e Fix show existing automation for audio tracks (part of #3193)
git-svn-id: svn://localhost/ardour2/branches/3.0@7174 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-27 01:08:53 +00:00
Carl Hetherington
6fbaa5403b Restore Fader and Pan options to audio track automation menus. Hide the Amp processor from the plugin list. Fixes #3184.
git-svn-id: svn://localhost/ardour2/branches/3.0@7170 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-26 23:16:53 +00:00
Carl Hetherington
ef94fbf11c Remove some dead code. Clean up storage of automation axis menu
items.  Fixes #3174.


git-svn-id: svn://localhost/ardour2/branches/3.0@7157 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-25 14:50:45 +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
Carl Hetherington
0cde999d87 Move toggle-waveforms-while-recording into RC options.
git-svn-id: svn://localhost/ardour2/branches/3.0@6935 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-19 01:40:42 +00:00
14b0ca31bc handle deletion of UI objects between the time that a callback is queued with the UI event loop and the execution of the callback (intrusive, big)
git-svn-id: svn://localhost/ardour2/branches/3.0@6807 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-30 15:18:43 +00:00
Carl Hetherington
eb6ae56faf Fix track mode options to appear only once on audio tracks rather than twice. Fix event handling logic for these options. HIG-ify some menu items.
git-svn-id: svn://localhost/ardour2/branches/3.0@6787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-23 13:11:14 +00:00
8d64ce26c4 Remove weird/pointless Automatable::data().
git-svn-id: svn://localhost/ardour2/branches/3.0@6637 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-05 20:03:57 +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
aae367b63c use new syntax for connecting to backend signals that enforces explicit connection scope, plus a few other related matters
git-svn-id: svn://localhost/ardour2/branches/3.0@6376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-19 20:26:31 +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
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
fddc11f556 Various optimisations to speed up rec-enable.
git-svn-id: svn://localhost/ardour2/branches/3.0@6227 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 23:16:28 +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
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
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
52fc310cfb Make waveform show / scale / shape a global option in the prefs dialog to clean things up a bit. Options to make exceptions for individual tracks could be re-added, if people want them.
git-svn-id: svn://localhost/ardour2/branches/3.0@5160 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-10 21:58:25 +00:00
e6eb059576 the big Route structure refactor. !!!! THIS WILL ***NOT LOAD*** PRIOR 3.0 or 2.X SESSIONS !!!! BREAKAGE IS EXPECTED !!!! IF YOU HAVE AND NEED A WORKING 3.0 DO **NOT** UPDATE. !!!! otherwise, update and enjoy the steadily emerging joys of this major reworking of ardour internals
git-svn-id: svn://localhost/ardour2/branches/3.0@5137 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-09 20:21:19 +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
7183242b8c The great audio processing overhaul.
The vast majority of Route signal processing is now simply in the list of
processors.  There are definitely regressions here, but there's also
a lot of things fixed.  It's far too much work to let diverge anymore
regardless, so here it is.

The basic model is: A route has a fixed set of input channels (matching
its JACK input ports and diskstream).  The first processor takes this
as input.  The next processor is configured using the first processor's
output as input, and is allowed to choose whatever output it wants
given that input... and so on, and so on.  Finally, the last processor's
requested output is used to set up the panner and create whatever Jack
ports are needed to output the data.

All 'special' internal processors (meter, fader, amp, insert, send) are
currently transparent: they read any input, and return the same set
of channels back (unmodified, except for amp).

User visible changes:
 * LV2 Instrument support (tracks with both MIDI and audio channels)
 * MIDI in/out plugin support
 * Generic plugin replication (for MIDI plugins, MIDI/audio plugins)
 * Movable meter point

Known Bugs:
 * Things seem to get weird on loaded sessions
 * Output delivery is sketchy
 * 2.0 session loading was probably already broken...
   but it's definitely broken now :)

Please test this and file bugs if you have any time...



git-svn-id: svn://localhost/ardour2/branches/3.0@5055 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-07 06:30:50 +00:00
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
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