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
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
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
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
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
ba0458cf1f
Update recorded MIDI regions as notes arrive. Fixes one cause of infinite note-lengths during record. Fix various problems with multiple captures of MIDI during one pass.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7887 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-08 14:54:16 +00:00
Carl Hetherington
2d08273987
Remove some unused code.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7876 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-05 14:55:08 +00:00
ded4a143db
much craziness with canvas cursors; fix 0 beat cursor text when shortening notes; fix crash when trimming locked regions; don't show trim cursors when region is locked; partial version of enumwriter validation fix from 2.X (less necessary with 3.0; probably more ...
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7831 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-22 15:21:06 +00:00
90e73a3a6d
(1) remove almost-never used block/unlock_property_changes() methods from PBD::Stateful (2) hide used and path columns from region list (3) detect mouse position within MIDI notes and thus allow move or trim from the same mouse mode (object or trim; first & last 1/4 of each note is for trimming
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7823 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-21 15:15:06 +00:00
2c80ff4129
lincoln's patch that makes us pay attention to region copies w.r.t the region list, PLUS make region list insert drags work again by not insisting that the list of regionviews be non-empty as the drag is constructed PLUS the start of tracking mouse cursor position in MIDI notes PLUS a bit of leftover debugging info
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7817 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-21 03:02:30 +00:00
9a8cd09b19
fix errors in midi note drag preview ( #3446 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7793 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17 20:32:18 +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
084dda86a7
when there is a chord at the beginning of a note selection, play the whole chord during drags, not just the first note. seems to be able to send a bank swap message - probably an existingbug
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7784 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-15 18:54:04 +00:00
7eea9fac9d
cleaner version of previous commit
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7783 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-15 16:54:17 +00:00
5f948f6961
(optionally) play note(s) as they are moved around on the pitch axis (finishes #3446 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7782 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-15 16:16:37 +00:00
Carl Hetherington
611c33e680
Snap to note start rather than mouse pointer when dragging MIDI notes. Fixes #3187 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-19 22:01:10 +00:00
Carl Hetherington
439d13535e
Add note edit dialog. Fixes #3346 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7625 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-14 02:00:50 +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
1b42936caa
make step edit cursor follow zoom (and change its color a bit)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7601 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-11 20:16:39 +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
ece5093234
change Control::{set,get}_float to Control::{set,get}_double and make almost all Control-related stuff use double rather than random mixtures of float, double and some integer value ; make hans' program change stuff work quite a bit better (not finished yet) including keyboard edting of pgm change values
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7514 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-27 14:09:16 +00:00
0bbc9144cc
(1) extend region if needed BEFORE adding step-edit note, so that the new note ends up in the selection (2) hide the channel selector that shows up on note-right-click after its clicked anywhere, not just if the note(s) channel(s) are changed
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7492 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-25 21:19:55 +00:00
Carl Hetherington
bf7023bc7f
Disable midi model updates during trim drags. Speeds the drags up at the cost of not updating notes in real-time. Fixes #3162 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7315 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-28 18:43:40 +00:00
806a22fefe
change note colors on the fly, to permit user-definition of colors more easily; remove some debug output
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7301 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-24 19:46:28 +00:00
Carl Hetherington
c4e6b368ae
When creating notes with the pencil tool, make them 1 frame shorter than the grid subdivision to prevent overlaps. Fixes #3237 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7281 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-20 21:24:48 +00:00
fddb377812
introduce the notion that note additions and property changes can cause the removal of other notes because of overlaps; merge Diff and Delta commands in MidiModel; fix marshalling of notes to avoid float->int conversion of length+time properties; initial implementation (not tested much so far) of different policies for how to handle note overlaps
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7254 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-12 13:55:22 +00:00
Carl Hetherington
8f263c239a
Clean up a bit. Fix non-relative note dragging mode to fit my understanding of its correct behaviour. Fixes #3189 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7246 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-08 23:45:58 +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
8689ae88f7
refactor MidiRegionView event handling to avoid too much spaghetti as we move along
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7182 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-27 15:07:15 +00:00
Carl Hetherington
696837ec7a
Show the verbose canvas cursor with the ghost note.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7165 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-26 11:54:49 +00:00
Carl Hetherington
f7bff95fbc
Rudimentary ghost note when adding MIDI notes to a region, as per #3180 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7162 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-25 23:14:41 +00:00
Carl Hetherington
ee61c5c9ea
Implement shift-right-click to delete MIDI note ( #3170 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-25 01:39:45 +00:00
Carl Hetherington
bd2cbe9e76
Ensure a create note drag rectangle starts with both ends snapped,
...
otherwise it is possible to drag a note with a size large enough to
be considered valid and smaller than half the grid distance. These
get snapped to zero length and thus appear infinitely long in the view.
A second try at fixing #3159 .
git-svn-id: svn://localhost/ardour2/branches/3.0@7151 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-25 00:00:11 +00:00
d443688c92
(1) make quantize actually use the main grid setting and not just default to beats (2) apply quantize to all notes if none are selected
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7126 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-20 15:06:30 +00:00
Carl Hetherington
54edd7b466
When inserting new notes with the pencil tool, make them the length of the grid subvidision. Bug #3132 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7109 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-16 23:43:14 +00:00
37a34bb8b0
use a static per-class signal to notify the selection object in each MidiRegionView when note items are deleted. fixes crash on cut/undo/reselect and related operations
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7092 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-10 16:05:24 +00:00
fa701b8c06
change PropertyChange from a bitfield into a real object, with all the many widespread changes that causes
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6701 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-19 18:09:08 +00:00
ce7a5e1c9f
the Properties & 64bit region commit
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6695 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-18 13:59:49 +00:00
Carl Hetherington
3c00a7ca2a
Move ARDOUR::Change into PBD so that Stateful can be aware of
...
what Change a State reflects. Hence allow Stateful to do some
of the work of set/get_state in Region.
git-svn-id: svn://localhost/ardour2/branches/3.0@6671 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-10 01:38:20 +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
51aec9a331
get the MIDI list editor working a little better and a little more
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6453 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-05 03:52:30 +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
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
cb8407d26f
Use set over vector for Sequence::Notes, for logarithmic search by time.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5798 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 15:23:42 +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
aefcce1c99
ogg/flac support bits and pieces; fix up MIDI note dragging and front-edge trims; BROKEN IN PERCUSSIVE MODE FOR NOW
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5745 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-06 22:07:10 +00:00
2ff1cd99af
do not crash when loading old history files with MIDI edits; add all notes in region to canvas, but pay attention to visibility
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5652 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-10 21:19:01 +00:00
7b8adc78b6
more MIDI editing cleanups, mostly fixing subtleties. Will break loading the history file for older sessions with MIDI editing present - we warned you :)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5651 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-10 20:41:08 +00:00
5f319d0a08
re-use canvas note items when the model changes ; slightly more efficient (probably) and avoids invalidating references to said items in, for example, ResizeData in a copied region
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5650 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-09 16:46:18 +00:00
5328a114c9
time line items now have 64 bit location + duration; start making note resize apply across regions
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5642 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-09 02:09:04 +00:00
1bf79fa885
move note drag & note resize mouse handling up into the Drag/Editor infrastructure/level
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5641 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-08 21:45:44 +00:00
539c8361de
use diff commands for quantize, with infrastructure changes as required
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5639 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-07 16:53:53 +00:00
79dc191d6b
add anonymous union to DiffCommand to allow uint8t_t and time-based arguments; use DiffCommand for note trimming
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5638 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-07 13:38:06 +00:00
837bfc9af4
the start (only the start) of MIDI diff commands
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5637 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-06 18:11:55 +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
e7e071db1a
more MIDI editing tweaks ; flip mouse mode buttons around for MIDI so that "object" mode is the most likely mode for both region \& region editing ; frame handle events (from lincoln's region trimming patch) are now handled more explicitly
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5600 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-28 16:06:08 +00:00
3845af6ce9
lots of MIDI editing stuff. to be explained on the website when its done
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5596 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-27 03:09:30 +00:00
b116282bbb
make shift-click for extend-selection sort-of work for MIDI
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5541 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-18 02:37:57 +00:00
3162ffb4f4
move assignments out of assert() in editor_drag (thanks lincoln); change mouse mode buttons when in internal/MIDI mode; arrow key control of note velocity, value and position - hey look ma, MIDI editing!
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-17 15:58:47 +00:00
e3ac55f7b1
fix up display of notes when creating/editing a MIDI region with the pencil; fix position of paste for regions that are not at frame zero
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5527 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-14 03:00:41 +00:00
e57c4d4c43
more MIDI paste improvements, plus move region-mute binding to PRIMARY-m and use "m" for toggle-internal-editing
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5525 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-13 19:48:10 +00:00
0178875021
MIDI cut&paste round two (not done yet); a small region trim fix from lincoln s.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5517 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-13 01:57:03 +00:00
0bf3eb7759
first part of MIDI cut/copy/paste ; fix for input/output_streams of an IOProcessor being reported in a misleading way; in/out translation fix from 2.X, sort of
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5510 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-10 19:29:29 +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
0874426a5b
Further refactoring of drag code. Changes so that drags from the region list display a region view during the drag.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5127 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-08 19:28:51 +00:00
006d3a9f46
Fix note dragging.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5049 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-05 00:57:08 +00:00
6c93b8c44f
Remove useless/broken concept of 'erase touch dragging'.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5048 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-05 00:18:21 +00:00
7863c03cfc
Make MIDI note editing work somewhat again...
...
Only show note velocity text when the user is actually editing velocity.
git-svn-id: svn://localhost/ardour2/branches/3.0@5047 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-05 00:08:30 +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
b857756f60
Remove unnecessary/unused template parameter from canvas sysex flags.
...
Add license headers to canvas sysex files (tsk, tsk).
git-svn-id: svn://localhost/ardour2/branches/3.0@4610 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-17 02:19:16 +00:00
Hans Baier
80e3845982
* First prototype of SysEx GUI
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4604 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 09:51:40 +00:00
31a6e0b254
Fix time / positioning of PC flags (beat time).
...
Fix needless string copying in flag stuff.
Clean up.
git-svn-id: svn://localhost/ardour2/branches/3.0@4601 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 05:54:12 +00:00
166395c96b
Fix genererally retarded and broken note range / diskstream display / etc. related things (correctly display region contents on initial session load).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4583 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 19:44:27 +00:00
ecaf107ed3
The Big Change: Store time in MidiModel as tempo time, not frame time.
...
The time stamp of an event is now always tempo, from file to model and
back again. Frame time is only relevant at playback or recording time,
in the audio thread (MidiModel and MidiBuffer).
I think perhaps we don't need to change the actual time from double (which is
convenient for math), it is the time base conversion that caused problems.
Using a correct equality comparison (i.e. not == which is not correct for
floating point) should probably make the undo issues go away, in 99.99% of
cases anyway.
There's almost certainly some regressions in here somewhere, but they do not
seem to be time related. The bugs I'm hitting in testing are old ones that
seem unrelated now, so it's checkpoint time.
This sets us up for fancy things like tempo map import and tempo/meter changes
halfway through MIDI regions, but for now it's still assumed that the tempo
at the start of the region is valid for the duration of the entire region.
git-svn-id: svn://localhost/ardour2/branches/3.0@4582 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 17:30:42 +00:00
166ef64e3d
Make (MIDI) event time stamp type a template parameter.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4473 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-02 02:36:05 +00:00
Hans Baier
41716e8faa
* comments
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4405 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-14 09:36:56 +00:00
3f662b9f9d
Fix audible note select:
...
- Don't play note a bajillion times when touch selecting
- Don't spawn a thread for each note off (schedule an idle handler instead)
- Play notes when rect selecting
git-svn-id: svn://localhost/ardour2/branches/3.0@4392 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-07 02:40:13 +00:00
Hans Baier
be75d43bd0
* first prototype implementation of playing back MIDI notes when selected
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4348 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-25 23:08:57 +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
2a20673883
Fix note velocity editing.
...
Don't abuse/leak selection when editing velocity (fix editing velocity of a single note actually editing velocity of every note who's velocity had previously been edited).
Properly preserve selection for MIDI operations in general.
Less crap method of delineating scroll events to canvas items (no exhaustive type cases needed in editor_canvas_events.cc).
Fix silly comment style in midi_region_view.h (hans: please note this and follow in the future).
git-svn-id: svn://localhost/ardour2/branches/3.0@4343 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-23 21:05:50 +00:00
Hans Baier
e9a9fe30cf
* added comments to midi_region_view.h
...
* implemented choosing patches with context menu on the program change flag
* added convenience method and a little refactoring in midi_patch_manager.h
Conflicts:
.cproject
build-tmp.sh
git-svn-id: svn://localhost/ardour2/branches/3.0@4338 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-23 06:03:45 +00:00
Hans Baier
5e7ae490c1
* first working prototype of changing program changes by scroll wheel (still some automation points issues)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4324 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-15 11:05:41 +00:00
Hans Baier
bf7e792e3e
* some refactoring of patch name stuff in preparation for altering program changes events
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4323 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-14 22:56:44 +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
abf64beac6
Fix audio region copy-drag, partially fix MIDI region copy-drag (thanks torbenh).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@3809 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-26 17:18:22 +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
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
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