13
0
Commit Graph

15780 Commits

Author SHA1 Message Date
11cfdd4c6d remove use of TimeRectangle 2015-02-11 21:59:38 -05:00
a992a2e6e0 simplify Canvas::Rectangle rendering to avoid unnecessary nonsense, and remove TimeRectangle 2015-02-11 21:59:38 -05:00
2a5921ecf1 Canvas::Rect::contains() should treat its right/left coordinates as exclusive 2015-02-11 21:59:38 -05:00
9090057f6e When setting the duration of a TimeAxisViewItem, do not round before computing pixel width 2015-02-11 21:59:38 -05:00
baf10dc4e3 Editor::sample_to_pixel() always returns an integer value, but it should use explicit rounding 2015-02-11 21:59:38 -05:00
e8c24f1efd fix midi-capture filter
diskstream reads directly from port, Route
use prefilled buffer-set.
2015-02-12 01:05:16 +01:00
d92608b05f use magic strings instead of magic numbers (allow profiles to leave out some track type options) 2015-02-11 14:29:50 -06:00
b1f9b644fc desensitize redirect-menu Send and Control items when they are not applicable 2015-02-11 11:13:24 -06:00
b2d4c731e8 properly activating MIDI parsing for traced ports 2015-02-10 19:48:47 -05:00
eddcd7128f infrastructure to allow tracing of all MIDI ports 2015-02-10 19:48:47 -05:00
266ac60941 skip drawing the first pixel of waves in an audio region view.
This means that they do no overwrite the frame border of the time axis item
2015-02-10 19:48:47 -05:00
34779ee81e add a sort-of hack to allow us to avoid drawing the first pixel of a waveview when necessary 2015-02-10 19:48:47 -05:00
99054ea415 fix previous commit 2015-02-10 14:54:43 -06:00
d273bb3de8 Track Mode is too vague; rename to Record Mode 2015-02-10 14:43:17 -06:00
e9e29bf2b0 flip the priority of input and output buttons and menus
left-click should show the simple input picker menu.
right-click shows the routing grid.
also reordered the menu to give lower precedence to {add/remove}-port
2015-02-10 14:43:17 -06:00
6cad07fc11 fix boot message always sticking on the last loaded route; it looked like an error 2015-02-10 14:43:16 -06:00
f131e15545 fixed collision with <SECONDARY>n binding 2015-02-10 14:43:16 -06:00
c679d616f6 correct drawing of rectangle borders.
They need to use fractional coordinates, and the border position needed
generalizing for other border widths. See verbose comment for details
2015-02-09 16:41:28 -05:00
736038556f canvas items must be able to use fractional positions when rendering.
This is required to be able to draw precise single pixel lines, as described
in the Cairo FAQ
2015-02-09 16:40:10 -05:00
ef79d1c4d4 fix last cherry-pick 2015-02-09 14:46:20 -05:00
b2e93b8fba fix color and alpha of timestretch rect 2015-02-09 14:46:20 -05:00
6dbc0c0919 put function into namespace 2015-02-09 14:46:20 -05:00
429da16b60 Fix sending out of bounds events to LV2 plugins. 2015-02-09 13:45:37 -05:00
abcd70c1d2 After dragging from multiple tracks to the dropzone, create the right number of new tracks.
This does not address the visual flattening that occurs before the drop
is complete. Doing that is complex and there is no immediate solution
visible. The result after the drop is complete is correct, however.

Conflicts:
	gtk2_ardour/editor_drag.cc
2015-02-09 11:03:03 -05:00
nick_m
b1dafe9a31 Properly deallocate memory when clearing selection_op_history and
before XMLNode*s.
Improve some comments.
2015-02-07 23:33:09 +11:00
ae09d7132d fix 192k rate 2015-02-06 13:57:22 -06:00
af174c0519 when the user changes devices, notify the backend 2015-02-06 13:55:00 -06:00
63a1b56560 fix (and comment) on subtle bug with audio file data width function 2015-02-06 10:33:01 -05:00
nick_m
6b9415aedb Make undo/redo work for:
undo (n) where n > 1
redo (m) where m < n
new transaction.

