Commit Graph

278 Commits

Author SHA1 Message Date
Carl Hetherington
ca96b9afe8 Remove some unused code.
git-svn-id: svn://localhost/ardour2/branches/3.0@12052 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-21 23:54:20 +00:00
Carl Hetherington
23973bae24 A few tweaks to make Ardour build in GCC -std=c++0x mode.
git-svn-id: svn://localhost/ardour2/branches/3.0@11983 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-15 19:28:44 +00:00
49240fe7c5 Draw all automation points, rather than trying to use a heuristic to show some
at any given zoom level. 

This works because (1) automation data is obtained by sampling, and we control
the sampling interval (2) automation data is filtered to remove co-linear
points before becoming part of a ControlList. 

This commit removes some of the hairiest code in Ardour's GUI, which was
responsible for figuring out which invisible control points were affected by an
edit. The change is based on an experiment in mixbus done by Ben Loftis.


git-svn-id: svn://localhost/ardour2/branches/3.0@11798 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-05 16:53:55 +00:00
Carl Hetherington
3120bae8b4 Don't leave internal edit mode when clicking on an automation region view (#4747).
git-svn-id: svn://localhost/ardour2/branches/3.0@11749 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-22 16:41:23 +00:00
Carl Hetherington
de53e1154b Fix problems with selecting control points in AutomationRegionViews with non-zero region start. Firstly, determine_visible_control_points considers a subset of the AutomationLine's points if start is non-zero, and this must be taken into account when matching up AutomationLine points with AutomationList points. Secondly, _offset should not part of the calculation when converting model position to session frames. Fixes #4338.
git-svn-id: svn://localhost/ardour2/branches/3.0@10151 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-28 00:36:30 +00:00
Carl Hetherington
5f9fb85b77 Fix crash when selecting automation points in MIDI
regions with non-zero starts (#4177) and also fix
problems with selection conversions between
ControlPoints and PointSelection in similar regions.


git-svn-id: svn://localhost/ardour2/branches/3.0@9866 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-13 19:24:46 +00:00
d5e09076ca much ado about nothing when it comes to gain control
git-svn-id: svn://localhost/ardour2/branches/3.0@9748 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-19 23:02:55 +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
a7a6bd1256 Remove duplicate connect_to_list() call.
git-svn-id: svn://localhost/ardour2/branches/3.0@9410 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-23 00:02:49 +00:00
Carl Hetherington
408d433842 Tiny cleanup.
git-svn-id: svn://localhost/ardour2/branches/3.0@8634 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-01 01:05:39 +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
Carl Hetherington
a97d522a4f Fix display of MIDI automation on regions with non-zero _start. Should fix #3504.
git-svn-id: svn://localhost/ardour2/branches/3.0@8257 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-12 22:25:27 +00:00
Carl Hetherington
6fff4dcdda Small cleanups.
git-svn-id: svn://localhost/ardour2/branches/3.0@8255 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-12 20:14:19 +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
ef62a039b9 Fix rounding of automation view point positions. Fixes remainder of #3329.
git-svn-id: svn://localhost/ardour2/branches/3.0@7869 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-02 00:28:13 +00:00
ede4ecbb00 megaopus patch #2 for today: remove nframes64_t and sframes_t from source
git-svn-id: svn://localhost/ardour2/branches/3.0@7792 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17 18:20:37 +00:00
10bdce85a0 megaopus commit: (1) add __STD_(LIMIT|FORMAT)_MACROS to command line flags for cc and c++ builds, remove them from source (2) add new Property::midi_data used by MidiRegion to signal that its (MIDI) contents have changed (3) massive switch from nframes_t to framepos_t/framecnt_t including removal of ARDOUR::max_frames (replaced by ARDOUR::max_frame{pos,cnt} (lots more to do but this set was driven by changes to the Diskstream API to use framepos_t
git-svn-id: svn://localhost/ardour2/branches/3.0@7791 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17 16:24:22 +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
6e904b1e16 3.0 version of rev 5564 from 2.x - basic boolean plugin parameter automation (no graphical editing intended). this involved adding a new "toggled" property to Evoral::Parameter
git-svn-id: svn://localhost/ardour2/branches/3.0@7670 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-23 16:31:34 +00:00
Carl Hetherington
822ee79d84 Limit region-based automation to the edges of regions. Fixes #3201.
git-svn-id: svn://localhost/ardour2/branches/3.0@7662 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-20 22:43:10 +00:00
Carl Hetherington
efe60474d6 Hopefully fix up automation control point selection (finally).
git-svn-id: svn://localhost/ardour2/branches/3.0@7592 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-11 01:23:03 +00:00
Carl Hetherington
48063c15df Improve ctrl-click behaviour of automation points. Should fix #3385.
git-svn-id: svn://localhost/ardour2/branches/3.0@7584 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-10 01:52:49 +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
b99721ec3b Remove somewhat confusing view_to_model_coord_x method.
git-svn-id: svn://localhost/ardour2/branches/3.0@7546 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-05 13:37:04 +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
cc6016400b Allow rubberband selection of MIDI automation points. Fixes
git-svn-id: svn://localhost/ardour2/branches/3.0@7535 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-04 15:41:55 +00:00
Carl Hetherington
97c8ad6564 Make Clear option work for MIDI automation tracks. Fixes part of #3137.
git-svn-id: svn://localhost/ardour2/branches/3.0@7523 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-31 00:44:26 +00:00
Carl Hetherington
2aaec8beeb Fix list corruption when modifying a view point in y only. Should fix #3329.
git-svn-id: svn://localhost/ardour2/branches/3.0@7450 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-20 16:53:30 +00:00
Carl Hetherington
66062a85b6 Fix binding of automation list undo records to MIDI sources. Should fix the remainder of #3203.
git-svn-id: svn://localhost/ardour2/branches/3.0@7411 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-14 12:27:37 +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
8d747e647a Make AutomationLine set up interpolation style for its list as appropriate.
git-svn-id: svn://localhost/ardour2/branches/3.0@7405 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-12 00:42:06 +00:00
b1c3a22498 fix from 2.X for automation line clear command using the wrong object in the memento command
git-svn-id: svn://localhost/ardour2/branches/3.0@7134 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-21 15:08:57 +00:00
Carl Hetherington
7e6014a077 Fix track height menu.
git-svn-id: svn://localhost/ardour2/branches/3.0@7093 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-11 00:09:41 +00:00
Carl Hetherington
50dd880d7e No-op: rename a few variables and add/fix some comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@6818 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-01 01:07:24 +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
37dd777c9a Fix confusion about last_pointer_* variables under snap.
Update verbose canvas cursor correctly when automation point drags are clamped.
Clamp multi-point automation drags horizontally.


git-svn-id: svn://localhost/ardour2/branches/3.0@6474 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-11 19:36:29 +00:00
Carl Hetherington
c115b3d71c Update verbose cursor correctly when y drags are clamped.
git-svn-id: svn://localhost/ardour2/branches/3.0@6469 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-08 19:55:37 +00:00
Carl Hetherington
5f8f481172 Fixes to permit drags of multiply-selected automation control points.
git-svn-id: svn://localhost/ardour2/branches/3.0@6450 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-05 02:22:58 +00:00
Carl Hetherington
0f79f67398 Some cleanups to drawing of automation line control points. Drag all selected automation points if one selected point is dragged.
git-svn-id: svn://localhost/ardour2/branches/3.0@6437 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-03 00:08:58 +00:00
Carl Hetherington
c88716665a Fix confusion between model and view points when dragging ranges. Clamp both top and bottom when dragging vertically. Fix some wacky formatting.
git-svn-id: svn://localhost/ardour2/branches/3.0@6436 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-02 02:10:49 +00:00
Carl Hetherington
9a6532def2 Stop automation drags when they hit their lowest point, so as to prevent automation curves being lost by dragging things too far downwards.
git-svn-id: svn://localhost/ardour2/branches/3.0@6434 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-02 01:32:14 +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
Carl Hetherington
de4c9d4750 Small refactoring of determine_visible_control_points.
git-svn-id: svn://localhost/ardour2/branches/3.0@6382 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 01:11:06 +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
8687895abb remove using namespace sigc everywhere to ensure clarity over which bind/mem_fun is being used; make Config::map_parameters take a boost::function rather than a sigc::slot ; continue debugging crash caused by regionviews not tracking their Region's lifetime
git-svn-id: svn://localhost/ardour2/branches/3.0@6357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-12 15:02:15 +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
f24da84806 Fix whitespace.
git-svn-id: svn://localhost/ardour2/branches/3.0@5889 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23 05:17:14 +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
970a3a7292 Introduce an accurate version of coefficient_to_dB and use it in non speed-critical
code.  Fixes mantis 2833.


git-svn-id: svn://localhost/ardour2/branches/3.0@5565 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-22 10:21:39 +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
97f022575c Fix build. Ahem.
git-svn-id: svn://localhost/ardour2/branches/3.0@4718 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-03-02 18:26:08 +00:00
7a5adcbe72 allow dragging of automation lines (Ben Loftis, backported from 2.X)
git-svn-id: svn://localhost/ardour2/branches/3.0@4715 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-03-02 18:08:15 +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
8a28ea6154 Introduce new time for session-relative frame time, and make source interface capable of handling 64-bit long sessions.
sframes_t is "session frames".  The rules for time stamps are:
 - Anything relative to transport time, session position, etc, should be sframes_t
 - Anything relative to jack cycles, including the length thereof, should be nframes_t

To support sessions which exceed UINT32_MAX frames, we need to replace all the uses of
nframes_t for session time with sframes_t, and make sure the conversions are sound.
This does not depend on jack's nframes_t; that we are using the same type at all right now was an oops.

This is also be kinda nice for readability since the two different time bases have different types...


git-svn-id: svn://localhost/ardour2/branches/3.0@4636 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-19 05:45:11 +00:00
3e1eb6bcbd Fix crash on audio record (time converter segfault wackiness).
git-svn-id: svn://localhost/ardour2/branches/3.0@4607 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 23:32:59 +00:00
5f7b4de024 Time unit translation for AutomationLine (correctly display MIDI controller data).
git-svn-id: svn://localhost/ardour2/branches/3.0@4597 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 04:46:45 +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
Hans Baier
5309c327ec * make MIDI-specific menu show up on all MIDI lanes
* style guide, comments and a little refactoring (remove duplication)


git-svn-id: svn://localhost/ardour2/branches/3.0@4422 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-21 10:20:27 +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
Carl Hetherington
510d6d6dd3 Make region gain envelope drawing work again.
git-svn-id: svn://localhost/ardour2/branches/3.0@4339 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-23 10:36:06 +00:00
Carl Hetherington
883eeb8cf2 Implement #826: edit-click on automation points allows value edit.
git-svn-id: svn://localhost/ardour2/branches/3.0@4329 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-18 17:46:28 +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
03f188cc8b Remove ARDOUR::Parameter::is_integer.
git-svn-id: svn://localhost/ardour2/branches/3.0@3837 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-29 20:50:21 +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
b87ca000f8 Merge all the (disconcertingly missing) track/region/etc height changes from 2.0.
Fix track y positioning and initial region size/location.
Fix automation click-to-add-points (i.e. points actually show up where you click).
Fancy whiz-bang dynamic resize 2.0 professional edition support for MIDI/CC/Automation tracks/regions.


git-svn-id: svn://localhost/ardour2/branches/3.0@3769 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-19 19:32:10 +00:00
d8ade6d305 Tidy.
git-svn-id: svn://localhost/ardour2/branches/3.0@3755 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-19 01:16:44 +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
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
fb1fbf71af Fix range problems for pitch wheel controller.
git-svn-id: svn://localhost/ardour2/branches/3.0@3308 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-02 21:34:00 +00:00
997e4b1f9c merge with 2.0-ongoing @ rev 3147
git-svn-id: svn://localhost/ardour2/branches/3.0@3152 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-03-17 20:54:03 +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
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
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
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
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
Carl Hetherington
ef65fd2510 Add stacked lanes mode which displays regions on different layers at different positions in the view.
git-svn-id: svn://localhost/ardour2/trunk@1855 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-17 10:41:14 +00:00
4b35fc4c68 audun's tempo redraw fix; sort-of cache time axis view item name widths and avoid pango-width-computation when unnecessary
git-svn-id: svn://localhost/ardour2/trunk@1657 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-04-03 02:05:34 +00:00
d6ef740e90 remove all lines to avoid recompiles after commits
git-svn-id: svn://localhost/ardour2/trunk@1488 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-02-22 18:36:03 +00:00
989d6b3d2a don't change waveform zoom level when waveform is hidden, to save peak reloads, remove unused Editor signal
git-svn-id: svn://localhost/ardour2/trunk@1487 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-02-22 18:26:44 +00:00
979dbf91b9 allow control points with the same x (pixel) coordinate, now that libart_lgpl does too
git-svn-id: svn://localhost/ardour2/trunk@1380 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-01-24 18:43:14 +00:00
47d076418d remove debugging output file
git-svn-id: svn://localhost/ardour2/trunk@1203 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-12-13 21:11:30 +00:00
9f2164b4f3 timecode clock info patch from oofus, big clock mods from oofus, rec-sensitive color in big clock, update all transport clocks when changing playhead, bounds check for automation bug
git-svn-id: svn://localhost/ardour2/trunk@1173 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-30 16:43:11 +00:00
f9f755dca9 fixes for some stupid thinko-crash bugs with automation
git-svn-id: svn://localhost/ardour2/trunk@1168 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-28 23:08:46 +00:00
f3e5450492 major fixes to automation editing
git-svn-id: svn://localhost/ardour2/trunk@1161 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-28 17:52:09 +00:00
00afa40d45 many small changes, see ardour-dev for more
git-svn-id: svn://localhost/ardour2/trunk@1160 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-27 19:31:33 +00:00
2bf3ed423f track naming patch from brian; slightly modified F11-bug workaround from brian; undo/redo items in edit menu now show operation to be undone/redone; canvas allocations now handled by an idle handler; region views respond to changes in fade/in/out curves ; undo/redo possible for some fade in/out operations; automation tracks extend to max_frames
git-svn-id: svn://localhost/ardour2/trunk@1134 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-16 18:42:48 +00:00
cc28a5a337 make X on track hide button visible; fix signed/unsigned warning
git-svn-id: svn://localhost/ardour2/trunk@1109 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-11 19:49:48 +00:00
c00f5d4401 prevent steps in automation lines from vanishing
git-svn-id: svn://localhost/ardour2/trunk@1107 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-11 15:51:52 +00:00
2001efa088 commit crash caused by not displaying first and last points of an automation line at large zooms
git-svn-id: svn://localhost/ardour2/trunk@1047 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-01 12:01:10 +00:00
dc40809648 more debugging
git-svn-id: svn://localhost/ardour2/trunk@1046 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-01 01:07:10 +00:00
7e209d06a1 more debugging
git-svn-id: svn://localhost/ardour2/trunk@1045 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-11-01 00:52:09 +00:00
80ef7a8415 fix sndfile reference in gtk2_ardour/SConscript
git-svn-id: svn://localhost/ardour2/trunk@1043 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-10-31 22:16:00 +00:00
34cd3457a2 fix return type in last commit for AutomationLine::control_point_box_size(); catch attempts to use new session dialog to open existing sessions
git-svn-id: svn://localhost/ardour2/trunk@1042 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-10-31 21:48:51 +00:00
209aeb85ef search lib64 for LADSPA plugins, and fix control point box size:track height relationship
git-svn-id: svn://localhost/ardour2/trunk@1040 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-10-31 20:09:41 +00:00
71c94e6943 massive changes in automation state handling, not entirely complete; some bug fixes for automation line drawing
git-svn-id: svn://localhost/ardour2/trunk@1034 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-10-31 02:40:08 +00:00
5695b1790e remove StateManager code entirely and more debugging output cruft
git-svn-id: svn://localhost/ardour2/trunk@1008 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-10-26 00:47:22 +00:00
bcd511aa3f fixes for endemic (compiler?) issues with virtual inheritance of sigc::trackable. NOTE: automation list undo/redo no longer operational, fix to follow
git-svn-id: svn://localhost/ardour2/trunk@1007 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-10-25 20:11:42 +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
Hans Fugal
57f7f71ce3 r316@gandalf: fugalh | 2006-08-11 17:06:48 -0600
Reconstitution. Comiples, untested.


git-svn-id: svn://localhost/ardour2/branches/undo@797 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-12 21:49:20 +00:00
Hans Fugal
74b19eadfa Can pass a core to ardbg now. Fixed sometimes crash on saving history by
creating a memory leak(?) that will go away with the transition of XMLNode* to
shared_ptr<>. A few bits toward restoring history from XML.


git-svn-id: svn://localhost/ardour2/branches/undo@779 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-10 01:45:49 +00:00
Hans Fugal
a32175bd41 r274@gandalf: fugalh | 2006-08-07 19:53:48 -0600
Nuke Serializable in favor of Stateful. Got rid of some warnings with stub
 code.


git-svn-id: svn://localhost/ardour2/branches/undo@767 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-09 14:14:17 +00:00
Hans Fugal
b0b7234458 r260@gandalf: fugalh | 2006-08-03 15:53:50 -0600
It compiles and runs and seems to still work. Still needed is the actual
 serialization. Time to merge back to trunk so things can be tested by all.


git-svn-id: svn://localhost/ardour2/branches/undo@754 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-03 21:54:14 +00:00
Hans Fugal
1f1c4981de Compiles, but doesn't link. The link errors are mostly expected and are
tomorrow's task.

git-svn-id: svn://localhost/ardour2/branches/undo@719 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-29 03:17:11 +00:00
Hans Fugal
8e301e875a r199@gandalf: fugalh | 2006-07-26 17:22:38 -0600
Memento(Redo|Undo)Command has a noop for the undo or redo respectively, and
 we don't need both before and after state. This is primarily useful for
 drag start/finish callbacks, and really only makes sense where wrapped by
 (begin|commit)_reversible_command (a composite command).
 
 Also a few more "normal" MementoCommands.


git-svn-id: svn://localhost/ardour2/branches/undo@695 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-26 23:28:54 +00:00
Hans Fugal
b7bffbe7a2 r191@gandalf: fugalh | 2006-07-24 19:50:10 -0600
All the obvious MementoCommand grunt work. Now there's some
 add_undo/add_redo_no_execute sprinkled around where one is separated from the
 other (e.g. in different callbacks) or perhaps even where there's only an undo
 and no redo. Also some sigc-based undo/redo pairs that probably need their own
 Command class.


git-svn-id: svn://localhost/ardour2/branches/undo@692 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-25 01:50:20 +00:00
Hans Fugal
7ff370e798 Merging from trunk
git-svn-id: svn://localhost/ardour2/branches/undo@638 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-22 23:40:55 +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
3436df6eab the usual blob of fixes. note the requirement for ComboBoxText::set_active_text()
git-svn-id: svn://localhost/trunk/ardour2@160 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-12-02 19:18:26 +00:00
2b49b2433b mega commit to remove gtk_object cruft, and much other stuff
git-svn-id: svn://localhost/trunk/ardour2@139 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-11-28 22:36:26 +00:00
Karsten Wiese
1184029638 convert set_property("foo", bar) to property_foo() = bar
git-svn-id: svn://localhost/trunk/ardour2@133 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-11-27 22:35:04 +00:00
Nick Mainsbridge
54a8032106 Gnome::Canvas -> ArdourCanvas and some other small fixes
git-svn-id: svn://localhost/trunk/ardour2@107 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-11-23 17:21:12 +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
ab91bcfdac time_axis_view now compiles
git-svn-id: svn://localhost/trunk/ardour2@86 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-11-13 18:13:50 +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
d38e2213d7 replaced slot() with mem_fun() and ptr_fun().
git-svn-id: svn://localhost/trunk/ardour2@29 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-09-25 21:19:23 +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