]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/packaging/ui/SpdFileContents.java
1. Add scroll bars to Package Library Class Declarations editor.
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / packaging / ui / SpdFileContents.java
index 3b5c686956459e616c8819ad0ed36c081e457b87..a66861c30ca9b3170cf185a7f206f89d06c2d43c 100644 (file)
@@ -348,6 +348,9 @@ public class SpdFileContents {
               if (lc.isSetRecommendedInstanceGuid()) {\r
                 lc.unsetRecommendedInstanceGuid();\r
               }\r
+              if (lc.isSetRecommendedInstanceVersion()) {\r
+                  lc.unsetRecommendedInstanceVersion();\r
+              }\r
             }\r
 \r
             if (stringToList(hdrAttribArch) != null){\r
@@ -433,7 +436,7 @@ public class SpdFileContents {
     }\r
     \r
     public void updateSpdPpiDecl(int i, String name, String cName, String guid, String hlp, String archList, \r
-                                 String modTypeList){\r
+                                 String modTypeList, String guidTypeList){\r
         XmlObject o = psaRoot.getPpiDeclarations();\r
         if (o == null){\r
             return;\r
@@ -449,6 +452,14 @@ public class SpdFileContents {
             e.setCName(cName);\r
             e.setGuidValue(guid);\r
             e.setHelpText(hlp);\r
+            if (stringToList(guidTypeList) != null) {\r
+                e.setGuidTypeList(stringToList(guidTypeList));\r
+            }\r
+            else{\r
+                if (e.isSetGuidTypeList()) {\r
+                  e.unsetGuidTypeList();\r
+                }\r
+            }\r
             if (stringToList(archList) != null){\r
                 e.setSupArchList(stringToList(archList));\r
             }\r
@@ -470,7 +481,7 @@ public class SpdFileContents {
     }\r
     \r
     public void updateSpdProtocolDecl(int i, String name, String cName, String guid, String hlp, String archList, \r
-                                      String modTypeList){\r
+                                      String modTypeList, String guidTypeList){\r
         XmlObject o = psaRoot.getProtocolDeclarations();\r
         if (o == null){\r
             return;\r
@@ -486,6 +497,14 @@ public class SpdFileContents {
             e.setCName(cName);\r
             e.setGuidValue(guid);\r
             e.setHelpText(hlp);\r
+            if (stringToList(guidTypeList) != null) {\r
+                e.setGuidTypeList(stringToList(guidTypeList));\r
+              }\r
+            else{\r
+                if (e.isSetGuidTypeList()) {\r
+                  e.unsetGuidTypeList();\r
+                }\r
+            }\r
             if (stringToList(archList) != null){\r
                 e.setSupArchList(stringToList(archList));\r
             }\r
@@ -551,12 +570,23 @@ public class SpdFileContents {
             e.setTokenSpaceGuidCName(spaceGuid);\r
             e.setDefaultValue(defaultString);\r
             e.setHelpText(help);\r
-            if (archList != null && archList.length() > 0){\r
+            if (stringToList(archList) != null){\r
                 e.setSupArchList(stringToList(archList));\r
             }\r
-            if (modTypeList != null && modTypeList.length() > 0){\r
+            else{\r
+              if (e.isSetSupArchList()) {\r
+                e.unsetSupArchList();\r
+              }\r
+            }\r
+            if (stringToList(modTypeList) != null) {\r
                 e.setSupModuleList(stringToList(modTypeList));\r
             }\r
+            else{\r
+              if (e.isSetSupModuleList()) {\r
+                e.unsetSupModuleList();\r
+              }\r
+            }\r
+            \r
         } \r
         cursor.dispose();\r
     }\r
@@ -778,6 +808,7 @@ public class SpdFileContents {
             protocol[i][3] = e.getHelpText();\r
             protocol[i][4] = listToString(e.getSupArchList());\r
             protocol[i][5] = listToString(e.getSupModuleList());\r
+            protocol[i][6] = listToString(e.getGuidTypeList());\r
             i++;\r
         }\r
     }\r
@@ -817,7 +848,7 @@ public class SpdFileContents {
             ppi[i][3] = e.getHelpText();\r
             ppi[i][4] = listToString(e.getSupArchList());\r
             ppi[i][5] = listToString(e.getSupModuleList());\r
-\r
+            ppi[i][6] = listToString(e.getGuidTypeList());\r
             i++;\r
         }\r
     }\r
@@ -1000,14 +1031,22 @@ public class SpdFileContents {
         lc.setIncludeHeader(clsIncludeFile);\r
         lc.setHelpText(help);\r
 // LAH added logic so you cannot set the version unless the GUID is defined.\r
-/* LAH\r
+\r
         if (clsUsage != null) {\r
           lc.setRecommendedInstanceGuid(clsUsage);\r
           if (instanceVer != null) {\r
             lc.setRecommendedInstanceVersion(instanceVer);\r
           }\r
         }\r
-*/\r
+        else {\r
+          if (lc.isSetRecommendedInstanceGuid()) {\r
+              lc.unsetRecommendedInstanceGuid();\r
+          }\r
+          if (lc.isSetRecommendedInstanceVersion()) {\r
+              lc.unsetRecommendedInstanceVersion();\r
+          }\r
+        }\r
+\r
         if (hdrAttribArch != null) {\r
             lc.setSupArchList(stringToList(hdrAttribArch));\r
         } else {\r
@@ -1149,13 +1188,13 @@ public class SpdFileContents {
    **/\r
     public void genSpdProtocolDeclarations(String protocolDeclEntryName, String protocolDeclCName,\r
                                            String protocolDeclGuid, String protocolDeclFeatureFlag,\r
-                                           Vector<String> archList, Vector<String> modTypeList) {\r
+                                           Vector<String> archList, Vector<String> modTypeList, Vector<String> guidTypeList) {\r
         if (getSpdProtocolDeclarations() == null) {\r
             spdProtocolDeclarations = psaRoot.addNewProtocolDeclarations();\r
         }\r
 \r
         setSpdEntry(protocolDeclEntryName, protocolDeclCName, protocolDeclGuid, protocolDeclFeatureFlag,\r
-                    archList, modTypeList, null, spdProtocolDeclarations);\r
+                    archList, modTypeList, guidTypeList, spdProtocolDeclarations);\r
     }\r
 \r
     /**\r
@@ -1167,12 +1206,12 @@ public class SpdFileContents {
     @param ppiDeclFeatureFlag Reserved\r
    **/\r
     public void genSpdPpiDeclarations(String ppiDeclEntryName, String ppiDeclCName, String ppiDeclGuid,\r
-                                      String ppiDeclFeatureFlag, Vector<String> archList, Vector<String> modTypeList) {\r
+                                      String ppiDeclFeatureFlag, Vector<String> archList, Vector<String> modTypeList, Vector<String> guidTypeList) {\r
         if (getSpdPpiDeclarations() == null) {\r
             spdPpiDeclarations = psaRoot.addNewPpiDeclarations();\r
         }\r
 \r
-        setSpdEntry(ppiDeclEntryName, ppiDeclCName, ppiDeclGuid, ppiDeclFeatureFlag, archList, modTypeList, null, spdPpiDeclarations);\r
+        setSpdEntry(ppiDeclEntryName, ppiDeclCName, ppiDeclGuid, ppiDeclFeatureFlag, archList, modTypeList, guidTypeList, spdPpiDeclarations);\r
     }\r
 \r
     /**\r
@@ -1194,18 +1233,31 @@ public class SpdFileContents {
             e.setCName(cName);\r
             e.setGuidValue(guid);\r
             e.setHelpText(help);\r
-            e.setGuidTypeList(guidTypeList);\r
-            e.setSupArchList(archList);\r
-            e.setSupModuleList(modTypeList);\r
-//            if (guidTypeList != null && guidTypeList.size() > 0) {\r
-//                e.setGuidTypeList(new ArrayList<String>(guidTypeList));\r
-//            }\r
-//            if (archList != null && archList.size() > 0){\r
-//                e.setSupArchList(new ArrayList<String>(archList));\r
-//            }\r
-//            if (modTypeList != null && modTypeList.size() > 0) {\r
-//                e.setSupModuleList(new ArrayList<String>(modTypeList));\r
-//            }\r
+            if (guidTypeList != null) {\r
+                e.setGuidTypeList(guidTypeList);\r
+            }\r
+            else{\r
+                if (e.isSetGuidTypeList()) {\r
+                    e.unsetGuidTypeList();\r
+                }\r
+            }\r
+            if (archList != null) {\r
+                e.setSupArchList(archList);\r
+            }\r
+            else {\r
+                if (e.isSetSupArchList()) {\r
+                    e.unsetSupArchList();\r
+                }\r
+            }\r
+            if (modTypeList != null){\r
+                e.setSupModuleList(modTypeList);\r
+            }\r
+            else {\r
+                if (e.isSetSupModuleList()) {\r
+                    e.unsetSupModuleList();\r
+                }\r
+            }\r
+\r
             return;\r
         }\r
         if (parent instanceof ProtocolDeclarationsDocument.ProtocolDeclarations) {\r
@@ -1215,14 +1267,31 @@ public class SpdFileContents {
             pe.setCName(cName);\r
             pe.setGuidValue(guid);\r
             pe.setHelpText(help);\r
-            pe.setSupArchList(archList);\r
-            pe.setSupModuleList(modTypeList);\r
-//            if (archList != null && archList.size() > 0){\r
-//                pe.setSupArchList(new ArrayList<String>(archList));\r
-//            }\r
-//            if (modTypeList != null && modTypeList.size() > 0) {\r
-//                pe.setSupModuleList(new ArrayList<String>(modTypeList));\r
-//            }\r
+            if (guidTypeList != null) {\r
+                pe.setGuidTypeList(guidTypeList);\r
+            }\r
+            else{\r
+                if (pe.isSetGuidTypeList()) {\r
+                    pe.unsetGuidTypeList();\r
+                }\r
+            }\r
+            if (archList != null) {\r
+                pe.setSupArchList(archList);\r
+            }\r
+            else {\r
+                if (pe.isSetSupArchList()) {\r
+                    pe.unsetSupArchList();\r
+                }\r
+            }\r
+            if (modTypeList != null){\r
+                pe.setSupModuleList(modTypeList);\r
+            }\r
+            else {\r
+                if (pe.isSetSupModuleList()) {\r
+                    pe.unsetSupModuleList();\r
+                }\r
+            }\r
+\r
             return;\r
         }\r
         if (parent instanceof PpiDeclarationsDocument.PpiDeclarations) {\r
@@ -1232,14 +1301,31 @@ public class SpdFileContents {
             ppe.setCName(cName);\r
             ppe.setGuidValue(guid);\r
             ppe.setHelpText(help);\r
-            ppe.setSupArchList(archList);\r
-            ppe.setSupModuleList(modTypeList);\r
-//            if (archList != null && archList.size() > 0){\r
-//                ppe.setSupArchList(new ArrayList<String>(archList));\r
-//            }\r
-//            if (archList != null && modTypeList.size() > 0) {\r
-//                ppe.setSupModuleList(new ArrayList<String>(modTypeList));\r
-//            }\r
+            if (guidTypeList != null) {\r
+                ppe.setGuidTypeList(guidTypeList);\r
+            }\r
+            else{\r
+                if (ppe.isSetGuidTypeList()) {\r
+                    ppe.unsetGuidTypeList();\r
+                }\r
+            }\r
+            if (archList != null) {\r
+                ppe.setSupArchList(archList);\r
+            }\r
+            else {\r
+                if (ppe.isSetSupArchList()) {\r
+                    ppe.unsetSupArchList();\r
+                }\r
+            }\r
+            if (modTypeList != null){\r
+                ppe.setSupModuleList(modTypeList);\r
+            }\r
+            else {\r
+                if (ppe.isSetSupModuleList()) {\r
+                    ppe.unsetSupModuleList();\r
+                }\r
+            }\r
+\r
             return;\r
         }\r
 \r