Ejemplo n.º 1
0
        void ApplyChanges()
        {
            dirty = false;
            for (int i = 0; i < pbxFileList.Count; i++)
            {
                if (pbxFileList[i].removed)
                {
                    pbxFileList.RemoveAt(i--);
                }
                pbxFileList[i].edited = false;
            }
            for (int i = 0; i < pbxSdkFileList.Count; i++)
            {
                if (pbxSdkFileList[i].removed)
                {
                    pbxSdkFileList.RemoveAt(i--);
                    continue;
                }
                pbxSdkFileList[i].edited = false;
            }
            for (int i = 0; i < pListEntryList.Count; i++)
            {
                if (pListEntryList[i].removed)
                {
                    pListEntryList.RemoveAt(i--);
                    continue;
                }
                pListEntryList[i].edited = false;
            }
            List <PBXFile> allFiles = new List <PBXFile> (pbxFileList);

            allFiles.AddRange(pbxSdkFileList);
            AddPBXFiles(allFiles);
            AddLinkerFlags(linkerFlags);
            AddPListEntries(pListEntryList);
            AddHeaderSearchPaths(headerSearchPaths);
            AddLibrarySearchPaths(librarySearchPaths);
            if (!isTemplate)
            {
                Save();
            }
            else
            {
                XcodeTemplateManager.SaveExistingTemplate(this);
            }
            pbxFileList.Sort();
            pbxSdkFileList.Sort();
            headerSearchPaths.Sort();
            librarySearchPaths.Sort();
        }
Ejemplo n.º 2
0
 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;
         }
     }
 }
Ejemplo n.º 3
0
 void OnEnable()
 {
     serializer = XcodeSerializer.CreateInstance();
     templates  = XcodeTemplateManager.GetTemplates();
 }