상속: PBXObjectData
예제 #1
0
 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;
 }
예제 #2
0
 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);
             }
         }
     }
 }
예제 #3
0
 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);
     }
 }
예제 #4
0
 private void GroupsAddDuplicate(PBXGroupData gr)
 {
     this.m_Data.GroupsAddDuplicate(gr);
 }
예제 #5
0
 private void GroupsAdd(string projectPath, PBXGroupData parent, PBXGroupData gr)
 {
     this.m_Data.GroupsAdd(projectPath, parent, gr);
 }
예제 #6
0
 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;
 }
예제 #7
0
 private void FileRefsAdd(string realPath, string projectPath, PBXGroupData parent, PBXFileReferenceData fileRef)
 {
     this.m_Data.FileRefsAdd(realPath, projectPath, parent, fileRef);
 }
예제 #8
0
파일: PBXGroupData.cs 프로젝트: li5414/Usdk
 public static PBXGroupData CreateRelative(string name)
 {
     return(PBXGroupData.Create(name, name, PBXSourceTree.Group));
 }