diff --git a/OpenSim/Region/OptionalModules/ViewerSupport/DynamicFloaterModule.cs b/OpenSim/Region/OptionalModules/ViewerSupport/DynamicFloaterModule.cs index ed44a5aff2..d3adfde11c 100644 --- a/OpenSim/Region/OptionalModules/ViewerSupport/DynamicFloaterModule.cs +++ b/OpenSim/Region/OptionalModules/ViewerSupport/DynamicFloaterModule.cs @@ -55,6 +55,8 @@ namespace OpenSim.Region.OptionalModules.ViewerSupport private Scene m_scene; + private bool m_Enabled = false; + private Dictionary> m_floaters = new Dictionary>(); public string Name @@ -69,6 +71,11 @@ namespace OpenSim.Region.OptionalModules.ViewerSupport public void Initialise(IConfigSource config) { + IConfig moduleConfig = config.Configs["DynamicFloaterModule"]; + if (moduleConfig != null) + { + m_Enabled = moduleConfig.GetBoolean("enabled", false); + } } public void Close() @@ -77,10 +84,13 @@ namespace OpenSim.Region.OptionalModules.ViewerSupport public void AddRegion(Scene scene) { - m_scene = scene; - scene.EventManager.OnNewClient += OnNewClient; - scene.EventManager.OnClientClosed += OnClientClosed; - m_scene.RegisterModuleInterface(this); + if(m_Enabled) + { + m_scene = scene; + scene.EventManager.OnNewClient += OnNewClient; + scene.EventManager.OnClientClosed += OnClientClosed; + m_scene.RegisterModuleInterface(this); + } } public void RegionLoaded(Scene scene) diff --git a/OpenSim/Region/OptionalModules/ViewerSupport/DynamicMenuModule.cs b/OpenSim/Region/OptionalModules/ViewerSupport/DynamicMenuModule.cs index 80feee36e0..95004bb650 100644 --- a/OpenSim/Region/OptionalModules/ViewerSupport/DynamicMenuModule.cs +++ b/OpenSim/Region/OptionalModules/ViewerSupport/DynamicMenuModule.cs @@ -49,6 +49,7 @@ namespace OpenSim.Region.OptionalModules.ViewerSupport { private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); + private bool m_Enabled = false; private class MenuItemData { public string Title; @@ -75,6 +76,11 @@ namespace OpenSim.Region.OptionalModules.ViewerSupport public void Initialise(IConfigSource config) { + IConfig moduleConfig = config.Configs["DynamicMenuModule"]; + if (moduleConfig != null) + { + m_Enabled = moduleConfig.GetBoolean("enabled", false); + } } public void Close() @@ -83,17 +89,22 @@ namespace OpenSim.Region.OptionalModules.ViewerSupport public void AddRegion(Scene scene) { - m_scene = scene; - scene.EventManager.OnRegisterCaps += OnRegisterCaps; - m_scene.RegisterModuleInterface(this); + if (m_Enabled) + { + m_scene = scene; + scene.EventManager.OnRegisterCaps += OnRegisterCaps; + m_scene.RegisterModuleInterface(this); + } } public void RegionLoaded(Scene scene) { - ISimulatorFeaturesModule featuresModule = m_scene.RequestModuleInterface(); - - if (featuresModule != null) - featuresModule.OnSimulatorFeaturesRequest += OnSimulatorFeaturesRequest; + if (m_Enabled) + { + ISimulatorFeaturesModule featuresModule = m_scene.RequestModuleInterface(); + if (featuresModule != null) + featuresModule.OnSimulatorFeaturesRequest += OnSimulatorFeaturesRequest; + } } public void RemoveRegion(Scene scene) diff --git a/OpenSim/Region/OptionalModules/ViewerSupport/SpecialUIModule.cs b/OpenSim/Region/OptionalModules/ViewerSupport/SpecialUIModule.cs index 0bafb34bd7..a29a7deb38 100644 --- a/OpenSim/Region/OptionalModules/ViewerSupport/SpecialUIModule.cs +++ b/OpenSim/Region/OptionalModules/ViewerSupport/SpecialUIModule.cs @@ -54,11 +54,12 @@ namespace OpenSim.Region.OptionalModules.ViewerSupport public class SpecialUIModule : INonSharedRegionModule { private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); + private const string VIEWER_SUPPORT_DIR = "ViewerSupport"; private Scene m_scene; private SimulatorFeaturesHelper m_Helper; - private bool m_Enabled; + private bool m_Enabled = false; private int m_UserLevel; public string Name