John Emmas [Mon, 14 Oct 2013 18:31:22 +0000 (19:31 +0100)]
Merge branch 'master' into windows+cc
Conflicts (hopefully resolved):
gtk2_ardour/ardour_ui.cc
John Emmas [Mon, 14 Oct 2013 16:40:15 +0000 (17:40 +0100)]
'PBD::demangle()' - Minor modification to keep MSVC happy
John Emmas [Mon, 14 Oct 2013 16:19:39 +0000 (17:19 +0100)]
'AudioEngine::discover_backends()' - When building a debuggable backend module on Windows (e.g. jack_backend.dll) accommodate the Windows convention that Debug builds generally have a suffix added to their name
John Emmas [Mon, 14 Oct 2013 16:14:23 +0000 (17:14 +0100)]
'gtk2_ardour' - Add some further header files to satisfy MSVC build
John Emmas [Mon, 14 Oct 2013 16:07:45 +0000 (17:07 +0100)]
'gtk2_ardour' - Harmonize usage of 'COMPILER_MINGW' and 'COMPILER_MSVC' where appropriate
John Emmas [Mon, 14 Oct 2013 16:05:42 +0000 (17:05 +0100)]
'gtk2_ardour' - Harmonize '__WIN32__', 'OS_WIN32' etc, etc. Use 'PLATFORM_WINDOWS' instead
John Emmas [Mon, 14 Oct 2013 16:00:28 +0000 (17:00 +0100)]
'gtk2_ardour' - Harmonize '__WIN32__', 'OS_WIN32' etc, etc. Use 'PLATFORM_WINDOWS' instead
Paul Davis [Mon, 14 Oct 2013 15:14:38 +0000 (11:14 -0400)]
use processor owner to set GUIs opened by a ProcessorBox, not current route name
Since the GUIs remain open across changes in track selection for the editor mixer now, the current route name
is not always correct as the owner/location of the Processor.
Paul Davis [Mon, 14 Oct 2013 15:12:50 +0000 (11:12 -0400)]
add a back-pointer to the owner of a Processor
Use SessionObject* rather than Route so that per-region plugins will be possible in the future.
Paul Davis [Mon, 14 Oct 2013 02:41:17 +0000 (22:41 -0400)]
changes that will help fix a crash related to plugin window visibility. some work still to be done
Paul Davis [Mon, 14 Oct 2013 02:40:39 +0000 (22:40 -0400)]
tweak API of WindowProxy, and remove all unnecessary get() calls in functions where, if we have no window, there is nothing to do
Robin Gareus [Sat, 12 Oct 2013 21:04:37 +0000 (23:04 +0200)]
enable videotimeline on OSX
Robin Gareus [Sat, 12 Oct 2013 20:55:54 +0000 (22:55 +0200)]
export video-range: add to context menu
Robin Gareus [Sat, 12 Oct 2013 19:25:05 +0000 (21:25 +0200)]
video-range export tweaks:
* quantize range to video-frame boundaries
* warn if range is empty or does not include video
Paul Davis [Sat, 12 Oct 2013 20:44:50 +0000 (16:44 -0400)]
do not use delete_when_idle() to delete a plugin UI because an entirely separate mechanism exists for that
Paul Davis [Sat, 12 Oct 2013 19:37:55 +0000 (15:37 -0400)]
revert part of
4091ff175c5204 that caused window/sizing chaos. silly paul
Paul Davis [Sat, 12 Oct 2013 18:57:32 +0000 (14:57 -0400)]
rework things for Audio/MIDI setup dialog a bit: no tabs being the most noticeable change
Paul Davis [Sat, 12 Oct 2013 18:56:57 +0000 (14:56 -0400)]
1 bug fix plus padding control for ArdourButton
Paul Davis [Sat, 12 Oct 2013 15:58:22 +0000 (11:58 -0400)]
post a dialog about a session being opened in read-only mode (if it happens)
Paul Davis [Sat, 12 Oct 2013 15:07:57 +0000 (11:07 -0400)]
fix inability to export twice
Paul Davis [Sat, 12 Oct 2013 14:04:20 +0000 (10:04 -0400)]
minor adjustments to latency measurement UI stuff
Paul Davis [Sat, 12 Oct 2013 14:03:50 +0000 (10:03 -0400)]
adapt AudioEngine to new AudioBackend API
Paul Davis [Sat, 12 Oct 2013 14:03:15 +0000 (10:03 -0400)]
adapt JACK audiobackend to pay attention to new _start() API related to latency measurement
Paul Davis [Sat, 12 Oct 2013 14:02:37 +0000 (10:02 -0400)]
slightly change AudioBackend API to allow specifying that the device is being started for latency measurement
We don't want any existing latency settings used when re-measuring latency measurements.
Paul Davis [Sat, 12 Oct 2013 13:59:33 +0000 (09:59 -0400)]
remove erroneous ` in string
Paul Davis [Fri, 11 Oct 2013 21:12:37 +0000 (17:12 -0400)]
update OS X packaging script to include backends
Paul Davis [Fri, 11 Oct 2013 21:11:44 +0000 (17:11 -0400)]
update Linux packaging script to include backends
Paul Davis [Fri, 11 Oct 2013 19:58:51 +0000 (15:58 -0400)]
don't use a possibly non-existent window as a transient parent when showing a dialog about engine failure
John Emmas [Fri, 11 Oct 2013 17:23:53 +0000 (18:23 +0100)]
Merge branch 'windows' into windows+cc
Tim Mayberry [Fri, 11 Oct 2013 02:02:07 +0000 (12:02 +1000)]
Fix ardour tests to work with new AudioEngine/Backends changes
Tim Mayberry [Fri, 11 Oct 2013 02:01:15 +0000 (12:01 +1000)]
Add AudioEngine::set_default_backend
Tim Mayberry [Fri, 16 Aug 2013 11:41:55 +0000 (21:41 +1000)]
Use test-env.sh in run-session-tests.sh
Also make the script executable
Tim Mayberry [Sat, 10 Aug 2013 08:56:59 +0000 (18:56 +1000)]
Write state data from automation list test to check why test is failing
Tim Mayberry [Sat, 10 Aug 2013 08:49:45 +0000 (18:49 +1000)]
Add arg to test function to be able to prefix test output directory
This makes it much easier to find test output from a specific test
Tim Mayberry [Sat, 10 Aug 2013 08:26:47 +0000 (18:26 +1000)]
return bool in test util function to check writing xml to file is successful
Tim Mayberry [Sat, 10 Aug 2013 06:09:28 +0000 (16:09 +1000)]
Use test_search_path to find test data files for automation test
Tim Mayberry [Sat, 10 Aug 2013 05:30:38 +0000 (15:30 +1000)]
Update test to use correct SourceFactory::createWritable API
Tim Mayberry [Sat, 10 Aug 2013 05:19:36 +0000 (15:19 +1000)]
Delete test_globals.h/cc now that the contents has moved to test_common.h/cc
Tim Mayberry [Sat, 10 Aug 2013 03:14:52 +0000 (13:14 +1000)]
Add get_test_sample_rate to common test functions in libardour tests
Tim Mayberry [Wed, 24 Jul 2013 08:19:05 +0000 (18:19 +1000)]
Fix script used to run libardour tests
Paul Davis [Fri, 11 Oct 2013 01:07:17 +0000 (21:07 -0400)]
minor tweaks to audio/MIDI setup window
Paul Davis [Thu, 10 Oct 2013 20:54:46 +0000 (16:54 -0400)]
some slightly hackish changes to make it possible to use the new internal ALSA midi client (soon to become a driver, however)
Paul Davis [Thu, 10 Oct 2013 20:18:27 +0000 (16:18 -0400)]
more fixes and rationalizations for MIDI option handling in the audio MIDI setup
Paul Davis [Thu, 10 Oct 2013 20:18:00 +0000 (16:18 -0400)]
add API to get current MIDI option from an audio/MIDI backend
Paul Davis [Thu, 10 Oct 2013 20:17:46 +0000 (16:17 -0400)]
add API to get current MIDI option from an audio/MIDI backend
Paul Davis [Thu, 10 Oct 2013 20:16:59 +0000 (16:16 -0400)]
fix up parsing of send gain MIDI bindings so that they actually work
Paul Davis [Thu, 10 Oct 2013 16:59:33 +0000 (12:59 -0400)]
basic use of new backend MIDI options
Paul Davis [Thu, 10 Oct 2013 16:59:11 +0000 (12:59 -0400)]
add JACK backend support for MIDI option discovery
Paul Davis [Thu, 10 Oct 2013 16:58:38 +0000 (12:58 -0400)]
add API to AudioBackend to allow discovery of possible MIDI I/O options
Paul Davis [Thu, 10 Oct 2013 15:24:16 +0000 (11:24 -0400)]
nicely handle the (should-never-happen) case of no audio/MIDI backends being detected
Paul Davis [Wed, 9 Oct 2013 18:00:42 +0000 (14:00 -0400)]
Merge ... master, fixing conflicts in 3 wscript files
Paul Davis [Wed, 9 Oct 2013 17:57:00 +0000 (13:57 -0400)]
when looking for backends, search for *.dll as well as *.so and *.dylib
Paul Davis [Tue, 8 Oct 2013 21:12:20 +0000 (17:12 -0400)]
reduce version requirement for JACK
Paul Davis [Tue, 8 Oct 2013 20:13:39 +0000 (16:13 -0400)]
move JACK configuration test(s) down to where they belong (in libs/backend/jack)
Paul Davis [Tue, 8 Oct 2013 18:16:13 +0000 (14:16 -0400)]
remove link-time use of JACK, since it is now dlopen'ed by the chosen backend
Paul Davis [Tue, 8 Oct 2013 18:02:03 +0000 (14:02 -0400)]
restore jack timebase master and jack session callback functionality (moved into the JACK backend)
Paul Davis [Tue, 8 Oct 2013 18:01:43 +0000 (14:01 -0400)]
-arestore jack timebase master and jack session callback functionality (moved into the JACK backend)
Paul Davis [Tue, 8 Oct 2013 16:22:49 +0000 (12:22 -0400)]
updated DE translation from edgar aichinger
Paul Davis [Tue, 8 Oct 2013 16:22:08 +0000 (12:22 -0400)]
updated DE translation from edgar aichinger
Paul Davis [Tue, 8 Oct 2013 16:18:27 +0000 (12:18 -0400)]
fix some issues with window flow when session loading fails; shrink "New Session" button in session setup dialog
Paul Davis [Tue, 8 Oct 2013 00:46:10 +0000 (20:46 -0400)]
possible relief for snapshot loading
Paul Davis [Tue, 8 Oct 2013 00:30:28 +0000 (20:30 -0400)]
remove debug output
Paul Davis [Tue, 8 Oct 2013 00:30:06 +0000 (20:30 -0400)]
use AudioEngine destructor to do necessary stuff when shutting it down, and remove unused Config stuff in AudioEngine
Paul Davis [Tue, 8 Oct 2013 00:29:05 +0000 (20:29 -0400)]
change return type on ARDOUR::cleanup() since nobody cares what it returns
Paul Davis [Tue, 8 Oct 2013 00:28:20 +0000 (20:28 -0400)]
delete the UI from main() to get full cleanup
Paul Davis [Tue, 8 Oct 2013 00:27:54 +0000 (20:27 -0400)]
use new GtkUI design in ARDOUR_UI
Paul Davis [Tue, 8 Oct 2013 00:27:04 +0000 (20:27 -0400)]
change tortured GtkUI startup process into something just a little more sane, and remove "stopping" code since that belongs in a destructor
Paul Davis [Tue, 8 Oct 2013 00:17:49 +0000 (20:17 -0400)]
window proxy should delete its window during its destructor
Paul Davis [Sun, 6 Oct 2013 20:32:02 +0000 (16:32 -0400)]
fix up some aspects of loading from a cmdline session name
John Emmas [Sun, 6 Oct 2013 10:56:03 +0000 (11:56 +0100)]
Merge branch 'master' into windows+cc
Conflicts (hopefully resolved):
gtk2_ardour/ardour_ui.cc
gtk2_ardour/ardour_ui.h
gtk2_ardour/ardour_ui_options.cc
John Emmas [Sun, 6 Oct 2013 10:01:25 +0000 (11:01 +0100)]
Miscellaneous additions to 'msvc_extra_headers'
John Emmas [Sun, 6 Oct 2013 10:00:10 +0000 (11:00 +0100)]
'gtk2_ardour' - In 'Note' c'tor, don't try to set 'rectangle->name' unless 'CANVAS_DEBUG' is defined
John Emmas [Sun, 6 Oct 2013 09:52:41 +0000 (10:52 +0100)]
'gtk2_ardour' - One further Glib::usleep needed
John Emmas [Sun, 6 Oct 2013 09:50:45 +0000 (10:50 +0100)]
'gtk2_ardour' - Some further casting
Paul Davis [Fri, 4 Oct 2013 18:00:20 +0000 (14:00 -0400)]
Merge branch 'audiothreads' of https://github.com/mojofunk/ardour
Paul Davis [Fri, 4 Oct 2013 17:02:41 +0000 (13:02 -0400)]
remove another unnecessary use of libgen.h
Paul Davis [Fri, 4 Oct 2013 17:00:59 +0000 (13:00 -0400)]
use g_strcasecmp() instead of strcasecmp() which doesn't exist with MSVC (some versions, at least), part 2
Paul Davis [Fri, 4 Oct 2013 16:50:03 +0000 (12:50 -0400)]
use g_strcasecmp() instead of strcasecmp() which doesn't exist with MSVC (some versions, at least)
Paul Davis [Fri, 4 Oct 2013 16:46:31 +0000 (12:46 -0400)]
switch from MAXPATHLEN to PATH_MAX, and use <limits.h> not <sys/param.h> for portability
Paul Davis [Fri, 4 Oct 2013 16:46:02 +0000 (12:46 -0400)]
remove unnecessary header include
Paul Davis [Fri, 4 Oct 2013 16:22:00 +0000 (12:22 -0400)]
provide PBD::demangle() even on platforms without HAVE_EXECINFO
Paul Davis [Fri, 4 Oct 2013 15:46:50 +0000 (11:46 -0400)]
remove OSC related cruft from ardour_ui_options.cc
control surface activation is handled via an entirely separate mechanism now
Tim Mayberry [Thu, 3 Oct 2013 09:38:58 +0000 (19:38 +1000)]
Implement JACKAudioBackend::in_process_thread
Tim Mayberry [Wed, 2 Oct 2013 09:40:48 +0000 (19:40 +1000)]
Move processing thread list from ARDOUR::Graph into AudioBackend implementation
Tim Mayberry [Wed, 14 Aug 2013 10:30:09 +0000 (20:30 +1000)]
Add AudioBackendThread class to support different thread type on windows
John Emmas [Thu, 3 Oct 2013 08:57:25 +0000 (09:57 +0100)]
'gtk2_ardour' - Make sure that 'getpid()' can be found when building with MSVC
John Emmas [Thu, 3 Oct 2013 08:52:39 +0000 (09:52 +0100)]
'gtk2_ardour' - Use 'const_iterator' where appropriate, instead of 'iterator'
John Emmas [Thu, 3 Oct 2013 08:50:34 +0000 (09:50 +0100)]
'gtk2_ardour' - Try 'lrintf' instead of 'rintf' which isn't available in MSVC
John Emmas [Thu, 3 Oct 2013 08:48:19 +0000 (09:48 +0100)]
'gtk2_ardour' - 'std::isinf' + 'std::isnan' are not available in MSVC (at least, not VC8)
John Emmas [Thu, 3 Oct 2013 08:43:55 +0000 (09:43 +0100)]
'gtk2_ardour' - When building with MSVC, use 'std::min' + 'std::max' rather than 'fmin' + 'fmax'
John Emmas [Thu, 3 Oct 2013 08:34:52 +0000 (09:34 +0100)]
'gtk2_ardour' - Specify 'Glib::usleep' where needed (global ::usleep is not available for MSVC)
John Emmas [Thu, 3 Oct 2013 08:32:08 +0000 (09:32 +0100)]
'gtk2_ardour' - Use 'floor / floorf' instead of 'trunc / truncf'
John Emmas [Thu, 3 Oct 2013 08:27:40 +0000 (09:27 +0100)]
'gtk2_ardour' - Use 'GStatBuf' instead of 'struct stat'
John Emmas [Thu, 3 Oct 2013 08:12:02 +0000 (09:12 +0100)]
'gtk2_ardour' - Use 'std::vector' to implement an array whose size is unknown (required to be buildable with MSVC)
John Emmas [Thu, 3 Oct 2013 08:06:56 +0000 (09:06 +0100)]
'gtk2_ardour' - Add namespaces + casting where necessary + general bits of 'correctness' to keep MSVC happy
Paul Davis [Wed, 2 Oct 2013 20:17:22 +0000 (16:17 -0400)]
fix up crash caused by changes in object creation order and setting the state of the click IO object
John Emmas [Thu, 26 Sep 2013 14:17:40 +0000 (15:17 +0100)]
Add a header file guard (to prevent multiple #inclusion)
John Emmas [Thu, 26 Sep 2013 10:47:17 +0000 (11:47 +0100)]
Deliberately specify 'Gtk::manage' where necessary (avoids creating ambiguities when we #include this header file elsewhere)
John Emmas [Thu, 26 Sep 2013 10:01:15 +0000 (11:01 +0100)]
A further change which needs to be tested on the other compilers
(splitting a long string into 2 x concatenated strings)
John Emmas [Thu, 26 Sep 2013 09:58:07 +0000 (10:58 +0100)]
'gtk2_ardour (msvc)' - Some changes needed before anything at all will compile
For the most part, the compilation problems are caused by lines such as:-
WM::Proxy<ThemeManager> theme_manager;
Before MSVC will compile the above it needs to know that the specified object type contains an appropriate (i.e. publicly available) default c'tor. Therefore the corresponding header file needs to get #included, rather than just declaring that type to be a class (whilst all classes have a default c'tor, it needn't necessarily be public). The remaining changes are mostly minor.
This commit should be tested ASAP to make sure it doesn't upset the other compilers.