protected override void drawContent(Properties properties)
        {
            EditorGUILayout.BeginHorizontal();
            {
                EditorGUILayout.LabelField("Automatic Entity Reference Counting");
                var buttonStyle = new GUIStyle(EditorStyles.miniButtonLeft);
                if (_scriptCallOptimization == AERCMode.Safe)
                {
                    buttonStyle.normal = buttonStyle.active;
                }
                if (GUILayout.Button("Safe", buttonStyle))
                {
                    _scriptCallOptimization = AERCMode.Safe;
                    _scriptingDefineSymbols.RemoveDefineSymbol(ENTITAS_FAST_AND_UNSAFE);
                }

                buttonStyle = new GUIStyle(EditorStyles.miniButtonRight);
                if (_scriptCallOptimization == AERCMode.FastAndUnsafe)
                {
                    buttonStyle.normal = buttonStyle.active;
                }
                if (GUILayout.Button("Fast And Unsafe", buttonStyle))
                {
                    _scriptCallOptimization = AERCMode.FastAndUnsafe;
                    _scriptingDefineSymbols.AddDefineSymbol(ENTITAS_FAST_AND_UNSAFE);
                }
            }
            EditorGUILayout.EndHorizontal();
        }
 public override void Initialize(Properties properties)
 {
     _scriptingDefineSymbols = new ScriptingDefineSymbols();
     _scriptCallOptimization = _scriptingDefineSymbols.buildTargetToDefSymbol.Values
                               .All <string>(defs => defs.Contains(ENTITAS_FAST_AND_UNSAFE))
                                         ? AERCMode.FastAndUnsafe
                                         : AERCMode.Safe;
 }
        public override void Initialize(Preferences preferences)
        {
            _headerTexture = EditorLayout.LoadTexture("l:EntitasHeader");

            _scriptingDefineSymbols = new ScriptingDefineSymbols();
            _aercMode = _scriptingDefineSymbols.buildTargetToDefSymbol.Values
                        .All <string>(defs => defs.Contains(ENTITAS_FAST_AND_UNSAFE))
                ? AERCMode.FastAndUnsafe
                : AERCMode.Safe;
        }