public static PBXGroupData Create(string name, string path, PBXSourceTree tree) { if (name.Contains("/")) { throw new Exception("Group name must not contain '/'"); } PBXGroupData data = new PBXGroupData { guid = PBXGUID.Generate() }; data.SetPropertyString("isa", "PBXGroup"); data.name = name; data.path = path; data.tree = PBXSourceTree.Group; data.children = new GUIDList(); return data; }
private void RemoveGroupChildrenRecursive(PBXGroupData parent) { List<string> list = new List<string>(parent.children); parent.children.Clear(); foreach (string str in list) { if (this.FileRefsGet(str) != null) { foreach (KeyValuePair<string, PBXNativeTargetData> pair in this.nativeTargets.GetEntries()) { this.RemoveFileFromBuild(pair.Value.guid, str); } this.FileRefsRemove(str); } else { PBXGroupData data2 = this.GroupsGet(str); if (data2 != null) { this.RemoveGroupChildrenRecursive(data2); this.GroupsRemove(data2.guid); } } } }
private void RemoveGroupIfEmpty(PBXGroupData gr) { if ((gr.children.Count == 0) && (gr != this.GroupsGetMainGroup())) { PBXGroupData data = this.GroupsGetByChild(gr.guid); data.children.RemoveGUID(gr.guid); this.RemoveGroupIfEmpty(data); this.GroupsRemove(gr.guid); } }
private void GroupsAddDuplicate(PBXGroupData gr) { this.m_Data.GroupsAddDuplicate(gr); }
private void GroupsAdd(string projectPath, PBXGroupData parent, PBXGroupData gr) { this.m_Data.GroupsAdd(projectPath, parent, gr); }
private PBXGroupData GetPBXGroupChildByName(PBXGroupData group, string name) { foreach (string str in (IEnumerable<string>) group.children) { PBXGroupData data = this.GroupsGet(str); if ((data != null) && (data.name == name)) { return data; } } return null; }
private void FileRefsAdd(string realPath, string projectPath, PBXGroupData parent, PBXFileReferenceData fileRef) { this.m_Data.FileRefsAdd(realPath, projectPath, parent, fileRef); }
public static PBXGroupData CreateRelative(string name) { return(PBXGroupData.Create(name, name, PBXSourceTree.Group)); }