X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fvideo_timeline.cc;h=f87883377faaf8daabf20366334c55538cd614f7;hb=5fef65538040fbac1b9edd1847a269aa925a49c9;hp=c77480ffc3e2101e506f203e539354b73b01b84d;hpb=6a5d805b383cd71bb1d0984964439c5ec08e9270;p=ardour.git diff --git a/gtk2_ardour/video_timeline.cc b/gtk2_ardour/video_timeline.cc index c77480ffc3..f87883377f 100644 --- a/gtk2_ardour/video_timeline.cc +++ b/gtk2_ardour/video_timeline.cc @@ -34,7 +34,6 @@ #include "ardour_ui.h" #include "public_editor.h" #include "gui_thread.h" -#include "utils.h" #include "utils_videotl.h" #include "rgb_macros.h" #include "video_timeline.h" @@ -735,37 +734,41 @@ VideoTimeLine::find_xjadeo () { #endif if (getenv("XJREMOTE")) { _xjadeo_bin = getenv("XJREMOTE"); - } else if (find_file_in_search_path (Searchpath(Glib::getenv("PATH")), X_("xjremote"), xjadeo_file_path)) { + } else if (find_file (Searchpath(Glib::getenv("PATH")), X_("xjremote"), xjadeo_file_path)) { _xjadeo_bin = xjadeo_file_path; + } else if (find_file (Searchpath(Glib::getenv("PATH")), X_("xjadeo"), xjadeo_file_path)) { + _xjadeo_bin = xjadeo_file_path; + } +#ifdef __APPLE__ + else if (Glib::file_test(X_("/Applications/Xjadeo.app/Contents/MacOS/xjremote"), Glib::FILE_TEST_EXISTS|Glib::FILE_TEST_IS_EXECUTABLE)) { + _xjadeo_bin = X_("/Applications/Xjadeo.app/Contents/MacOS/xjremote"); + } + else if (Glib::file_test(X_("/Applications/Jadeo.app/Contents/MacOS/xjremote"), Glib::FILE_TEST_EXISTS|Glib::FILE_TEST_IS_EXECUTABLE)) { + _xjadeo_bin = X_("/Applications/Jadeo.app/Contents/MacOS/xjremote"); } +#endif #ifdef PLATFORM_WINDOWS - /* old xjadeo, typo in key <= 0.7.6 */ - else if ( (ERROR_SUCCESS == RegOpenKeyExA (HKEY_LOCAL_MACHINE, "Software\\RSSxjadeo", 0, KEY_READ, &key)) + else if ( (ERROR_SUCCESS == RegOpenKeyExA (HKEY_LOCAL_MACHINE, "Software\\RSS\\xjadeo", 0, KEY_READ, &key)) && (ERROR_SUCCESS == RegQueryValueExA (key, "Install_Dir", 0, NULL, reinterpret_cast(tmp), &size)) ) { - _xjadeo_bin = std::string(g_build_filename(Glib::locale_to_utf8(tmp).c_str(), "xjadeo.exe", 0)); + _xjadeo_bin = std::string(g_build_filename(Glib::locale_to_utf8(tmp).c_str(), "xjadeo.exe", NULL)); } - else if ( (ERROR_SUCCESS == RegOpenKeyExA (HKEY_LOCAL_MACHINE, "Software\\RSS\\xjadeo", 0, KEY_READ, &key)) + else if ( (ERROR_SUCCESS == RegOpenKeyExA (HKEY_LOCAL_MACHINE, "Software\\RSS\\xjadeo", 0, KEY_READ | KEY_WOW64_32KEY, &key)) && (ERROR_SUCCESS == RegQueryValueExA (key, "Install_Dir", 0, NULL, reinterpret_cast(tmp), &size)) ) { - _xjadeo_bin = std::string(g_build_filename(Glib::locale_to_utf8(tmp).c_str(), "xjadeo.exe", 0)); + _xjadeo_bin = std::string(g_build_filename(Glib::locale_to_utf8(tmp).c_str(), "xjadeo.exe", NULL)); } - else if (program_files && Glib::file_test(g_build_filename(program_files, "xjadeo", "xjadeo.exe", 0), Glib::FILE_TEST_EXISTS)) + else if (program_files && Glib::file_test(g_build_filename(program_files, "xjadeo", "xjadeo.exe", NULL), Glib::FILE_TEST_EXISTS)) { - _xjadeo_bin = std::string(g_build_filename(program_files, "harvid", "xjadeo.exe", 0)); - } -#endif - /* generic fallbacks to try */ -#ifdef __APPLE__ - else if (Glib::file_test(X_("/Applications/Jadeo.app/Contents/MacOS/xjremote"), Glib::FILE_TEST_EXISTS|Glib::FILE_TEST_IS_EXECUTABLE)) { - _xjadeo_bin = X_("/Applications/Jadeo.app/Contents/MacOS/xjremote"); + _xjadeo_bin = std::string(g_build_filename(program_files, "xjadeo", "xjadeo.exe", NULL)); } -#endif + /* generic fallback to try */ else if (Glib::file_test(X_("C:\\Program Files\\xjadeo\\xjadeo.exe"), Glib::FILE_TEST_EXISTS)) { _xjadeo_bin = X_("C:\\Program Files\\xjadeo\\xjadeo.exe"); } +#endif else { _xjadeo_bin = X_(""); warning << _("Video-monitor 'xjadeo' was not found. Please install http://xjadeo.sf.net/ "