private JButton getJButtonOK() {\r
if (jButtonOK == null) {\r
jButtonOK = new JButton();\r
- jButtonOK.setBounds(new java.awt.Rectangle(115,200,90,20));\r
+ jButtonOK.setBounds(new java.awt.Rectangle(115, 200, 90, 20));\r
jButtonOK.setText("OK");\r
jButtonOK.addActionListener(this);\r
}\r
super();\r
init();\r
}\r
- \r
+\r
/**\r
- This is the default constructor\r
- \r
- **/\r
- public About(IFrame parentFrame, boolean modal) {\r
- super(parentFrame, modal);\r
- init();\r
- }\r
+ This is the default constructor\r
+ \r
+ **/\r
+ public About(IFrame parentFrame, boolean modal) {\r
+ super(parentFrame, modal);\r
+ init();\r
+ }\r
\r
/**\r
This method initializes this\r
private JPanel getJContentPane() {\r
if (jContentPane == null) {\r
jLabelImage = new JLabel();\r
- jLabelImage.setBounds(new java.awt.Rectangle(63,20,193,58));\r
+ jLabelImage.setBounds(new java.awt.Rectangle(63, 20, 193, 58));\r
jLabelImage.setIcon(new ImageIcon(getClass().getResource("/resources/images/logo.gif")));\r
- \r
+\r
jLabel2 = new JLabel();\r
- jLabel2.setBounds(new java.awt.Rectangle(25,160,270,20));\r
+ jLabel2.setBounds(new java.awt.Rectangle(25, 160, 270, 20));\r
jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);\r
jLabel2.setText("All rights reserved");\r
jLabel1 = new JLabel();\r
- jLabel1.setBounds(new java.awt.Rectangle(25,130,270,20));\r
+ jLabel1.setBounds(new java.awt.Rectangle(25, 130, 270, 20));\r
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);\r
jLabel1.setText("Copyright (c) 2006, Intel Corporation");\r
jLabel = new JLabel();\r
jLabel.setToolTipText("");\r
- jLabel.setBounds(new java.awt.Rectangle(25,90,270,20));\r
+ jLabel.setBounds(new java.awt.Rectangle(25, 90, 270, 20));\r
jLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);\r
jLabel.setText(DataType.PROJECT_NAME + " " + DataType.PROJECT_VERSION);\r
jContentPane = new JPanel();\r
jContentPane.setLayout(null);\r
- jContentPane.setSize(new java.awt.Dimension(320,235));\r
+ jContentPane.setSize(new java.awt.Dimension(320, 235));\r
jContentPane.add(jLabel, null);\r
jContentPane.add(jLabel1, null);\r
jContentPane.add(jLabel2, null);\r
vModuleType.addElement("UEFI_DRIVER");\r
vModuleType.addElement("UEFI_APPLICATION");\r
vModuleType.addElement("USER_DEFINED");\r
- Tools.sortVectorString(vModuleType, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vModuleType, DataType.SORT_TYPE_ASCENDING);\r
}\r
\r
// private void initComponentType() {\r
vFrameworkModuleTypes.addElement("UEFI_DRIVER");\r
vFrameworkModuleTypes.addElement("UEFI_APPLICATION");\r
vFrameworkModuleTypes.addElement("USER_DEFINED");\r
- Tools.sortVectorString(vFrameworkModuleTypes, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vFrameworkModuleTypes, DataType.SORT_TYPE_ASCENDING);\r
}\r
\r
private void initLibClassDef() {\r
\r
public class Identification {\r
\r
- ///\r
- /// Define class members\r
- ///\r
+ ///\r
+ /// Define class members\r
+ ///\r
private String name;\r
- \r
+\r
private String guid;\r
- \r
+\r
private String version;\r
- \r
+\r
private String path;\r
- \r
+\r
public Identification(String name, String guid, String version) {\r
this.name = name;\r
this.guid = guid;\r
this.version = version;\r
}\r
- \r
+\r
public Identification() {\r
- \r
+\r
}\r
- \r
+\r
public Identification(String name, String guid, String version, String path) {\r
- this.name = name;\r
+ this.name = name;\r
this.guid = guid;\r
this.version = version;\r
this.path = path;\r
}\r
- \r
+\r
public boolean equals(Object obj) {\r
- if (obj instanceof Identification) {\r
- Identification id = (Identification)obj;\r
- if (path.equals(id.path)) {\r
- //if ( name.equals(id.name) && guid.equals(id.guid) && version.equals(id.version)) {\r
- return true;\r
- }\r
- return false;\r
- }\r
- else {\r
- return super.equals(obj);\r
- }\r
- }\r
- \r
+ if (obj instanceof Identification) {\r
+ Identification id = (Identification) obj;\r
+ if (path.equals(id.path)) {\r
+ //if ( name.equals(id.name) && guid.equals(id.guid) && version.equals(id.version)) {\r
+ return true;\r
+ }\r
+ return false;\r
+ } else {\r
+ return super.equals(obj);\r
+ }\r
+ }\r
+\r
public boolean equalsWithGuid(Object obj) {\r
- if (obj instanceof Identification) {\r
- Identification id = (Identification)obj;\r
- if ( guid.equalsIgnoreCase(id.guid)) {\r
- if (version == null || id.version == null) {\r
- return true;\r
- }\r
- else if (version.trim().equalsIgnoreCase("") || id.version.trim().equalsIgnoreCase("")){\r
- return true;\r
- }\r
- else if (version.equalsIgnoreCase(id.version)) {\r
- return true;\r
- }\r
- }\r
- return false;\r
- }\r
- else {\r
- return super.equals(obj);\r
- }\r
- }\r
- \r
+ if (obj instanceof Identification) {\r
+ Identification id = (Identification) obj;\r
+ if (guid.equalsIgnoreCase(id.guid)) {\r
+ if (version == null || id.version == null) {\r
+ return true;\r
+ } else if (version.trim().equalsIgnoreCase("") || id.version.trim().equalsIgnoreCase("")) {\r
+ return true;\r
+ } else if (version.equalsIgnoreCase(id.version)) {\r
+ return true;\r
+ }\r
+ }\r
+ return false;\r
+ } else {\r
+ return super.equals(obj);\r
+ }\r
+ }\r
+\r
public void setName(String name) {\r
this.name = name;\r
}\r
public void setVersion(String version) {\r
this.version = version;\r
}\r
- \r
- public void setPath(String path) {\r
- this.path = path;\r
- }\r
+\r
+ public void setPath(String path) {\r
+ this.path = path;\r
+ }\r
\r
public String getGuid() {\r
return guid;\r
return version;\r
}\r
\r
- public String getPath() {\r
- return path;\r
- }\r
- \r
- public int hashCode(){\r
- return guid.toLowerCase().hashCode();\r
- }\r
+ public String getPath() {\r
+ return path;\r
+ }\r
+\r
+ public int hashCode() {\r
+ return guid.toLowerCase().hashCode();\r
+ }\r
}\r
\r
**/\r
public static void main(String[] args) {\r
- // TODO Auto-generated method stub\r
-\r
+ \r
+ }\r
+ \r
+ private static void createDirectory(String path) throws Exception {\r
+ File f = new File(path);\r
+ path = f.getParent();\r
+ FileOperation.newFolder(path);\r
}\r
\r
/**\r
\r
**/\r
public static void saveMsaFile(String path, ModuleSurfaceArea msa) throws Exception {\r
+ //\r
+ // Create the file's directory first\r
+ //\r
+ createDirectory(path);\r
+ \r
//\r
// Remove all empty top level elements\r
//\r
\r
**/\r
public static void saveSpdFile(String path, PackageSurfaceArea spd) throws Exception {\r
+ //\r
+ // Create the file's directory first\r
+ //\r
+ createDirectory(path);\r
+ \r
PackageSurfaceAreaDocument spdDoc = PackageSurfaceAreaDocument.Factory.newInstance();\r
File f = new File(path);\r
\r
\r
**/\r
public static void saveFpdFile(String path, PlatformSurfaceArea fpd) throws Exception {\r
+ //\r
+ // Create the file's directory first\r
+ //\r
+ createDirectory(path);\r
+ \r
PlatformSurfaceAreaDocument fpdDoc = PlatformSurfaceAreaDocument.Factory.newInstance();\r
File f = new File(path);\r
\r
--- /dev/null
+/** @file\r
+ \r
+ The file is used to provide all kinds of sorting method \r
+ \r
+ Copyright (c) 2006, Intel Corporation\r
+ All rights reserved. This program and the accompanying materials\r
+ are licensed and made available under the terms and conditions of the BSD License\r
+ which accompanies this distribution. The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.php\r
+ \r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+ \r
+ **/\r
+\r
+package org.tianocore.frameworkwizard.common;\r
+\r
+import java.util.Vector;\r
+\r
+import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
+import org.tianocore.frameworkwizard.module.Identifications.PcdCoded.PcdIdentification;\r
+import org.tianocore.frameworkwizard.module.Identifications.PcdCoded.PcdVector;\r
+import org.tianocore.frameworkwizard.packaging.PackageIdentification;\r
+import org.tianocore.frameworkwizard.platform.PlatformIdentification;\r
+\r
+public class Sort {\r
+\r
+ /**\r
+ Sort all elements in the vector as the specific sort type\r
+ \r
+ @param v The vector need to be sorted\r
+ @param mode Sort type DataType.Sort_Type_Ascendin and DataType.Sort_Type_Descending\r
+\r
+ **/\r
+ public static void sortVectorString(Vector<String> v, int mode) {\r
+ if (v != null) {\r
+ for (int indexI = 0; indexI < v.size(); indexI++) {\r
+ for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
+ if ((v.get(indexJ).compareTo(v.get(indexI)) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
+ || (v.get(indexI).compareTo(v.get(indexJ)) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
+ String temp = v.get(indexI);\r
+ v.setElementAt(v.get(indexJ), indexI);\r
+ v.setElementAt(temp, indexJ);\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ /**\r
+ Sort all elements of vector and return sorted sequence\r
+ \r
+ @param v The vector need to be sorted\r
+ @param mode Sort type DataType.Sort_Type_Ascendin and DataType.Sort_Type_Descending\r
+ @return Vector<Integer> The sorted sequence\r
+ \r
+ **/\r
+ public static Vector<Integer> getVectorSortSequence(Vector<String> v, int mode) {\r
+ Vector<Integer> vSequence = new Vector<Integer>();\r
+ //\r
+ // Init sequence\r
+ //\r
+ if (v != null) {\r
+ for (int index = 0; index < v.size(); index++) {\r
+ vSequence.addElement(index);\r
+ }\r
+ }\r
+\r
+ //\r
+ // sort and get new sequence\r
+ //\r
+ for (int indexI = 0; indexI < v.size(); indexI++) {\r
+ for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
+ if ((v.get(indexJ).compareTo(v.get(indexI)) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
+ || (v.get(indexI).compareTo(v.get(indexJ)) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
+ //\r
+ // Swap strings\r
+ //\r
+ String tempStr = v.get(indexI);\r
+ v.setElementAt(v.get(indexJ), indexI);\r
+ v.setElementAt(tempStr, indexJ);\r
+\r
+ //\r
+ // Swap sequences\r
+ //\r
+ int tempInt = vSequence.get(indexI);\r
+ vSequence.setElementAt(vSequence.get(indexJ), indexI);\r
+ vSequence.setElementAt(tempInt, indexJ);\r
+ }\r
+ }\r
+ }\r
+\r
+ return vSequence;\r
+ }\r
+\r
+ /**\r
+ Sort all elements of vector as input sequence\r
+ \r
+ @param v The vector need to be sorted\r
+ @param vSequence The sort sequence should be followed\r
+ \r
+ **/\r
+ public static void sortVectorString(Vector<String> v, Vector<Integer> vSequence) {\r
+ if (v != null && vSequence != null && v.size() == vSequence.size()) {\r
+ Vector<String> tempV = new Vector<String>();\r
+ for (int index = 0; index < v.size(); index++) {\r
+ tempV.addElement(v.get(index));\r
+ }\r
+ for (int index = 0; index < v.size(); index++) {\r
+ v.setElementAt(tempV.get(vSequence.get(index)), index);\r
+ }\r
+ }\r
+ }\r
+\r
+ /**\r
+ Sort all modules\r
+ \r
+ @param v\r
+ @param mode\r
+ \r
+ **/\r
+ public static void sortModules(Vector<ModuleIdentification> v, int mode) {\r
+ if (v != null) {\r
+ //\r
+ // sort by name\r
+ //\r
+ for (int indexI = 0; indexI < v.size(); indexI++) {\r
+ for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
+ if ((v.get(indexJ).getName().compareTo(v.get(indexI).getName()) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
+ || (v.get(indexI).getName().compareTo(v.get(indexJ).getName()) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
+ ModuleIdentification temp = v.get(indexI);\r
+ v.setElementAt(v.get(indexJ), indexI);\r
+ v.setElementAt(temp, indexJ);\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ /**\r
+ Sort all packages\r
+ \r
+ @param v\r
+ @param mode\r
+ \r
+ **/\r
+ public static void sortPackages(Vector<PackageIdentification> v, int mode) {\r
+ if (v != null) {\r
+ //\r
+ // sort by name\r
+ //\r
+ for (int indexI = 0; indexI < v.size(); indexI++) {\r
+ for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
+ if ((v.get(indexJ).getName().compareTo(v.get(indexI).getName()) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
+ || (v.get(indexI).getName().compareTo(v.get(indexJ).getName()) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
+ PackageIdentification temp = v.get(indexI);\r
+ v.setElementAt(v.get(indexJ), indexI);\r
+ v.setElementAt(temp, indexJ);\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ /**\r
+ Sort all platforms\r
+ \r
+ @param v\r
+ @param mode\r
+ \r
+ **/\r
+ public static void sortPlatforms(Vector<PlatformIdentification> v, int mode) {\r
+ if (v != null) {\r
+ //\r
+ // sort by name\r
+ //\r
+ for (int indexI = 0; indexI < v.size(); indexI++) {\r
+ for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
+ if ((v.get(indexJ).getName().compareTo(v.get(indexI).getName()) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
+ || (v.get(indexI).getName().compareTo(v.get(indexJ).getName()) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
+ PlatformIdentification temp = v.get(indexI);\r
+ v.setElementAt(v.get(indexJ), indexI);\r
+ v.setElementAt(temp, indexJ);\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ /**\r
+ Sort all pcd entries\r
+ \r
+ @param v\r
+ @param mode\r
+ \r
+ **/\r
+ public static void sortPcds(PcdVector v, int mode) {\r
+ if (v != null) {\r
+ //\r
+ // sort by name\r
+ //\r
+ for (int indexI = 0; indexI < v.size(); indexI++) {\r
+ for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
+ if ((v.getPcd(indexJ).getName().compareTo(v.getPcd(indexI).getName()) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
+ || (v.getPcd(indexI).getName().compareTo(v.getPcd(indexJ).getName()) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
+ PcdIdentification temp = v.getPcd(indexI);\r
+ v.setPcd(v.getPcd(indexJ), indexI);\r
+ v.setPcd(temp, indexJ);\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ /**\r
+ Sort all objects of a vector based on the object's "toString"\r
+ \r
+ @param v\r
+ @param mode\r
+ \r
+ **/\r
+ public static void sortObjectVector(Vector<Object> v, int mode) {\r
+ if (v != null) {\r
+ //\r
+ // sort by name\r
+ //\r
+ for (int indexI = 0; indexI < v.size(); indexI++) {\r
+ for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
+ if ((v.get(indexJ).toString().compareTo(v.get(indexI).toString()) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
+ || (v.get(indexI).toString().compareTo(v.get(indexJ).toString()) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
+ Object temp = v.get(indexI);\r
+ v.setElementAt(v.get(indexJ), indexI);\r
+ v.setElementAt(temp, indexJ);\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+}\r
import javax.swing.JList;\r
import javax.swing.JOptionPane;\r
\r
-import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
-import org.tianocore.frameworkwizard.module.Identifications.PcdCoded.PcdIdentification;\r
-import org.tianocore.frameworkwizard.module.Identifications.PcdCoded.PcdVector;\r
-import org.tianocore.frameworkwizard.packaging.PackageIdentification;\r
-import org.tianocore.frameworkwizard.platform.PlatformIdentification;\r
-\r
/**\r
The class is used to provides some useful interfaces \r
\r
}\r
return arg0;\r
}\r
-\r
- /**\r
- Sort all elements in the vector as the specific sort type\r
- \r
- @param v The vector need to be sorted\r
- @param mode Sort type DataType.Sort_Type_Ascendin and DataType.Sort_Type_Descending\r
-\r
- **/\r
- public static void sortVectorString(Vector<String> v, int mode) {\r
- if (v != null) {\r
- for (int indexI = 0; indexI < v.size(); indexI++) {\r
- for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
- if ((v.get(indexJ).compareTo(v.get(indexI)) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
- || (v.get(indexI).compareTo(v.get(indexJ)) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
- String temp = v.get(indexI);\r
- v.setElementAt(v.get(indexJ), indexI);\r
- v.setElementAt(temp, indexJ);\r
- }\r
- }\r
- }\r
- }\r
- }\r
-\r
- /**\r
- Sort all elements of vector and return sorted sequence\r
- \r
- @param v The vector need to be sorted\r
- @param mode Sort type DataType.Sort_Type_Ascendin and DataType.Sort_Type_Descending\r
- @return Vector<Integer> The sorted sequence\r
- \r
- **/\r
- public static Vector<Integer> getVectorSortSequence(Vector<String> v, int mode) {\r
- Vector<Integer> vSequence = new Vector<Integer>();\r
- //\r
- // Init sequence\r
- //\r
- if (v != null) {\r
- for (int index = 0; index < v.size(); index++) {\r
- vSequence.addElement(index);\r
- }\r
- }\r
-\r
- //\r
- // sort and get new sequence\r
- //\r
- for (int indexI = 0; indexI < v.size(); indexI++) {\r
- for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
- if ((v.get(indexJ).compareTo(v.get(indexI)) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
- || (v.get(indexI).compareTo(v.get(indexJ)) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
- //\r
- // Swap strings\r
- //\r
- String tempStr = v.get(indexI);\r
- v.setElementAt(v.get(indexJ), indexI);\r
- v.setElementAt(tempStr, indexJ);\r
-\r
- //\r
- // Swap sequences\r
- //\r
- int tempInt = vSequence.get(indexI);\r
- vSequence.setElementAt(vSequence.get(indexJ), indexI);\r
- vSequence.setElementAt(tempInt, indexJ);\r
- }\r
- }\r
- }\r
-\r
- return vSequence;\r
- }\r
-\r
- /**\r
- Sort all elements of vector as input sequence\r
- \r
- @param v The vector need to be sorted\r
- @param vSequence The sort sequence should be followed\r
- \r
- **/\r
- public static void sortVectorString(Vector<String> v, Vector<Integer> vSequence) {\r
- if (v != null && vSequence != null && v.size() == vSequence.size()) {\r
- Vector<String> tempV = new Vector<String>();\r
- for (int index = 0; index < v.size(); index++) {\r
- tempV.addElement(v.get(index));\r
- }\r
- for (int index = 0; index < v.size(); index++) {\r
- v.setElementAt(tempV.get(vSequence.get(index)), index);\r
- }\r
- }\r
- }\r
-\r
- /**\r
- Sort all modules\r
- \r
- @param v\r
- @param mode\r
- \r
- **/\r
- public static void sortModules(Vector<ModuleIdentification> v, int mode) {\r
- if (v != null) {\r
- //\r
- // sort by name\r
- //\r
- for (int indexI = 0; indexI < v.size(); indexI++) {\r
- for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
- if ((v.get(indexJ).getName().compareTo(v.get(indexI).getName()) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
- || (v.get(indexI).getName().compareTo(v.get(indexJ).getName()) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
- ModuleIdentification temp = v.get(indexI);\r
- v.setElementAt(v.get(indexJ), indexI);\r
- v.setElementAt(temp, indexJ);\r
- }\r
- }\r
- }\r
- }\r
- }\r
-\r
- /**\r
- Sort all packages\r
- \r
- @param v\r
- @param mode\r
- \r
- **/\r
- public static void sortPackages(Vector<PackageIdentification> v, int mode) {\r
- if (v != null) {\r
- //\r
- // sort by name\r
- //\r
- for (int indexI = 0; indexI < v.size(); indexI++) {\r
- for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
- if ((v.get(indexJ).getName().compareTo(v.get(indexI).getName()) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
- || (v.get(indexI).getName().compareTo(v.get(indexJ).getName()) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
- PackageIdentification temp = v.get(indexI);\r
- v.setElementAt(v.get(indexJ), indexI);\r
- v.setElementAt(temp, indexJ);\r
- }\r
- }\r
- }\r
- }\r
- }\r
-\r
- /**\r
- Sort all platforms\r
- \r
- @param v\r
- @param mode\r
- \r
- **/\r
- public static void sortPlatforms(Vector<PlatformIdentification> v, int mode) {\r
- if (v != null) {\r
- //\r
- // sort by name\r
- //\r
- for (int indexI = 0; indexI < v.size(); indexI++) {\r
- for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
- if ((v.get(indexJ).getName().compareTo(v.get(indexI).getName()) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
- || (v.get(indexI).getName().compareTo(v.get(indexJ).getName()) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
- PlatformIdentification temp = v.get(indexI);\r
- v.setElementAt(v.get(indexJ), indexI);\r
- v.setElementAt(temp, indexJ);\r
- }\r
- }\r
- }\r
- }\r
- }\r
- \r
- /**\r
- Sort all pcd entries\r
- \r
- @param v\r
- @param mode\r
- \r
- **/\r
- public static void sortPcds(PcdVector v, int mode) {\r
- if (v != null) {\r
- //\r
- // sort by name\r
- //\r
- for (int indexI = 0; indexI < v.size(); indexI++) {\r
- for (int indexJ = indexI + 1; indexJ < v.size(); indexJ++) {\r
- if ((v.getPcd(indexJ).getName().compareTo(v.getPcd(indexI).getName()) < 0 && mode == DataType.SORT_TYPE_ASCENDING)\r
- || (v.getPcd(indexI).getName().compareTo(v.getPcd(indexJ).getName()) < 0 && mode == DataType.SORT_TYPE_DESCENDING)) {\r
- PcdIdentification temp = v.getPcd(indexI);\r
- v.setPcd(v.getPcd(indexJ), indexI);\r
- v.setPcd(temp, indexJ);\r
- }\r
- }\r
- }\r
- }\r
- }\r
}\r
import java.util.Vector;\r
\r
public class PcdVector {\r
- \r
+\r
private Vector<PcdIdentification> vPcd = new Vector<PcdIdentification>();\r
- \r
+\r
public int findPcd(PcdIdentification sfi) {\r
for (int index = 0; index < vPcd.size(); index++) {\r
if (vPcd.elementAt(index).equals(sfi)) {\r
public int size() {\r
return this.vPcd.size();\r
}\r
- \r
+\r
public void addAll(PcdVector v) {\r
if (v != null) {\r
for (int index = 0; index < v.size(); index++) {\r
private String filename = null;\r
\r
private String tagName = null;\r
- \r
+\r
private String toolCode = null;\r
- \r
+\r
private String toolChainFamily = null;\r
- \r
+\r
private Vector<String> supArchList = null;\r
\r
private String featureFlag = null;\r
\r
- public SourceFilesIdentification(String strFilename, String strTagName, String strToolCode, String strToolChainFamily,\r
- String strFeatureFlag, Vector<String> arch) {\r
+ public SourceFilesIdentification(String strFilename, String strTagName, String strToolCode,\r
+ String strToolChainFamily, String strFeatureFlag, Vector<String> arch) {\r
this.filename = (strFilename == null ? "" : strFilename);\r
this.tagName = (strTagName == null ? "" : strTagName);\r
this.toolCode = (strToolCode == null ? "" : strToolCode);\r
public void setToolCode(String toolCode) {\r
this.toolCode = toolCode;\r
}\r
- \r
+\r
public boolean equals(SourceFilesIdentification sfid) {\r
- if (this.filename.equals(sfid.filename)) {\r
+ if (this.filename.equals(sfid.filename) && this.tagName.equals(sfid.tagName)\r
+ && this.toolCode.equals(sfid.toolCode) && this.toolChainFamily.equals(sfid.toolChainFamily)\r
+ && this.featureFlag.equals(sfid.featureFlag)\r
+ && this.supArchList.toString().equals(sfid.supArchList.toString())) {\r
return true;\r
}\r
return false;\r
}\r
\r
public void addSourceFiles(SourceFilesIdentification sfi) {\r
- vSourceFiles.addElement(sfi);\r
+ if (findSourceFiles(sfi) == -1) {\r
+ vSourceFiles.addElement(sfi);\r
+ }\r
}\r
\r
public void setSourceFiles(SourceFilesIdentification sfi, int index) {\r
int result = sfd.showDialog();\r
if (result == DataType.RETURN_TYPE_OK) {\r
if (index == -1) {\r
- this.vSourceFiles.addSourceFiles(sfd.getSfid());\r
+ for (int indexI = 0; indexI < sfd.getSfid().length; indexI++) {\r
+ this.vSourceFiles.addSourceFiles(sfd.getSfid()[indexI]);\r
+ }\r
} else {\r
- this.vSourceFiles.setSourceFiles(sfd.getSfid(), index);\r
+ this.vSourceFiles.setSourceFiles(sfd.getSfid()[0], index);\r
}\r
this.showTable();\r
this.save();\r
private JScrollPane jScrollPane = null;\r
\r
private OpeningModuleType omt = null;\r
- \r
+\r
private EnumerationData ed = new EnumerationData();\r
\r
/**\r
jTextAreaLicense.setText("");\r
jTextAreaLicense.setLineWrap(true);\r
jTextAreaLicense.addFocusListener(this);\r
+ jTextAreaLicense.setWrapStyleWord(true);\r
+ jTextAreaLicense.setSelectionStart(0);\r
+ jTextAreaLicense.setSelectionEnd(0);\r
jTextAreaLicense.setToolTipText("The License for this file");\r
}\r
return jTextAreaLicense;\r
jTextAreaDescription.setLineWrap(true);\r
jTextAreaDescription.addFocusListener(this);\r
jTextAreaDescription.setToolTipText("A verbose description of the module");\r
+ jTextAreaDescription.setWrapStyleWord(true);\r
jTextAreaDescription.setSelectionStart(0);\r
jTextAreaDescription.setSelectionEnd(0);\r
}\r
super();\r
this.omt = inMsa;\r
this.msa = omt.getXmlMsa();\r
- \r
+\r
// \r
// Set module definitions default value\r
//\r
if (msa.getModuleDefinitions() == null) {\r
- ModuleDefinitionsDocument.ModuleDefinitions md = ModuleDefinitionsDocument.ModuleDefinitions.Factory.newInstance();\r
+ ModuleDefinitionsDocument.ModuleDefinitions md = ModuleDefinitionsDocument.ModuleDefinitions.Factory\r
+ .newInstance();\r
md.setOutputFileBasename(msa.getMsaHeader().getModuleName());\r
md.setBinaryModule(false);\r
md.setSupportedArchitectures(ed.getVSupportedArchitectures());\r
// this.msaHeader.setSpecification(this.jTextFieldSpecification.getText());\r
\r
msaHeader.setSpecification(this.jTextFieldSpecification.getText());\r
- msaHeader.setModuleType(ModuleTypeDef.Enum.forString(jComboBoxModuleType.getSelectedItem().toString()));\r
msa.setMsaHeader(msaHeader);\r
this.omt.setSaved(false);\r
} catch (Exception e) {\r
if (this.msaHeader == null) {\r
msaHeader = MsaHeaderDocument.MsaHeader.Factory.newInstance();\r
}\r
- \r
+\r
//\r
// Check BaseName\r
//\r
//this.jTextFieldBaseName.requestFocus();\r
return;\r
}\r
- this.msaHeader.setModuleName(this.jTextFieldBaseName.getText());\r
+ if (!this.jTextFieldBaseName.getText().equals(msaHeader.getModuleName())) {\r
+ this.msaHeader.setModuleName(this.jTextFieldBaseName.getText());\r
+ } else {\r
+ return;\r
+ }\r
}\r
\r
//\r
// Check Module Type\r
//\r
if (arg0.getSource() == this.jComboBoxModuleType) {\r
- //msaHeader.setModuleType(ModuleTypeDef.Enum.forString(jComboBoxModuleType.getSelectedItem().toString()));\r
+ if (!jComboBoxModuleType.getSelectedItem().toString().equals(msaHeader.getModuleType().toString())) {\r
+ msaHeader.setModuleType(ModuleTypeDef.Enum.forString(jComboBoxModuleType.getSelectedItem().toString()));\r
+ } else {\r
+ return;\r
+ }\r
}\r
\r
//\r
//this.jTextFieldGuid.requestFocus();\r
return;\r
}\r
- this.msaHeader.setGuidValue(jTextFieldGuid.getText());\r
+ if (!this.jTextFieldGuid.getText().equals(msaHeader.getGuidValue())) {\r
+ this.msaHeader.setGuidValue(this.jTextFieldGuid.getText());\r
+ } else {\r
+ return;\r
+ }\r
}\r
\r
//\r
// Check Version\r
//\r
if (arg0.getSource() == this.jTextFieldVersion) {\r
-\r
if (isEmpty(this.jTextFieldVersion.getText())) {\r
Log.err("Version couldn't be empty");\r
//this.jTextFieldVersion.requestFocus();\r
//this.jTextFieldVersion.requestFocus();\r
return;\r
}\r
- this.msaHeader.setVersion(this.jTextFieldVersion.getText());\r
+ if (!this.jTextFieldVersion.getText().equals(msaHeader.getVersion())) {\r
+ this.msaHeader.setVersion(this.jTextFieldVersion.getText());\r
+ } else {\r
+ return;\r
+ }\r
}\r
\r
//\r
//this.jTextFieldAbstract.requestFocus();\r
return;\r
}\r
- this.msaHeader.setAbstract(this.jTextFieldAbstract.getText());\r
+ if (!this.jTextFieldAbstract.getText().equals(msaHeader.getAbstract())) {\r
+ this.msaHeader.setAbstract(this.jTextFieldAbstract.getText());\r
+ } else {\r
+ return;\r
+ }\r
}\r
\r
//\r
//this.jTextAreaDescription.requestFocus();\r
return;\r
}\r
- this.msaHeader.setDescription(this.jTextAreaDescription.getText());\r
+ if (!this.jTextAreaDescription.getText().equals(msaHeader.getDescription())) {\r
+ this.msaHeader.setDescription(this.jTextAreaDescription.getText());\r
+ } else {\r
+ return;\r
+ }\r
}\r
\r
//\r
//this.jTextFieldCopyright.requestFocus();\r
return;\r
}\r
- this.msaHeader.setCopyright(this.jTextFieldCopyright.getText());\r
+ if (!this.jTextFieldCopyright.getText().equals(msaHeader.getCopyright())) {\r
+ this.msaHeader.setCopyright(this.jTextFieldCopyright.getText());\r
+ } else {\r
+ return;\r
+ }\r
}\r
\r
//\r
return;\r
}\r
if (this.msaHeader.getLicense() != null) {\r
- this.msaHeader.getLicense().setStringValue(this.jTextAreaLicense.getText());\r
+ if (!this.jTextAreaLicense.getText().equals(msaHeader.getLicense().getStringValue())) {\r
+ this.msaHeader.getLicense().setStringValue(this.jTextAreaLicense.getText());\r
+ } else {\r
+ return;\r
+ }\r
} else {\r
License mLicense = License.Factory.newInstance();\r
mLicense.setStringValue(this.jTextAreaLicense.getText());\r
mLicense.setURL(this.jTextFieldURL.getText());\r
this.msaHeader.setLicense(mLicense);\r
} else {\r
- this.msaHeader.getLicense().setURL(this.jTextFieldURL.getText());\r
+ if (!this.jTextFieldURL.getText().equals(msaHeader.getLicense().getURL())) {\r
+ this.msaHeader.getLicense().setURL(this.jTextFieldURL.getText());\r
+ } else {\r
+ return;\r
+ }\r
}\r
}\r
}\r
-\r
+ \r
this.save();\r
}\r
}\r
//\r
// Not used by UI\r
//\r
- private SourceFilesIdentification sfid = null;\r
+ private SourceFilesIdentification sfid[] = null;\r
\r
private String msaFileName = "";\r
\r
**/\r
private void init(SourceFilesIdentification inSourceFilesIdentifications, String fileName) {\r
init();\r
- this.sfid = inSourceFilesIdentifications;\r
+ //this.sfid = inSourceFilesIdentifications;\r
this.msaFileName = fileName;\r
\r
- if (this.sfid != null) {\r
- this.jTextFieldFileName.setText(sfid.getFilename());\r
- this.jTextFieldTagName.setText(sfid.getTagName());\r
- this.jTextFieldToolCode.setText(sfid.getToolCode());\r
- this.jTextFieldToolChainFamily.setText(sfid.getToolChainFamily());\r
- jTextFieldFeatureFlag.setText(sfid.getFeatureFlag());\r
- this.jArchCheckBox.setSelectedItems(sfid.getSupArchList());\r
+ if (inSourceFilesIdentifications != null) {\r
+ this.jTextFieldFileName.setText(inSourceFilesIdentifications.getFilename());\r
+ this.jTextFieldTagName.setText(inSourceFilesIdentifications.getTagName());\r
+ this.jTextFieldToolCode.setText(inSourceFilesIdentifications.getToolCode());\r
+ this.jTextFieldToolChainFamily.setText(inSourceFilesIdentifications.getToolChainFamily());\r
+ jTextFieldFeatureFlag.setText(inSourceFilesIdentifications.getFeatureFlag());\r
+ this.jArchCheckBox.setSelectedItems(inSourceFilesIdentifications.getSupArchList());\r
}\r
}\r
\r
}\r
}\r
\r
- private SourceFilesIdentification getCurrentSourceFiles() {\r
+ private SourceFilesIdentification[] getCurrentSourceFiles() {\r
String name = this.jTextFieldFileName.getText();\r
+ String s[] = name.split(";");\r
String tagName = this.jTextFieldTagName.getText();\r
String toolCode = this.jTextFieldToolCode.getText();\r
String tcf = this.jTextFieldToolChainFamily.getText();\r
String featureFlag = this.jTextFieldFeatureFlag.getText();\r
Vector<String> arch = this.jArchCheckBox.getSelectedItemsVector();\r
- sfid = new SourceFilesIdentification(name, tagName, toolCode, tcf, featureFlag, arch);\r
+ sfid = new SourceFilesIdentification[s.length];\r
+ for (int index = 0; index < s.length; index++) {\r
+ sfid[index] = new SourceFilesIdentification(s[index], tagName, toolCode, tcf, featureFlag, arch);\r
+ }\r
return sfid;\r
}\r
\r
private void selectFile() {\r
JFileChooser fc = new JFileChooser();\r
fc.setCurrentDirectory(new File(Tools.getFilePathOnly(msaFileName)));\r
+ fc.setMultiSelectionEnabled(true);\r
int result = fc.showOpenDialog(new JPanel());\r
if (result == JFileChooser.APPROVE_OPTION) {\r
- this.jTextFieldFileName.setText(fc.getSelectedFile().getName());\r
+ File f[] = fc.getSelectedFiles();\r
+ String s = "";\r
+ for (int index = 0; index < f.length; index++) {\r
+ s = s + f[index].getName() + ";";\r
+ }\r
+ this.jTextFieldFileName.setText(s);\r
}\r
}\r
\r
- public SourceFilesIdentification getSfid() {\r
+ public SourceFilesIdentification[] getSfid() {\r
return sfid;\r
}\r
\r
- public void setSfid(SourceFilesIdentification sfid) {\r
+ public void setSfid(SourceFilesIdentification[] sfid) {\r
this.sfid = sfid;\r
}\r
}\r
import org.tianocore.frameworkwizard.common.DataType;\r
import org.tianocore.frameworkwizard.common.Log;\r
import org.tianocore.frameworkwizard.common.SaveFile;\r
+import org.tianocore.frameworkwizard.common.Sort;\r
import org.tianocore.frameworkwizard.common.Tools;\r
import org.tianocore.frameworkwizard.common.Identifications.Identification;\r
import org.tianocore.frameworkwizard.common.Identifications.OpenFile;\r
\r
}\r
}\r
- Tools.sortPackages(vPackageList, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortPackages(vPackageList, DataType.SORT_TYPE_ASCENDING);\r
return vPackageList;\r
}\r
\r
}\r
v.addElement(new ModuleIdentification(id, pid));\r
}\r
- Tools.sortModules(v, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortModules(v, DataType.SORT_TYPE_ASCENDING);\r
return v;\r
\r
}\r
}\r
}\r
}\r
- Tools.sortModules(vModuleList, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortModules(vModuleList, DataType.SORT_TYPE_ASCENDING);\r
return vModuleList;\r
}\r
\r
Log.err("Open Platform Surface Area " + path, "Invalid file type");\r
}\r
}\r
- Tools.sortPlatforms(vPlatformList, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortPlatforms(vPlatformList, DataType.SORT_TYPE_ASCENDING);\r
return vPlatformList;\r
}\r
\r
}\r
}\r
}\r
- Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r
}\r
}\r
}\r
- Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r
}\r
}\r
}\r
- Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r
}\r
}\r
}\r
- Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r
}\r
}\r
}\r
- Tools.sortPcds(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortPcds(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r
// TODO Auto-generated catch block\r
}\r
}\r
- Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r
// TODO Auto-generated catch block\r
}\r
}\r
- Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r
// TODO Auto-generated catch block\r
}\r
}\r
- Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r
// TODO Auto-generated catch block\r
}\r
}\r
- Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r
// TODO Auto-generated catch block\r
}\r
}\r
- Tools.sortPcds(vector, DataType.SORT_TYPE_ASCENDING);\r
+ Sort.sortPcds(vector, DataType.SORT_TYPE_ASCENDING);\r
return vector;\r
}\r
\r