Commit graph

15015 commits

Author SHA1 Message Date
Paul Davis
d7ca81cced remove debug output 2014-12-07 13:44:00 -05:00
Paul Davis
8ada45344e fix default gtk background color 2014-12-07 13:43:40 -05:00
Paul Davis
700edbdf39 big strides in color management 2014-12-07 13:12:48 -05:00
Paul Davis
8f4ab08e20 revert UIConfiguration back to a normal member of ARDOUR_UI 2014-12-07 13:12:48 -05:00
Paul Davis
d586289be5 first mostly-working build supporting GTK rethemeing via the Theme Manager 2014-12-07 13:12:48 -05:00
John Emmas
01747cc5f7 Add a newly introduced header file to our MSVC project (gtk2_ardour) 2014-12-07 13:32:50 +00:00
John Emmas
a81a79adce Add some newly introduced source files to our MSVC project (libardour) 2014-12-07 13:31:41 +00:00
David Robillard
1b99e298e2 Make draw tool add points to track automation. 2014-12-07 00:26:00 -05:00
David Robillard
bfbb0f6178 Add legatize and remove overlap MIDI operations.
We're going to need the ability to apply MIDI edit operations to a note/control
selection soon...
2014-12-06 23:42:11 -05:00
David Robillard
f4a30e1f60 Support keyboard shift-click to select many notes.
Also support selecting with button 1 if shift is held, more discoverable.
2014-12-06 22:43:06 -05:00
David Robillard
39da38dd6e Nudge notes by 1 bar if secondary modifier active.
Similar to how transpose moves an octave if the same modifier is active.
2014-12-06 22:43:06 -05:00
David Robillard
e1e2b919c3 Remove unnecessary includes. 2014-12-06 22:43:06 -05:00
David Robillard
60a045271e Allow creation of MIDI control points object tool. 2014-12-06 22:43:06 -05:00
David Robillard
16d60ef2f7 Grab keyboard only with note selection.
When entered, the keyboard is grabbed when the selection becomes non-empty, and
ungrabbed if it becomes empty again or the region is left or the user switches
out of internal mode.

This fixes scroll in internal mode and note moving with arrow keys.  Also frees
up useful keybindings when there is no note selection, which is much nicer than
the "nothing works in edit mode at all" greedy grab approach used previously.

Attempt #874327892 of getting this damned grabbing right.
2014-12-06 22:43:06 -05:00
David Robillard
89be7ae58c Fix crash on quit when in a non-route time axis. 2014-12-06 22:43:06 -05:00
David Robillard
eb86971d2d Invalidate iterator whenever model changes.
I suspect this is an underlying cause of several tricky to reproduce bugs, but
we'll have to wait around and see...
2014-12-06 22:43:06 -05:00
David Robillard
2ea4ae603a Fix crash on shift+rclick of region to remove.
This doesn't seem to have been touched for years, and I don't see how such an
obvious bug could possibly have been around for so long, but, well, this fixes
it as far as I can tell.
2014-12-06 22:43:06 -05:00
David Robillard
09bd88c9df Fix crash when resizing a track quickly.
Triggered by resize drag an automation track very quickly upwards to shrink it
to the minimum.  Caused by unsigned integer underflow.
2014-12-06 22:43:06 -05:00
Robin Gareus
6f7ee67c71 midnam test: don't clutter up output. 2014-12-06 23:51:45 +01:00
David Robillard
9f5023175f Fix crash when showing MIDI regions we shouldn't.
I am not sure what causes this, but it can happen when finishing a record
sometimes.  Probably MidiSource::_writing isn't updated in the right order with
whatever triggers the redisplay, but at least not crashing is better...
2014-12-06 16:46:00 -05:00
David Robillard
60f4f5b9d8 Fix inappropriately massive flag font. 2014-12-06 16:07:32 -05:00
David Robillard
8339850e14 Fix patch flag scroll theft when in normal mode. 2014-12-06 16:05:47 -05:00
David Robillard
f9c74319a2 Fix seek in linearly interpolated control lists. 2014-12-06 15:44:10 -05:00
David Robillard
4650912ae3 Adapt range when copying between automation types.
For things like copying from pitch bender to a CC.

