private void SyncDefines() { var selectedPlatformId = PlatformUtils.GetIdByBuildTargetGroup(EditorUserBuildSettings.selectedBuildTargetGroup); var definesSettings = BetterDefinesSettings.Instance; var assetDefines = definesSettings.Defines; for (int i = 0; i < assetDefines.Count; i++) { assetDefines[i].EnableForPlatform(selectedPlatformId, false); } var defines = BetterDefinesUtils.GetSelectedTargetGroupDefines(); for (int i = 0; i < defines.Length; i++) { var define = defines[i]; var isAlreadyAdded = BetterDefinesSettings.Instance.IsDefinePresent(define); if (isAlreadyAdded) { //if (!definesSettings.GetDefineState(define, selectedPlatformId)) //{ definesSettings.SetDefineState(define, selectedPlatformId, true); //} } else { AddElement(define); } } definesSettings.SetScriptableDirty(); }
private static void ApplySelectedConfig(string define) { var settings = BetterDefinesSettings.Instance; foreach (var platformId in settings.GetGlobalUserEnabledPlatformIds()) { var isEnabled = settings.GetDefineState(define, platformId); var buildTargetGroup = PlatformUtils.GetBuildTargetGroupById(platformId); if (buildTargetGroup == BuildTargetGroup.Unknown) { continue; } BetterDefinesUtils.ToggleDefine(define, isEnabled, buildTargetGroup); } }
private static void ActionClickHandler(object target) { var data = (ActionParams)target; switch (data.Id) { case APPLY_CONFIG_ACTION_ID: ApplySelectedConfig(data.Define); break; case ADD_TO_ALL_ACTION_ID: BetterDefinesUtils.AddDefineToAll(data.Define); break; case REMOVE_FROM_ALL_ACTION_ID: BetterDefinesUtils.RemoveDefineFromAll(data.Define); break; default: Debug.LogError("Id not present"); break; } }