private void ApplyDefine() { m_Defines.Clear(); for (int iGroup = 0; iGroup < m_DefineGroups.Count; iGroup++) { DefineGroup iterGroup = m_DefineGroups[iGroup]; for (int iDefine = 0; iDefine < iterGroup.Defines.Count; iDefine++) { DefineItem iterDefine = iterGroup.Defines[iDefine]; if (iterDefine.Enable) { m_Defines.Add(iterDefine.Define); } } } string[] otherDefines = m_OtherDefines.Split(new char[] { '\n' } , StringSplitOptions.RemoveEmptyEntries); for (int iDefine = 0; iDefine < otherDefines.Length; iDefine++) { m_Defines.Add(otherDefines[iDefine]); } ScriptingDefineSymbolsUtility.SetScriptingDefineSymbols(m_Defines.ToList()); }
private void RefreshDefine() { ScriptingDefineSymbolsUtility.s_TemporarySymbols.Clear(); ScriptingDefineSymbolsUtility.GetScriptingDefineSymbols(ScriptingDefineSymbolsUtility.s_TemporarySymbols); m_Defines = new HashSet <string>(ScriptingDefineSymbolsUtility.s_TemporarySymbols); HashSet <string> otherDefines = new HashSet <string>(m_Defines); for (int iGroup = 0; iGroup < m_DefineGroups.Count; iGroup++) { DefineGroup iterGroup = m_DefineGroups[iGroup]; for (int iDefine = 0; iDefine < iterGroup.Defines.Count; iDefine++) { DefineItem iterDefine = iterGroup.Defines[iDefine]; iterDefine.Enable = m_Defines.Contains(iterDefine.Define); otherDefines.Remove(iterDefine.Define); } } m_OtherDefines = string.Join("\n", otherDefines); }