protected override void DrawContent(Properties properties) { EditorGUILayout.BeginHorizontal(); { EditorGUILayout.LabelField("Automatic Entity Reference Counting"); var buttonStyle = new GUIStyle(EditorStyles.miniButtonLeft); if (mScriptCallOptimization == ARCMode.Safe) { buttonStyle.normal = buttonStyle.active; } if (GUILayout.Button("Safe", buttonStyle)) { mScriptCallOptimization = ARCMode.Safe; mScriptingDefineSymbols.RemoveDefineSymbol(ENTITAS_FAST_AND_UNSAFE); } buttonStyle = new GUIStyle(EditorStyles.miniButtonRight); if (mScriptCallOptimization == ARCMode.FastAndUnsafe) { buttonStyle.normal = buttonStyle.active; } if (GUILayout.Button("Fast And Unsafe", buttonStyle)) { mScriptCallOptimization = ARCMode.FastAndUnsafe; mScriptingDefineSymbols.AddDefineSymbol(ENTITAS_FAST_AND_UNSAFE); } } EditorGUILayout.EndHorizontal(); }
public override void Initialize(Properties properties) { mScriptingDefineSymbols = new ScriptingDefineSymbols(); mScriptCallOptimization = mScriptingDefineSymbols.BuildTargetToDefSymbol.Values .All <string>(defs => defs.Contains(ENTITAS_FAST_AND_UNSAFE)) ? ARCMode.FastAndUnsafe : ARCMode.Safe; }