/// <summary> /// Adds a system framework dependency. /// /// The function assumes system frameworks are located in System/Library/Frameworks folder /// in the SDK source tree. The framework is added to Frameworks logical folder in the project. /// </summary> /// <param name="framework">framework configuration object</param> public static void AddFramework(ISD_Framework framework) { foreach (var item in ISD_Settings.Instance.Frameworks) { if (item.Type == framework.Type) { ISD_Settings.Instance.Frameworks.Remove(item); break; } } ISD_Settings.Instance.Frameworks.Add(framework); }
public static void Frameworks() { SA_EditorGUILayout.Header("FRAMEWORKS"); EditorGUILayout.BeginHorizontal(); EditorGUI.indentLevel++; ISD_Settings.Instance.IsDefFrameworksOpen = EditorGUILayout.Foldout(ISD_Settings.Instance.IsDefFrameworksOpen, "Default Unity Frameworks (17 Enabled)"); EditorGUI.indentLevel--; EditorGUILayout.EndHorizontal(); if (ISD_Settings.Instance.IsDefFrameworksOpen) { EditorGUILayout.BeginVertical(GUI.skin.box); foreach (ISD_Framework framework in ISD_FrameworkHandler.DefaultFrameworks) { SA_EditorGUILayout.SelectableLabel(framework.Type.ToString() + ".framework", ""); } EditorGUILayout.EndVertical(); EditorGUILayout.Space(); } EditorGUILayout.Space(); SA_EditorGUILayout.HorizontalLine(); EditorGUILayout.LabelField("Custom IOS Frameworks", EditorStyles.boldLabel); SA_EditorGUILayout.ReorderablList(ISD_Settings.Instance.Frameworks, (ISD_Framework framework) => { if (framework.IsOptional && framework.IsEmbeded) { return(framework.Name + " (Optional & Embeded)"); } else if (framework.IsOptional) { return(framework.Name + " (Optional)"); } else if (framework.IsEmbeded) { return(framework.Name + " (Embeded)"); } else { return(framework.Name); } }, (ISD_Framework framework) => { framework.IsOptional = SA_EditorGUILayout.ToggleFiled("Optional", framework.IsOptional, SA_StyledToggle.ToggleType.YesNo); framework.IsEmbeded = SA_EditorGUILayout.ToggleFiled("Embeded", framework.IsEmbeded, SA_StyledToggle.ToggleType.YesNo); } ); EditorGUILayout.BeginHorizontal(); EditorStyles.popup.fixedHeight = 20; NewBaseFrameworkIndex = EditorGUILayout.Popup(NewBaseFrameworkIndex, ISD_FrameworkHandler.BaseFrameworksArray()); if (GUILayout.Button("Add Framework", GUILayout.Height(20))) { var type = ISD_FrameworkHandler.BaseFrameworksArray() [NewBaseFrameworkIndex]; NewBaseFrameworkIndex = 0; ISD_Framework f = new ISD_Framework(type); ISD_API.AddFramework(f); } EditorGUILayout.EndHorizontal(); SA_EditorGUILayout.HorizontalLine(); DrawEmbededBlock(); }