Merge branch 'cairocanvas'
[ardour.git] / libs / ardour / globals.cc
index 71d65a60f37a317f7024a614907b28be72bd6385..48abda8cfcb8367a18bdfa6962823aff2cad581b 100644 (file)
@@ -89,6 +89,7 @@
 #include "ardour/midi_region.h"
 #include "ardour/midiport_manager.h"
 #include "ardour/mix.h"
+#include "ardour/operations.h"
 #include "ardour/panner_manager.h"
 #include "ardour/plugin_manager.h"
 #include "ardour/process_thread.h"
@@ -126,6 +127,7 @@ mix_buffers_no_gain_t   ARDOUR::mix_buffers_no_gain = 0;
 
 PBD::Signal1<void,std::string> ARDOUR::BootMessage;
 PBD::Signal3<void,std::string,std::string,bool> ARDOUR::PluginScanMessage;
+PBD::Signal1<void,int> ARDOUR::PluginScanTimeout;
 PBD::Signal0<void> ARDOUR::GUIIdle;
 
 namespace ARDOUR {
@@ -240,10 +242,12 @@ ARDOUR::init (bool use_windows_vst, bool try_optimization, const char* localedir
 
 #ifdef ENABLE_NLS
        (void) bindtextdomain(PACKAGE, localedir);
+       (void) bind_textdomain_codeset (PACKAGE, "UTF-8");
 #endif
 
        SessionEvent::init_event_pool ();
 
+       Operations::make_operations_quarks ();
        SessionObject::make_property_quarks ();
        Region::make_property_quarks ();
        MidiRegion::make_property_quarks ();
@@ -364,7 +368,7 @@ ARDOUR::init_post_engine ()
 
        /* find plugins */
 
-       ARDOUR::PluginManager::instance().refresh ();
+       ARDOUR::PluginManager::instance().refresh (!Config->get_discover_vst_on_start());
 }
 
 void
@@ -388,6 +392,8 @@ ARDOUR::cleanup ()
 #ifdef LXVST_SUPPORT
        vstfx_exit();
 #endif
+       delete &PluginManager::instance();
+       delete Config;
        PBD::cleanup ();
 
        return;
@@ -400,11 +406,9 @@ ARDOUR::find_bindings_files (map<string,string>& files)
        Searchpath spath = ardour_config_search_path();
 
        if (getenv ("ARDOUR_SAE")) {
-               Glib::PatternSpec pattern("*SAE-*.bindings");
-               find_matching_files_in_search_path (spath, pattern, found);
+               find_files_matching_pattern (found, spath, "*SAE-*.bindings");
        } else {
-               Glib::PatternSpec pattern("*.bindings");
-               find_matching_files_in_search_path (spath, pattern, found);
+               find_files_matching_pattern (found, spath, "*.bindings");
        }
 
        if (found.empty()) {