Robin Gareus [Fri, 21 Mar 2014 15:06:59 +0000 (16:06 +0100)]
check if session dir is writable (needed for .bak files, undo, etc)
John Emmas [Fri, 21 Mar 2014 14:56:59 +0000 (14:56 +0000)]
Implement 'fixup_bundle_environment()' for the MSVC build
John Emmas [Fri, 21 Mar 2014 14:54:21 +0000 (14:54 +0000)]
When finding the control surface DLLs (MSVC built), make sure we only find ones that match our build target
Robin Gareus [Fri, 21 Mar 2014 14:20:25 +0000 (15:20 +0100)]
fix editor full-screen state when re-loading session
Paul Davis [Fri, 21 Mar 2014 13:41:47 +0000 (09:41 -0400)]
latest tweaks to autoscroll: symmetrical boundary on both sides, stop runaway scrolling, and more
Robin Gareus [Fri, 21 Mar 2014 13:15:38 +0000 (14:15 +0100)]
tweak meter-peak hold when using LED-striped meters
Paul Davis [Fri, 21 Mar 2014 01:59:37 +0000 (21:59 -0400)]
first pass at quantizing vertical scroll to whole tracks.
Dragging regions vertically does the quantization BUT speed control is lacking and the region ends up on
a track that is still invisible ... to be fixed as the sun rises.
Robin Gareus [Thu, 20 Mar 2014 22:50:40 +0000 (23:50 +0100)]
change the meters into CairoWidget, add expose_area to CairoWidget::render()
Paul Davis [Thu, 20 Mar 2014 17:29:29 +0000 (13:29 -0400)]
big rework of scrolling, horizontal part considered almost 100% done.
Many more changes than I would typically like in a single commit, but this was all very intertwined.
Vertical scrolling using track-stepping still to follow.
Robin Gareus [Wed, 19 Mar 2014 22:46:01 +0000 (23:46 +0100)]
videotimeline: fix black-frame generation (sample aspect ratio) on export
Robin Gareus [Wed, 19 Mar 2014 17:12:16 +0000 (18:12 +0100)]
tweak A/V import logic
Robin Gareus [Wed, 19 Mar 2014 16:34:45 +0000 (17:34 +0100)]
clarify A/V import options
John Emmas [Wed, 19 Mar 2014 14:38:41 +0000 (14:38 +0000)]
Use glibmm to simplify my earlier efforts with 'user_config_directory()' and 'user_cache_directory()'
(improves my previous commit from 10th Mar 2014)
John Emmas [Wed, 19 Mar 2014 13:42:58 +0000 (13:42 +0000)]
Modify 'ardour_config_search_path()' and 'ardour_data_search_path()'
1) So that the Windows version will use appropriate environment variables (if they exist)
2) So that we don't exit if the env vars can't be found (we can still return some kind of path so just alert the user)
Robin Gareus [Tue, 18 Mar 2014 21:51:44 +0000 (22:51 +0100)]
fixed a few warnings from clang static analysis
Robin Gareus [Tue, 18 Mar 2014 19:38:37 +0000 (20:38 +0100)]
fix potential uninitialized object pointer.
John Emmas [Tue, 18 Mar 2014 19:23:28 +0000 (19:23 +0000)]
Re-validate our iterator after SessionEventManager removes an event
John Emmas [Tue, 18 Mar 2014 17:32:39 +0000 (17:32 +0000)]
When finding (MSVC built) panner DLLs, make sure we only find ones that match our build target
Will most likely also need to get done for similarly "discovered" DLLs (backends / surfaces etc). TBC
Paul Davis [Mon, 17 Mar 2014 14:16:45 +0000 (10:16 -0400)]
g_close() is only available in select versions of glib; fix up non-standard use of glib/cerr to report errors and other related mess
Robin Gareus [Mon, 17 Mar 2014 13:40:29 +0000 (14:40 +0100)]
add helper binaries to bundles
John Emmas [Mon, 17 Mar 2014 11:29:17 +0000 (11:29 +0000)]
Make sure that windows_search_path() is 'visible' in Windows (will be needed for fixup_bundle_environment)
John Emmas [Sat, 15 Mar 2014 14:42:20 +0000 (14:42 +0000)]
Close a temporary file as soon as we know we've created it (the function which needs the file will re-open it itself)
John Emmas [Sat, 15 Mar 2014 14:40:36 +0000 (14:40 +0000)]
Move '++next' (when sorting marker labels) so there's absolutely no chance of incrementing it once it reaches the list end
Robin Gareus [Fri, 14 Mar 2014 19:25:04 +0000 (20:25 +0100)]
small cleanup.
Robin Gareus [Fri, 14 Mar 2014 19:18:02 +0000 (20:18 +0100)]
comment libardour functions that are not used in external scanner.
Paul Davis [Fri, 14 Mar 2014 19:16:15 +0000 (15:16 -0400)]
removed duplicated (and dangerous) call to close(2)
Paul Davis [Fri, 14 Mar 2014 18:52:23 +0000 (14:52 -0400)]
fix compile of libs/vfork with slightly older(?) glibc headers
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)