Paul Davis [Fri, 14 Mar 2014 17:43:51 +0000 (13:43 -0400)]
fix thinko when relabelling markers
Paul Davis [Thu, 13 Mar 2014 21:14:50 +0000 (17:14 -0400)]
call BaseUI::quit() from inside the MIDI Control UI destructor, to properly shutdown its thread
Robin Gareus [Thu, 13 Mar 2014 15:50:44 +0000 (16:50 +0100)]
rework SystemExec - use vfork wrapper (and lots of related stuff)
Paul Davis [Thu, 13 Mar 2014 15:02:06 +0000 (11:02 -0400)]
do not use Item::move() when dragging notes since this resets the Item's position in its group, rather than its coordinates.
This fixes the double-distance/wrongly drawn location of MIDI notes after a drag
Paul Davis [Thu, 13 Mar 2014 12:43:07 +0000 (08:43 -0400)]
remove debug output
Paul Davis [Thu, 13 Mar 2014 12:39:14 +0000 (08:39 -0400)]
fix up button selection operation so that fade drags work again
Paul Davis [Wed, 12 Mar 2014 22:47:49 +0000 (18:47 -0400)]
updated version of boost shared ptr debugging patch
Paul Davis [Wed, 12 Mar 2014 14:00:24 +0000 (10:00 -0400)]
finally put this patch into git, where it belong
Paul Davis [Wed, 12 Mar 2014 13:37:49 +0000 (09:37 -0400)]
fix #ifdef in localtime_r header (from Valeriy)
John Emmas [Wed, 12 Mar 2014 13:21:21 +0000 (13:21 +0000)]
A few days ago a #define got changed because the relevant section of code was no longer needed when building with mingw. However, it's not needed for msvc either (in fact, msvc won't compile it) so hopefully, the code fragment can be safely removed
Paul Davis [Wed, 12 Mar 2014 12:49:18 +0000 (08:49 -0400)]
more error messages if session renaming fails, and remove stupid use of RENAME macro and use ::g_rename() instead
Paul Davis [Wed, 12 Mar 2014 02:38:48 +0000 (22:38 -0400)]
fixes, hopefully, for canvas cursor misbehaviour near/in regionviews
Robin Gareus [Tue, 11 Mar 2014 14:48:13 +0000 (15:48 +0100)]
prototype vfork exec-wrapper.
Paul Davis [Tue, 11 Mar 2014 11:39:25 +0000 (07:39 -0400)]
fix error in height computation of MIDI region views (FUDGE!) use Rectangle::set_outline_all() and avoid the removed integer version of ::set_outline_what()
Paul Davis [Tue, 11 Mar 2014 11:38:02 +0000 (07:38 -0400)]
use and wrap Rectangle::set_outline_all() method
Paul Davis [Tue, 11 Mar 2014 11:37:20 +0000 (07:37 -0400)]
avoid multiple requests for redraws when resetting a TimeAxisViewItem name highlight
Paul Davis [Tue, 11 Mar 2014 11:36:09 +0000 (07:36 -0400)]
don't queue redraws when various canvas item properties are "reset" to the same value, plus supporting functions
Paul Davis [Mon, 10 Mar 2014 21:28:18 +0000 (17:28 -0400)]
fix up waf build in wake of search path changes earlier today
Paul Davis [Mon, 10 Mar 2014 21:27:47 +0000 (17:27 -0400)]
use buf_index_in() to identify VST MIDI buffer
Probably unnecessary as long we only have 1 MIDI port route, but this at least keeps symmetry with the output side
Paul Davis [Mon, 10 Mar 2014 21:27:02 +0000 (17:27 -0400)]
use PBD::downcase() rather than non-portable MS-based strlwr()
Paul Davis [Mon, 10 Mar 2014 21:26:31 +0000 (17:26 -0400)]
required header for new search_paths.h
Paul Davis [Mon, 10 Mar 2014 21:26:06 +0000 (17:26 -0400)]
add PBD::downcase() functions to libpbd
John Emmas [Mon, 10 Mar 2014 18:51:30 +0000 (18:51 +0000)]
Just noticed a small problem with my previous commit. Windows config files should be in 'Application Data/PROGRAM_NAME' rather than directly in 'Application Data'
John Emmas [Mon, 10 Mar 2014 16:05:40 +0000 (16:05 +0000)]
Modify 'user_config_directory()' and 'user_cache_directory()' so that (on Windows) they'll always return a directory that's guaranteed to be writable (in Windows, this isn't always true for the user's home folder)
John Emmas [Mon, 10 Mar 2014 16:01:50 +0000 (16:01 +0000)]
Modify 'user_config_dir_name' to use the program name (e.g. Ardour or Mixbus) instead of always assuming 'Ardour'.
John Emmas [Mon, 10 Mar 2014 15:59:12 +0000 (15:59 +0000)]
Move 'template_search_path()' and 'route_template_search_path()' into 'libs/ardour/search_paths.cc'
John Emmas [Mon, 10 Mar 2014 15:37:23 +0000 (15:37 +0000)]
Transfer 'vst_search_path()' into 'libs/ardour/search_paths.cc'
John Emmas [Mon, 10 Mar 2014 15:04:26 +0000 (15:04 +0000)]
Transfer 'panner_search_path()' into 'libs/ardour/search_paths.cc'
John Emmas [Mon, 10 Mar 2014 14:54:29 +0000 (14:54 +0000)]
Transfer 'midi_patch_search_path()' into 'libs/ardour/search_paths.cc'
John Emmas [Mon, 10 Mar 2014 14:42:45 +0000 (14:42 +0000)]
Transfer 'lv2_bundled_search_path()' into 'libs/ardour/search_paths.cc'
John Emmas [Mon, 10 Mar 2014 14:33:15 +0000 (14:33 +0000)]
Transfer 'ladspa_search_path()' into 'libs/ardour/search_paths.cc'
John Emmas [Mon, 10 Mar 2014 14:20:45 +0000 (14:20 +0000)]
Transfer 'export_formats_search_path()' into 'libs/ardour/search_paths.cc'
John Emmas [Mon, 10 Mar 2014 14:10:04 +0000 (14:10 +0000)]
Transfer 'control_protocol_search_path()' into 'libs/ardour/search_paths.cc'
John Emmas [Mon, 10 Mar 2014 13:47:00 +0000 (13:47 +0000)]
Create 'libs/ardour/search_paths.cc/.h' and transfer backend_search_path() to it
Paul Davis [Mon, 10 Mar 2014 16:14:37 +0000 (12:14 -0400)]
improve (though not 100% perfect) handling of region trim handles and mouse mode interaction
Paul Davis [Mon, 10 Mar 2014 15:10:07 +0000 (11:10 -0400)]
tiny red dots, be gone (expand poly_item bounding box by correct (?) amount)
Paul Davis [Mon, 10 Mar 2014 14:41:41 +0000 (10:41 -0400)]
missing iterator advance
Robin Gareus [Sun, 9 Mar 2014 23:48:48 +0000 (00:48 +0100)]
tempo match midi auditioning - #5881
Robin Gareus [Sun, 9 Mar 2014 20:05:17 +0000 (21:05 +0100)]
add missing include to define LIBPBD_API (mingw build)
Robin Gareus [Sun, 9 Mar 2014 19:32:02 +0000 (20:32 +0100)]
default plugin scan timeout preference
Robin Gareus [Sun, 9 Mar 2014 18:34:53 +0000 (19:34 +0100)]
[VST] scan timeout display and per plugin timeout override.
Robin Gareus [Sun, 9 Mar 2014 15:33:58 +0000 (16:33 +0100)]
prepare configurable VST scan timeout
Paul Davis [Sun, 9 Mar 2014 15:33:09 +0000 (11:33 -0400)]
stupid hack to fix rectangle damage noise
John Emmas [Sun, 9 Mar 2014 11:48:09 +0000 (11:48 +0000)]
Modified nesting to ensure that 'vst_search_path()' shouldn't return NULL if the first test fails
Robin Gareus [Sat, 8 Mar 2014 23:36:13 +0000 (00:36 +0100)]
fix reading VST shell-plugin .fsi cache
Robin Gareus [Sat, 8 Mar 2014 22:34:49 +0000 (23:34 +0100)]
VST? yes, we can do.
Robin Gareus [Sat, 8 Mar 2014 17:28:16 +0000 (18:28 +0100)]
paths dialog: use selection as default when adding new dirs
Robin Gareus [Sat, 8 Mar 2014 17:27:30 +0000 (18:27 +0100)]
fix double-free() when scanning VST shell plugins
Robin Gareus [Sat, 8 Mar 2014 16:24:42 +0000 (17:24 +0100)]
VST scanner: fix Ardour type IDs
John Emmas [Sat, 8 Mar 2014 11:29:52 +0000 (11:29 +0000)]
Add a couple of visibility specifiers that were missing
John Emmas [Sat, 8 Mar 2014 11:28:54 +0000 (11:28 +0000)]
Use LIBPBD_TEMPLATE_API and LIBPBD_TEMPLATE_MEMBER_API where appropriate
Paul Davis [Fri, 7 Mar 2014 17:29:26 +0000 (12:29 -0500)]
use fill transparency detection to avoid rendering transparent (invisible) rectangle fill area
Paul Davis [Fri, 7 Mar 2014 17:28:52 +0000 (12:28 -0500)]
if a Fill object is given a zero-alpha (transparent) color, note that
Paul Davis [Fri, 7 Mar 2014 17:27:48 +0000 (12:27 -0500)]
don't show frame trim handles when in internal editing mode
Paul Davis [Fri, 7 Mar 2014 16:26:27 +0000 (11:26 -0500)]
alter ArdourCanvas::Rect::expand() to not clamp to all-positive values because we now definitely have items that have negative coordinates.
This could have drastic consequences but I think the all-positive was a hack to fix a problem that was solved separately by means currently unknown.
Paul Davis [Fri, 7 Mar 2014 16:24:51 +0000 (11:24 -0500)]
slightly optimize bounding box computation for ArdourCanvas::PolyItem by avoiding inner conditional
Paul Davis [Fri, 7 Mar 2014 16:24:06 +0000 (11:24 -0500)]
third part of the logic fix for percussive note trimming
Paul Davis [Fri, 7 Mar 2014 16:23:48 +0000 (11:23 -0500)]
second part of the logic fix for percussive note trimming
Paul Davis [Fri, 7 Mar 2014 16:23:22 +0000 (11:23 -0500)]
move an assert to cover only cases where it is needed
Paul Davis [Fri, 7 Mar 2014 16:22:49 +0000 (11:22 -0500)]
fix up some logic that allowed hits (percussive note display) to be trimmed with the mouse, which was not intended
Paul Davis [Fri, 7 Mar 2014 14:25:18 +0000 (09:25 -0500)]
remove irrelevant comment
Paul Davis [Fri, 7 Mar 2014 04:17:04 +0000 (23:17 -0500)]
fix missing Hit destructor, which left polygons all over the canvas after deleting the Hit object(s)
Paul Davis [Fri, 7 Mar 2014 04:16:42 +0000 (23:16 -0500)]
fix apparent logic error for MidiRegionView when redisplaying note model
Paul Davis [Fri, 7 Mar 2014 04:15:59 +0000 (23:15 -0500)]
tweak Polygon::render() to work whether or not fill or outline are unset
Paul Davis [Thu, 6 Mar 2014 18:27:51 +0000 (13:27 -0500)]
trivial API change for MidiRegionView::update_hit()
Paul Davis [Thu, 6 Mar 2014 18:27:26 +0000 (13:27 -0500)]
comment edit
Paul Davis [Thu, 6 Mar 2014 18:26:55 +0000 (13:26 -0500)]
use CANVAS_DEBUG_NAME instead of explicit #ifdef to set canvas item name
Paul Davis [Thu, 6 Mar 2014 18:26:36 +0000 (13:26 -0500)]
make Hit (percussive note display item) actually draw something and fix up its coordinates
Paul Davis [Thu, 6 Mar 2014 15:40:31 +0000 (10:40 -0500)]
when in smart mode, context-click on a region item should behave as if in object mode.
Specifically, select the region before displaying the context menu
Paul Davis [Thu, 6 Mar 2014 14:53:38 +0000 (09:53 -0500)]
separate ArdourButton::set_colors() and ArdourButton::build_patterns()
Paul Davis [Thu, 6 Mar 2014 14:49:00 +0000 (09:49 -0500)]
add ::on_name_changed() to ArdourButton, to use recently added ::on_name_changed() in CairoWidget
Paul Davis [Thu, 6 Mar 2014 14:44:33 +0000 (09:44 -0500)]
add on_name_changed() virtual method to CairoWidget
If a CairoWidget does not a GtkRC-defined style, then changing its name does not trigger on_style_changed(). Since we want to use CairoWidget::set_name()
to trigger changes in the rendering of a widget, this is ... bad. Adding on_name_changed() provides a workaround for that.
Paul Davis [Thu, 6 Mar 2014 13:05:33 +0000 (08:05 -0500)]
Add ArdourButton::set_fixed_colors() (equivalent to ::set_bg_colors() in Valeriy's original changes)
Paul Davis [Wed, 5 Mar 2014 22:51:51 +0000 (17:51 -0500)]
revert
29b1e706ddaeaec5a330cf6643816ec43024b545 and then redo separation of ArdourButton::set_colors() from ArdourButton::build_patterns.
More to come
Paul Davis [Wed, 5 Mar 2014 19:33:27 +0000 (14:33 -0500)]
do not show region trim handles unless in (effective) object mouse mode
Paul Davis [Wed, 5 Mar 2014 19:33:06 +0000 (14:33 -0500)]
when an automation/region gain line is hidden, so are its points
Robin Gareus [Wed, 5 Mar 2014 18:44:01 +0000 (19:44 +0100)]
no dot prefix for VST cache files on windows.
Paul Davis [Wed, 5 Mar 2014 18:12:18 +0000 (13:12 -0500)]
manually revert change to canvas expose handling in
fee026c5ef7107d5d594159f5ece5917041591f7
Breaking out the rectangles implies a z-axis ordering of drawing,because the rect drawn last will implicitly be "on top".
But redraw areas are not submitted with any z-axis information, and so drawing like this breaks canvas layering. It
would be more efficient to draw the rects separately, but we don't have any ordering information and so we cannot do it
correctly.
Paul Davis [Wed, 5 Mar 2014 17:11:22 +0000 (12:11 -0500)]
alter name of AutomationLine::show() to much more sensibly named ::update_visibility()
Paul Davis [Wed, 5 Mar 2014 16:47:58 +0000 (11:47 -0500)]
remove debugging output
Paul Davis [Wed, 5 Mar 2014 16:37:13 +0000 (11:37 -0500)]
use a centripetal catmull-rom curve to smooth ArdourCanvas::Curve
See http://en.wikipedia.org/wiki/Centripetal_Catmull-Rom to understand the benefits of this.
Robin Gareus [Wed, 5 Mar 2014 07:47:54 +0000 (08:47 +0100)]
move vst detection code into ARDOUR namespace
Robin Gareus [Wed, 5 Mar 2014 07:41:29 +0000 (08:41 +0100)]
clean up and document VST scanner src, add error logging to file
Paul Davis [Wed, 5 Mar 2014 02:58:07 +0000 (21:58 -0500)]
"correct" curve drawing (no artifacts during redraw)
Interpolation errors still need addressing.
Paul Davis [Tue, 4 Mar 2014 15:04:49 +0000 (10:04 -0500)]
tentative intermediate state for ArdourCanvas::Curve
Paul Davis [Tue, 4 Mar 2014 15:04:21 +0000 (10:04 -0500)]
only queue an item redraw from Item::show() or Item::Hide() if the call changes the visibility status of the item (i.e. make no-ops really be no-ops)
Paul Davis [Tue, 4 Mar 2014 15:03:14 +0000 (10:03 -0500)]
fix/adjust logic used to display automation lines
Paul Davis [Tue, 4 Mar 2014 15:02:43 +0000 (10:02 -0500)]
reduce number of points used to define x-fade curves
Paul Davis [Tue, 4 Mar 2014 13:15:35 +0000 (08:15 -0500)]
break down GdkEventExpose into distinct rectangles for canvas expose rather than drawing the entire region as a single rect
Robin Gareus [Tue, 4 Mar 2014 17:53:43 +0000 (18:53 +0100)]
some more mingw x-compile fixes
Robin Gareus [Tue, 4 Mar 2014 14:25:58 +0000 (15:25 +0100)]
mingw build fixes (tested with i686-w64-mingw32 on linux-x86_64)
Robin Gareus [Mon, 3 Mar 2014 17:44:30 +0000 (18:44 +0100)]
even more small mingw/win fixes
Robin Gareus [Mon, 3 Mar 2014 17:38:30 +0000 (18:38 +0100)]
yet another mingw/win fix
Paul Davis [Mon, 3 Mar 2014 15:27:06 +0000 (10:27 -0500)]
minor fix for libpbd wscript on windows
Paul Davis [Mon, 3 Mar 2014 02:14:54 +0000 (21:14 -0500)]
some windows build fixes
Robin Gareus [Mon, 3 Mar 2014 15:09:14 +0000 (16:09 +0100)]
some mingw related tweaks to the build-environment.
Robin Gareus [Mon, 3 Mar 2014 12:35:09 +0000 (13:35 +0100)]
detect VST midi-in/midi-out ports separately.
Robin Gareus [Sun, 2 Mar 2014 21:51:04 +0000 (22:51 +0100)]
paths-dialog gtkmm-2.20 compatibility (part two)
Robin Gareus [Sun, 2 Mar 2014 21:38:29 +0000 (22:38 +0100)]
paths-dialog gtkmm-2.20 compatibility
Robin Gareus [Sun, 2 Mar 2014 20:12:25 +0000 (21:12 +0100)]
implement VST midi-output