13
0
Commit Graph

6609 Commits

Author SHA1 Message Date
97a537cd21 Use glibmm to simplify my earlier efforts with 'user_config_directory()' and 'user_cache_directory()'
(improves my previous commit from 10th Mar 2014)
2014-03-19 14:38:41 +00:00
6b92b1787e 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)
2014-03-19 13:42:58 +00:00
2952ac05e6 fixed a few warnings from clang static analysis 2014-03-18 22:51:44 +01:00
0e41d00811 fix potential uninitialized object pointer. 2014-03-18 20:51:59 +01:00
796f6e1302 Re-validate our iterator after SessionEventManager removes an event 2014-03-18 19:23:28 +00:00
80e1b42ed5 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
2014-03-18 17:32:39 +00:00
3e4278a0fb 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 2014-03-17 10:16:45 -04:00
9352eac64b Make sure that windows_search_path() is 'visible' in Windows (will be needed for fixup_bundle_environment) 2014-03-17 11:29:17 +00:00
96244e2afa Close a temporary file as soon as we know we've created it (the function which needs the file will re-open it itself) 2014-03-15 14:42:20 +00:00
f0e40565a5 small cleanup. 2014-03-14 20:25:04 +01:00
2721242f77 comment libardour functions that are not used in external scanner. 2014-03-14 20:18:24 +01:00
f05fe6a3fb removed duplicated (and dangerous) call to close(2) 2014-03-14 15:16:15 -04:00
83a5eadcf8 fix compile of libs/vfork with slightly older(?) glibc headers 2014-03-14 14:52:23 -04:00
82bce6cc76 call BaseUI::quit() from inside the MIDI Control UI destructor, to properly shutdown its thread 2014-03-14 13:46:30 -04:00
543099afba rework SystemExec - use vfork wrapper (and lots of related stuff) 2014-03-13 16:58:07 +01:00
f15932a5c2 fix #ifdef in localtime_r header (from Valeriy) 2014-03-12 09:39:16 -04:00
d52eb5bf23 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 2014-03-12 13:22:25 +00:00
9f98837255 more error messages if session renaming fails, and remove stupid use of RENAME macro and use ::g_rename() instead 2014-03-12 08:49:18 -04:00
f6129ed0f4 prototype vfork exec-wrapper. 2014-03-11 15:48:41 +01:00
c2946ee00f don't queue redraws when various canvas item properties are "reset" to the same value, plus supporting functions 2014-03-11 07:36:09 -04:00
495c0de4ac fix up waf build in wake of search path changes earlier today 2014-03-10 17:30:12 -04:00
1a3634f3b9 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
2014-03-10 17:30:12 -04:00
1e4559805f use PBD::downcase() rather than non-portable MS-based strlwr() 2014-03-10 17:30:12 -04:00
e25fbeb22d required header for new search_paths.h 2014-03-10 17:30:12 -04:00
b6a9bf5d04 add PBD::downcase() functions to libpbd 2014-03-10 17:30:12 -04:00
5ccf1e7346 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' 2014-03-10 18:51:30 +00:00
a4752e057d 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) 2014-03-10 16:24:11 +00:00
e0678ce30f Modify 'user_config_dir_name' to use the program name (e.g. Ardour or Mixbus) instead of always assuming 'Ardour'. 2014-03-10 16:24:10 +00:00
34c67ba854 Move 'template_search_path()' and 'route_template_search_path()' into 'libs/ardour/search_paths.cc' 2014-03-10 16:24:10 +00:00
b32d9a1c70 Transfer 'vst_search_path()' into 'libs/ardour/search_paths.cc' 2014-03-10 16:24:09 +00:00
f372a66128 Transfer 'panner_search_path()' into 'libs/ardour/search_paths.cc' 2014-03-10 16:24:08 +00:00
aa7c2ab5c2 Transfer 'midi_patch_search_path()' into 'libs/ardour/search_paths.cc' 2014-03-10 16:24:08 +00:00
8a44aa9aba Transfer 'lv2_bundled_search_path()' into 'libs/ardour/search_paths.cc' 2014-03-10 16:24:07 +00:00
ff053653e1 Transfer 'ladspa_search_path()' into 'libs/ardour/search_paths.cc' 2014-03-10 16:24:06 +00:00
d1fd112bdf Transfer 'export_formats_search_path()' into 'libs/ardour/search_paths.cc' 2014-03-10 16:24:06 +00:00
75c55b0aa0 Transfer 'control_protocol_search_path()' into 'libs/ardour/search_paths.cc' 2014-03-10 16:24:05 +00:00
06fe0a5172 Create 'libs/ardour/search_paths.cc/.h' and transfer backend_search_path() to it 2014-03-10 16:24:05 +00:00
032f394b2a tiny red dots, be gone (expand poly_item bounding box by correct (?) amount) 2014-03-10 11:10:38 -04:00
ec0be1310f missing iterator advance 2014-03-10 11:10:38 -04:00
1374501727 tempo match midi auditioning - #5881 2014-03-10 00:48:48 +01:00
07d5a389fa add missing include to define LIBPBD_API (mingw build) 2014-03-09 21:05:17 +01:00
ba0ae4818a [VST] scan timeout display and per plugin timeout override. 2014-03-09 20:32:52 +01:00
da73b0f670 prepare configurable VST scan timeout 2014-03-09 20:32:52 +01:00
52c8b6d66a stupid hack to fix rectangle damage noise 2014-03-09 11:39:57 -04:00
fc94f71d5a Modified nesting to ensure that 'vst_search_path()' shouldn't return NULL if the first test fails 2014-03-09 11:48:09 +00:00
611dc796de fix reading VST shell-plugin .fsi cache 2014-03-09 00:36:13 +01:00
551993b96c VST? yes, we can do. 2014-03-08 23:34:49 +01:00
2fc52ec5fd paths dialog: use selection as default when adding new dirs 2014-03-08 18:28:16 +01:00
732d58ba81 fix double-free() when scanning VST shell plugins 2014-03-08 18:27:30 +01:00
cf1363a4a9 VST scanner: fix Ardour type IDs 2014-03-08 17:24:42 +01:00
944c32346b Add a couple of visibility specifiers that were missing 2014-03-08 11:29:52 +00:00
c7bc009b30 Use LIBPBD_TEMPLATE_API and LIBPBD_TEMPLATE_MEMBER_API where appropriate 2014-03-08 11:28:54 +00:00
6d3bd4e53c use fill transparency detection to avoid rendering transparent (invisible) rectangle fill area 2014-03-07 12:29:26 -05:00
12ef19d90a if a Fill object is given a zero-alpha (transparent) color, note that 2014-03-07 12:28:52 -05:00
52cfbb45e1 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.
2014-03-07 11:26:27 -05:00
621887cfaa slightly optimize bounding box computation for ArdourCanvas::PolyItem by avoiding inner conditional 2014-03-07 11:24:51 -05:00
e5802bdbea move an assert to cover only cases where it is needed 2014-03-07 11:23:22 -05:00
2a6fc5af74 tweak Polygon::render() to work whether or not fill or outline are unset 2014-03-06 23:15:59 -05:00
e4e6010cd4 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.
2014-03-06 09:44:33 -05:00
142439b9a8 no dot prefix for VST cache files on windows. 2014-03-05 19:44:01 +01:00
a08c0ea1da manually revert change to canvas expose handling in fee026c5ef
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.
2014-03-05 13:12:18 -05:00
58a30da03d 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.
2014-03-05 11:38:30 -05:00
f3300ec03c move vst detection code into ARDOUR namespace 2014-03-05 08:47:54 +01:00
dd1c397344 clean up and document VST scanner src, add error logging to file 2014-03-05 08:41:29 +01:00
e6849e9c7e "correct" curve drawing (no artifacts during redraw)
Interpolation errors still need addressing.
2014-03-04 21:58:17 -05:00
c29d392b0c tentative intermediate state for ArdourCanvas::Curve 2014-03-04 21:58:17 -05:00
dde4d3bbc3 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) 2014-03-04 21:58:17 -05:00
6863bb9d28 reduce number of points used to define x-fade curves 2014-03-04 21:58:16 -05:00
fee026c5ef break down GdkEventExpose into distinct rectangles for canvas expose rather than drawing the entire region as a single rect 2014-03-04 21:58:16 -05:00
1c839ed541 some more mingw x-compile fixes 2014-03-04 18:53:43 +01:00
912f07b919 mingw build fixes (tested with i686-w64-mingw32 on linux-x86_64) 2014-03-04 15:25:58 +01:00
3e250d5f06 even more small mingw/win fixes 2014-03-03 18:44:30 +01:00
5cfdb7d1ce yet another mingw/win fix 2014-03-03 18:39:30 +01:00
43421f0b46 minor fix for libpbd wscript on windows 2014-03-03 10:31:53 -05:00
5db9599e7e some windows build fixes 2014-03-03 10:31:53 -05:00
6442f316d4 detect VST midi-in/midi-out ports separately. 2014-03-03 13:35:09 +01:00
76fb7278dd paths-dialog gtkmm-2.20 compatibility (part two) 2014-03-02 22:51:04 +01:00
f303c9ebb2 paths-dialog gtkmm-2.20 compatibility 2014-03-02 22:38:29 +01:00
52b127a35b implement VST midi-output 2014-03-02 21:18:52 +01:00
e6c3cece64 remove recently added conflation of mingw64 and msvc with respect to symbol export 2014-03-02 14:59:08 -05:00
86ad316180 fix missing const for windows vst_search_path() 2014-03-02 12:46:33 -05:00
deb48ff22d add missing extra file 2014-03-02 11:33:35 -05:00
8040df1897 move export_search_path(), previously in gtk2_ardour/main.cc, into libs/pbd 2014-03-02 11:25:54 -05:00
b8419ae7cd use "new" VST search path code and adjust build system to reflect new source files 2014-03-02 10:53:25 -05:00
8ba449bc4e remove fallback_folders code, add simpler more focused get_vst_search_path() and breakout get_win_special_folder() into its own file 2014-03-02 10:52:52 -05:00
c10e11eca5 for windows build, add fallback_folders.cc to libpbd source list 2014-03-01 22:47:19 -05:00
fc88eaf392 add likely stub code for adding linkage to libole when building libpbd on windows.
I may have gotten the precise linkflags string incorrect, but this my best guess.
2014-03-01 22:44:56 -05:00
fd64bba1de add -DPROGRAM_NAME to libpbd compile flags 2014-03-01 22:43:46 -05:00
08c89809ee REALLY REALLY CORRECT template export macros for libpbd 2014-03-01 22:31:47 -05:00
dbd89ed49d REALLY CORRECT template export macros for libpbd 2014-03-01 18:59:44 -05:00
c1a540f34e use template export forms for MemementoCommand 2014-03-01 18:59:37 -05:00
9526fef902 CORRECT template export macros for libpbd 2014-03-01 18:58:41 -05:00
19ab0fddef remove mingw64 special case from evoral visibility header (might be appropriate everywhere, needs testing) 2014-03-01 18:58:12 -05:00
9f121fac81 add template export macros for libpbd 2014-03-01 18:57:36 -05:00
db92e79deb fix use of export macros to work with mingw(64). Template issues with msvc will require a different solution (if they exist) 2014-03-01 18:53:55 -05:00
a72482af09 fix use of export macros to work with mingw(64) 2014-03-01 18:53:26 -05:00
3e2ac89d22 fix correct export macro guard in libpbd for mingw64 2014-03-01 18:33:31 -05:00
03fd396286 fix a related-to-last-commit problem in build script for OSC support
This would have had the effect of hiding -DPACKAGE="ardour_osc" but since there is no i18n stuff in our OSC support,
it really had no effect.
2014-03-01 16:58:22 -05:00
560c667ea9 fix compilation of libcanvas so that when built as a shared lib (the default), -DLIBCANVAS_DLL_EXPORTS=1 is not lost 2014-03-01 16:52:08 -05:00
c626e83a64 ardour now requires export visibility macros for all added classes 2014-03-01 16:17:33 -05:00