13
0
Commit Graph

180 Commits

Author SHA1 Message Date
Carl Hetherington
1aa38f074f Don't setup panner UI unless it has changed.
git-svn-id: svn://localhost/ardour2/branches/3.0@5606 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-30 00:40:48 +00:00
Carl Hetherington
95c4046ff9 Set route remote control IDs from a dialog rather than a menu. I think this is
more practical (especially with large track counts), and also prevents a N-entry
menu being built for each of N tracks every time the mixer strip order is changed,
which speeds some operations up.


git-svn-id: svn://localhost/ardour2/branches/3.0@5605 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-29 23:31:59 +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
f411496289 fix clicking when processors become active/inactive; reduce crazy 2.5sec delay for quit dialog
git-svn-id: svn://localhost/ardour2/branches/3.0@5402 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-21 14:39:21 +00:00
f01af9836e fix broken accels in mixer window BUT note that processor box now swallows keys that have default GTK functions in a tree/listview, like space. thinking about possible solutions to this. added zero key (0) to reset gain to 0dB
git-svn-id: svn://localhost/ardour2/branches/3.0@5361 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-14 01:24:16 +00:00
17bfb7cad5 traverso-style mixer window bindings. note: messes up some bindings when mouse is not in the processor box (fix to follow); notes: m=mute, s=solo, g=gain_up ctrl-g=gain_down r=rec-enable e=show-sends KP_0=toggle processor active status (selected or pointed-at)
git-svn-id: svn://localhost/ardour2/branches/3.0@5356 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-13 23:09:16 +00:00
88beef2e93 merge pre- and post-fader processor boxes; start removing Placement (not finished) ; add -DWAF_BUILD and use per-directory foobar-config.h to correctly pick up configure-time settings like HAVE_OGG ; check for libgiomm (part of upgrade to newer gtk stack); 32 bit marker reload fix from 2.X; audiounit IO config cache fix from 2.X; multi-add route template fix from 2.X; plugin GUI delete fix from 2.X; solo button labels are A or P for listen mode
git-svn-id: svn://localhost/ardour2/branches/3.0@5344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-13 00:26:28 +00:00
0d6515a243 separate solo & listen. some minor fixes and additional related fixes still to come
git-svn-id: svn://localhost/ardour2/branches/3.0@5298 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-01 13:36:50 +00:00
Carl Hetherington
26328c9ef1 lincoln's patch from mantis 2757 to add route group property checkboxes in the route groups
editor list, and to initialise new route groups with some appropriate properties.


