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