13
0
Commit Graph

65 Commits

Author SHA1 Message Date
Carl Hetherington
27cbe72d96 Remove dependence on the order of calls of listeners to MidiTrack::StepEditStatusChange, and rename the step entry menu item to make it consistent with the dialogue title. Should fix #3765.
git-svn-id: svn://localhost/ardour2/branches/3.0@8831 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-12 12:29:20 +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
Carl Hetherington
812e95da01 Allow drag when creating a MIDI region. Fixes #3363.
git-svn-id: svn://localhost/ardour2/branches/3.0@7657 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-20 12:01:13 +00:00
faca3e5f5d split out the logic behind step editing from MidiTimeAxisView as much as possible
git-svn-id: svn://localhost/ardour2/branches/3.0@7633 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-15 16:39:51 +00:00
d6166084b1 step editor: add double, triple dotted note support + back + resync-to-ep buttons
git-svn-id: svn://localhost/ardour2/branches/3.0@7623 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-13 21:48:31 +00:00
aac46a38fb add step editing sustain support
git-svn-id: svn://localhost/ardour2/branches/3.0@7615 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-13 14:11:01 +00:00
8bdf5cf1d0 fix up initial step edit pos when operating on an existing region
git-svn-id: svn://localhost/ardour2/branches/3.0@7600 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-11 19:42:42 +00:00
afd5b2002a vari-size rect as step-edit cursor
git-svn-id: svn://localhost/ardour2/branches/3.0@7599 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-11 19:11:14 +00:00
5182f0770c add a first hack at a step edit cursor (to be changed); add program+bank stubs (non-functional for the foreseeable future); fix up step edit changes propagating across all MIDI tracks; make program change "flags" change height along with track
git-svn-id: svn://localhost/ardour2/branches/3.0@7598 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-11 18:21:37 +00:00
38f2336b45 add beat-resync button to step editor (move insertion point to next whole beat from region start)
git-svn-id: svn://localhost/ardour2/branches/3.0@7541 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-04 20:28:10 +00:00
46eaff772d endless further tweaks to step editor; stop stealing the "r" key inside MidiRegionView key handling
git-svn-id: svn://localhost/ardour2/branches/3.0@7537 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-04 17:04:20 +00:00
6b641cdde4 properly track step edit status in editor & mixer windows
git-svn-id: svn://localhost/ardour2/branches/3.0@7533 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-03 21:50:15 +00:00
b1f5a6a68d a bunch of tweaks for the step entry process (computer keyboard input now works, for example)
git-svn-id: svn://localhost/ardour2/branches/3.0@7532 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-03 19:22:57 +00:00
64f9fac9a8 make step entry chord & triplet buttons do their thing, or something close to it
git-svn-id: svn://localhost/ardour2/branches/3.0@7530 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-03 04:13:05 +00:00
e0edca5a2a first, incomplete pass at step entry dialog, along with various SVG and PNG files for notes and dynamics notation
git-svn-id: svn://localhost/ardour2/branches/3.0@7529 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-02 21:52:21 +00:00
32b2ddd24a catch the step edit region if it goes away and prepare to use a new one; step edit insert position starts at the edit point, not the start of the edited region
git-svn-id: svn://localhost/ardour2/branches/3.0@7515 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-27 15:42:14 +00:00
c685724c80 step editing now accessed via a context menu on MIDI track rec-enable buttons. along the way, fixed up confusion between set_rec_enable() and set_rec_enabled() methods in Route/Track/Diskstream
git-svn-id: svn://localhost/ardour2/branches/3.0@7482 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-24 16:40:56 +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
a04b1fee6a heavy-handed and crude way to stop WM-stolen-alt keys from causing MidiRegionView from losing track of SelectTouchDraggingMode (may not be optimal or in the right place, but it works for now); add primary-click-on-MRV-blank-space and tertiary-click-on-MRV-blank-space to select all notes above or below the click, using recently committed methods for Sequence
git-svn-id: svn://localhost/ardour2/branches/3.0@7192 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-28 21:39:12 +00:00
Carl Hetherington
c8376522b1 Fix disappearing plugin menu (#3182)
git-svn-id: svn://localhost/ardour2/branches/3.0@7163 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-25 23:39:44 +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
ca2f505ec1 lots of debug code still in place, but get a much improved structure for MIDI automation menus actually working. tweaks to follow
git-svn-id: svn://localhost/ardour2/branches/3.0@6470 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-09 02:36:47 +00:00
2e30bdba9f select-by-pitch from the piano roll header (inspired by Rosegarden); some improvements underway to controller/automation menu, but still broken there
git-svn-id: svn://localhost/ardour2/branches/3.0@6466 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-07 19:15:33 +00:00
ed6545eb5b screw up MIDI control "automation" tracks quite a bit while trying to improve menu structure BUT add a MIDI tracer window and fix a crashing bug caused by regions prematurely being destroyed
git-svn-id: svn://localhost/ardour2/branches/3.0@6465 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-06 21:56:23 +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
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
9867035f29 make MIDI thru work even when not rolling; add GUI control over MIDI thru (midi track context menu); add "default channel" concept for MIDI tracks so that piano roll header events can send stuff on the right channel; add GUI control over this channel setting
git-svn-id: svn://localhost/ardour2/branches/3.0@5687 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-25 19:00:34 +00:00
42e1e00f06 add step-rest keybinding for step editing
git-svn-id: svn://localhost/ardour2/branches/3.0@5653 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-10 22:20:37 +00:00
c3c5c9a559 just one timeout callback for step editing, not one per track
git-svn-id: svn://localhost/ardour2/branches/3.0@5635 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-05 14:11:48 +00:00
b7fe417f70 better way to "engage" step edit, and extend region correctly as needed
git-svn-id: svn://localhost/ardour2/branches/3.0@5630 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-03 14:50:21 +00:00
b0b584c2a5 the basics of step editing, more details to follow
git-svn-id: svn://localhost/ardour2/branches/3.0@5629 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-03 12:39:50 +00:00
Carl Hetherington
402cc384ce Back out big shared_ptr change. Moving to a branch. Apologies all.
git-svn-id: svn://localhost/ardour2/branches/3.0@5343 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-09 17:58:13 +00:00
Carl Hetherington
4297071b3f Use shared_ptr for the TimeAxisView hierarchy.
git-svn-id: svn://localhost/ardour2/branches/3.0@5339 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-09 13:39:45 +00:00
Carl Hetherington
3b89d9eaa0 Remove most using declarations from header files.
git-svn-id: svn://localhost/ardour2/branches/3.0@5069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-12 17:03:42 +00:00
e0aaed6d65 *** NEW CODING POLICY ***
All #include statements that include a header that is a part of a library
bundled with ardour MUST use quotes, not angle brackets.

Do this:

#include "ardour/types.h"

NOT this:

#include <ardour/types.h>

Rationale:

This is best practice in general, to ensure we include the local version
and not the system version.  That quotes mean "local" (in some sense)
and angle brackets mean "system" (in some sense) is a ubiquitous
convention and IIRC right in the C spec somewhere.

More pragmatically, this is required by (my) waf (stuff) for dependencies
to work correctly.  That is:

!!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!!

Failure to comply is punishable by death by torture. :)