git-svn-id: svn://localhost/ardour2/branches/3.0@5295 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-29 00:57:27 +00:00
Carl Hetherington
7a4f1b9cf6 Factor route group menu out into its own class.
git-svn-id: svn://localhost/ardour2/branches/3.0@5292 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-29 00:38:58 +00:00
Carl Hetherington
acaf05db1d Update mixer group tabs on strip width change. Don't display the mixer group tab menu if there's not a group involved.
git-svn-id: svn://localhost/ardour2/branches/3.0@5265 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-23 23:05:14 +00:00
f71a197270 save&restore gain levels; provide GUI control over relative route group bit; fix up solo/mute/recenable button naming as mixer strip width is set
git-svn-id: svn://localhost/ardour2/branches/3.0@5263 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-23 21:29:39 +00:00
d13fdaa9d1 make RouteGroup gain control work again ; fix what solo button label shows under different conditions; other miscellania
git-svn-id: svn://localhost/ardour2/branches/3.0@5262 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-23 20:02:15 +00:00
Carl Hetherington
7d64d08fab Bit of a hack: limit mix group names to 5 chars within the strip to stop them getting too wide.
git-svn-id: svn://localhost/ardour2/branches/3.0@5250 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-22 22:31:43 +00:00
Carl Hetherington
955d731fa6 Merge edit and mix groups to just being route groups. Add properties to route groups to decide what things their member routes will share. Allow edits to happen across a route group without its tracks necessarily being selected.
git-svn-id: svn://localhost/ardour2/branches/3.0@5236 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-21 19:59:56 +00:00
Carl Hetherington
be3aff4bda Mix group tabs in the mixer.
git-svn-id: svn://localhost/ardour2/branches/3.0@5228 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-20 17:15:33 +00:00
86f24d20e1 first pass (ok, third really) at internal send+return - audio routing inside ardour without JACK. lots still to do, but at least the obvious works
git-svn-id: svn://localhost/ardour2/branches/3.0@5202 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-16 14:58:33 +00:00
51ef434382 make meter point button work again, and allow momentary button action to work again
git-svn-id: svn://localhost/ardour2/branches/3.0@5161 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-11 00:44:48 +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
5a4d340b42 Das BlinkenSendButtons
git-svn-id: svn://localhost/ardour2/branches/3.0@5097 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-17 17:05:56 +00:00
6001b8d28d send control now has working metering, and switches back and forth between busses etc. correctly.
git-svn-id: svn://localhost/ardour2/branches/3.0@5092 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-17 14:11:16 +00:00
7deb14773b 75% (?) of the way towards making mixer strips control bus sends. lots more to do
git-svn-id: svn://localhost/ardour2/branches/3.0@5090 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-17 02:08:13 +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
18b94f129d lincoln's route connection cleanup patch
git-svn-id: svn://localhost/ardour2/branches/3.0@4996 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-22 01:49:48 +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
Sakari Bergen
e09c51251f Fix compiler warnings
git-svn-id: svn://localhost/ardour2/branches/3.0@4744 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-03-07 09:42:39 +00:00
d50b65773a fix up kludgy assumptions about mixer strip route ops menu ordering
git-svn-id: svn://localhost/ardour2/branches/3.0@4734 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-03-05 17:25:52 +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
Carl Hetherington
567f37f8eb Offer routes on mixer strip IO menus. Fixes to these menus on MIDI routes.
git-svn-id: svn://localhost/ardour2/branches/3.0@4528 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 02:14:01 +00:00
Carl Hetherington
54afc94e62 Re-enable creation of stereo bundles for system IO, so that the mixer strip
connection menus for stereo tracks are populated again.
Also enable disconnection via these menus.


git-svn-id: svn://localhost/ardour2/branches/3.0@4481 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-02 22:17:06 +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
Carl Hetherington
c9e0804e9f Change input/output selector button behaviour so that button 1 opens the port matrix and button 3 opens the menu.
git-svn-id: svn://localhost/ardour2/branches/3.0@4450 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-28 00:04:46 +00:00
Carl Hetherington
49510ba1d7 Some refactoring. Add port group headers to the port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@4443 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-25 06:47:11 +00:00
Carl Hetherington
bed58e9f37 Make Bundles work a bit better. A few include optimisations.
git-svn-id: svn://localhost/ardour2/branches/3.0@4408 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-14 23:54:46 +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
7b5e8bf0f7 make all mixerstrip elements visible in the mixer window. at least, i think that is everything - trying to move away from using show_all()
git-svn-id: svn://localhost/ardour2/branches/3.0@4321 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-14 07:59:33 +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
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
6b0d22268b Normalize XML property name style, preserving old session loading (on load _ will be converted to -).
Still to go:  Non-consistent PBD tag names, colours.


git-svn-id: svn://localhost/ardour2/branches/3.0@3872 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-05 23:14:48 +00:00
ec6ab8a048 Apply panners/automation patch from torbenh (Panner is-a Processor).
git-svn-id: svn://localhost/ardour2/branches/3.0@3848 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-03 03:16:19 +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
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
d9de6f2c4c * preliminary impl for PGM Change support in MidiModel
git-svn-id: svn://localhost/ardour2/branches/3.0@3283 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-24 15:04:56 +00:00
Hans Baier
b81fd9415e * disabled some debugging output
* make record buttons appear in MIDI mixer strips

