public bool CheckForNecessaryResets(MemberInfo member, object settingsNode, object propertyValue) { if (propertyValue == null) { return(true); } var dict = (XmlDictionary <string, CompilerConfigurationNode>)propertyValue; if (dict.Count == 0) { return(true); } foreach (var kvp in dict.ToList()) { if (kvp.Value != null && kvp.Value.OpenSimCompilerSettings != null) { DefaultValueInitializer.DoNeccessaryResets(kvp.Value); continue; } var initNode = new CompilerConfigurationNode(); dict[kvp.Key] = initNode; DefaultValueInitializer.Init(initNode); } return(false); }
public object GetDefaultValue(MemberInfo member, object settingsNode) { var d = new XmlDictionary <string, CompilerConfigurationNode>(); var clientCode = new CompilerConfigurationNode { OpenSimCompilerSettings = LSLOpenSimCompilerSettings.CreateOpenSimClientSide() }; clientCode.OpenSimCompilerSettings.ScriptHeader = ClientSideScriptCompilerHeader; d.Add("OpenSim Client Code", clientCode); var clientCodeCoOp = new CompilerConfigurationNode { OpenSimCompilerSettings = LSLOpenSimCompilerSettings.CreateOpenSimClientSide() }; clientCodeCoOp.OpenSimCompilerSettings.ScriptHeader = ClientSideScriptCompilerHeader; clientCodeCoOp.OpenSimCompilerSettings.InsertCoOpTerminationCalls = true; d.Add("OpenSim Client Code (co-op Stop)", clientCodeCoOp); var serverCode = new CompilerConfigurationNode { OpenSimCompilerSettings = LSLOpenSimCompilerSettings.CreateOpenSimServerSide() }; serverCode.OpenSimCompilerSettings.ScriptHeader = ServerSideScriptCompilerHeader; d.Add("OpenSim Server Code", serverCode); var serverCodeCoOp = new CompilerConfigurationNode { OpenSimCompilerSettings = LSLOpenSimCompilerSettings.CreateOpenSimServerSide() }; serverCodeCoOp.OpenSimCompilerSettings.ScriptHeader = ServerSideScriptCompilerHeader; serverCodeCoOp.OpenSimCompilerSettings.InsertCoOpTerminationCalls = true; d.Add("OpenSim Server Code (co-op Stop)", serverCodeCoOp); return(d); }