private String determinedFvBlockSize = null;\r
private String erasePolarity = "";\r
boolean memModified = false;\r
- \r
+ private FvOptsTableModel fvInFdfOptTableModel = null;\r
+ private FvOptsTableModel fvAdditionalOptTableModel = null;\r
\r
public FpdFlash() {\r
super();\r
if (blockSizeWellFormat && numOfBlockWellFormat) {\r
int size = Integer.decode(bSize);\r
int num = Integer.decode(numBlks);\r
- fvSize = size*num + "";\r
+ fvSize = "0x" + Integer.toHexString(size*num);\r
}\r
}\r
fvAdditionalTableModel.addRow(new String[]{fvName, fvSize, fvFile});\r
if (jButtonFvInFdfOptions == null) {\r
jButtonFvInFdfOptions = new JButton();\r
jButtonFvInFdfOptions.setPreferredSize(new java.awt.Dimension(80,20));\r
- jButtonFvInFdfOptions.setEnabled(false);\r
+ jButtonFvInFdfOptions.setEnabled(true);\r
jButtonFvInFdfOptions.setText("Options");\r
jButtonFvInFdfOptions.addActionListener(new java.awt.event.ActionListener() {\r
public void actionPerformed(java.awt.event.ActionEvent e) {\r
if (selectedRow < 0) {\r
return;\r
}\r
+ String fvName = jTableFvInFdf.getValueAt(selectedRow, 0)+"";\r
+ DefaultTableModel dtm = getFvInFdfOptTableModel();\r
+ new FpdFvOptions(fvName, dtm, ffc, docConsole);\r
}\r
});\r
}\r
return jButtonFvInFdfOptions;\r
}\r
+ \r
+ private DefaultTableModel getFvInFdfOptTableModel() {\r
+ if (fvInFdfOptTableModel == null) {\r
+ fvInFdfOptTableModel = new FvOptsTableModel();\r
+ fvInFdfOptTableModel.addColumn("Name");\r
+ fvInFdfOptTableModel.addColumn("Value");\r
+ Vector<Object> v = new Vector<Object>();\r
+ v.add("EFI_BLOCK_SIZE");\r
+ v.add("EFI_NUM_BLOCKS");\r
+ v.add("EFI_FILE_NAME");\r
+ fvInFdfOptTableModel.setVKeyWords(v);\r
+ fvInFdfOptTableModel.setVNonEditableName(v);\r
+ }\r
+ return fvInFdfOptTableModel;\r
+ }\r
\r
/**\r
* This method initializes jScrollPaneFvAdditional \r
if (jButtonAddFvOptions == null) {\r
jButtonAddFvOptions = new JButton();\r
jButtonAddFvOptions.setPreferredSize(new java.awt.Dimension(80,20));\r
- jButtonAddFvOptions.setEnabled(false);\r
+ jButtonAddFvOptions.setEnabled(true);\r
jButtonAddFvOptions.setText("Options");\r
jButtonAddFvOptions.addActionListener(new java.awt.event.ActionListener() {\r
public void actionPerformed(java.awt.event.ActionEvent e) {\r
\r
} // @jve:decl-index=0:visual-constraint="10,10"\r
\r
+class FvOptsTableModel extends DefaultTableModel {\r
+\r
+ private static final long serialVersionUID = 1L;\r
+ \r
+ private Vector<Object> vNonEditableName = new Vector<Object>();\r
+ private Vector<Object> vKeyWords = new Vector<Object>();\r
+ \r
+ public boolean isCellEditable(int row, int col) {\r
+ if (vNonEditableName.size() > 0 || vKeyWords.size() > 0) {\r
+ if (vKeyWords.contains(getValueAt(row, 0))) {\r
+ return false;\r
+ }\r
+ if (vNonEditableName.contains(getValueAt(row, 0)) && col == 0) {\r
+ return false;\r
+ }\r
+ } \r
+ \r
+ return true;\r
+ }\r
+\r
+ /**\r
+ * @return Returns the vKeyWords.\r
+ */\r
+ protected Vector<Object> getVKeyWords() {\r
+ return vKeyWords;\r
+ }\r
+\r
+ /**\r
+ * @param keyWords The vKeyWords to set.\r
+ */\r
+ protected void setVKeyWords(Vector<Object> keyWords) {\r
+ vKeyWords.removeAllElements();\r
+ vKeyWords.addAll(keyWords);\r
+ }\r
+\r
+ /**\r
+ * @return Returns the vNonEditableName.\r
+ */\r
+ protected Vector<Object> getVNonEditableName() {\r
+ return vNonEditableName;\r
+ }\r
+\r
+ /**\r
+ * @param nonEditableName The vNonEditableName to set.\r
+ */\r
+ protected void setVNonEditableName(Vector<Object> nonEditableName) {\r
+ vNonEditableName.removeAllElements();\r
+ vNonEditableName.addAll(nonEditableName);\r
+ }\r
+ \r
+}\r
class ImageParaTableModel extends DefaultTableModel {\r
\r
private static final long serialVersionUID = 1L;\r