git-svn-id: svn://localhost/ardour2/branches/3.0@3280 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-22 22:39:45 +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
b03676f9a6 Hopefully fix missing meter/fader on mixer.
git-svn-id: svn://localhost/ardour2/branches/3.0@3106 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-22 01:49:33 +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
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
Carl Hetherington
56ab60f163 Don't give master or control routes a hide button, to fix #1645
git-svn-id: svn://localhost/ardour2/trunk@2585 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-04 16:41:49 +00:00
Carl Hetherington
77f16522e0 Various work on bundles. We now have a Bundle Manager dialogue, and hopefully things are a bit cleaner internally. This commit changes the session file format with respect to bundles (or Connections as they used to be called).
git-svn-id: svn://localhost/ardour2/trunk@2561 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-19 13:30:07 +00:00
f7f9d6fdc4 merge from 2.0-ongoing by hand, minus key binding editor
git-svn-id: svn://localhost/ardour2/trunk@2539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-11 22:07:47 +00:00
Carl Hetherington
4d66204f4e Various work on Bundles, especially dynamic ones so that you can, for example, pass tracks to busses by selecting the buss name from the track's output menu.
git-svn-id: svn://localhost/ardour2/trunk@2530 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-08 23:47:35 +00:00
Doug McLain
8144a70087 finish show() stuff for mixer strip and friends
git-svn-id: svn://localhost/ardour2/trunk@2126 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-07 09:36:56 +00:00
Doug McLain
af8acbcc88 more show() stuff, and replaced strip->show_all(); untill its actually finished
git-svn-id: svn://localhost/ardour2/trunk@2124 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-07 05:04:34 +00:00
Doug McLain
f87954eeb5 show() widgets explicitly in the MixerStrip and IOSelector
git-svn-id: svn://localhost/ardour2/trunk@2122 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-06 23:55:54 +00:00
cfe29a14ee Scale MIDI track vertical range to match widgest range of notes in child regions.
Fiddled with canvas theme a bit to make tempo more visible and probably annoy pure audio MIDI/tempo haters.
Fix track-specific-color display on mixer strips for MIDI tracks.


git-svn-id: svn://localhost/ardour2/trunk@2112 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-05 07:02:24 +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
b5af3bb8e3 allow user tweaking of everything that might have inherent latency; add GUI for track level adjustment and widget that can be (but is not yet) embedded in a plugin GUI
git-svn-id: svn://localhost/ardour2/trunk@2075 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 22:06:35 +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
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
e607e1f8f2 Removed panner UI from MIDI track mixer strip.
Fix MIDI track controls and mixer strip colours.
Changed selected track controls colour to be more visible and match selected tool colour.


git-svn-id: svn://localhost/ardour2/trunk@1984 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-15 19:58:19 +00:00
70fd14afe8 Show selected MIDI track in editor mixer.
Minor code cleanups.


git-svn-id: svn://localhost/ardour2/trunk@1949 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-04 00:05:33 +00:00
38ed75ff97 merge denormal handling work from 2.0-ongoing
git-svn-id: svn://localhost/ardour2/trunk@1937 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-01 02:27:21 +00:00
Carl Hetherington
fd6408e6ba Rename ARDOUR::Connection to ARDOUR::Bundle, a few minor cleanups along the way.
git-svn-id: svn://localhost/ardour2/trunk@1882 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 15:58:01 +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
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
cbdf686e39 - Replaced integer port counts (and input/output maximum/minimum) with ChanCount, which can count multiple types and does the reasonable thing for all comparison operators
- Removed the fader/meters from MIDI mixer strips, at least until they do something
- Made the Add Route dialog refuse to create MIDI busses, Spifftacular warning dialog and all