P.S. It's not that dramatic in all cases, but this (in combination with some
GCC flags specific to the include type) is the best way I have found to be
absolutely 100% positive the local ones are being used (and we definitely
want to be absolutely 100% positive on that one).


git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 18:26:51 +00:00
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
Hans Baier
e009016b03 * added myself to about.cc
* created ArdourCanvas::CanvasFlag as a base class for flags
* removed obsolete cruft from midi_model
* made MidiTimeAxisView and MidiRegionView work together to display program changes as
  names by means of MidiPatchManager


git-svn-id: svn://localhost/ardour2/branches/3.0@4307 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-11 08:06:27 +00:00
Hans Baier
f8480d6392 * moved /midi_patch_manager.* to libs/ardour
* GUI improvement: do away with the midi channel expander


git-svn-id: svn://localhost/ardour2/branches/3.0@4305 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-09 08:35:02 +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
909995338c Fix warnings.
Mostly fix MIDI track resizing wackiness (from torbenh).


git-svn-id: svn://localhost/ardour2/branches/3.0@3817 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-27 18:07:37 +00:00
ffaf827d93 Eliminate a ton of unnecessary complete redrawing in MIDI stream views:
Only resize vertically (don't reaload model) on range changes.
Keep track of range in model while loading (writing to model), rather than double display MIDI regions to find out.
Don't go crazy and chew CPU blinking around and doing nothing on initial show of MIDI track context menu.
Change radio 'full range' and 'contents range' menu items to non-radio actions that just set the range appropriately.
Fix crashes on some esoteric case of control data I can't figure out, but fixed anyway, so I guess it all worked out well in the end for everybody.


git-svn-id: svn://localhost/ardour2/branches/3.0@3794 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-23 02:40:29 +00:00
a43d53e3b9 - Call channel pressure channel pressure, not aftertouch (that's key specific).
- Add context menu items to add a bender or pressure automation track to a MIDI track.
- Now just need to figure out creation of program change events and you can create
  everything MIDI ardour understands from the GUI...


git-svn-id: svn://localhost/ardour2/branches/3.0@3782 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-21 18:08:18 +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
8ca72c4eca Fix various MIDI corruption bugs.
Re-enable MIDI CC controller bars and other immediate output (hans commented out, tsk tsk).
Write channel mode as textual enumeration instead of magic number.
Better atomic (almost) channel mode switching on MIDI ring buffer (was a possible, if unlikely, source of corruption).
Handle some cases of broken MIDI, and oversized events, more gracefully.


git-svn-id: svn://localhost/ardour2/branches/3.0@3335 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-12 02:40:48 +00:00
Hans Baier
f31abc5eaf * UI fixes for track channel selection
* implemented 'forcing midi events into a single channel'
* see http://www.flickr.com/photos/24012642@N02/2430165889/

git-svn-id: svn://localhost/ardour2/branches/3.0@3273 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-21 09:39:05 +00:00
Hans Baier
e8c2b6f371 * made notes whose channel is not selected in the track appear gray, see http://www.flickr.com/photos/24012642@N02/2429528120/
git-svn-id: svn://localhost/ardour2/branches/3.0@3272 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-20 22:33:13 +00:00
Hans Baier
d8adfa49a6 * made channel selector look quite nice, see http://www.flickr.com/photos/24012642@N02/2425203856/ (still needs some work...)
git-svn-id: svn://localhost/ardour2/branches/3.0@3268 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-19 10:30:38 +00:00
Hans Baier
85c223da0d * first prototype for track based channel selection works
git-svn-id: svn://localhost/ardour2/branches/3.0@3267 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-19 02:11:11 +00:00
012292b4bd Less crash-happy MIDI reading on weird MIDI files.
Make "show existing automation" create/show automation tracks for all contained CC in MIDI tracks.
Fix staggered time when importing multi-track MIDI files.


git-svn-id: svn://localhost/ardour2/branches/3.0@3086 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-19 03:24:44 +00:00