import javax.swing.table.DefaultTableModel;\r
import javax.swing.table.TableModel;\r
\r
-import org.apache.xmlbeans.XmlObject;\r
import org.tianocore.frameworkwizard.common.DataValidation;\r
import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType;\r
-import org.tianocore.frameworkwizard.platform.ui.global.GlobalData;\r
+import org.tianocore.frameworkwizard.platform.ui.global.WorkspaceProfile;\r
import org.tianocore.frameworkwizard.platform.ui.global.SurfaceAreaQuery;\r
import org.tianocore.frameworkwizard.platform.ui.id.ModuleIdentification;\r
import org.tianocore.frameworkwizard.platform.ui.id.PackageIdentification;\r
import java.util.HashMap;\r
import java.util.Iterator;\r
import java.util.ListIterator;\r
-import java.util.Map;\r
import java.util.Set;\r
import java.util.Vector;\r
\r
// display pcd for key.\r
//\r
model.setRowCount(0);\r
+ jTextAreaPcdHelp.setText("");\r
+ jComboBoxItemType.setSelectedIndex(-1);\r
+ jTextFieldMaxDatumSize.setText("");\r
+ jTextFieldPcdDefault.setText("");\r
int pcdCount = ffc.getPcdDataCount(i);\r
if (pcdCount != 0) {\r
String[][] saa = new String[pcdCount][7];\r
String[][] saa = new String[instanceCount][5];\r
ffc.getLibraryInstances(key, saa);\r
for (int i = 0; i < saa.length; ++i) {\r
- ModuleIdentification mi = GlobalData.getModuleId(saa[i][1] + " " + saa[i][2] + " " + saa[i][3] + " " + saa[i][4]);\r
+ ModuleIdentification mi = WorkspaceProfile.getModuleId(saa[i][1] + " " + saa[i][2] + " " + saa[i][3] + " " + saa[i][4]);\r
if (mi != null) {\r
saa[i][0] = mi.getName();\r
saa[i][2] = mi.getVersion();\r
}\r
\r
private void resolveLibraryInstances(String key) {\r
- ModuleIdentification mi = GlobalData.getModuleId(key);\r
+ ModuleIdentification mi = WorkspaceProfile.getModuleId(key);\r
PackageIdentification[] depPkgList = null;\r
try{\r
- Map<String, XmlObject> m = GlobalData.getNativeMsa(mi);\r
- SurfaceAreaQuery.setDoc(m);\r
//\r
// Get dependency pkg list into which we will search lib instances.\r
//\r
- depPkgList = SurfaceAreaQuery.getDependencePkg(null);\r
+ depPkgList = SurfaceAreaQuery.getDependencePkg(null, mi);\r
//\r
// Get the lib class consumed, produced by this module itself.\r
//\r
- String[] classConsumed = SurfaceAreaQuery.getLibraryClasses("ALWAYS_CONSUMED");\r
+ Vector<String> vClassConsumed = SurfaceAreaQuery.getLibraryClasses("ALWAYS_CONSUMED", mi);\r
\r
if (this.classConsumed == null) {\r
this.classConsumed = new HashMap<String, ArrayList<String>>();\r
}\r
\r
- for(int i = 0; i < classConsumed.length; ++i){\r
- ArrayList<String> consumedBy = this.classConsumed.get(classConsumed[i]);\r
+ for(int i = 0; i < vClassConsumed.size(); ++i){\r
+ ArrayList<String> consumedBy = this.classConsumed.get(vClassConsumed.get(i));\r
if (consumedBy == null) {\r
consumedBy = new ArrayList<String>();\r
}\r
consumedBy.add(key);\r
- this.classConsumed.put(classConsumed[i], consumedBy);\r
+ this.classConsumed.put(vClassConsumed.get(i), consumedBy);\r
}\r
\r
- String[] classProduced = SurfaceAreaQuery.getLibraryClasses("ALWAYS_PRODUCED");\r
+ Vector<String> vClassProduced = SurfaceAreaQuery.getLibraryClasses("ALWAYS_PRODUCED", mi);\r
if (this.classProduced == null) {\r
this.classProduced = new ArrayList<String>();\r
}\r
- for(int i = 0; i < classProduced.length; ++i){\r
- if (!this.classProduced.contains(classProduced[i])){\r
- this.classProduced.add(classProduced[i]);\r
+ for(int i = 0; i < vClassProduced.size(); ++i){\r
+ if (!this.classProduced.contains(vClassProduced.get(i))){\r
+ this.classProduced.add(vClassProduced.get(i));\r
}\r
}\r
\r
ArrayList<String> al = new ArrayList<String>();\r
\r
for (int i = 0; i < depPkgList.length; ++i) {\r
- Set<ModuleIdentification> smi = GlobalData.getModules(depPkgList[i]);\r
+ Set<ModuleIdentification> smi = WorkspaceProfile.getModules(depPkgList[i]);\r
Iterator ismi = smi.iterator();\r
while(ismi.hasNext()) {\r
ModuleIdentification mi = (ModuleIdentification)ismi.next();\r
}\r
\r
private void removeInstance(String key) {\r
- ModuleIdentification mi = GlobalData.getModuleId(key); \r
+ ModuleIdentification mi = WorkspaceProfile.getModuleId(key); \r
//\r
// remove pcd information of instance from current ModuleSA\r
//\r
private String[] getClassProduced(ModuleIdentification mi){\r
\r
try{\r
- Map<String, XmlObject> m = GlobalData.getNativeMsa(mi);\r
- SurfaceAreaQuery.setDoc(m);\r
- String[] clsProduced = SurfaceAreaQuery.getLibraryClasses("ALWAYS_PRODUCED");\r
- return clsProduced;\r
+ Vector<String> clsProduced = SurfaceAreaQuery.getLibraryClasses("ALWAYS_PRODUCED", mi);\r
+ String[] sClassProduced = new String[clsProduced.size()];\r
+ for (int i = 0; i < clsProduced.size(); ++i) {\r
+ sClassProduced[i] = clsProduced.get(i);\r
+ }\r
+ return sClassProduced;\r
\r
}catch (Exception e) {\r
e.printStackTrace();\r
\r
private String[] getClassConsumed(ModuleIdentification mi){\r
\r
- String[] clsConsumed = null;\r
try{\r
- Map<String, XmlObject> m = GlobalData.getNativeMsa(mi);\r
- SurfaceAreaQuery.setDoc(m);\r
- clsConsumed = SurfaceAreaQuery.getLibraryClasses("ALWAYS_CONSUMED");\r
- \r
+ Vector<String> clsConsumed = SurfaceAreaQuery.getLibraryClasses("ALWAYS_CONSUMED", mi);\r
+ String[] sClassConsumed = new String[clsConsumed.size()];\r
+ for (int i = 0; i < clsConsumed.size(); ++i) {\r
+ sClassConsumed[i] = clsConsumed.get(i);\r
+ }\r
+ return sClassConsumed;\r
}catch (Exception e) {\r
e.printStackTrace();\r
}\r
- return clsConsumed;\r
+ return new String[0];\r
}\r
\r
private void showClassToResolved(){\r
while(li.hasNext()){\r
\r
String[] s = {li.next()};\r
- if (classConsumed.get(s[0]) == null) {\r
- continue;\r
- }\r
- if (classConsumed.get(s[0]).size() == 0) {\r
- continue;\r
- }\r
+// if (classConsumed.get(s[0]) == null) {\r
+// continue;\r
+// }\r
+// if (classConsumed.get(s[0]).size() == 0) {\r
+// continue;\r
+// }\r
if (!classProduced.contains(s[0])){\r
libClassTableModel.addRow(s);\r
}\r
ffc.getLibraryInstances(moduleKey, saa);\r
\r
try{\r
- if (ffc.getPcdBuildDataInfo(GlobalData.getModuleId(moduleKey), cName, tsGuid, sa)) {\r
+ if (ffc.getPcdBuildDataInfo(WorkspaceProfile.getModuleId(moduleKey), cName, tsGuid, sa)) {\r
return;\r
}\r
for (int j = 0; j < saa.length; ++j) {\r
- if (ffc.getPcdBuildDataInfo(GlobalData.getModuleId(saa[j][1] + " " + saa[j][2] + " " + saa[j][3] + " " + saa[j][4]),\r
+ if (ffc.getPcdBuildDataInfo(WorkspaceProfile.getModuleId(saa[j][1] + " " + saa[j][2] + " " + saa[j][3] + " " + saa[j][4]),\r
cName, tsGuid, sa)) {\r
return;\r
}\r
while(li.hasNext()) {\r
String instance = li.next();\r
String[] s = {"", "", "", "", ""};\r
- if (GlobalData.getModuleId(instance) != null) {\r
- s[0] = GlobalData.getModuleId(instance).getName();\r
+ if (WorkspaceProfile.getModuleId(instance) != null) {\r
+ s[0] = WorkspaceProfile.getModuleId(instance).getName();\r
}\r
\r
String[] instancePart = instance.split(" ");\r
libInstanceTableModel.getValueAt(row, 2) + " " +\r
libInstanceTableModel.getValueAt(row, 3) + " " +\r
libInstanceTableModel.getValueAt(row, 4);\r
- ModuleIdentification libMi = GlobalData.getModuleId(instanceValue);\r
+ ModuleIdentification libMi = WorkspaceProfile.getModuleId(instanceValue);\r
ffc.genLibraryInstance(libMi, moduleKey);\r
//\r
// Add pcd information of selected instance to current moduleSA\r
jLabelFfsFileGuid = new JLabel();\r
jLabelFfsFileGuid.setText("FFS File GUID");\r
jLabelFfsFileGuid.setPreferredSize(new java.awt.Dimension(90,16));\r
+ jLabelFfsFileGuid.setVisible(false);\r
jLabelFvBinding = new JLabel();\r
jLabelFvBinding.setText("FV Binding");\r
jLabelFvBinding.setPreferredSize(new java.awt.Dimension(90,16));\r
if (jTextFieldFileGuid == null) {\r
jTextFieldFileGuid = new JTextField();\r
jTextFieldFileGuid.setPreferredSize(new java.awt.Dimension(300,20));\r
+ jTextFieldFileGuid.setVisible(false);\r
jTextFieldFileGuid.addFocusListener(new java.awt.event.FocusAdapter() {\r
public void focusLost(java.awt.event.FocusEvent e) {\r
String originalFileGuid = ffc.getFfsFileNameGuid(moduleKey);\r
if (jComboBoxItemType.getItemCount() == 3) {\r
if (!jComboBoxItemType.getSelectedItem().equals("DYNAMIC")) {\r
pcdDynamicToNonDynamic(jTablePcd.getValueAt(row, 0)+"", jTablePcd.getValueAt(row, 1)+"");\r
+ if (jComboBoxItemType.getSelectedItem().equals("FIXED_AT_BUILD")) {\r
+ jTextFieldPcdDefault.setText("");\r
+ jTextFieldPcdDefault.setEnabled(true);\r
+ }\r
}\r
else{\r
pcdNonDynamicToDynamic(jTablePcd.getValueAt(row, 0)+"", jTablePcd.getValueAt(row, 1)+"");\r