Changes a bit more widespread than I was hoping, but worked out really well - lots of code will continue to work fine even when multi-typed (eg instrument) IOs come around, just ignoring the types it doesn't care about.  Most all changes related to counts are little search/replace deals, logic doesn't need to change.  Hopefully SVN can handle (automatic) merging with the other SoC projects if the buffer change goes as well.

Next step: do for buffers what the last two commits did for ports.


git-svn-id: svn://localhost/ardour2/branches/midi@787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-11 07:15:30 +00:00
0565c75ce8 Merged up to trunk R732
git-svn-id: svn://localhost/ardour2/branches/midi@735 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-01 19:18:12 +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
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
0cdb918d4d Work towards removal of Session's Diskstream list.
Havn't managed to completely remove it because of Session loading from XML - the
Diskstreams are separate from the Tracks (I assume as a throwback to when they
were distinct) so the Diskstreams need to be stored somewhere until the Tracks
are loaded.  Ideally tracks should completely own their Diskstreams - not sure
how to accomplish this without breaking Session loading though...


git-svn-id: svn://localhost/ardour2/branches/midi@687 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-19 05:44:23 +00:00
50a3102b9b Merge big changes (mostly Controllable) from trunk
git-svn-id: svn://localhost/ardour2/branches/midi@682 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-14 03:43:32 +00:00
edd841895b Loading/Saving of sessions containing MIDI tracks and/or busses
git-svn-id: svn://localhost/ardour2/branches/midi@667 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-06 19:45:23 +00:00
22c20ab6f2 Merged with trunk, and a few trivial GUI updates etc.
git-svn-id: svn://localhost/ardour2/branches/midi@664 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-05 19:47:25 +00:00
fe13d08874 Large nasty commit in the form of a 5000 line patch chock-full of completely
unecessary changes.  (Sorry, doing a "sprint" based thing, this is the end of the first one)

Achieved MIDI track and bus creation, associated Jack port and diskstream creation, and minimal GUI stuff for creating them.  Should be set to start work on actually recording and playing midi to/from disk now.

Relevant (significant) changes:

- Creation of a Buffer class.  Base class is type agnostic so things can point to a buffer but not care what kind it is (otherwise it'd be a template).  Derived into AudioBuffer and MidiBuffer, with a type tag because checking type is necessary in parts of the code where dynamic_cast wouldn't be wise.  Originally I considered this a hack, but passing around a type proved to be a very good solution to all the other problems (below).  There is a 1:1 mapping between jack port data types and ardour Buffer types (with a conversion function), but that's easily removed if it ever becomes necessary.  Having the type scoped in the Buffer class is maybe not the best spot for it, but whatever (this is proof of concept kinda stuff right now...)

- IO now has a "default" port type (passed to the constructor and stored as a member), used by ensure_io (and similar) to create n ports.  IO::register_***_port has a type argument that defaults to the default type if not passed.  Rationale:  previous IO API is identical, no changes needed to existing code, but path is paved for multiple port types in one IO, which we will need for eg synth plugin inserts, among other things.  This is not quite ideal (best would be to only have the two port register functions and have them take a type), but the alternative is a lot of work (namely destroying the 'ensure' functions and everything that uses them) for very little gain.  (I am convinced after quite a few tries at the whiteboard that subclassing IO in any way is not a feasible option, look at it's inheritance diagram in Doxygen and you can see why)

- AudioEngine::register_audio_input_port is now register_input_port and takes a type argument.  Ditto for output.

- (Most significant change) AudioDiskstream abstracted into Distream, and sibling MidiDiskstream created.  Very much still a work in progress, but Diskstream is there to switch references over to (most already are), which is the important part.  It is still unclear what the MIDI diskstream's relation to channels is, but I'm pretty sure they will be single channel only (so SMF Type 0) since noone can come up with a reason otherwise.

- MidiTrack creation.  Same thing as AudioTrack but with a different default type basically.  No big deal here.

- Random cleanups and variable renamings etc. because I have OCD and can't help myself. :)

Known broken:  Loading of sessions containing MIDI tracks.




git-svn-id: svn://localhost/ardour2/branches/midi@641 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-26 16:01:34 +00:00
13532c8500 Merged with trunk
git-svn-id: svn://localhost/ardour2/branches/midi@628 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-21 18:14:45 +00:00
b5db1f624d Merged with trunk revision 600
git-svn-id: svn://localhost/ardour2/branches/midi@601 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-15 01:34:54 +00:00
74dd5bd706 Committed filthy mess of a working copy solely for moving between machines.
Nothing to see here, move along now...


git-svn-id: svn://localhost/trunk/ardour2midi@575 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-08 23:46:42 +00:00
Nick Mainsbridge
479ee9cc00 Mixer strip layout, emsure correct column expands on treeviews, 'Manual' automation mode labels.
git-svn-id: svn://localhost/trunk/ardour2@519 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-21 10:11:59 +00:00
Nick Mainsbridge
f88cf52970 Fix bus rec enable bug introduced in last commit
git-svn-id: svn://localhost/trunk/ardour2@518 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-20 09:10:13 +00:00
Nick Mainsbridge
c33d0ad760 Mixer strip & ui layout changes
git-svn-id: svn://localhost/trunk/ardour2@514 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-19 17:29:05 +00:00
Nick Mainsbridge
b3b383faa5 Remove CannotRecordNoInput signal (allowing recording without input connections), provide visual indication of phase reverse, change e.g. 'gain automation' to 'fader automation', enforce mouse button 1 use in mixer strip, make button labels more consistent in mixer strip, disable io change/record enable when disconnected from jack on mixer strip, remove duplicated signal connections and typo in audio_time_axis.cc.
git-svn-id: svn://localhost/trunk/ardour2@505 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-17 12:07:16 +00:00
Nick Mainsbridge
1242d9595c Mixer strip uses button 1 where possible, make mouse click behaviour more consistent wrt popup menus.
git-svn-id: svn://localhost/trunk/ardour2@504 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-14 19:02:14 +00:00
Nick Mainsbridge
a0f60f6dd0 Don't show comments editor on the taskbar, position & resize it more sensibly and use word wrap.
git-svn-id: svn://localhost/trunk/ardour2@503 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-14 16:01:36 +00:00
Taybin Rutkin
49ab3aa0b3 All included libraries now link dynamically instead of statically.
Moved items from gtk2_ardour/utils to pbd3/convert.
Various cleanups.


git-svn-id: svn://localhost/trunk/ardour2@475 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-04-25 20:23:50 +00:00
Nick Mainsbridge
d3a573bf3e Set button labels sanely.
git-svn-id: svn://localhost/trunk/ardour2@464 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-04-22 16:49:51 +00:00
Nick Mainsbridge
f81f877adf Fixup for comments editor blocking presses to its button
git-svn-id: svn://localhost/trunk/ardour2@462 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-04-21 16:29:02 +00:00
Nick Mainsbridge
2ce07f34e2 Comments button now indicates when comments are present, more dialog work (ask about saving, comments box etc.), code cleanups in mixer_strip.cc.
git-svn-id: svn://localhost/trunk/ardour2@461 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-04-20 20:41:05 +00:00
a157537898 a) moved metering and meter falloff code into libardour
b) added initial "big meter" mode for tranzport
c) fixed some lock issues in ARDOUR::IO objects
d) generic_midi control surface module now compiles and loads


git-svn-id: svn://localhost/trunk/ardour2@450 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-04-10 03:54:00 +00:00
a779700bc0 a) remove polarity button, add polarity menu item, move functionality into RouteUI
b) correct switcheroo in function of active/visible columns for edit groups


git-svn-id: svn://localhost/trunk/ardour2@431 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-03-30 15:50:08 +00:00
9051e4231c fix color/style issue for mixer strip name button
git-svn-id: svn://localhost/trunk/ardour2@430 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-03-30 15:08:56 +00:00