13
0
Commit Graph

228 Commits

Author SHA1 Message Date
Carl Hetherington
c6247be4d6 Hide verbose canvas cursor on midi region view destruction. Should fix #3250.
git-svn-id: svn://localhost/ardour2/branches/3.0@7317 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-28 21:03:12 +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
db55b149eb change the way MIDI note colors are defined (2 3-point color ranges, one for selected, one for unselected); change default scroll action on selected midi notes to "fine" adjustment rather than "coarse" (now alt-scroll)
git-svn-id: svn://localhost/ardour2/branches/3.0@7302 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-24 21:22:00 +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
0f5bdd666f use JACK thread creation functions to create process-graph threads; provide GUI control over number of threads-relative-to-number-of-CPUS
git-svn-id: svn://localhost/ardour2/branches/3.0@7296 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-24 14:13:45 +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
1ee298a235 new fade in/out handle cursors from chrisg (maybe to be improved); show MIDI note velocities; try to show note length while dragging notes (in progress); some debugging output
git-svn-id: svn://localhost/ardour2/branches/3.0@7271 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-17 22:09:07 +00:00
fe85a922ec new trim cursors from chrisg, fix up hotspots for said cursors, make Editor cursors public; note draw mode now trims existing notes (but without trim cursor :(
git-svn-id: svn://localhost/ardour2/branches/3.0@7270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-17 15:06:30 +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
07500f2250 Fix warning.
git-svn-id: svn://localhost/ardour2/branches/3.0@7251 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-09 22:37:31 +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
ce78296f96 move computation of TimeAxisViewItem fixed heights into a static member function and call early in process life, because we need the values in MidiStreamview - fixes a bug with notes not aligning with note lines in a new session
git-svn-id: svn://localhost/ardour2/branches/3.0@7220 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-03 15:57:31 +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
8932625869 change color of note velocity text (and don't set it or justification repeatedly); make pianoroll button2 clicks select correctly rather than always being additive; hide note velocity text as soon as the mouse moves. the color change will require remvoing ~/.config/ardour2/ardour3_ui.conf to become effective
git-svn-id: svn://localhost/ardour2/branches/3.0@7187 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-28 17:39:28 +00:00
3e966771d0 clean up item event handling in MidiRegionViews by removing unnecessary InteractiveItem inheritance, and keep child->parent event handling order consistent as much as possible
git-svn-id: svn://localhost/ardour2/branches/3.0@7186 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-28 16:37:04 +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
d47161b9ee Use bbt_add and bbt_subtract to do proper BBT maths in round_to_beat_subdivision.
git-svn-id: svn://localhost/ardour2/branches/3.0@7172 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-27 00:26:32 +00:00
Carl Hetherington
61a4655551 Disable ghost note on note creation drag.
git-svn-id: svn://localhost/ardour2/branches/3.0@7168 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-26 19:08:49 +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
97721226a4 stop range mode stuff from showing up when in internal edit mode
git-svn-id: svn://localhost/ardour2/branches/3.0@7154 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-25 01:13: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
Carl Hetherington
a4664d68c0 Prevent note creation drags with no movement of the pointer. May fix #3159.
git-svn-id: svn://localhost/ardour2/branches/3.0@7146 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-24 14:45:10 +00:00
a196405da9 various minor MIDI fixes: prevent duplicate note entry with mouse, show note info more often with verbose cursor, fix some crashes from click+move on notes ... lots more where this comes from
git-svn-id: svn://localhost/ardour2/branches/3.0@7128 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-20 22:38:12 +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
ec01a25ec1 add 8 more beat subdivisions, as per #3126
git-svn-id: svn://localhost/ardour2/branches/3.0@7099 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-13 18:51:59 +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
Carl Hetherington
061a85191c Move Diskstream ownership to Track, so that Session no longer holds lists of Diskstreams. Breaks 3.0 file format again.
git-svn-id: svn://localhost/ardour2/branches/3.0@6945 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-21 20:42:22 +00:00
14b0ca31bc handle deletion of UI objects between the time that a callback is queued with the UI event loop and the execution of the callback (intrusive, big)
git-svn-id: svn://localhost/ardour2/branches/3.0@6807 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-30 15:18:43 +00:00
316fca72db lots of work to hide prelight from most buttons, etc. etc. etc; increase range of solo boost knob; theme RC files changes need propagating to the light theme, sigh
git-svn-id: svn://localhost/ardour2/branches/3.0@6799 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-26 21:24:17 +00:00
17088ee3ea (1) remove most uses of MementoCommand for Playlist and Region (2) move frozen state from Region into Stateful, renamed "suspend property changes" (3) successive changes to a Property (scalar) after clear_history() do not keep resetting the old value (fixes region trim)
git-svn-id: svn://localhost/ardour2/branches/3.0@6720 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-02 18:05:26 +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
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
b6f4cdaea2 rationalize destruction pathway (some more); tidy-ify some ImageFrame code
git-svn-id: svn://localhost/ardour2/branches/3.0@6398 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-25 21:06:52 +00:00
c83389b8ec cleanup up cleanup at session destruction; clarify the meaning of 3 signals (DropReferences & Destroyed in libardour ; CatchDeletion in the GTK UI); clarify ownership of objects (session no longer pays attention to DropReferences for objects that it is considered to own, such as routes, sources, etc); fix up MIDI parsing and a couple of other places by correcting syntax for return of values from a boost::signals2::signal (possible danger elsewhere to be checked)
git-svn-id: svn://localhost/ardour2/branches/3.0@6389 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 20:21:43 +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
aae367b63c use new syntax for connecting to backend signals that enforces explicit connection scope, plus a few other related matters
git-svn-id: svn://localhost/ardour2/branches/3.0@6376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-19 20:26:31 +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
8687895abb remove using namespace sigc everywhere to ensure clarity over which bind/mem_fun is being used; make Config::map_parameters take a boost::function rather than a sigc::slot ; continue debugging crash caused by regionviews not tracking their Region's lifetime
git-svn-id: svn://localhost/ardour2/branches/3.0@6357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-12 15:02:15 +00:00
64dc5427e4 make all use of bind/mem_fun be explicitly sigc::
git-svn-id: svn://localhost/ardour2/branches/3.0@6354 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 23:29:48 +00:00
7703f0a76a move generic parts of Keyboard into gtkmm2ext. imperfectly done, but makes modifiers available in libgtkmm2ext now
git-svn-id: svn://localhost/ardour2/branches/3.0@6288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 22:51:32 +00:00
c83e48e07a Trim session.h include dependency tree.
git-svn-id: svn://localhost/ardour2/branches/3.0@5979 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-30 15:30:22 +00:00
0cc0c13444 provide accessors to Editor::snap_{type,mode} ; when nudging notes, use grid in preference to nudge clock
git-svn-id: svn://localhost/ardour2/branches/3.0@5934 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-26 23:43:04 +00:00
b61e7ad5de Disable canvas verbose cursor for notes, which locks up on note adding sometimes.
The backtrace ain't pretty :/


git-svn-id: svn://localhost/ardour2/branches/3.0@5871 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 21:54:00 +00:00
d98c8e8fa4 Replace horribly error-prone Sequence/MidiModel/MidiSource locking API with scoped locks that automatically Do The Right Thing.
Make Sequence::read_lock const correct in the process (a read lock can be taken out on a const Sequence, but not a write lock).


git-svn-id: svn://localhost/ardour2/branches/3.0@5857 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 16:15:36 +00:00
214a31bb98 Fix various MIDI control and installation issues:
* Install ardour3_ui_default.conf to system config dir

 * Set -DDATA_DIR etc. defines to proper absolute paths

 * Set default MIDI control port name to "control"
   (it was "control" some places, "default" other, so the generic MIDI
   control surface didn't work.  The real problem here is probably that
   the name is hardcoded in the surface code, ick)

 * Install surfaces to correct system directory

 * Generate and install ardour_system.rc

User POV:

 * Installed versions not run from the source directory discover configuration
   files and surfaces, and generally work

 * Building and/or starting a fresh copy of ardour3 with no pre-existing
   configuration will run an ardour with a single MIDI "control" port, which
   you can plug a surface into and control MMC and controllers and such
   (after turning on the generic MIDI surface, which IMO should be loaded
    by default anyway, especially since it's no longer in a menu)


git-svn-id: svn://localhost/ardour2/branches/3.0@5833 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 23:43:19 +00:00