13
0
Commit Graph

507 Commits

Author SHA1 Message Date
1fda7b293a fix up positioning of verbose cursor if it is too close to the bottom of the canvas (for MidiRegionView) 2013-04-11 20:01:14 -04:00
19bd641915 commit immediately post linking 2013-04-04 18:45:27 -04:00
aaea166135 initial commit of hand merging, plus getting "ancient" waf script to work correctly 2013-04-04 00:32:52 -04:00
4abbabdcf9 Squashed commit of the following:
commit fdbae82077db53add90df7448a06869dac89acc6
Author: Paul Davis <paul@linuxaudiosystems.com>
Date:   Wed Mar 27 21:45:28 2013 -0400

    mammoth changes in basic signal flow, total redesign of MIDI channel filtering and more.

commit 59343a8283698e02bc0f622313b29e98f449e4c8
Author: Paul Davis <paul@linuxaudiosystems.com>
Date:   Wed Mar 27 01:58:53 2013 -0400

    initial working version after changes to MIDI channel filtering. may affect metering input too. testing not yet finished

this commit merges many deep changes in ardour's internal architecture,
combined with a total redesign of how MIDI channel filtering works.

data in a track used to flow from JACK port buffers to diskstream's ringbuffers
and was then copied from the ringbuffers into a BufferSet for use during
Route::process_output_buffers(). The butler thread would handle the movement of
data between the ringbuffers and disk.

with this commit, data now flows from JACK port buffers into the BufferSet used
for Route processing, and is copied from the BufferSet into the diskstream's
ringbuffers (the butler thread continues to handle interactions with disk as
usual).

this change allowed a dramatic consolidation of code and simplification of most
aspects of Track/Route::roll() and Track/Route::no_roll(). in particular, see
Route::fill_buffers_with_input() which now concisely describes how we move data
from JACK port buffers into the BufferSet for all Route types (including Tracks).

this work was initially motivated by changing MIDI channel filtering so that we
can process capture and playback independently. there is now a very clean
pathway for this - see MidiTrack::roll() (NOTE: This needs implementing in the
no-roll case too - a TODO item).

the channel selector for MIDI tracks has been moved out of the track header and
is now accessible via the context menu. more work is likely here, to make it
(more) obvious to the user when filtering is going on.
2013-03-27 21:50:18 -04:00
2586dacf5b Trim the include tree a bit.
git-svn-id: svn://localhost/ardour2/branches/3.0@13941 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-21 07:24:42 +00:00
58d0fa7240 Fix whitespace.
git-svn-id: svn://localhost/ardour2/branches/3.0@13935 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-21 01:08:43 +00:00
1ae6d82674 Use rectangle intersection for MIDI note rect select.
git-svn-id: svn://localhost/ardour2/branches/3.0@13933 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 19:39:51 +00:00
7f769b06f0 More consistent verbose cursor label style for PC flags.
git-svn-id: svn://localhost/ardour2/branches/3.0@13928 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 09:00:53 +00:00
4e6d0c9e61 Show matching controller name in automation lane header.
Completely eliminate static MIDI controller name code.
Reduce dependency on midnam_patch.h (which would have saved me several hours if I did it earlier).
Store controller name numbers as an integer.
Keep controller names in a map keyed by int instead of a list for fast lookup.
More cleanup of MIDI::Name code.


git-svn-id: svn://localhost/ardour2/branches/3.0@13927 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 08:56:00 +00:00
bade953de3 Fix crash on verbose note text in regions with no patch changes.
... I think.  Not sure precisely, conditions were fuzzy, I just tortured my
mouse button until I could reproduce it.


git-svn-id: svn://localhost/ardour2/branches/3.0@13921 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 04:52:42 +00:00
411dd7566f Fix completely wrong MidiRegionView::get_patch_key_at().
This fixes the note name displayed at a given time to be based on the correct program at that time, and not one in the future.

git-svn-id: svn://localhost/ardour2/branches/3.0@13912 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 02:31:41 +00:00
88de45b7cc Support note names from midnam files (tested with the DM5).
Do this via a simple MasterDeviceNames::note_name() function.  The same really
needs to be done for program names, this stuff is absolutely brutal to use.

Store note names in a vector indexed by number instead of a list with string
"numbers" for reasonable lookup time.

Make some references const that should be.


