import java.awt.Dimension;\r
import java.awt.Toolkit;\r
\r
+import javax.swing.DefaultCellEditor;\r
import javax.swing.JFrame;\r
import javax.swing.JOptionPane;\r
import javax.swing.JPanel;\r
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.GlobalData;\r
+import org.tianocore.frameworkwizard.common.IDefaultTableModel;\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 org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
+import org.tianocore.frameworkwizard.packaging.PackageIdentification;\r
\r
import java.awt.FlowLayout;\r
import java.awt.event.ActionEvent;\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
import javax.swing.JTextField;\r
private JLabel jLabelPcdHelp = null;\r
private JButton jButtonOk = null;\r
private JButton jButtonCancel = null;\r
- private PartialEditableTableModel model = null;\r
- private LibraryTableModel selectedInstancesTableModel = null;\r
- private LibraryTableModel libClassTableModel = null;\r
- private LibraryTableModel libInstanceTableModel = null;\r
+ private IDefaultTableModel model = null;\r
+ private IDefaultTableModel selectedInstancesTableModel = null;\r
+ private IDefaultTableModel libClassTableModel = null;\r
+ private IDefaultTableModel libInstanceTableModel = null;\r
private DefaultTableModel optionsTableModel = null;\r
private FpdFileContents ffc = null;\r
private String moduleKey = null;\r
private JButton jButtonUpdatePcd = null;\r
private JComboBox jComboBoxFeatureFlagValue = null;\r
private OpeningPlatformType docConsole = null;\r
- private JLabel jLabelPad = null;\r
+ private JPanel jPanelCustomToolChain = null;\r
+ private JPanel jPanelToolchainS = null;\r
+ private JPanel jPanelToolchainC = null;\r
/**\r
* This is the default constructor\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
- saa[i][4] = mi.getPackage().getVersion();\r
+ saa[i][4] = mi.getPackageId().getVersion();\r
//\r
// re-evaluate lib instance usage when adding a already-selected lib instance.\r
//\r
resolveLibraryInstances(saa[i][1] + " " + saa[i][2] + " " + saa[i][3] + " " + saa[i][4]);\r
selectedInstancesTableModel.addRow(saa[i]);\r
}\r
- \r
- \r
}\r
}\r
+ showClassToResolved();\r
}\r
\r
- public void initModuleSAOptions(String key) {\r
+ public void initFvInfo (String key) {\r
//\r
// display module SA options\r
//\r
if (ffsKey != null) {\r
jTextFieldFfsKey.setText(ffsKey);\r
}\r
+ }\r
+ \r
+ public void initToolChainOptions(String key) {\r
\r
optionsTableModel.setRowCount(0);\r
String[][] saa = new String[ffc.getModuleSAOptionsCount(key)][6];\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
- // Get classes unresolved\r
- //\r
-// Iterator<String> lip = this.classProduced.listIterator();\r
-// while(lip.hasNext()){\r
-// String clsProduced = lip.next();\r
-// this.classConsumed.remove(clsProduced);\r
-//\r
-// }\r
+ \r
//\r
// find potential instances in all dependency pkgs for classes still in classConsumed.\r
//\r
\r
}\r
\r
- showClassToResolved();\r
+// showClassToResolved();\r
}\r
catch(Exception e) {\r
e.printStackTrace();\r
private ArrayList<String> getInstancesForClass(String cls, PackageIdentification[] depPkgList) throws Exception{\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
- Iterator ismi = smi.iterator();\r
+// for (int i = 0; i < depPkgList.length; ++i) {\r
+ Iterator ismi = GlobalData.vModuleList.iterator();\r
while(ismi.hasNext()) {\r
ModuleIdentification mi = (ModuleIdentification)ismi.next();\r
- \r
+// if (!mi.getPackageId().getGuid().equalsIgnoreCase(depPkgList[i].getGuid())) {\r
+// continue;\r
+// }\r
String[] clsProduced = getClassProduced(mi);\r
\r
boolean isPotential = false;\r
}\r
if (isPotential) {\r
al.add(mi.getGuid() + " " + mi.getVersion() + " " + \r
- depPkgList[i].getGuid() + " " + depPkgList[i].getVersion());\r
+ mi.getPackageId().getGuid() + " " + mi.getPackageId().getVersion());\r
}\r
}\r
- }\r
+// }\r
\r
return al;\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
}\r
libInstanceTableModel.setRowCount(0);\r
}\r
+ \r
+ private void addLibInstance (ModuleIdentification libMi) {\r
+ \r
+ ffc.genLibraryInstance(libMi, moduleKey);\r
+ //\r
+ // Add pcd information of selected instance to current moduleSA\r
+ //\r
+ try{\r
+ ffc.addFrameworkModulesPcdBuildDefs(libMi, null, ffc.getModuleSA(moduleKey));\r
+ }\r
+ catch (Exception exception) {\r
+ JOptionPane.showMessageDialog(frame, "Adding Instance" + libMi.getName() + ": "+ exception.getMessage());\r
+ }\r
+ \r
+ }\r
/**\r
* This method initializes this\r
* \r
*/\r
private void initialize() {\r
this.setSize(664, 515);\r
+ this.setResizable(false);\r
this.centerWindow();\r
this.setModal(true);\r
this.setTitle("Module Settings");\r
if (jTabbedPane == null) {\r
jTabbedPane = new JTabbedPane();\r
jTabbedPane.addTab("PCD Build Definition", null, getJPanelPcd(), null);\r
- jTabbedPane.addTab("Module SA Options", null, getJPanelModuleSaOpts(), null);\r
jTabbedPane.addTab("Libraries", null, getJPanelLibrary(), null);\r
+ jTabbedPane.addTab("FV Info", null, getJPanelModuleSaOpts(), null);\r
+ jTabbedPane.addTab("Custom Toolchain", null, getJPanelCustomToolChain(), null);\r
+ \r
}\r
return jTabbedPane;\r
}\r
*/\r
private JTable getJTablePcd() {\r
if (jTablePcd == null) {\r
- model = new PartialEditableTableModel();\r
+ model = new IDefaultTableModel();\r
jTablePcd = new JTable(model);\r
jTablePcd.setRowHeight(20);\r
jTablePcd.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF);\r
}\r
else{\r
int selectedRow = lsm.getMinSelectionIndex();\r
- String cName = jTablePcd.getValueAt(selectedRow, 0)+"";\r
- String tsGuid = jTablePcd.getValueAt(selectedRow, 1)+"";\r
+ String cName = model.getValueAt(selectedRow, 0)+"";\r
+ String tsGuid = model.getValueAt(selectedRow, 1)+"";\r
+ String itemType = model.getValueAt(selectedRow, 2)+"";\r
String[] pcdInfo = {"", ""};\r
getPcdInfo(cName, tsGuid, pcdInfo);\r
jTextAreaPcdHelp.setText(pcdInfo[0]);\r
initComboBox(pcdInfo[1]);\r
- jComboBoxItemType.setSelectedItem(pcdInfo[1]);\r
+ jComboBoxItemType.setSelectedItem(itemType);\r
jTextFieldMaxDatumSize.setEnabled(true);\r
jTextFieldMaxDatumSize.setVisible(true);\r
jTextFieldMaxDatumSize.setText(jTablePcd.getValueAt(selectedRow, 4)+"");\r
jTextFieldMaxDatumSize.setEnabled(false);\r
}\r
\r
- if (!jTablePcd.getValueAt(selectedRow, 2).equals("DYNAMIC") && !jTablePcd.getValueAt(selectedRow, 2).equals("DYNAMIC_EX")) {\r
- jTextFieldPcdDefault.setText(jTablePcd.getValueAt(selectedRow, 6)+"");\r
- if (jTablePcd.getValueAt(selectedRow, 2).equals("FEATURE_FLAG")){\r
+ if (!model.getValueAt(selectedRow, 2).equals("DYNAMIC") && !model.getValueAt(selectedRow, 2).equals("DYNAMIC_EX")) {\r
+ jTextFieldPcdDefault.setText(model.getValueAt(selectedRow, 6)+"");\r
+ if (model.getValueAt(selectedRow, 2).equals("FEATURE_FLAG")){\r
jTextFieldPcdDefault.setVisible(false);\r
jComboBoxFeatureFlagValue.setVisible(true);\r
jComboBoxFeatureFlagValue.setSelectedItem(jTablePcd.getValueAt(selectedRow, 6)+"");\r
}\r
});\r
\r
- jTablePcd.getModel().addTableModelListener(new TableModelListener() {\r
- public void tableChanged(TableModelEvent arg0) {\r
- // TODO Auto-generated method stub\r
-// int row = arg0.getFirstRow();\r
-// TableModel m = (TableModel)arg0.getSource();\r
- \r
- if (arg0.getType() == TableModelEvent.UPDATE){\r
- //update xml doc here.\r
- \r
- }\r
- }\r
- });\r
}\r
return jTablePcd;\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
*/\r
private JTable getJTableSelectedInstances() {\r
if (jTableSelectedInstances == null) {\r
- selectedInstancesTableModel = new LibraryTableModel();\r
+ selectedInstancesTableModel = new IDefaultTableModel();\r
selectedInstancesTableModel.addColumn("Name");\r
selectedInstancesTableModel.addColumn("ModuleGUID");\r
selectedInstancesTableModel.addColumn("ModuleVersion");\r
*/\r
private JTable getJTableLibClass() {\r
if (jTableLibClass == null) {\r
- libClassTableModel = new LibraryTableModel();\r
+ libClassTableModel = new IDefaultTableModel();\r
libClassTableModel.addColumn("LibraryClass");\r
jTableLibClass = new JTable(libClassTableModel);\r
jTableLibClass.setRowHeight(20);\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
*/\r
private JTable getJTableLibInstances() {\r
if (jTableLibInstances == null) {\r
- libInstanceTableModel = new LibraryTableModel();\r
+ libInstanceTableModel = new IDefaultTableModel();\r
libInstanceTableModel.addColumn("Name");\r
libInstanceTableModel.addColumn("ModuleGUID");\r
libInstanceTableModel.addColumn("ModuleVersion");\r
libInstanceTableModel.getValueAt(row, 2) + " " +\r
libInstanceTableModel.getValueAt(row, 3) + " " +\r
libInstanceTableModel.getValueAt(row, 4);\r
- ModuleIdentification libMi = GlobalData.getModuleId(instanceValue);\r
- ffc.genLibraryInstance(libMi, moduleKey);\r
- //\r
- // Add pcd information of selected instance to current moduleSA\r
- //\r
- try{\r
- ffc.addFrameworkModulesPcdBuildDefs(libMi, null, ffc.getModuleSA(moduleKey));\r
- }\r
- catch (Exception exception) {\r
- JOptionPane.showMessageDialog(frame, "Adding Instance" + s[0] + ": "+ exception.getMessage());\r
- }\r
+ ModuleIdentification libMi = WorkspaceProfile.getModuleId(instanceValue);\r
+ addLibInstance (libMi);\r
resolveLibraryInstances(instanceValue);\r
+ showClassToResolved();\r
}\r
});\r
}\r
*/\r
private JPanel getJPanelModuleSaOpts() {\r
if (jPanelModuleSaOpts == null) {\r
- jLabelPad = new JLabel();\r
- jLabelPad.setText("");\r
- jLabelPad.setPreferredSize(new java.awt.Dimension(250,16));\r
FlowLayout flowLayout4 = new FlowLayout();\r
flowLayout4.setAlignment(java.awt.FlowLayout.LEFT);\r
jLabelFfsFormatKey = new JLabel();\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
jPanelModuleSaOpts.add(getJTextFieldFileGuid(), null);\r
jPanelModuleSaOpts.add(jLabelFfsFormatKey, null);\r
jPanelModuleSaOpts.add(getJTextFieldFfsKey(), null);\r
- jPanelModuleSaOpts.add(getJScrollPaneModuleSaOptions(), null);\r
- jPanelModuleSaOpts.add(jLabelPad, null);\r
- jPanelModuleSaOpts.add(getJButtonNew(), null);\r
- jPanelModuleSaOpts.add(getJButtonDeleteOption(), null);\r
jPanelModuleSaOpts.addComponentListener(new java.awt.event.ComponentAdapter() {\r
public void componentShown(java.awt.event.ComponentEvent e) {\r
- initModuleSAOptions(moduleKey);\r
+ initFvInfo(moduleKey);\r
}\r
});\r
}\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
private JScrollPane getJScrollPaneModuleSaOptions() {\r
if (jScrollPaneModuleSaOptions == null) {\r
jScrollPaneModuleSaOptions = new JScrollPane();\r
- jScrollPaneModuleSaOptions.setPreferredSize(new java.awt.Dimension(600,200));\r
+ jScrollPaneModuleSaOptions.setPreferredSize(new java.awt.Dimension(600,350));\r
jScrollPaneModuleSaOptions.setViewportView(getJTableModuleSaOptions());\r
}\r
return jScrollPaneModuleSaOptions;\r
optionsTableModel.addColumn("Contents");\r
jTableModuleSaOptions = new JTable(optionsTableModel);\r
jTableModuleSaOptions.setRowHeight(20);\r
+ \r
+ javax.swing.table.TableColumn toolFamilyCol = jTableModuleSaOptions.getColumnModel().getColumn(1);\r
+ JComboBox cb = new JComboBox();\r
+ cb.addItem("MSFT");\r
+ cb.addItem("GCC");\r
+ cb.addItem("CYGWIN");\r
+ cb.addItem("INTEL");\r
+ cb.addItem("USER_DEFINED");\r
+ toolFamilyCol.setCellEditor(new DefaultCellEditor(cb));\r
+ \r
Vector<String> vArch = new Vector<String>();\r
vArch.add("IA32");\r
vArch.add("X64");\r
vArch.add("ARM");\r
vArch.add("PPC");\r
jTableModuleSaOptions.getColumnModel().getColumn(4).setCellEditor(new ListEditor(vArch));\r
+ \r
+ jTableModuleSaOptions.getColumnModel().getColumn(5).setCellEditor(new LongTextEditor());\r
+ \r
jTableModuleSaOptions.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
jTableModuleSaOptions.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF);\r
jTableModuleSaOptions.getModel().addTableModelListener(new TableModelListener() {\r
jPanelPcdFieldsThirdRow.add(jLabelPcdDefaultValue, null);\r
jPanelPcdFieldsThirdRow.add(getJTextFieldPcdDefault(), null);\r
jPanelPcdFieldsThirdRow.add(getJComboBoxFeatureFlagValue(), null);\r
+ jPanelPcdFieldsThirdRow.add(getJButtonUpdatePcd(), null);\r
}\r
return jPanelPcdFieldsThirdRow;\r
}\r
jPanelPcdFieldsFirstRow.setLayout(flowLayout1);\r
jPanelPcdFieldsFirstRow.add(jLabelItemType, null);\r
jPanelPcdFieldsFirstRow.add(getJComboBoxItemType(), null);\r
- jPanelPcdFieldsFirstRow.add(getJButtonUpdatePcd(), null);\r
}\r
return jPanelPcdFieldsFirstRow;\r
}\r
jComboBoxItemType.addItemListener(new java.awt.event.ItemListener() {\r
public void itemStateChanged(java.awt.event.ItemEvent e) {\r
int row = jTablePcd.getSelectedRow();\r
- if (row < 0 || jTablePcd.getValueAt(row, 2).equals(jComboBoxItemType.getSelectedItem())) {\r
+ if (row < 0 || model.getValueAt(row, 2).equals(jComboBoxItemType.getSelectedItem())) {\r
return;\r
}\r
if (jComboBoxItemType.getItemCount() == 3) {\r
if (!jComboBoxItemType.getSelectedItem().equals("DYNAMIC")) {\r
- pcdDynamicToNonDynamic(jTablePcd.getValueAt(row, 0)+"", jTablePcd.getValueAt(row, 1)+"");\r
+ pcdDynamicToNonDynamic(model.getValueAt(row, 0)+"", model.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
+ pcdNonDynamicToDynamic(model.getValueAt(row, 0)+"", model.getValueAt(row, 1)+"");\r
}\r
}\r
}\r
\r
ArrayList<String> al = ffc.getDynPcdMapValue(cName + " " + tsGuid);\r
for (int i = 0; i < al.size(); ++i) {\r
- String[] s = al.get(i).split(" ");\r
- String mKey = s[0] + s[1] + s[2] + s[3];\r
+ String mKey = moduleInfo (al.get(i));\r
ffc.updatePcdData(mKey, cName, tsGuid, jComboBoxItemType.getSelectedItem()+"", maxSize, value);\r
- s[4] = jComboBoxItemType.getSelectedItem()+"";\r
- al.set(i, s[0]+" "+s[1]+" "+s[2]+" "+s[3]+" "+s[4]);\r
+ String itemType = jComboBoxItemType.getSelectedItem()+"";\r
+ al.set(i, mKey + " " + itemType);\r
}\r
\r
ffc.removeDynamicPcdBuildData(cName, tsGuid);\r
private void pcdNonDynamicToDynamic(String cName, String tsGuid) {\r
ArrayList<String> al = ffc.getDynPcdMapValue(cName + " " + tsGuid);\r
for (int i = 0; i < al.size(); ++i) {\r
- String[] s = al.get(i).split(" ");\r
- String mKey = s[0] + " " + s[1]+ " " + s[2] + " " + s[3];\r
+ String mKey = moduleInfo (al.get(i));\r
ffc.updatePcdData(mKey, cName, tsGuid, jComboBoxItemType.getSelectedItem()+"", jTextFieldMaxDatumSize.getText(), jTextFieldPcdDefault.isVisible() ? jTextFieldPcdDefault.getText() : jComboBoxFeatureFlagValue.getSelectedItem()+"");\r
- s[4] = jComboBoxItemType.getSelectedItem()+"";\r
- al.set(i, s[0]+" "+s[1]+" "+s[2]+" "+s[3]+" "+s[4]);\r
+ String itemType = jComboBoxItemType.getSelectedItem()+"";\r
+ al.set(i, mKey + " " + itemType);\r
}\r
try{\r
ffc.addDynamicPcdBuildData(cName, jTablePcd.getValueAt(jTablePcd.getSelectedRow(), 3), tsGuid, "DYNAMIC", jTablePcd.getValueAt(jTablePcd.getSelectedRow(), 5)+"", jTextFieldPcdDefault.isVisible() ? jTextFieldPcdDefault.getText() : jComboBoxFeatureFlagValue.getSelectedItem()+"");\r
JOptionPane.showMessageDialog(frame, "PCD value format: " + e.getMessage());\r
}\r
}\r
+\r
+private String moduleInfo (String pcdInfo) {\r
+ \r
+ return pcdInfo.substring(0, pcdInfo.lastIndexOf(" "));\r
+}\r
+\r
/**\r
* This method initializes jTextFieldMaxDatumSize\r
* \r
jComboBoxFeatureFlagValue = new JComboBox();\r
jComboBoxFeatureFlagValue.setPreferredSize(new java.awt.Dimension(100,20));\r
jComboBoxFeatureFlagValue.setVisible(false);\r
- jComboBoxFeatureFlagValue.addItem("true");\r
- jComboBoxFeatureFlagValue.addItem("false");\r
+ jComboBoxFeatureFlagValue.addItem("TRUE");\r
+ jComboBoxFeatureFlagValue.addItem("FALSE");\r
}\r
return jComboBoxFeatureFlagValue;\r
}\r
-\r
-\r
-} // @jve:decl-index=0:visual-constraint="10,10"\r
-\r
-class PartialEditableTableModel extends DefaultTableModel {\r
- /**\r
- * \r
- */\r
- private static final long serialVersionUID = 1L;\r
-\r
- public boolean isCellEditable(int row, int col) {\r
- switch (col){\r
- case 2:\r
- return false;\r
- default:\r
- return false; \r
- }\r
- \r
+/**\r
+ * This method initializes jPanelCustomToolChain \r
+ * \r
+ * @return javax.swing.JPanel \r
+ */\r
+private JPanel getJPanelCustomToolChain() {\r
+ if (jPanelCustomToolChain == null) {\r
+ jPanelCustomToolChain = new JPanel();\r
+ jPanelCustomToolChain.setLayout(new BorderLayout());\r
+ jPanelCustomToolChain.add(getJPanelToolchainS(), java.awt.BorderLayout.SOUTH);\r
+ jPanelCustomToolChain.add(getJPanelToolchainC(), java.awt.BorderLayout.CENTER);\r
+ jPanelCustomToolChain.addComponentListener(new java.awt.event.ComponentAdapter() {\r
+ public void componentShown(java.awt.event.ComponentEvent e) {\r
+ initToolChainOptions(moduleKey);\r
+ }\r
+ });\r
}\r
+ return jPanelCustomToolChain;\r
}\r
-\r
-class LibraryTableModel extends DefaultTableModel {\r
- /**\r
- * \r
- */\r
- private static final long serialVersionUID = 1L;\r
-\r
- public boolean isCellEditable(int row, int col) {\r
- return false;\r
+/**\r
+ * This method initializes jPanelToolchainS \r
+ * \r
+ * @return javax.swing.JPanel \r
+ */\r
+private JPanel getJPanelToolchainS() {\r
+ if (jPanelToolchainS == null) {\r
+ jPanelToolchainS = new JPanel();\r
+ jPanelToolchainS.add(getJButtonNew(), null);\r
+ jPanelToolchainS.add(getJButtonDeleteOption(), null);\r
}\r
+ return jPanelToolchainS;\r
}\r
+/**\r
+ * This method initializes jPanelToolchainC \r
+ * \r
+ * @return javax.swing.JPanel \r
+ */\r
+private JPanel getJPanelToolchainC() {\r
+ if (jPanelToolchainC == null) {\r
+ jPanelToolchainC = new JPanel();\r
+ jPanelToolchainC.add(getJScrollPaneModuleSaOptions(), null);\r
+ }\r
+ return jPanelToolchainC;\r
+}\r
+\r
+\r
+} // @jve:decl-index=0:visual-constraint="10,10"\r