public static XcodeSerializer ReloadTemplate(int i) { string savedPref = EditorPrefs.GetString(keyPrefix + i); string name = savedPref.Substring(0, savedPref.IndexOf('<'));; string xml = savedPref.Substring(savedPref.IndexOf('<')); elements[i] = XcodeSerializer.CreateInstance(xml, true); elements[i].name = name; elements[i].isTemplate = true; return(elements [i]); }
public XcodeProject(string path) { projectPath = path; XcodeSerializer serializer = XcodeSerializer.CreateInstance(); fileReferences = new List<PBXFile> (serializer.LoadPBXFiles()); linkerFlags = serializer.LoadLinkerFlags (); plistEntries = serializer.LoadPListEntries (); headerPaths = serializer.LoadHeaderSearchPaths (); for (int i = 0; i < headerPaths.Count; i++) { headerPaths[i] = serializer.BuildAbsolutePath(headerPaths[i]); } libraryPaths = serializer.LoadLibrarySearchPaths (); for (int i = 0; i < libraryPaths.Count; i++) { libraryPaths[i] = serializer.BuildAbsolutePath(libraryPaths[i]); } }
public static List <XcodeSerializer> GetTemplates() { elements = new List <XcodeSerializer> (); int i = 0; while (EditorPrefs.HasKey(keyPrefix + i)) { string savedPref = EditorPrefs.GetString(keyPrefix + i); string name = savedPref.Substring(0, savedPref.IndexOf('<'));; string xml = savedPref.Substring(savedPref.IndexOf('<')); elements.Add(XcodeSerializer.CreateInstance(xml, true)); elements[i].name = name; elements[i].isTemplate = true; i++; } return(elements); }
void OnGUI() { if (serializer == null) { OnEnable(); } scrollPosition = EditorGUILayout.BeginScrollView(scrollPosition); { serializer.OnGUI(); EditorGUILayout.Space(); templateName = EditorGUILayout.TextField("Template name: ", templateName); if (GUILayout.Button("Save as Template")) { XcodeSerializer templateSerializer = XcodeSerializer.CreateInstance(serializer.ToString(), true); templateSerializer.name = templateName; XcodeTemplateManager.SaveTemplate(templateSerializer); } EditorGUILayout.Space(); for (int i = 0; i < templates.Count; i++) { EditorGUILayout.BeginHorizontal(); { templates[i].display = EditorGUILayout.Foldout(templates[i].display, templates[i].name); if (GUILayout.Button("Import", GUILayout.Width(50))) { serializer.Merge(templates[i]); } if (GUILayout.Button("Delete", GUILayout.Width(50))) { XcodeTemplateManager.DeleteTemplate(templates[i--]); continue; } } EditorGUILayout.EndHorizontal(); BBGuiHelper.BeginIndent(); { if (templates[i].display) { EditorGUILayout.BeginHorizontal(); { EditorGUILayout.LabelField("Name: ", GUILayout.Width(75)); templates[i].name = EditorGUILayout.TextField(templates[i].name); } EditorGUILayout.EndHorizontal(); templates[i].OnGUI(); } } BBGuiHelper.EndIndent(); } } EditorGUILayout.EndScrollView(); //Repaint on Undo if (Event.current.type == EventType.ValidateCommand) { switch (Event.current.commandName) { case "UndoRedoPerformed": this.Repaint(); break; } } }
void OnEnable() { serializer = XcodeSerializer.CreateInstance(); templates = XcodeTemplateManager.GetTemplates(); }