git-svn-id: svn://localhost/ardour2/branches/3.0@13908 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 00:46:55 +00:00
444d89b669 Set MIDI device mode to the first by default if unset.
Give up trying to hide mode selector when it's useless.
Fix display of program names for default mode.
Abstract out (non-crashy) MidiTimeAxisView::get_device_names().


git-svn-id: svn://localhost/ardour2/branches/3.0@13903 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19 20:15:15 +00:00
fc77ae0738 Replace a bunch of potential crashes with graceful handling of the situation.
We really need some kind of more sophisticated assert macro that can be
switched to non-fatal logging mode for release builds.  A log message, which is
often all that would happen, is a lot better than a trainwrecked performance...


git-svn-id: svn://localhost/ardour2/branches/3.0@13892 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19 07:00:43 +00:00
76d85fb411 add Delete button to patch change dialog when editing it
git-svn-id: svn://localhost/ardour2/branches/3.0@13710 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-22 18:27:33 +00:00
2b8fc2a43b keep velocity value visible in verbose cursor until we leave a note (fixes #5085)
git-svn-id: svn://localhost/ardour2/branches/3.0@13687 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-19 20:31:30 +00:00
Hans Baier
6177205398 Make input filtering while recording work in GUI, too
git-svn-id: svn://localhost/ardour2/branches/3.0@13244 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 06:32:09 +00:00
Hans Baier
9bdde56860 make sysex contents appear as verbose_cursor for visual feedback the flag as been entered and for readability
git-svn-id: svn://localhost/ardour2/branches/3.0@13240 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 04:05:22 +00:00
Hans Baier
3647a55f28 fix bug: sysexes x position not relative to region
git-svn-id: svn://localhost/ardour2/branches/3.0@13239 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 03:40:39 +00:00
Hans Baier
97c23848d7 implement deleting of sysex events
git-svn-id: svn://localhost/ardour2/branches/3.0@13238 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 03:22:17 +00:00
9816ed02c7 use correct event struct when handling key events in patch changes, and flip semantics for next/prev bank so that the direction in numerical terms matches next/prev patch (i.e. up arrow goes to higher numbers)
git-svn-id: svn://localhost/ardour2/branches/3.0@13043 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-15 14:43:38 +00:00
Carl Hetherington
49a32910c5 Patch from tophatdave to prevent exit from note edit
mode on double-click with a modifier held down;
prevents creation of malformed notes (#4664).


git-svn-id: svn://localhost/ardour2/branches/3.0@12929 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 21:19:06 +00:00
70e45046bb put patch chnage dialog under the mouse cursor when it appears
git-svn-id: svn://localhost/ardour2/branches/3.0@12914 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 12:56:56 +00:00
e1bb03bba4 don't swallow left/right scroll events in a midi region view when in internal edit mode, fixes #4555
git-svn-id: svn://localhost/ardour2/branches/3.0@12822 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-22 17:35:41 +00:00
aea9601307 really, really do not signal MidiRegionView::SelectionCleared during destruction
git-svn-id: svn://localhost/ardour2/branches/3.0@12783 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-19 14:15:02 +00:00
2863640a52 make it possible for canvas patch changes to receive kbd events, and along the way clean up a couple of related issues, providing noevent-pixbuf (which we should probably use for regionview names too)
git-svn-id: svn://localhost/ardour2/branches/3.0@12745 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-17 13:37:52 +00:00
Carl Hetherington
d341088f13 Fix some uninitialised variable warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@12702 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13 15:38:15 +00:00
3b04885cb7 prevent too-wide program change flags at startup
git-svn-id: svn://localhost/ardour2/branches/3.0@12678 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-12 18:02:03 +00:00
9c986098a2 hide patch changes if they are too wide for the region at a given zoom level
git-svn-id: svn://localhost/ardour2/branches/3.0@12677 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-12 17:55:05 +00:00
d1d08e3910 fix complete screw up in connecting MIDNAM PatchNameList with ChannelNameSets; more tweaks and twirls for patch/program change mgmt
git-svn-id: svn://localhost/ardour2/branches/3.0@12673 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-12 16:32:06 +00:00
d97312d438 lots more work trying to create a common structure for accessing plugin and MIDNAME patch/preset/program names. still not done
git-svn-id: svn://localhost/ardour2/branches/3.0@12665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-11 22:59:35 +00:00
960de7306f partially-done (but compile-friendly) move of instrument info into a new backend object
git-svn-id: svn://localhost/ardour2/branches/3.0@12652 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-11 12:07:17 +00:00
23350c195d remove craziness of propagating MIDI 7 bit limits into MIDNAM handling by replacing bank_msb/lsb with "bank" ; move responsibility for discovering patch names into MIDI trackview (soon to move again)
git-svn-id: svn://localhost/ardour2/branches/3.0@12647 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-10 16:42:17 +00:00
Carl Hetherington
fa19e1a9d0 When sounding notes on selection / note movements, play the note for as long as the mouse button is held down (#4574).
git-svn-id: svn://localhost/ardour2/branches/3.0@12606 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-08 13:21:05 +00:00
Carl Hetherington
ef213e49a7 Grey-out patch changes on inactive channels rather than not
plotting them at all (part of #4207).


git-svn-id: svn://localhost/ardour2/branches/3.0@12600 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-08 12:17:33 +00:00
0692e766f8 add "v" as a new MIDI editing key for velocity, add velocity dialog, fix crash when quitting with MIDI notes selected
git-svn-id: svn://localhost/ardour2/branches/3.0@12583 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-06 13:17:53 +00:00
1bc662e64e incomplete change to allow all selected MIDI notes to have their velocity set to the same adjusted value (needs more work to find modifiers and/or add a dialog)
git-svn-id: svn://localhost/ardour2/branches/3.0@12581 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-06 12:16:15 +00:00
Carl Hetherington
dcd6dbf14b Persist track MIDNAM settings via a GUI property. Fix a
couple of crashes with the MIDNAM code.


git-svn-id: svn://localhost/ardour2/branches/3.0@12543 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-02 14:53:34 +00:00
Carl Hetherington
2010c0489f Put MIDNAM stuff into the patch change dialog.
git-svn-id: svn://localhost/ardour2/branches/3.0@12539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-02 13:02:01 +00:00
ba418958bf patch from dave flick to tackle a variety of cursor issues
git-svn-id: svn://localhost/ardour2/branches/3.0@12481 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-29 20:29:47 +00:00
Carl Hetherington
5776407b3b Clear selection on starting a MIDI note rubberband
selection drag; always emit SelectionCleared() from
clear_selection_except even if this region's selection
hasn't changed, as we still want to clear the selection
in other regions.  Part of #4669.


git-svn-id: svn://localhost/ardour2/branches/3.0@12473 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-28 21:01:49 +00:00
Carl Hetherington
cc12b6bba5 Emit SelectionCleared() when unique-selecting the first
note in a region, so that other regions clear their
selections.


git-svn-id: svn://localhost/ardour2/branches/3.0@12472 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-28 21:01:43 +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
d8e41bde96 i18n-ization
git-svn-id: svn://localhost/ardour2/branches/3.0@12234 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-09 23:04:02 +00:00
Carl Hetherington
0b0d252acf Remove un-read variable.
git-svn-id: svn://localhost/ardour2/branches/3.0@12121 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-30 01:13:04 +00:00
ec1ef5d6b5 remove the apparently unnecessary "ui_bind()" macro from entire source base
git-svn-id: svn://localhost/ardour2/branches/3.0@12088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-25 12:58:19 +00:00
Carl Hetherington
cc7d4db5fe Fix a few framecnt / framepos type confusions.
git-svn-id: svn://localhost/ardour2/branches/3.0@11975 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-14 22:04:51 +00:00
Carl Hetherington
ba145778cb paste_pos_beats should be source-relative, not region position relative; fixes some misplaced pastes.
git-svn-id: svn://localhost/ardour2/branches/3.0@11646 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-12 00:29:53 +00:00
405feb48aa use trim cursors near end of a MIDI note when in Draw mode (and not in Range mode)
git-svn-id: svn://localhost/ardour2/branches/3.0@11472 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-08 12:55:46 +00:00
b7df66c342 hand-done version of patch from tophatdave to prevent use of trim cursors when objects cannot be trimmed
git-svn-id: svn://localhost/ardour2/branches/3.0@11427 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-02 19:31:47 +00:00
e9a6d86b9b patch for bad region-extension when pasting into a MIDI that doesn't start at zero (from tophatdave) (related to #4664)
git-svn-id: svn://localhost/ardour2/branches/3.0@11420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-02 02:40:47 +00:00
e39e6196c6 start to provide real functionality in MIDI list editor. far from finished, but then, have *you* read the Logic manual?
git-svn-id: svn://localhost/ardour2/branches/3.0@11415 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-01 03:33:42 +00:00
5de9a8f38b make mouse range mode do something interesting when in internal/note edit mode. not entirely finished because the usual modifiers to add/extend the selection don't work correctly. note that this works both on the scroomer (where the modifiers do work correctly) and in the track (where they do not)
git-svn-id: svn://localhost/ardour2/branches/3.0@11273 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-20 02:54:23 +00:00
f758ed0f41 more fixups of various things including cursors when note editing. in particular, don't needlessly reset the cursor during a drag. note insertion with ctrl pressed now only works if in MouseObject mode.
git-svn-id: svn://localhost/ardour2/branches/3.0@11270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-19 22:23:28 +00:00
efab36a85e new mouse mode (Draw (notes)); switch into internal mode when draw is selected; notably improve use of dbl-click to enter and exist internal/note edit mode
git-svn-id: svn://localhost/ardour2/branches/3.0@11269 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-19 15:23:51 +00:00
c43f1d22c8 enter and exit node edit mode with dbl-click in any MIDI region
git-svn-id: svn://localhost/ardour2/branches/3.0@11268 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-19 00:14:58 +00:00
355183f1ab partially revert some of the recent work on tempo to reflect new understanding of the problem. behaviour is now believed to be totally correct but awaiting a bit more testing
git-svn-id: svn://localhost/ardour2/branches/3.0@11171 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 16:39:40 +00:00
ac19bedc3d tweak constants that affect whether/where trimming cursors are shown for MIDI notes, to avoid making it so hard to drag relatively small notes
git-svn-id: svn://localhost/ardour2/branches/3.0@11160 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 20:29:34 +00:00
f61a0d892c fix error in framepos_{plus,minus}_bbt() which miscounted beats while stepping through bars - stops dragged MIDI notes from ending up in the wrong place, and more
git-svn-id: svn://localhost/ardour2/branches/3.0@11159 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 18:48:32 +00:00
b1a33855ce use BBTPoint::is_bar() rather than ::beat == 1 ; implement TempoMap::framepos_plus_{beats,bbt}() with new map structure (not totally finished or accurate yet); prevent crash when dragging a marker to replace the initial tempo/meter markers
git-svn-id: svn://localhost/ardour2/branches/3.0@11154 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 02:49:01 +00:00
Carl Hetherington
42aea0b9fd Clean up comments to create_note_at, since it no longers snaps its length parameter. Move the 1 tick shortening out of the method for the same reason. Make sure that create drags make notes with a minimum length of 1 tick (#4600).
git-svn-id: svn://localhost/ardour2/branches/3.0@11116 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 13:41:16 +00:00
Carl Hetherington
fd48e72fc2 Fix comparison of beats to frames when deciding whether to show a patch change (should fix #4569).
git-svn-id: svn://localhost/ardour2/branches/3.0@11085 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 00:22:26 +00:00
e9b4f14668 rename Timecode::BBT_Time::ticks_per_beat to Timecode::BBT_Time::ticks_per_bar_division which is a more accurate and informative name. The number doesn't describe the smallest division of a "beat" (which is only defined contextually anyway), but rather the smallest division of the the divisions of a bar. If using a meter of 4/8, there are 4 divisions per bar, and we can divide each one into ticks_per_bar_division pieces; in a separate meter (section) of 3/8, there are 3 divisions per bar, each of which can be divided into ticks_per_bar_division_pieces.
git-svn-id: svn://localhost/ardour2/branches/3.0@11022 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-19 19:44:43 +00:00
ca9a444aa9 do not convert from grid-type-beats to frames and back to beats when determining the length of a ghost note or the actual note to be inserted on button-press: just use grid-type-beats as is
git-svn-id: svn://localhost/ardour2/branches/3.0@11021 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-19 18:32:57 +00:00
Carl Hetherington
ab4e7cf472 Move note creation code into a Drag; fix snapping of note
starts when drag-created (part of #4505).


git-svn-id: svn://localhost/ardour2/branches/3.0@10972 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-11 12:54:54 +00:00
Carl Hetherington
1390a1510d Comment.
git-svn-id: svn://localhost/ardour2/branches/3.0@10962 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-10 13:48:41 +00:00
50aee54219 remove visible "sound notes" button,add Config parameter to control this (which then saves the state the user selected), add control to the prefs dialog
git-svn-id: svn://localhost/ardour2/branches/3.0@10934 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-07 14:23:32 +00:00
Carl Hetherington
aecf0e4ae8 Add some missing initialisers; remove pointless _model_name
/ _custom_device_mode initialisers.


git-svn-id: svn://localhost/ardour2/branches/3.0@10881 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-03 13:38:53 +00:00
Carl Hetherington
f817155f20 Fix somewhat unlikely crash on doing add note; start drag to resize note; undo; finish drag to resize note.
git-svn-id: svn://localhost/ardour2/branches/3.0@10880 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-03 03:05:59 +00:00
14d601a0ff revert recent change to Evoral::Event, and use static_cast<> to get from Event to MIDIEvent
git-svn-id: svn://localhost/ardour2/branches/3.0@10870 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-02 20:34:58 +00:00
d537434b6b use new parameter that controls display of MTC and MIDI clock, as well as attempt to do the first step of something vaguely smart with showing them only a very-zoomed-in levels even if requested
git-svn-id: svn://localhost/ardour2/branches/3.0@10865 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-02 19:35:18 +00:00
Carl Hetherington
fecf120f1e Remove ghost notes when actual notes are deleted, and ensure the _optimization_iterator is valid even after things have been removed from the list (should fix #4483).
git-svn-id: svn://localhost/ardour2/branches/3.0@10659 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-17 22:15:50 +00:00
Carl Hetherington
ec90b0ceb0 Use a Drag class for midi note selection, so that it
gets autoscroll (#4474).


git-svn-id: svn://localhost/ardour2/branches/3.0@10650 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-16 20:11:33 +00:00
Carl Hetherington
57d2555d3e Fix typo in last commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@10615 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-15 14:32:54 +00:00
Carl Hetherington
a7fd6e2925 When tabbing between notes in a MIDI region view, only consider those that are being displayed according to the channel selector. Should avoid confusions such as that in #3976.
git-svn-id: svn://localhost/ardour2/branches/3.0@10614 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-15 14:24:14 +00:00
Carl Hetherington
fd2aea1037 Remove non-RT-safe alloc in the MIDI process() call.
git-svn-id: svn://localhost/ardour2/branches/3.0@10441 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-04 17:52:12 +00:00
Carl Hetherington
81808ac866 Fix up some comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@10289 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-22 23:18:59 +00:00
0bc8832e20 Trim include tree.
git-svn-id: svn://localhost/ardour2/branches/3.0@10244 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-19 21:53:09 +00:00
8be2e11c65 Implement range selecting for MIDI notes (#4087).
git-svn-id: svn://localhost/ardour2/branches/3.0@10199 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-07 21:11:19 +00:00
1567d362ad Implement invert selection for MIDI notes (#4087).
git-svn-id: svn://localhost/ardour2/branches/3.0@10198 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-07 20:27:12 +00:00
0938a42440 fixes for 98% of all the warnings/errors reported by OS X gcc on tiger
git-svn-id: svn://localhost/ardour2/branches/3.0@10179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-30 17:55:14 +00:00
Carl Hetherington
29902b5731 Stop MidiRegionView claiming PrimaryModifier-scrollwheel so
that zoom still works when MIDI notes are selected (#4323).


git-svn-id: svn://localhost/ardour2/branches/3.0@10159 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-28 19:23:13 +00:00
Carl Hetherington
5f2ef08666 Clear selected MIDI notes in all regions when they are
cleared in a single one (#4152).


git-svn-id: svn://localhost/ardour2/branches/3.0@10158 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-28 14:07:42 +00:00
Carl Hetherington
7fdc1272b2 Remove erroneous check that would prevent notes being put at
pitch 0 or 127.


git-svn-id: svn://localhost/ardour2/branches/3.0@10154 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-28 12:40:54 +00:00
Carl Hetherington
b85e065069 More debug removal. Also fix ghost note position on non-zero-start regions (#4337).
git-svn-id: svn://localhost/ardour2/branches/3.0@10152 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-28 00:47:37 +00:00
Carl Hetherington
3f8f1b3478 Remove some debug messages.
git-svn-id: svn://localhost/ardour2/branches/3.0@10150 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-28 00:36:23 +00:00
d4433b9ab3 (native) Linux VST support from LinuxDSP
git-svn-id: svn://localhost/ardour2/branches/3.0@10101 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-20 20:29:47 +00:00
Carl Hetherington
174c0d6831 Snap new automation points in AutomationRegionViews (#4297).
git-svn-id: svn://localhost/ardour2/branches/3.0@10059 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-06 23:28:55 +00:00
Carl Hetherington
ad444c0955 Another go at fixing up MIDI note additions with snap
(#4189).


git-svn-id: svn://localhost/ardour2/branches/3.0@10017 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-20 20:02:04 +00:00
Carl Hetherington
efc6b2869f Fix up note snapping so that we snap to the note we're over.
git-svn-id: svn://localhost/ardour2/branches/3.0@10008 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-19 13:40:37 +00:00
45d51d3aee various fixes to MidiRegionView selection handling, key handling, drawing of ghost notes (contains a fix for #4263); shift-drag selections in MidiRegionViews now correctly add to the selection rather than replacing any existing one.
git-svn-id: svn://localhost/ardour2/branches/3.0@10000 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-17 12:46:42 +00:00
f6951c92f0 attempt to fix deep confusion in GUI code about converting between musical and audio time (should have beneficial effects on #4257); change ghost note drawing when in MIDI note draw/add mode so that its start is aligned with the mouse cursor
git-svn-id: svn://localhost/ardour2/branches/3.0@9998 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-16 14:24:41 +00:00
Carl Hetherington
9e6eb3e0c7 Apply x42's patch from #4207; rename MIDI control
preferences to just MIDI.


git-svn-id: svn://localhost/ardour2/branches/3.0@9948 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-03 11:15:01 +00:00
2fb2442dd3 Primary-(scroll|up|down) on patch/bank change event changes bank number; change format of verbose cursor when inside patch/bank change
git-svn-id: svn://localhost/ardour2/branches/3.0@9939 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-27 19:11:39 +00:00
Carl Hetherington
7b8efcc250 Snap ghost note more intuitively (#4189).
git-svn-id: svn://localhost/ardour2/branches/3.0@9885 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-16 21:53:30 +00:00
07b584f312 fix for #3977 - shift-tab and shift-ctrl-tab move to the next/previous note like tab, but leave existing selected note(s) selected
git-svn-id: svn://localhost/ardour2/branches/3.0@9838 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-11 13:17:01 +00:00
Carl Hetherington
deef858857 Fix erroneous note resizing in regions with non-zero start (#4143).
git-svn-id: svn://localhost/ardour2/branches/3.0@9785 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-02 22:13:19 +00:00
Carl Hetherington
cd17e05e3a Fix some set-but-not-used variable warnings from gcc 4.6
git-svn-id: svn://localhost/ardour2/branches/3.0@9783 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-02 17:16:46 +00:00
be614d0538 change default overlapping note strategy to "relax" (i.e. do nothing); fix crash when looping with MIDI data; add back note-off resolution at loop point (if it was actually there) so that notes are turned off (but don't forget Ye Olde Sustain Pedal/Controller) when looping; minor other non-functional tweaks
git-svn-id: svn://localhost/ardour2/branches/3.0@9753 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-21 21:29:22 +00:00
cab3072f83 add MIDI channel editing for current note selection, bound to "c" by default
git-svn-id: svn://localhost/ardour2/branches/3.0@9718 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-13 14:48:48 +00:00
a82b900e44 implement a delete operation that works like "cut" but doesn't put the deleted items in the cut buffer. you will not be able to access this from your keyboard (Delete keyunless you remove your existing ~/.config/ardour3/ardour.bindings file
git-svn-id: svn://localhost/ardour2/branches/3.0@9711 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-12 15:50:47 +00:00
c43c219c2e Fix some weird style
git-svn-id: svn://localhost/ardour2/branches/3.0@9668 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-02 03:17:53 +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
d4d5b30aeb remove unused and useless "src" argument for a number of Region property modifying methods
git-svn-id: svn://localhost/ardour2/branches/3.0@9632 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-30 13:54:44 +00:00
Carl Hetherington
135e064fbb Flip MIDI region view's verbose canvas cursor to above the mouse pointer if it is near the bottom of the canvas (#3842).
git-svn-id: svn://localhost/ardour2/branches/3.0@9603 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-26 17:57:21 +00:00
Carl Hetherington
711db34a81 Remove MIDI track default channel and its menu, and choose the channel for new notes using MidiTimeAxisView::get_channel_for_add() (fixes #3998 and #3865).
git-svn-id: svn://localhost/ardour2/branches/3.0@9585 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-25 15:19:47 +00:00
74fa33486c Fix broken indentation.
git-svn-id: svn://localhost/ardour2/branches/3.0@9558 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-19 21:11:21 +00:00
Carl Hetherington
988348185e Separate verbose cursor out into its own class and clean up the API. Fixes #4010.
git-svn-id: svn://localhost/ardour2/branches/3.0@9455 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-02 13:38:16 +00:00
Carl Hetherington
8fc896a24d Clean up duplicate snap-related code.
git-svn-id: svn://localhost/ardour2/branches/3.0@9397 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-20 23:48:49 +00:00
Carl Hetherington
e90e1cc771 Prevent snap_frame_to_frame returning -ve offset from the region start (fixes #3925).
git-svn-id: svn://localhost/ardour2/branches/3.0@9396 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-20 23:48:39 +00:00
c3f458816f show MIDI channel for notes with verbose canvas cursor (#3883)
git-svn-id: svn://localhost/ardour2/branches/3.0@9390 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-20 02:47:45 +00:00
0906b39918 Fix my name :)
git-svn-id: svn://localhost/ardour2/branches/3.0@9302 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-06 15:00:16 +00:00
1052bc39bf remove message about MidiRegionView::redisplay_model() being called without a model - its OK and this message is distracting
git-svn-id: svn://localhost/ardour2/branches/3.0@9280 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-04 16:38:53 +00:00
f649d775bc prevent trim cursors appearing, and prevent note trimming, when in a MIDI note that is too small on-screen. avoids silliness with trim cursors appearing while drawing small notes on screen, though really, it would nice to avoid them appearing ever in a note that was just added. not sure how to do that.
git-svn-id: svn://localhost/ardour2/branches/3.0@9077 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-05 23:00:49 +00:00
89d6f40e33 forward unhandled button events from MidiRegionView back to Editor
git-svn-id: svn://localhost/ardour2/branches/3.0@9068 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-04 15:16:21 +00:00
Carl Hetherington
91768171d8 Restore MIDI note preview (#3821).
git-svn-id: svn://localhost/ardour2/branches/3.0@9066 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-04 13:22:32 +00:00
Carl Hetherington
b15e1cba3b Small cleanup.
git-svn-id: svn://localhost/ardour2/branches/3.0@9061 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-04 00:35:47 +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
1ba667a0c1 change note-edit-mode alpha of MIDI region view frame to 64, not zero
git-svn-id: svn://localhost/ardour2/branches/3.0@9055 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-03 17:57:37 +00:00
2c72f58aa1 experiment with making MIDI region boxes vanish when in note/internal edit mode ... to be continued
git-svn-id: svn://localhost/ardour2/branches/3.0@9054 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-03 14:51:02 +00:00
Carl Hetherington
f14b079a9a Fix up undo/redo of MIDI note paste (#3815).
git-svn-id: svn://localhost/ardour2/branches/3.0@9033 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-02 16:18:59 +00:00
Carl Hetherington
c75b17e3ba Update ghost MIDI regions in automation tracks when zoom changes. Fixes #3803.
git-svn-id: svn://localhost/ardour2/branches/3.0@8985 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-28 04:00:38 +00:00
Carl Hetherington
5c2c0b3f75 Make sure notes fit in the allocated height of a newly-created ghost region.
git-svn-id: svn://localhost/ardour2/branches/3.0@8983 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-28 03:59:41 +00:00
2c124b6587 some cut-n-paste debugging stuff (more likely to follow)
git-svn-id: svn://localhost/ardour2/branches/3.0@8914 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-21 01:52:15 +00:00
ce9470272c remove irrelevant comment
git-svn-id: svn://localhost/ardour2/branches/3.0@8801 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-09 14:04:31 +00:00
Carl Hetherington
87fdfecf74 Change the background colour of regions when they are small enough to not show the name bar (#3575).
git-svn-id: svn://localhost/ardour2/branches/3.0@8771 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-08 14:09:42 +00:00
Carl Hetherington
ce91b0953b Remove always-true should_show_selection code.
git-svn-id: svn://localhost/ardour2/branches/3.0@8769 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-08 14:08:05 +00:00
Carl Hetherington
f784343e07 Show bank number as well as program change in patch flags (remainder of #3625).
git-svn-id: svn://localhost/ardour2/branches/3.0@8621 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-30 13:06:09 +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
d16bb0b8bc rest of lincoln's MIDI note edit via click outside of MIDI edit mode patch
git-svn-id: svn://localhost/ardour2/branches/3.0@8366 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-29 16:34:51 +00:00
Carl Hetherington
f8ebb4582d Unify program change and bank handling so that they are manipulated together.
git-svn-id: svn://localhost/ardour2/branches/3.0@8346 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-28 18:19:40 +00:00
Carl Hetherington
fd0c45ec97 Use the channel selector to decide which channel to add program changes to.
git-svn-id: svn://localhost/ardour2/branches/3.0@8343 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-26 16:19:32 +00:00
Carl Hetherington
818f2cffd7 Add menu option to insert program changes.
git-svn-id: svn://localhost/ardour2/branches/3.0@8330 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-22 23:45:04 +00:00
Carl Hetherington
3ec58e478c Allow deletion of program changes in the same way as notes.
git-svn-id: svn://localhost/ardour2/branches/3.0@8304 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-20 13:30:31 +00:00
Carl Hetherington
570ed69d2a Allow dragging of program change flags in MIDI regions.
git-svn-id: svn://localhost/ardour2/branches/3.0@8303 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-20 03:42:59 +00:00
df5e700f90 fix some more incorrect casts to CanvasNote rather than CanvasNoteEvent (fixes crashes when a track is in perc mode
git-svn-id: svn://localhost/ardour2/branches/3.0@8273 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-14 20:01:18 +00:00
Carl Hetherington
5c23faaa0d Allow trim of midi regions to before the start of the source (better, this time). Fixes #3156.
git-svn-id: svn://localhost/ardour2/branches/3.0@8229 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-09 21:34:46 +00:00
Carl Hetherington
56554af08f Revert previous ill-thought-out patch.
git-svn-id: svn://localhost/ardour2/branches/3.0@8213 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07 19:55:43 +00:00
Carl Hetherington
f3fc6195bc Allow trim of midi regions to before the start of the source. Fixes #3156.
git-svn-id: svn://localhost/ardour2/branches/3.0@8212 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07 19:16:23 +00:00
Carl Hetherington
6df5d5d87a Tweak some naming slightly.
git-svn-id: svn://localhost/ardour2/branches/3.0@8210 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07 17:16:59 +00:00
Carl Hetherington
e131fd391d Put MIDI notes into their own canvas group, and reparent this group during start trims to stop the notes moving. Improves the visual display on start trim of a MIDI region.
git-svn-id: svn://localhost/ardour2/branches/3.0@8080 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-24 01:04:53 +00:00
Carl Hetherington
d2c530bc9e Create snapped drag-created MIDI notes 1 frame shorter than the ending grid line to prevent confusion such as in #3557.
git-svn-id: svn://localhost/ardour2/branches/3.0@8077 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-23 21:56:57 +00:00
Carl Hetherington
eaa939b7c4 Fix warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@8069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-22 18:24:08 +00:00
Carl Hetherington
03d2864820 Update ghost note presence when mouse mode is changed. Fixes #3559.
git-svn-id: svn://localhost/ardour2/branches/3.0@8066 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-21 23:54:57 +00:00
Carl Hetherington
8fc660e76e Move mouse cursor stuff out of Editor into its own class.
git-svn-id: svn://localhost/ardour2/branches/3.0@8048 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-16 14:53:16 +00:00
Carl Hetherington
a46af0460b Create a new layer if required on record to a track in stacked mode. Fixes #3391.
git-svn-id: svn://localhost/ardour2/branches/3.0@8026 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-14 15:01:53 +00:00
b85b4d9e54 make ardour3 build and link on OS X (tiger, at least)
git-svn-id: svn://localhost/ardour2/branches/3.0@8018 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-13 05:14:48 +00:00
Carl Hetherington
471ca9b1f5 Slightly clean up and fix unwanted display of percussive notes outside the note range. Should fix #3500.
git-svn-id: svn://localhost/ardour2/branches/3.0@7904 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-18 19:59:41 +00:00
Carl Hetherington
bf0356f39c Fix uninitialised variables.
git-svn-id: svn://localhost/ardour2/branches/3.0@7892 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-10 11:35:16 +00:00