Previously the redo list was left untouched.
This would lead to utter nonsense in the redo list.

AFAICT this never worked.
2015-02-06 21:54:27 +11:00
ec37c83507 fixup cherry-picked changes from Waves Tracks, and fix for Ardour 2015-02-05 20:26:02 -05:00
7644533103 implement RangeMarkerBarDrag::abort
Conflicts:
	gtk2_ardour/editor_drag.cc
2015-02-05 19:34:31 -05:00
e6752fb729 implement MarkerDrag::abort() 2015-02-05 19:33:31 -05:00
78e245d0b5 do not attempt to call an empty/null boost functor in clear_events() 2015-02-05 18:03:40 -05:00
7ffc06b08d fix issue with region dragging while mouse pointer is in rulers/marker lanes 2015-02-05 17:42:46 -05:00
c76523aeaa fix bad fix for cherry-pick conflict 2015-02-05 16:49:14 -05:00
e8b6f852f6 make two obvously const methods actually be const 2015-02-05 16:36:09 -05:00
e72a4ec850 modify behaviour of session when updating skips to use new SessionEvent API
Conflicts:
	libs/ardour/ardour/session.h
	libs/ardour/session.cc
2015-02-05 16:35:56 -05:00
ec9c6a58e2 add SessionEvent::Action to libs/ardour enums registration 2015-02-05 16:32:33 -05:00
6790f8342a expand SessionEvent API to allow ::clear_events() to work correctly.
clear_events() must run in realtime context, which is likely to be asynchronous
with respect to the thread that calls it. So allow caller to pass in a functor
that will be executed (also in realtime context) after the clear is done.

Additionally, allow for a cross-thread callback to the event loop/thread which
initiated/allocated the clear event request so that it can flush its own pending
loop. This part probably isn't necessary but doesn't hurt and is a useful model.
The event would be placed back in the free list at the next event allocation
by the calling thread anyway.
2015-02-05 16:32:21 -05:00
4010884a5b expand PBD::Pool API and add additional DEBUG_TRACE output.
Expanded API splits apart some CrossThreadPool functionality, and provides
access to current pool status information (available(), total(), used(), pending_size())
2015-02-05 16:32:10 -05:00
7152634104 set name of GUI event loop thread 2015-02-05 16:31:59 -05:00
927f5521ce ContentEdit drag on empty MIDI track should not create new midi regions 2015-02-05 12:24:11 -06:00
nick_m
63935a86a4 Rework previous commit to avoid extra property lookup (fwiw). 2015-02-06 01:09:04 +11:00
nick_m
2d8b7c352b Make sure we have the property rather than the value of patch change id.
(don't crash whenever someone adds a patch change and reloads the session).
2015-02-06 00:53:12 +11:00
nick_m
ff13ac8b4f Clean up Session's _current_trans when aborting a drag. 2015-02-05 23:32:57 +11:00
nick_m
f9b2587458 Make redo action insensitive after new command.
Don't erroneously send first_move more than once after autoscroll drag.
2015-02-05 19:57:56 +11:00
40c8c26b79 remove duplicate callback
mcontrol->Changed is [also] subscribed to further below (input & output).
2015-02-04 18:04:33 +01:00
b4a0136155 tweak to help with uncoalesced renders 2015-02-03 17:35:37 -06:00
9fab39358a render canvas using the GDK region rather than the GDK area.
The region is the un-coalesced set of rectangles that were requested for redraw. The area
is the coalesced single rectangle. In the worst cases, the coalesced rectangle could span
the entire window even though just two pixels in opposite corners were to be redrawn.

There is a problem with the verbose cursor as it is dragged across MIDI tracks. TO BE
FIXED.
2015-02-03 15:38:14 -05:00
2689848ed7 Add an extra test to prevent 'PBD::path_is_within()' from looping infinitely on Windows
The infinite loop would happen if the 2 supplied paths were on different Windows drives - for example if one was on drive C:\ and the other on drive E:\

I don't think this new test will be detrimental to the other platforms but if it is, we could easily separate it out with a '#ifdef PLATFORM_WINDOWS' directive.
2015-02-03 11:57:38 +00:00