public class FpdFrameworkModules extends IInternalFrame {\r
\r
/**\r
- * \r
+ * Initialize Globals\r
*/\r
private static final long serialVersionUID = 1L;\r
\r
private Map<String, ArrayList<String>> fpdMsa = null;\r
\r
private ArrayList<ModuleIdentification> miList = null;\r
-\r
+ \r
+ /**\r
+ * Column settings for displaying all modules in workspace\r
+ */\r
private final int modNameColForAllModTable = 0;\r
\r
private final int pkgNameColForAllModTable = 1;\r
\r
private final int pathColForAllModTable = 2;\r
\r
- private final int pkgVerColForAllModTable = 3;\r
+ private final int typeColForAllModTable = 3;\r
+ \r
+ private final int pkgVerColForAllModTable = 5;\r
\r
private final int modVerColForAllModTable = 4;\r
\r
+ /**\r
+ * Column settings for display modules in the FPD file\r
+ */\r
private final int modNameColForFpdModTable = 0;\r
\r
private final int pkgNameColForFpdModTable = 1;\r
\r
private final int archColForFpdModTable = 3;\r
\r
- private final int pkgVerColForFpdModTable = 4;\r
+ private final int pkgVerColForFpdModTable = 6;\r
\r
private final int modVerColForFpdModTable = 5;\r
\r
+ private final int typeColForFpdModTable = 4;\r
+ \r
+ /**\r
+ * FpdFileContents structure\r
+ */\r
private final int ffcModGuid = 0;\r
\r
private final int ffcModVer = 1;\r
private final int ffcPkgVer = 3;\r
\r
private final int ffcModArch = 4;\r
-\r
+ \r
+ /**\r
+ * Set Column Widths, Only the PATH should not have a max width.\r
+ */\r
private final int modNameMinWidth = 168;\r
\r
private final int modNamePrefWidth = 200;\r
+ \r
+ private final int modNameMaxWidth = 350;\r
\r
private final int pkgNameMinWidth = 100;\r
\r
- private final int pkgNamePrefWidth = 110;\r
+ private final int pkgNamePrefWidth = 130;\r
\r
private final int pkgNameMaxWidth = 150;\r
\r
- private final int verMinWidth = 50;\r
+ private final int verMinWidth = 60;\r
\r
private final int verMaxWidth = 80;\r
\r
- private final int verPrefWidth = 60;\r
+ private final int verPrefWidth = 70;\r
\r
private final int pathPrefWidth = 320;\r
\r
\r
private final int archMaxWidth = 100;\r
\r
+ private final int typePrefWidth = 145;\r
+ \r
+ private final int typeMinWidth = 100;\r
+ \r
+ private final int typeMaxWidth = 155;\r
+ \r
/**\r
- * This method initializes jSplitPane \r
+ * This method initializes jSplitPane\r
+ * \r
+ * This is the main edit window\r
* \r
- * @return javax.swing.JSplitPane \r
+ * @return javax.swing.JSplitPane jSplitPane \r
*/\r
private JSplitPane getJSplitPane() {\r
if (jSplitPane == null) {\r
}\r
\r
/**\r
- * This method initializes jPanel \r
+ * This method initializes jPanelTop\r
+ * \r
+ * This panel contains the All Modules Table \r
* \r
- * @return javax.swing.JPanel \r
+ * @return javax.swing.JPanel jPanelTop\r
*/\r
private JPanel getJPanelTop() {\r
if (jPanelTop == null) {\r
}\r
\r
/**\r
- * This method initializes jPanel1 \r
+ * This method initializes jPanelBottom\r
* \r
- * @return javax.swing.JPanel \r
+ * This panel contains the FPD Modules Table\r
+ * \r
+ * @return javax.swing.JPanel jPanelBottom\r
*/\r
private JPanel getJPanelBottom() {\r
if (jPanelBottom == null) {\r
}\r
\r
/**\r
- * This method initializes jScrollPane \r
+ * This method initializes jScrollPaneAllModules \r
* \r
- * @return javax.swing.JScrollPane \r
+ * @return javax.swing.JScrollPane jScrollPaneAllModules\r
*/\r
private JScrollPane getJScrollPaneAllModules() {\r
if (jScrollPaneAllModules == null) {\r
}\r
\r
/**\r
- * This method initializes jTable \r
+ * This method initializes jTableAllModules\r
* \r
- * @return javax.swing.JTable \r
+ * @return javax.swing.JTable jTableAllModules\r
*/\r
private JTable getJTableAllModules() {\r
if (jTableAllModules == null) {\r
modelAllModules.addColumn("<html>Module<br>Name</html>");\r
modelAllModules.addColumn("<html>Package<br>Name</html>");\r
modelAllModules.addColumn("Path");\r
- modelAllModules.addColumn("<html>Package<br>Version</html>");\r
+ modelAllModules.addColumn("<html>Module<br>Type</html>");\r
modelAllModules.addColumn("<html>Module<br>Version</html>");\r
+ modelAllModules.addColumn("<html>Package<br>Version</html>");\r
\r
javax.swing.table.TableColumn column = null;\r
column = jTableAllModules.getColumnModel().getColumn(modNameColForAllModTable);\r
column.setPreferredWidth(modNamePrefWidth);\r
column.setMinWidth(modNameMinWidth);\r
+ column.setMaxWidth(modNameMaxWidth);\r
column = jTableAllModules.getColumnModel().getColumn(modVerColForAllModTable);\r
column.setPreferredWidth(verPrefWidth);\r
column.setMaxWidth(verMaxWidth);\r
column.setPreferredWidth(verPrefWidth);\r
column.setMaxWidth(verMaxWidth);\r
column.setMinWidth(verMinWidth);\r
+ column = jTableAllModules.getColumnModel().getColumn(typeColForAllModTable);\r
+ column.setPreferredWidth(typePrefWidth);\r
+ column.setMaxWidth(typeMaxWidth);\r
+ column.setMinWidth(typeMinWidth);\r
column = jTableAllModules.getColumnModel().getColumn(pathColForAllModTable);\r
column.setPreferredWidth(pathPrefWidth);\r
column.setMinWidth(pathMinWidth);\r
\r
jTableAllModules.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
- jTableAllModules.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF);\r
+\r
}\r
return jTableAllModules;\r
}\r
\r
/**\r
- * This method initializes jPanel2 \r
- * \r
- * @return javax.swing.JPanel \r
+ * This method initializes jPanelTopSouth\r
+ * \r
+ * This panel contains the ADD button\r
+ * \r
+ * @return javax.swing.JPanel jPanelTopSouth\r
*/\r
private JPanel getJPanelTopSouth() {\r
if (jPanelTopSouth == null) {\r
}\r
\r
/**\r
- * This method initializes jButton \r
+ * This method initializes jButtonAddModule \r
* \r
- * @return javax.swing.JButton \r
+ * @return javax.swing.JButton jButtonAddModule\r
*/\r
private JButton getJButtonAddModule() {\r
if (jButtonAddModule == null) {\r
String mv = mi.getVersion();\r
String pg = mi.getPackage().getGuid();\r
String pv = mi.getPackage().getVersion();\r
+ String mType = mi.getModuleType();\r
\r
ArrayList<String> al = fpdMsa.get(mg + mv + pg + pv);\r
if (al == null) {\r
String arch = vArchs.get(i);\r
al.add(arch);\r
archsAdded += arch + " ";\r
- String[] row = { "", "", "", "", "", "" };\r
+ String[] row = { "", "", "", "", "", "", "" };\r
\r
if (mi != null) {\r
row[modNameColForFpdModTable] = mi.getName();\r
row[archColForFpdModTable] = arch;\r
row[pkgVerColForFpdModTable] = pv;\r
row[modVerColForFpdModTable] = mv;\r
+ row[typeColForFpdModTable] = mType;\r
\r
}\r
modelFpdModules.addRow(row);\r
//ToDo : specify archs need to add.\r
ffc.addFrameworkModulesPcdBuildDefs(mi, arch, null);\r
} catch (Exception exception) {\r
- JOptionPane.showMessageDialog(frame, "Adding " + row[modNameColForFpdModTable] + " with SupArch " + arch\r
+ JOptionPane.showMessageDialog(frame, "Adding " + row[modNameColForFpdModTable] + " with Supporting Architectures: " + arch\r
+ ": " + exception.getMessage());\r
errorOccurred = true;\r
}\r
}\r
\r
/**\r
- * This method initializes jPanel3 \r
+ * This method initializes jPanelBottomSouth\r
+ * \r
+ * This panel contains the Settings and Remove Buttons\r
* \r
- * @return javax.swing.JPanel \r
+ * @return javax.swing.JPanel jPanelBottomSouth\r
*/\r
private JPanel getJPanelBottomSouth() {\r
if (jPanelBottomSouth == null) {\r
}\r
\r
/**\r
- * This method initializes jScrollPane1 \r
+ * This method initializes jScrollPaneFpdModules\r
* \r
- * @return javax.swing.JScrollPane \r
+ * @return javax.swing.JScrollPane jScrollPaneFpdModules\r
*/\r
private JScrollPane getJScrollPaneFpdModules() {\r
if (jScrollPaneFpdModules == null) {\r
}\r
\r
/**\r
- * This method initializes jTable1 \r
+ * This method initializes jTableFpdModules\r
* \r
- * @return javax.swing.JTable \r
+ * @return javax.swing.JTable jTableFpdModules\r
*/\r
private JTable getJTableFpdModules() {\r
if (jTableFpdModules == null) {\r
modelFpdModules.addColumn("<html>Package<br>Name</html>");\r
modelFpdModules.addColumn("Path");\r
modelFpdModules.addColumn("<html>Supported<br>Architectures</html>");\r
- modelFpdModules.addColumn("<html>Package<br>Version</html>");\r
+ modelFpdModules.addColumn("<html>Module<br>Type</html>");\r
modelFpdModules.addColumn("<html>Module<br>Version</html>");\r
+ modelFpdModules.addColumn("<html>Package<br>Version</html>");\r
+\r
\r
javax.swing.table.TableColumn column = null;\r
column = jTableFpdModules.getColumnModel().getColumn(modNameColForFpdModTable);\r
column.setPreferredWidth(modNamePrefWidth);\r
column.setMinWidth(modNameMinWidth);\r
+ column.setMaxWidth(modNameMaxWidth);\r
column = jTableFpdModules.getColumnModel().getColumn(modVerColForFpdModTable);\r
column.setPreferredWidth(verPrefWidth);\r
column.setMaxWidth(verMaxWidth);\r
column = jTableFpdModules.getColumnModel().getColumn(pathColForFpdModTable);\r
column.setPreferredWidth(pathPrefWidth);\r
column.setMinWidth(pathMinWidth);\r
+ column = jTableFpdModules.getColumnModel().getColumn(typeColForFpdModTable);\r
+ column.setPreferredWidth(typePrefWidth);\r
+ column.setMaxWidth(typeMaxWidth);\r
+ column.setMinWidth(typeMinWidth);\r
\r
jTableFpdModules.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
- jTableFpdModules.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF);\r
+\r
}\r
return jTableFpdModules;\r
}\r
\r
/**\r
- * This method initializes jButton1 \r
+ * This method initializes jButtonSettings\r
* \r
- * @return javax.swing.JButton \r
+ * @return javax.swing.JButton jButtonSettings\r
*/\r
private JButton getJButtonSettings() {\r
if (jButtonSettings == null) {\r
}\r
\r
/**\r
- * This method initializes jButton2 \r
+ * This method initializes jButtonRemoveModule\r
* \r
- * @return javax.swing.JButton \r
+ * @return javax.swing.JButton jButtonRemoveModule\r
*/\r
private JButton getJButtonRemoveModule() {\r
if (jButtonRemoveModule == null) {\r
}\r
\r
/**\r
+ * \r
* @param args\r
*/\r
public static void main(String[] args) {\r
- // TODO Auto-generated method stub\r
+ // Set the pane visable\r
new FpdFrameworkModules().setVisible(true);\r
}\r
\r
for (int i = 0; i < saa.length; ++i) {\r
ModuleIdentification mi = GlobalData.getModuleId(saa[i][ffcModGuid] + " " + saa[i][ffcModVer] + " "\r
+ saa[i][ffcPkgGuid] + " " + saa[i][ffcPkgVer]);\r
- String[] row = { "", "", "", "", "", "" };\r
+ String[] row = { "", "", "", "", "", "", "" };\r
if (mi != null) {\r
row[modNameColForFpdModTable] = mi.getName();\r
row[modVerColForFpdModTable] = mi.getVersion();\r
+ row[typeColForFpdModTable] = mi.getModuleType();\r
row[pkgNameColForFpdModTable] = mi.getPackage().getName();\r
row[pkgVerColForFpdModTable] = mi.getPackage().getVersion();\r
row[archColForFpdModTable] = saa[i][4];\r
al.add(saa[i][ffcModArch]);\r
\r
}\r
+ TableSorter sorter = (TableSorter)jTableFpdModules.getModel();\r
+ sorter.setSortingStatus(modNameColForFpdModTable, TableSorter.ASCENDING);\r
}\r
\r
showAllModules();\r
\r
while (ispi.hasNext()) {\r
PackageIdentification pi = (PackageIdentification) ispi.next();\r
- String[] s = { "", "", "", "", "" };\r
+ String[] s = { "", "", "", "", "", "" };\r
\r
Set<ModuleIdentification> smi = GlobalData.getModules(pi);\r
Iterator ismi = smi.iterator();\r
ModuleIdentification mi = (ModuleIdentification) ismi.next();\r
s[modNameColForAllModTable] = mi.getName();\r
s[modVerColForAllModTable] = mi.getVersion();\r
+ s[typeColForAllModTable] = mi.getModuleType();\r
s[pkgNameColForAllModTable] = pi.getName();\r
s[pkgVerColForAllModTable] = pi.getVersion();\r
try {\r
miList.add(mi);\r
}\r
}\r
+ \r
+ TableSorter sorter = (TableSorter)jTableAllModules.getModel();\r
+ sorter.setSortingStatus(modNameColForAllModTable, TableSorter.ASCENDING);\r
}\r
\r
/**\r