Also things like fader to pan, but that seems a bit funny.  The conversion
probably needs to be a bit smarter here, perhaps taking the normal into
consideration...
2014-12-06 13:40:35 -05:00
John Emmas
96a9292a40 Restore an accidentally deleted #include 2014-12-06 17:50:36 +00:00
David Robillard
63082821d8 Support paste between automation lanes.
Also push the increasingly unwieldly paste parameters into a context object.

As with othe things, currently it is only possible to do "cross-type paste" by
explicitly selecting the target track.  We will need to get automation region
view selection working to do better here, but at least for now it's possible to
get the data over.
2014-12-06 12:20:52 -05:00
David Robillard
db1fc6c3fa Fix wacky return type. 2014-12-06 12:19:52 -05:00
David Robillard
82be2325d9 Fix uninitialized members. 2014-12-06 12:06:48 -05:00
David Robillard
ddb7cc6d66 More potential SMF crash fixes. 2014-12-06 11:19:48 -05:00
David Robillard
2e92ae90a6 Possible half-fix for SMF crash. 2014-12-06 10:37:08 -05:00
David Robillard
2a28345bab Use source-relative time converter directly. 2014-12-06 10:27:18 -05:00
David Robillard
34fcf22476 Fix internal paste when selection has only points. 2014-12-06 10:26:25 -05:00
John Emmas
d30df2a991 Add a newly introduced header file to our MSVC project (gtk2_ardour) 2014-12-06 11:02:37 +00:00
Robin Gareus
38a874ecb8 fix/amend pre commit 2014-12-06 08:24:21 +01:00
Robin Gareus
12a4ddc952 fix another ambiguity, this time: WINAPI Rectangle 2014-12-06 07:40:17 +01:00
Robin Gareus
d223e2ed57 fix ambiguous reference.
OSX CoreServices typedef's struct Rect
2014-12-06 05:52:31 +01:00
Robin Gareus
df92e33cc5 fix typo in wscript 2014-12-06 02:42:14 +01:00
David Robillard
a65cd2a1b9 Make scroll work on MIDI regions when internal.
For some reason, grabbing the magic keyboard focus makes scroll stop working
regardless of what MRV::canvas_group_event() returns.  I can't figure out any
reason to grab the keyboard in this case anyway, so I just removed it.

Also simlify MRV event handling code in general.
2014-12-05 17:36:02 -05:00
Robin Gareus
9266e7524a experimental drawing optimization.
Q: is bounding_box(); etc more complex than queuing draw?

either way, canvas should eventually switch to
use an optimized OptimizingLookupTable.
2014-12-05 22:40:26 +01:00
David Robillard
587dc283ea Fix stuck faders on very fine adjustments.
I attempted to preserve the "don't draw unless different" by ditching rounding for more
precise display_span, but that didn't work.  An alternative solution would be
to draw on adjustment change if there's text, since then we need to redraw
regardless of slider position, but it seemed weird even just with respect to
the slider, so I opted for this, which really definitely redraws when the
adjustment changes, period.

If this proves to be a performance issue we'll have to figure that out.
2014-12-05 15:19:43 -05:00
Robin Gareus
fb406e5b36 fix small memory leak in the tests 2014-12-05 20:57:07 +01:00
Robin Gareus
8714fab1bc update to 'new' ControlList API
add (double when, double value, bool with_guards=true, bool with_default=true);
2014-12-05 20:57:07 +01:00
Paul Davis
91d3e8ead0 if a Route's processor lock cannot be taken, fill buffers with silence (causing click) rather than abort() 2014-12-05 14:49:30 -05:00
Robin Gareus
cf3faf1b42 fix "expected" <> "actual" semantics in test-util 2014-12-05 18:32:16 +01:00
Paul Davis
4bc4cd0e20 save and restore color aliases 2014-12-05 11:17:56 -05:00
Paul Davis
ab4b0dcffe add default (for now) color aliases to default_ui_config 2014-12-05 11:17:43 -05:00
Paul Davis
db9fbac7b5 added new header file for color aliases 2014-12-05 09:36:55 -05:00
Paul Davis
0045891362 part two of remove CANVAS_STRING_VARIABLE (it was replaced by CANVAS_FONT_VARIABLE 2014-12-05 09:26:12 -05:00
Paul Davis
dd49a249ad remove CANVAS_STRING_VARIABLE (it was replaced by CANVAS_FONT_VARIABLE 2014-12-05 09:25:34 -05:00
Paul Davis
2449fc9681 several steps closer to more sane color system 2014-12-05 09:01:55 -05:00