X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=Tools%2FSource%2FFrameworkWizard%2Fsrc%2Forg%2Ftianocore%2Fframeworkwizard%2FFrameworkWizardUI.java;h=6041472c5fd77ce3d003239741e1b0801dd057af;hb=3c0192d429986cdd5701cdfb038fe703b04774a3;hp=6b33cd6c36ce52479be2d93aa4b9d7270d8eea1e;hpb=a13899c5acad2f5e125abdae972b4c3d1e522f69;p=mirror_edk2.git diff --git a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/FrameworkWizardUI.java b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/FrameworkWizardUI.java index 6b33cd6c36..6041472c5f 100644 --- a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/FrameworkWizardUI.java +++ b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/FrameworkWizardUI.java @@ -49,22 +49,26 @@ import org.tianocore.PackageSurfaceAreaDocument; import org.tianocore.PlatformSurfaceAreaDocument; import org.tianocore.frameworkwizard.common.DataType; import org.tianocore.frameworkwizard.common.IFileFilter; -import org.tianocore.frameworkwizard.common.Identification; import org.tianocore.frameworkwizard.common.Log; import org.tianocore.frameworkwizard.common.OpenFile; -import org.tianocore.frameworkwizard.common.OpeningModuleList; -import org.tianocore.frameworkwizard.common.OpeningModuleType; -import org.tianocore.frameworkwizard.common.OpeningPackageList; -import org.tianocore.frameworkwizard.common.OpeningPackageType; -import org.tianocore.frameworkwizard.common.OpeningPlatformList; -import org.tianocore.frameworkwizard.common.OpeningPlatformType; import org.tianocore.frameworkwizard.common.SaveFile; import org.tianocore.frameworkwizard.common.Tools; +import org.tianocore.frameworkwizard.common.Identifications.Identification; +import org.tianocore.frameworkwizard.common.Identifications.OpeningModuleList; +import org.tianocore.frameworkwizard.common.Identifications.OpeningModuleType; +import org.tianocore.frameworkwizard.common.Identifications.OpeningPackageList; +import org.tianocore.frameworkwizard.common.Identifications.OpeningPackageType; +import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformList; +import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType; import org.tianocore.frameworkwizard.common.ui.IDefaultMutableTreeNode; import org.tianocore.frameworkwizard.common.ui.IDesktopManager; import org.tianocore.frameworkwizard.common.ui.IFrame; import org.tianocore.frameworkwizard.common.ui.ITree; -import org.tianocore.frameworkwizard.module.Identification.ModuleIdentification; +import org.tianocore.frameworkwizard.far.createui.CreateStepOne; +import org.tianocore.frameworkwizard.far.deleteui.DeleteStepOne; +import org.tianocore.frameworkwizard.far.installui.InstallStepOne; +import org.tianocore.frameworkwizard.far.updateui.UpdateStepOne; +import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification; import org.tianocore.frameworkwizard.module.ui.ModuleBootModes; import org.tianocore.frameworkwizard.module.ui.ModuleDataHubs; import org.tianocore.frameworkwizard.module.ui.ModuleDefinitions; @@ -87,7 +91,6 @@ import org.tianocore.frameworkwizard.packaging.ui.SpdGuidDecls; import org.tianocore.frameworkwizard.packaging.ui.SpdHeader; import org.tianocore.frameworkwizard.packaging.ui.SpdLibClassDecls; import org.tianocore.frameworkwizard.packaging.ui.SpdMsaFiles; -import org.tianocore.frameworkwizard.packaging.ui.SpdPackageDefinitions; import org.tianocore.frameworkwizard.packaging.ui.SpdPackageHeaders; import org.tianocore.frameworkwizard.packaging.ui.SpdPcdDefs; import org.tianocore.frameworkwizard.packaging.ui.SpdPpiDecls; @@ -104,8 +107,8 @@ import org.tianocore.frameworkwizard.workspace.WorkspaceTools; import org.tianocore.frameworkwizard.workspace.ui.SwitchWorkspace; /** - The class is used to show main GUI of ModuleEditor - It extends IFrame implements MouseListener, TreeSelectionListener + The class is used to show main GUI of FrameworkWizard + It extends IFrame implements MouseListener, TreeSelectionListener, ComponentListener and MenuListener **/ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSelectionListener, ComponentListener, @@ -114,10 +117,10 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele /// Define class Serial Version UID /// private static final long serialVersionUID = -7103240960573031772L; - - // - // To save information of all files - // + + /// + /// Used to save information of all files + /// private Vector vModuleList = new Vector(); private Vector vPackageList = new Vector(); @@ -136,8 +139,9 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele private int currentOpeningPlatformIndex = -1; - private String windowTitle = "FrameworkWizard 1.0 "; - + /// + /// Used to generate tree structure + /// private IDefaultMutableTreeNode dmtnRoot = null; private IDefaultMutableTreeNode dmtnModuleDescription = null; @@ -146,6 +150,9 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele private IDefaultMutableTreeNode dmtnPlatformDescription = null; + /// + /// Used for UI + /// private JPanel jContentPane = null; private JMenuBar jMenuBar = null; @@ -284,17 +291,31 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele private JMenuItem jMenuItemHelpSearch = null; - private JMenuItem jMenuItemProjectInstallPackage = null; + private JMenuItem jMenuItemProjectInstallFar = null; - private JMenuItem jMenuItemProjectUpdatePackage = null; + private JMenuItem jMenuItemProjectUpdateFar = null; - private JMenuItem jMenuItemProjectRemovePackage = null; + private JMenuItem jMenuItemProjectRemoveFar = null; - //private JToolBar jToolBarFile = null; + private JMenuItem jMenuItemProjectCreateFar = null; - //private JToolBar jToolBarEdit = null; + /// + /// A static definition for this class itself + /// + private static FrameworkWizardUI fwui = null; - //private JToolBar jToolBarWindow = null; + /** + If the class hasn't an instnace, new one. + + @return FrameworkWizardUI The instance of this class + + **/ + public static FrameworkWizardUI getInstance() { + if (fwui == null) { + fwui = new FrameworkWizardUI(); + } + return fwui; + } /** This method initializes jMenuBar @@ -338,7 +359,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JTabbedPane - */ + **/ private JTabbedPane getJTabbedPaneEditor() { if (jTabbedPaneEditor == null) { jTabbedPaneEditor = new JTabbedPane(); @@ -350,7 +371,6 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele .setMinimumSize(new java.awt.Dimension( DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_WIDTH, DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_HEIGHT)); - //jTabbedPaneEditor.addChangeListener(this); jTabbedPaneEditor.addTab("Module", null, getJDesktopPaneModule(), null); jTabbedPaneEditor.addTab("Package", null, getJDesktopPanePackage(), null); jTabbedPaneEditor.addTab("Platform", null, getJDesktopPanePlatform(), null); @@ -363,7 +383,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JTabbedPane - */ + **/ private JTabbedPane getJTabbedPaneTree() { if (jTabbedPaneTree == null) { jTabbedPaneTree = new JTabbedPane(); @@ -387,29 +407,35 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele **/ private JMenu getJMenuFile() { if (jMenuFile == null) { + // + // Set jMenuFile's attributes + // jMenuFile = new JMenu(); jMenuFile.setText("File"); jMenuFile.setMnemonic('F'); + jMenuFile.addMenuListener(this); + + // + // Add sub menu items + // jMenuFile.add(getJMenuItemFileNew()); jMenuFile.add(getJMenuItemFileOpen()); jMenuFile.add(getJMenuItemFileClose()); jMenuFile.add(getJMenuItemFileCloseAll()); jMenuFile.addSeparator(); + jMenuFile.add(getJMenuFileRecentFiles()); - //jMenuFile.addSeparator(); jMenuFile.add(getJMenuItemFileSave()); jMenuFile.add(getJMenuItemFileSaveAs()); jMenuFile.add(getJMenuItemFileSaveAll()); jMenuFile.addSeparator(); + jMenuFile.add(getJMenuItemFilePageSetup()); jMenuFile.add(getJMenuItemFilePrint()); - //jMenuFile.addSeparator(); jMenuFile.add(getJMenuItemFileImport()); - //jMenuFile.addSeparator(); jMenuFile.add(getJMenuItemFileProperties()); - //jMenuFile.addSeparator(); + jMenuFile.add(getJMenuItemFileExit()); - jMenuFile.addMenuListener(this); } return jMenuFile; } @@ -456,22 +482,31 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele **/ private JMenu getJMenuEdit() { if (jMenuEdit == null) { + // + // Set jMenuEdit's attributes + // jMenuEdit = new JMenu(); jMenuEdit.setText("Edit"); jMenuEdit.setMnemonic('E'); + jMenuEdit.setVisible(false); + + // + // Add sub menu items + // jMenuEdit.add(getJMenuItemEditUndo()); jMenuEdit.add(getJMenuItemEditRedo()); jMenuEdit.addSeparator(); + jMenuEdit.add(getJMenuItemEditCut()); jMenuEdit.add(getJMenuItemEditCopy()); jMenuEdit.add(getJMenuItemEditPaste()); jMenuEdit.add(getJMenuItemEditDelete()); jMenuEdit.addSeparator(); + jMenuEdit.add(getJMenuItemEditSelectAll()); jMenuEdit.add(getJMenuItemEditFind()); jMenuEdit.add(getJMenuItemEditFindNext()); jMenuEdit.addSeparator(); - jMenuEdit.setVisible(false); } return jMenuEdit; } @@ -558,7 +593,6 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele private JScrollPane getJScrollPaneTree() { if (jScrollPaneTree == null) { jScrollPaneTree = new JScrollPane(); - //jScrollPaneTree.setBounds(new java.awt.Rectangle(0, 1, 290, 545)); jScrollPaneTree .setPreferredSize(new java.awt.Dimension( DataType.MAIN_FRAME_TREE_PANEL_PREFERRED_SIZE_WIDTH, @@ -594,12 +628,19 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele **/ private JMenu getJMenuHelp() { if (jMenuHelp == null) { + // + // Set jMenuHelp's attributes + // jMenuHelp = new JMenu(); jMenuHelp.setText("Help"); + + // + // Add sub menu items + // jMenuHelp.add(getJMenuItemHelpContents()); jMenuHelp.add(getJMenuItemHelpIndex()); jMenuHelp.add(getJMenuItemHelpSearch()); - //jMenuHelp.addSeparator(); + jMenuHelp.add(getJMenuItemHelpAbout()); } return jMenuHelp; @@ -633,82 +674,13 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele jMenuItemEditDelete.setMnemonic('D'); jMenuItemEditDelete.addActionListener(this); // - //Disabled when no module is open + //Disabled first when no module is open // jMenuItemEditDelete.setEnabled(false); } return jMenuItemEditDelete; } - // /** - // This method initializes jPopupMenu - // - // @return javax.swing.JPopupMenu jPopupMenu - // - // **/ - // private JPopupMenu getJPopupMenu() { - // if (jPopupMenu == null) { - // jPopupMenu = new JPopupMenu(); - // // - // //Add menu items of popup menu - // // - // jPopupMenu.add(getJMenuItemPopupAdd()); - // jPopupMenu.add(getJMenuItemPopupUpdate()); - // jPopupMenu.add(getJMenuItemPopupDelete()); - // jPopupMenu.setBorder(new BevelBorder(BevelBorder.RAISED)); - // jPopupMenu.addMouseListener(this); - // } - // return jPopupMenu; - // } - // - // /** - // This method initializes jMenuItemPopupAdd - // - // @return javax.swing.JMenuItem jMenuItemPopupAdd - // - // **/ - // private JMenuItem getJMenuItemPopupAdd() { - // if (jMenuItemPopupAdd == null) { - // jMenuItemPopupAdd = new JMenuItem(); - // jMenuItemPopupAdd.setText("Add"); - // jMenuItemPopupAdd.addActionListener(this); - // jMenuItemPopupAdd.setEnabled(false); - // } - // return jMenuItemPopupAdd; - // } - // - // /** - // This method initializes jMenuItemPopupUpdate - // - // @return javax.swing.JMenuItem jMenuItemPopupUpdate - // - // **/ - // private JMenuItem getJMenuItemPopupUpdate() { - // if (jMenuItemPopupUpdate == null) { - // jMenuItemPopupUpdate = new JMenuItem(); - // jMenuItemPopupUpdate.setText("Update"); - // jMenuItemPopupUpdate.addActionListener(this); - // jMenuItemPopupUpdate.setEnabled(false); - // } - // return jMenuItemPopupUpdate; - // } - // - // /** - // This method initializes jMenuItemPopupDelete - // - // @return javax.swing.JMenuItem jMenuItemPopupDelete - // - // **/ - // private JMenuItem getJMenuItemPopupDelete() { - // if (jMenuItemPopupDelete == null) { - // jMenuItemPopupDelete = new JMenuItem(); - // jMenuItemPopupDelete.setText("Delete"); - // jMenuItemPopupDelete.addActionListener(this); - // jMenuItemPopupDelete.setEnabled(false); - // } - // return jMenuItemPopupDelete; - // } - /** This method initializes jMenuFileNew @@ -768,15 +740,22 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele **/ private JMenu getJMenuTools() { if (jMenuTools == null) { + // + // Set jMenuTools's attributes + // jMenuTools = new JMenu(); jMenuTools.setText("Tools"); jMenuTools.setMnemonic('T'); + jMenuTools.addMenuListener(this); + + // + // Add sub menu items + // jMenuTools.add(getJMenuItemToolsToolChainConfiguration()); - //jMenuTools.addSeparator(); + jMenuTools.addSeparator(); + jMenuTools.add(getJMenuItemToolsClone()); - //jMenuTools.addSeparator(); jMenuTools.add(getJMenuItemToolsCodeScan()); - jMenuTools.addMenuListener(this); } return jMenuTools; } @@ -790,25 +769,36 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele **/ private JMenu getJMenuWindow() { if (jMenuWindow == null) { + // + // Set jMenuWindow's attribute + // jMenuWindow = new JMenu(); jMenuWindow.setText("Window"); jMenuWindow.setMnemonic('W'); + jMenuWindow.setVisible(false); + + // + // Add sub menu items + // jMenuWindow.add(getJMenuItemWindowDisplaySide()); jMenuWindow.add(getJMenuItemWindowDisplayTopBottom()); jMenuWindow.addSeparator(); + jMenuWindow.add(getJMenuItemWindowTabView()); jMenuWindow.addSeparator(); + jMenuWindow.add(getJMenuItemWindowSource()); jMenuWindow.add(getJMenuItemWindowXML()); jMenuWindow.addSeparator(); + jMenuWindow.add(getJMenuItemWindowPreferences()); - jMenuWindow.setVisible(false); } return jMenuWindow; } /** - This method initializes jPanelOperation + This method initializes jPanelOperation + Reserved @return javax.swing.JPanel jPanelOperation @@ -826,7 +816,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele } /** - This method initializes jButtonOk + This method initializes jButtonOk + Reserved @return javax.swing.JButton jButtonOk @@ -843,7 +834,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele } /** - This method initializes jButtonCancel + This method initializes jButtonCancel + Reserved @return javax.swing.JButton jButtonCancel @@ -864,7 +856,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemFileOpen @return javax.swing.JMenuItem jMenuItemFileOpen - */ + + **/ private JMenuItem getJMenuItemFileOpen() { if (jMenuItemFileOpen == null) { jMenuItemFileOpen = new JMenuItem(); @@ -879,7 +872,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemFileCloseAll @return javax.swing.JMenuItem jMenuItemFileOpen - */ + + **/ private JMenuItem getJMenuItemFileCloseAll() { if (jMenuItemFileCloseAll == null) { jMenuItemFileCloseAll = new JMenuItem(); @@ -894,7 +888,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemFileSaveAll @return javax.swing.JMenuItem jMenuItemFileSaveAll - */ + + **/ private JMenuItem getJMenuItemFileSaveAll() { if (jMenuItemFileSaveAll == null) { jMenuItemFileSaveAll = new JMenuItem(); @@ -910,7 +905,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemFilePageSetup @return javax.swing.JMenuItem - */ + + **/ private JMenuItem getJMenuItemFilePageSetup() { if (jMenuItemFilePageSetup == null) { jMenuItemFilePageSetup = new JMenuItem(); @@ -927,7 +923,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemFilePrint @return javax.swing.JMenuItem - */ + + **/ private JMenuItem getJMenuItemFilePrint() { if (jMenuItemFilePrint == null) { jMenuItemFilePrint = new JMenuItem(); @@ -944,7 +941,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemFileImport @return javax.swing.JMenuItem - */ + + **/ private JMenuItem getJMenuItemFileImport() { if (jMenuItemFileImport == null) { jMenuItemFileImport = new JMenuItem(); @@ -958,10 +956,11 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele } /** - * This method initializes jMenuItemFileProperties - * - * @return javax.swing.JMenuItem - */ + This method initializes jMenuItemFileProperties + + @return javax.swing.JMenuItem + + **/ private JMenuItem getJMenuItemFileProperties() { if (jMenuItemFileProperties == null) { jMenuItemFileProperties = new JMenuItem(); @@ -975,10 +974,11 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele } /** - * This method initializes jMenuFileRecentFiles - * - * @return javax.swing.JMenu - */ + This method initializes jMenuFileRecentFiles + + @return javax.swing.JMenu + + **/ private JMenu getJMenuFileRecentFiles() { if (jMenuFileRecentFiles == null) { jMenuFileRecentFiles = new JMenu(); @@ -994,8 +994,9 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele /** This method initializes jMenuItemEditUndo - @return javax.swing.JMenuItem - */ + @return javax.swing.JMenuItem + + **/ private JMenuItem getJMenuItemEditUndo() { if (jMenuItemEditUndo == null) { jMenuItemEditUndo = new JMenuItem(); @@ -1011,7 +1012,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemEditRedo @return javax.swing.JMenuItem - */ + + **/ private JMenuItem getJMenuItemEditRedo() { if (jMenuItemEditRedo == null) { jMenuItemEditRedo = new JMenuItem(); @@ -1027,7 +1029,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemEditCut @return javax.swing.JMenuItem - */ + + **/ private JMenuItem getJMenuItemEditCut() { if (jMenuItemEditCut == null) { jMenuItemEditCut = new JMenuItem(); @@ -1043,7 +1046,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemEditCopy @return javax.swing.JMenuItem - */ + + **/ private JMenuItem getJMenuItemEditCopy() { if (jMenuItemEditCopy == null) { jMenuItemEditCopy = new JMenuItem(); @@ -1059,7 +1063,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemEditPaste return javax.swing.JMenuItem - */ + + **/ private JMenuItem getJMenuItemEditPaste() { if (jMenuItemEditPaste == null) { jMenuItemEditPaste = new JMenuItem(); @@ -1075,7 +1080,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItem @return javax.swing.JMenuItem - */ + + **/ private JMenuItem getJMenuItemEditSelectAll() { if (jMenuItemEditSelectAll == null) { jMenuItemEditSelectAll = new JMenuItem(); @@ -1091,7 +1097,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele This method initializes jMenuItemEditFind @return javax.swing.JMenuItem - */ + + **/ private JMenuItem getJMenuItemEditFind() { if (jMenuItemEditFind == null) { jMenuItemEditFind = new JMenuItem(); @@ -1108,7 +1115,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemEditFindNext() { if (jMenuItemEditFindNext == null) { jMenuItemEditFindNext = new JMenuItem(); @@ -1125,17 +1132,24 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenu - */ + **/ private JMenu getJMenuView() { if (jMenuView == null) { + // + // Set jMenuView's attributes + // jMenuView = new JMenu(); jMenuView.setText("View"); jMenuView.setMnemonic('V'); + jMenuView.setVisible(false); + + // + // Add sub menu items + // jMenuView.add(getJMenuViewToolbars()); jMenuView.add(getJMenuItemViewAdvanced()); jMenuView.add(getJMenuItemViewStandard()); jMenuView.add(getJMenuItemViewXML()); - jMenuView.setVisible(false); } return jMenuView; } @@ -1145,12 +1159,13 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenu - */ + **/ private JMenu getJMenuViewToolbars() { if (jMenuViewToolbars == null) { jMenuViewToolbars = new JMenu(); jMenuViewToolbars.setText("Toolbars"); jMenuViewToolbars.setMnemonic('T'); + jMenuViewToolbars.add(getJCheckBoxMenuItemViewToolbarsFile()); jMenuViewToolbars.add(getJCheckBoxMenuItemViewToolbarsEdit()); jMenuViewToolbars.add(getJCheckBoxMenuItemViewToolbarsWindow()); @@ -1163,7 +1178,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JCheckBoxMenuItem - */ + **/ private JCheckBoxMenuItem getJCheckBoxMenuItemViewToolbarsFile() { if (jCheckBoxMenuItemViewToolbarsFile == null) { jCheckBoxMenuItemViewToolbarsFile = new JCheckBoxMenuItem(); @@ -1179,7 +1194,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JCheckBoxMenuItem - */ + **/ private JCheckBoxMenuItem getJCheckBoxMenuItemViewToolbarsEdit() { if (jCheckBoxMenuItemViewToolbarsEdit == null) { jCheckBoxMenuItemViewToolbarsEdit = new JCheckBoxMenuItem(); @@ -1195,7 +1210,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JCheckBoxMenuItem - */ + **/ private JCheckBoxMenuItem getJCheckBoxMenuItemViewToolbarsWindow() { if (jCheckBoxMenuItemViewToolbarsWindow == null) { jCheckBoxMenuItemViewToolbarsWindow = new JCheckBoxMenuItem(); @@ -1211,7 +1226,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemViewStandard() { if (jMenuItemViewStandard == null) { jMenuItemViewStandard = new JMenuItem(); @@ -1228,7 +1243,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemViewAdvanced() { if (jMenuItemViewAdvanced == null) { jMenuItemViewAdvanced = new JMenuItem(); @@ -1245,20 +1260,29 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenu - */ + **/ private JMenu getJMenuProject() { if (jMenuProject == null) { + // + // Set jMenuProject's attributes + // jMenuProject = new JMenu(); jMenuProject.setText("Project"); jMenuProject.setMnemonic('P'); + + // + // Add sub menu items + // jMenuProject.add(getJMenuItemProjectAdmin()); - //jMenuProject.addSeparator(); + jMenuProject.add(getJMenuItemProjectChangeWorkspace()); jMenuProject.addSeparator(); - jMenuProject.add(getJMenuItemProjectInstallPackage()); - jMenuProject.add(getJMenuItemProjectUpdatePackage()); - jMenuProject.add(getJMenuItemProjectRemovePackage()); - //jMenuProject.addSeparator(); + + jMenuProject.add(getJMenuItemProjectCreateFar()); + jMenuProject.add(getJMenuItemProjectInstallFar()); + jMenuProject.add(getJMenuItemProjectUpdateFar()); + jMenuProject.add(getJMenuItemProjectRemoveFar()); + jMenuProject.add(getJMenuProjectBuildTargets()); } return jMenuProject; @@ -1269,7 +1293,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemProjectAdmin() { if (jMenuItemProjectAdmin == null) { jMenuItemProjectAdmin = new JMenuItem(); @@ -1287,7 +1311,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemProjectChangeWorkspace() { if (jMenuItemProjectChangeWorkspace == null) { jMenuItemProjectChangeWorkspace = new JMenuItem(); @@ -1304,15 +1328,16 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenu - */ + **/ private JMenu getJMenuProjectBuildTargets() { if (jMenuProjectBuildTargets == null) { jMenuProjectBuildTargets = new JMenu(); jMenuProjectBuildTargets.setText("Build Targets"); jMenuProjectBuildTargets.setMnemonic('T'); + jMenuProjectBuildTargets.setVisible(false); + jMenuProjectBuildTargets.add(getJCheckBoxMenuItemProjectBuildTargetsDebug()); jMenuProjectBuildTargets.add(getJCheckBoxMenuItemProjectBuildTargetsRelease()); - jMenuProjectBuildTargets.setVisible(false); } return jMenuProjectBuildTargets; } @@ -1322,7 +1347,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JCheckBoxMenuItem - */ + **/ private JCheckBoxMenuItem getJCheckBoxMenuItemProjectBuildTargetsDebug() { if (jCheckBoxMenuItemProjectBuildTargetsDebug == null) { jCheckBoxMenuItemProjectBuildTargetsDebug = new JCheckBoxMenuItem(); @@ -1337,7 +1362,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JCheckBoxMenuItem - */ + **/ private JCheckBoxMenuItem getJCheckBoxMenuItemProjectBuildTargetsRelease() { if (jCheckBoxMenuItemProjectBuildTargetsRelease == null) { jCheckBoxMenuItemProjectBuildTargetsRelease = new JCheckBoxMenuItem(); @@ -1352,14 +1377,13 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemToolsToolChainConfiguration() { if (jMenuItemToolsToolChainConfiguration == null) { jMenuItemToolsToolChainConfiguration = new JMenuItem(); jMenuItemToolsToolChainConfiguration.setText("Tool Chain Configuration..."); jMenuItemToolsToolChainConfiguration.setMnemonic('C'); jMenuItemToolsToolChainConfiguration.addActionListener(this); - jMenuItemToolsToolChainConfiguration.setVisible(false); } return jMenuItemToolsToolChainConfiguration; } @@ -1369,7 +1393,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemToolsClone() { if (jMenuItemToolsClone == null) { jMenuItemToolsClone = new JMenuItem(); @@ -1386,7 +1410,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemToolsCodeScan() { if (jMenuItemToolsCodeScan == null) { jMenuItemToolsCodeScan = new JMenuItem(); @@ -1404,7 +1428,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemWindowDisplaySide() { if (jMenuItemWindowDisplaySide == null) { jMenuItemWindowDisplaySide = new JMenuItem(); @@ -1421,7 +1445,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemWindowDisplayTopBottom() { if (jMenuItemWindowDisplayTopBottom == null) { jMenuItemWindowDisplayTopBottom = new JMenuItem(); @@ -1438,7 +1462,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemViewXML() { if (jMenuItemViewXML == null) { jMenuItemViewXML = new JMenuItem(); @@ -1455,7 +1479,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemWindowTabView() { if (jMenuItemWindowTabView == null) { jMenuItemWindowTabView = new JMenuItem(); @@ -1472,7 +1496,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemWindowSource() { if (jMenuItemWindowSource == null) { jMenuItemWindowSource = new JMenuItem(); @@ -1489,7 +1513,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemWindowXML() { if (jMenuItemWindowXML == null) { jMenuItemWindowXML = new JMenuItem(); @@ -1506,7 +1530,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemWindowPreferences() { if (jMenuItemWindowPreferences == null) { jMenuItemWindowPreferences = new JMenuItem(); @@ -1523,7 +1547,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemHelpContents() { if (jMenuItemHelpContents == null) { jMenuItemHelpContents = new JMenuItem(); @@ -1541,7 +1565,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @return javax.swing.JMenuItem - */ + **/ private JMenuItem getJMenuItemHelpIndex() { if (jMenuItemHelpIndex == null) { jMenuItemHelpIndex = new JMenuItem(); @@ -1572,44 +1596,20 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele return jMenuItemHelpSearch; } - /** - * This method initializes jToolBar - * - * @return javax.swing.JToolBar - */ - // private JToolBar getJToolBarFile() { - // if (jToolBarFile == null) { - // jToolBarFile = new JToolBar(); - // jToolBarFile.setFloatable(false); - // } - // return jToolBarFile; - // } - /** - * This method initializes jToolBarEdit - * - * @return javax.swing.JToolBar - */ - // private JToolBar getJToolBarEdit() { - // if (jToolBarEdit == null) { - // jToolBarEdit = new JToolBar(); - // jToolBarEdit.setFloatable(false); - // } - // return jToolBarEdit; - // } /** * This method initializes jMenuItemToolsInstallPackage * * @return javax.swing.JMenuItem */ - private JMenuItem getJMenuItemProjectInstallPackage() { - if (jMenuItemProjectInstallPackage == null) { - jMenuItemProjectInstallPackage = new JMenuItem(); - jMenuItemProjectInstallPackage.setText("Install Distribution Package"); - jMenuItemProjectInstallPackage.setMnemonic('I'); - jMenuItemProjectInstallPackage.setEnabled(false); - jMenuItemProjectInstallPackage.addActionListener(this); + private JMenuItem getJMenuItemProjectInstallFar() { + if (jMenuItemProjectInstallFar == null) { + jMenuItemProjectInstallFar = new JMenuItem(); + jMenuItemProjectInstallFar.setText("Install FAR"); + jMenuItemProjectInstallFar.setMnemonic('I'); + jMenuItemProjectInstallFar.setEnabled(true); + jMenuItemProjectInstallFar.addActionListener(this); } - return jMenuItemProjectInstallPackage; + return jMenuItemProjectInstallFar; } /** @@ -1617,15 +1617,16 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele * * @return javax.swing.JMenuItem */ - private JMenuItem getJMenuItemProjectUpdatePackage() { - if (jMenuItemProjectUpdatePackage == null) { - jMenuItemProjectUpdatePackage = new JMenuItem(); - jMenuItemProjectUpdatePackage.setText("Update Disstribution Package"); - jMenuItemProjectUpdatePackage.setMnemonic('U'); - jMenuItemProjectUpdatePackage.setEnabled(false); - jMenuItemProjectUpdatePackage.addActionListener(this); + private JMenuItem getJMenuItemProjectUpdateFar() { + if (jMenuItemProjectUpdateFar == null) { + jMenuItemProjectUpdateFar = new JMenuItem(); + jMenuItemProjectUpdateFar.setText("Update FAR"); + jMenuItemProjectUpdateFar.setMnemonic('U'); + jMenuItemProjectUpdateFar.setEnabled(true); + jMenuItemProjectUpdateFar.addActionListener(this); + jMenuItemProjectUpdateFar.setVisible(true); } - return jMenuItemProjectUpdatePackage; + return jMenuItemProjectUpdateFar; } /** @@ -1633,15 +1634,30 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele * * @return javax.swing.JMenuItem */ - private JMenuItem getJMenuItemProjectRemovePackage() { - if (jMenuItemProjectRemovePackage == null) { - jMenuItemProjectRemovePackage = new JMenuItem(); - jMenuItemProjectRemovePackage.setText("Remove Distribution Package"); - jMenuItemProjectRemovePackage.setMnemonic('R'); - jMenuItemProjectRemovePackage.setEnabled(false); - jMenuItemProjectRemovePackage.addActionListener(this); + private JMenuItem getJMenuItemProjectRemoveFar() { + if (jMenuItemProjectRemoveFar == null) { + jMenuItemProjectRemoveFar = new JMenuItem(); + jMenuItemProjectRemoveFar.setText("Remove FAR"); + jMenuItemProjectRemoveFar.setMnemonic('R'); + jMenuItemProjectRemoveFar.setEnabled(true); + jMenuItemProjectRemoveFar.addActionListener(this); + } + return jMenuItemProjectRemoveFar; + } + + /** + * This method initializes jMenuItemProjectCreateFar + * + * @return javax.swing.JMenuItem + */ + private JMenuItem getJMenuItemProjectCreateFar() { + if (jMenuItemProjectCreateFar == null) { + jMenuItemProjectCreateFar = new JMenuItem(); + jMenuItemProjectCreateFar.setText("Create FAR"); + jMenuItemProjectCreateFar.setMnemonic('C'); + jMenuItemProjectCreateFar.addActionListener(this); } - return jMenuItemProjectRemovePackage; + return jMenuItemProjectCreateFar; } /* (non-Javadoc) @@ -1651,7 +1667,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele * */ public static void main(String[] args) { - FrameworkWizardUI module = new FrameworkWizardUI(); + FrameworkWizardUI module = FrameworkWizardUI.getInstance(); module.setVisible(true); } @@ -1689,8 +1705,10 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele this.addComponentListener(this); this.getCompontentsFromFrameworkDatabase(); this.setContentPane(getJContentPane()); - this.setTitle(windowTitle + "- [" + Workspace.getCurrentWorkspace() + "]"); + this.setTitle(DataType.PROJECT_NAME + " " + DataType.PROJECT_VERSION + " " + "- [" + + Workspace.getCurrentWorkspace() + "]"); this.setExitType(1); + // // max the window // @@ -1759,10 +1777,30 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele changeWorkspace(); } + if (arg0.getSource() == jMenuItemProjectCreateFar) { + createFar(); + } + + if (arg0.getSource() == jMenuItemProjectInstallFar) { + installFar(); + } + + if (arg0.getSource() == jMenuItemProjectRemoveFar) { + removeFar(); + } + + if (arg0.getSource() == jMenuItemProjectUpdateFar) { + updateFar(); + } + if (arg0.getSource() == jMenuItemToolsClone) { cloneItem(); } + if (arg0.getSource() == jMenuItemToolsToolChainConfiguration) { + setupToolChainConfiguration(); + } + if (arg0.getSource() == jMenuItemHelpAbout) { About a = new About(this, true); int result = a.showDialog(); @@ -1777,41 +1815,88 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele **/ private void makeEmptyTree() { + // // Make root + // dmtnRoot = new IDefaultMutableTreeNode("WORKSPACE", IDefaultMutableTreeNode.WORKSPACE, -1); + // // Make Module Description + // dmtnModuleDescription = new IDefaultMutableTreeNode("ModuleDescription", IDefaultMutableTreeNode.MODULE, -1); - if (this.vModuleList.size() > 0) { - for (int index = 0; index < this.vModuleList.size(); index++) { - dmtnModuleDescription.add(new IDefaultMutableTreeNode(this.vModuleList.elementAt(index).getName(), - IDefaultMutableTreeNode.MSA_HEADER, false, - this.vModuleList.elementAt(index))); + // + // First add package + // + if (this.vPackageList.size() > 0) { + for (int index = 0; index < this.vPackageList.size(); index++) { + IDefaultMutableTreeNode dmtnModulePackage = null; + IDefaultMutableTreeNode dmtnModulePackageLibrary = null; + IDefaultMutableTreeNode dmtnModulePackageModule = null; + + dmtnModulePackage = new IDefaultMutableTreeNode(this.vPackageList.elementAt(index).getName(), + IDefaultMutableTreeNode.MODULE_PACKAGE, false, + this.vPackageList.elementAt(index)); + dmtnModulePackageLibrary = new IDefaultMutableTreeNode("Library", + IDefaultMutableTreeNode.MODULE_PACKAGE_LIBRARY, + false, this.vPackageList.elementAt(index)); + dmtnModulePackageModule = new IDefaultMutableTreeNode("Module", + IDefaultMutableTreeNode.MODULE_PACKAGE_MODULE, + false, this.vPackageList.elementAt(index)); + // + // And then add each module in its package + // + Vector vModule = wt.getAllModules(this.vPackageList.elementAt(index)); + for (int indexJ = 0; indexJ < vModule.size(); indexJ++) { + if (vModule.get(indexJ).isLibrary()) { + dmtnModulePackageLibrary.add(new IDefaultMutableTreeNode(vModule.get(indexJ).getName(), + IDefaultMutableTreeNode.MODULE, + false, vModule.get(indexJ))); + } else { + dmtnModulePackageModule.add(new IDefaultMutableTreeNode(vModule.get(indexJ).getName(), + IDefaultMutableTreeNode.MODULE, + false, vModule.get(indexJ))); + } + } + if (dmtnModulePackageModule.getChildCount() > 0) { + dmtnModulePackage.add(dmtnModulePackageModule); + } + if (dmtnModulePackageLibrary.getChildCount() > 0) { + dmtnModulePackage.add(dmtnModulePackageLibrary); + } + + dmtnModuleDescription.add(dmtnModulePackage); } } + // // Make Package Description + // dmtnPackageDescription = new IDefaultMutableTreeNode("PackageDescription", IDefaultMutableTreeNode.PACKAGE, -1); if (this.vPackageList.size() > 0) { for (int index = 0; index < this.vPackageList.size(); index++) { dmtnPackageDescription.add(new IDefaultMutableTreeNode(this.vPackageList.elementAt(index).getName(), - IDefaultMutableTreeNode.SPD_HEADER, false, + IDefaultMutableTreeNode.PACKAGE, false, this.vPackageList.elementAt(index))); } } + // // Make Platform Description + // dmtnPlatformDescription = new IDefaultMutableTreeNode("PlatformDescription", IDefaultMutableTreeNode.PLATFORM, -1); if (this.vPlatformList.size() > 0) { for (int index = 0; index < this.vPlatformList.size(); index++) { dmtnPlatformDescription.add(new IDefaultMutableTreeNode(this.vPlatformList.elementAt(index).getName(), - IDefaultMutableTreeNode.FPD_PLATFORMHEADER, + IDefaultMutableTreeNode.PLATFORM, false, this.vPlatformList.elementAt(index))); } } + // + // Add sub nodes to root node + // dmtnRoot.add(dmtnModuleDescription); dmtnRoot.add(dmtnPackageDescription); dmtnRoot.add(dmtnPlatformDescription); @@ -1928,23 +2013,96 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele return fc.showSaveDialog(new JPanel()); } + /** + Add a module to tree + + @param mid The module node to be added + + **/ + private void addModuleToTree(ModuleIdentification mid) { + // + // Add new MsaHeader node to the tree + // + IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(mid.getName(), IDefaultMutableTreeNode.MSA_HEADER, + true, mid); + // + // First find the module belongs to which package + // + IDefaultMutableTreeNode packageNode = iTree.getNodeById(dmtnModuleDescription, mid.getPackageId(), + IDefaultMutableTreeNode.MODULE_PACKAGE); + // + // To check if has module node or library node + // + IDefaultMutableTreeNode parentModuleNode = null; + IDefaultMutableTreeNode parentLibraryNode = null; + boolean hasModule = false; + boolean hasLibrary = false; + for (int index = 0; index < packageNode.getChildCount(); index++) { + IDefaultMutableTreeNode iNode = (IDefaultMutableTreeNode) packageNode.getChildAt(index); + if (iNode.getCategory() == IDefaultMutableTreeNode.MODULE_PACKAGE_LIBRARY) { + hasLibrary = true; + parentLibraryNode = iNode; + } + if (iNode.getCategory() == IDefaultMutableTreeNode.MODULE_PACKAGE_MODULE) { + hasModule = true; + parentModuleNode = iNode; + } + } + + // + // If is a module + // + if (!mid.isLibrary()) { + // + // Create parent node first if has no parent node + // + if (!hasModule) { + parentModuleNode = new IDefaultMutableTreeNode("Module", IDefaultMutableTreeNode.MODULE_PACKAGE_MODULE, + false, mid.getPackageId()); + iTree.addNode(packageNode, parentModuleNode); + } + + iTree.addNode(parentModuleNode, node); + } + + // + // If is a Library + // + if (mid.isLibrary()) { + // + // Create parent node first if has no parent node + // + if (!hasLibrary) { + parentLibraryNode = new IDefaultMutableTreeNode("Library", + IDefaultMutableTreeNode.MODULE_PACKAGE_LIBRARY, false, + mid.getPackageId()); + iTree.addNode(packageNode, parentLibraryNode); + } + + iTree.addNode(parentLibraryNode, node); + } + } + /** Open Module @param path input file path **/ - private void openModule(String path) { + private void openModule(String path, ModuleIdentification moduleId) { ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null; try { msa = OpenFile.openMsaFile(path); } catch (IOException e) { + Log.wrn("Open Module Surface Area " + path, e.getMessage()); Log.err("Open Module Surface Area " + path, e.getMessage()); return; } catch (XmlException e) { + Log.wrn("Open Module Surface Area " + path, e.getMessage()); Log.err("Open Module Surface Area " + path, e.getMessage()); return; } catch (Exception e) { + Log.wrn("Open Module Surface Area " + path, "Invalid file type"); Log.err("Open Module Surface Area " + path, "Invalid file type"); return; } @@ -1967,14 +2125,9 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele } } if (!isFind) { - vModuleList.addElement(new ModuleIdentification(id, pid)); - // - // Add new MsaHeader node to the tree - // - IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vModuleList.lastElement().getName(), - IDefaultMutableTreeNode.MSA_HEADER, true, - vModuleList.lastElement()); - iTree.addNode(dmtnModuleDescription, node); + ModuleIdentification mid = new ModuleIdentification(id, pid, moduleId.isLibrary()); + vModuleList.addElement(mid); + addModuleToTree(mid); } } else { // @@ -1984,10 +2137,95 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele return; } + // // Make the node selected // + iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnModuleDescription, id, + IDefaultMutableTreeNode.MODULE))); + // + // Update opening Module list information + // + if (!openingModuleList.existsModule(id)) { + // + // Insert sub node of module + // + insertModuleTreeNode(id); + iTree.getSelectNode().setOpening(true); + + // + // Update opening module list + // + openingModuleList.insertToOpeningModuleList(id, msa); + openingModuleList.setTreePathById(id, iTree.getSelectionPath()); + } + // + // Select msa header node and show it in editor panel + // iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnModuleDescription, id, IDefaultMutableTreeNode.MSA_HEADER))); + showModuleElement(IDefaultMutableTreeNode.MSA_HEADER, openingModuleList.getOpeningModuleById(id)); + this.currentOpeningModuleIndex = openingModuleList.findIndexOfListById(id); + } + + /** + Open Module + + @param path input file path + + **/ + private void openModule(String path) { + ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null; + try { + msa = OpenFile.openMsaFile(path); + } catch (IOException e) { + Log.wrn("Open Module Surface Area " + path, e.getMessage()); + Log.err("Open Module Surface Area " + path, e.getMessage()); + return; + } catch (XmlException e) { + Log.wrn("Open Module Surface Area " + path, e.getMessage()); + Log.err("Open Module Surface Area " + path, e.getMessage()); + return; + } catch (Exception e) { + Log.wrn("Open Module Surface Area " + path, "Invalid file type"); + Log.err("Open Module Surface Area " + path, "Invalid file type"); + return; + } + Identification id = new Identification(msa.getMsaHeader().getModuleName(), msa.getMsaHeader().getGuidValue(), + msa.getMsaHeader().getVersion(), path); + // + // Generate module id + // + PackageIdentification pid = wt.getPackageIdByModuleId(id); + if (pid != null) { + // + // To judge if the module existed in vModuleList + // If not, add it to vModuleList + // + boolean isFind = false; + for (int index = 0; index < vModuleList.size(); index++) { + if (vModuleList.elementAt(index).equals(id)) { + isFind = true; + break; + } + } + if (!isFind) { + ModuleIdentification mid = new ModuleIdentification(id, pid); + vModuleList.addElement(mid); + addModuleToTree(mid); + } + } else { + // + // The module is not in existing packages + // + Log.wrn("Open Module", "The module hasn't been added to any package of current workspace!"); + return; + } + + // + // Make the node selected + // + iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnModuleDescription, id, + IDefaultMutableTreeNode.MODULE))); // // Update opening Module list information // @@ -2005,8 +2243,10 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele openingModuleList.setTreePathById(id, iTree.getSelectionPath()); } // - // Show msa header in editor panel + // Select msa header node and show it in editor panel // + iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnModuleDescription, id, + IDefaultMutableTreeNode.MSA_HEADER))); showModuleElement(IDefaultMutableTreeNode.MSA_HEADER, openingModuleList.getOpeningModuleById(id)); this.currentOpeningModuleIndex = openingModuleList.findIndexOfListById(id); } @@ -2022,12 +2262,15 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele try { spd = OpenFile.openSpdFile(path); } catch (IOException e) { + Log.wrn("Open Package Surface Area " + path, e.getMessage()); Log.err("Open Package Surface Area " + path, e.getMessage()); return; } catch (XmlException e) { + Log.wrn("Open Package Surface Area " + path, e.getMessage()); Log.err("Open Package Surface Area " + path, e.getMessage()); return; } catch (Exception e) { + Log.wrn("Open Package Surface Area " + path, "Invalid file type"); Log.err("Open Package Surface Area " + path, "Invalid file type"); return; } @@ -2048,7 +2291,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele // // The module is not in existing packages // - Log.err("The package hasn't been added to current workspace!"); + Log.wrn("Open Package", "The package hasn't been added to current workspace!"); return; } @@ -2056,7 +2299,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele // Make the node selected // iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnPackageDescription, id, - IDefaultMutableTreeNode.SPD_HEADER))); + IDefaultMutableTreeNode.PACKAGE))); // // Update opening package list information // @@ -2076,6 +2319,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele // // Show spd header in editor panel // + iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnPackageDescription, id, + IDefaultMutableTreeNode.SPD_HEADER))); showPackageElement(IDefaultMutableTreeNode.SPD_HEADER, openingPackageList.getOpeningPackageById(id)); this.currentOpeningPackageIndex = openingPackageList.findIndexOfListById(id); } @@ -2091,12 +2336,15 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele try { fpd = OpenFile.openFpdFile(path); } catch (IOException e) { + Log.wrn("Open Platform Surface Area " + path, e.getMessage()); Log.err("Open Platform Surface Area " + path, e.getMessage()); return; } catch (XmlException e) { + Log.wrn("Open Platform Surface Area " + path, e.getMessage()); Log.err("Open Platform Surface Area " + path, e.getMessage()); return; } catch (Exception e) { + Log.wrn("Open Platform Surface Area " + path, "Invalid file type"); Log.err("Open Platform Surface Area " + path, "Invalid file type"); return; } @@ -2118,7 +2366,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele // // The module is not in existing packages // - Log.err("The platform hasn't been added to current workspace!"); + Log.wrn("Open Platform", "The platform hasn't been added to current workspace!"); return; } @@ -2126,7 +2374,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele // Make the node selected // iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnPlatformDescription, id, - IDefaultMutableTreeNode.FPD_PLATFORMHEADER))); + IDefaultMutableTreeNode.PLATFORM))); // // Update opening package list information // @@ -2146,6 +2394,8 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele // // Show fpd header in editor panel // + iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnPlatformDescription, id, + IDefaultMutableTreeNode.FPD_PLATFORMHEADER))); showPlatformElement(IDefaultMutableTreeNode.FPD_PLATFORMHEADER, openingPlatformList.getOpeningPlatformById(id)); this.currentOpeningPlatformIndex = openingPlatformList.findIndexOfListById(id); } @@ -2166,6 +2416,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele openingModuleList.setNew(omt.getId(), false); openingModuleList.setModuleSaved(omt.getId(), true); } catch (Exception e) { + Log.wrn("Save Module", e.getMessage()); Log.err("Save Module", e.getMessage()); } } @@ -2186,6 +2437,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele openingPackageList.setNew(opt.getId(), false); openingPackageList.setPackageSaved(opt.getId(), true); } catch (Exception e) { + Log.wrn("Save Package", e.getMessage()); Log.err("Save Package", e.getMessage()); } } @@ -2206,6 +2458,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele openingPlatformList.setNew(opt.getId(), false); openingPlatformList.setPlatformSaved(opt.getId(), true); } catch (Exception e) { + Log.wrn("Save Package", e.getMessage()); Log.err("Save Package", e.getMessage()); } } @@ -2260,6 +2513,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele } private void insertModuleTreeNode(Identification id) { + iTree.addNode(new IDefaultMutableTreeNode("Module Header", IDefaultMutableTreeNode.MSA_HEADER, true, id)); iTree.addNode(new IDefaultMutableTreeNode("Module Definitions", IDefaultMutableTreeNode.MSA_MODULEDEFINITIONS, true, id)); iTree.addNode(new IDefaultMutableTreeNode("Library Class Definitions", @@ -2282,12 +2536,13 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele } private void insertPackageTreeNode(Identification id) { + iTree.addNode(new IDefaultMutableTreeNode("Package Header", IDefaultMutableTreeNode.SPD_HEADER, true, id)); iTree.addNode(new IDefaultMutableTreeNode("Package Definitions", IDefaultMutableTreeNode.SPD_PACKAGEDEFINITIONS, true, id)); iTree.addNode(new IDefaultMutableTreeNode("Library Class Declarations", IDefaultMutableTreeNode.SPD_LIBRARYCLASSDECLARATIONS, true, id)); iTree.addNode(new IDefaultMutableTreeNode("Msa Files", IDefaultMutableTreeNode.SPD_MSAFILES, false, id)); - iTree.addNode(new IDefaultMutableTreeNode("Package Headers", IDefaultMutableTreeNode.SPD_PACKAGEHEADERS, true, + iTree.addNode(new IDefaultMutableTreeNode("Package Includes", IDefaultMutableTreeNode.SPD_PACKAGEHEADERS, true, id)); iTree.addNode(new IDefaultMutableTreeNode("Guid Declarations", IDefaultMutableTreeNode.SPD_GUIDDECLARATIONS, true, id)); @@ -2300,7 +2555,10 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele } private void insertPlatformTreeNode(Identification id) { - iTree.addNode(new IDefaultMutableTreeNode("Platform Definitions", IDefaultMutableTreeNode.FPD_PLATFORMDEFINITIONS, true, id)); + iTree.addNode(new IDefaultMutableTreeNode("Platform Header", IDefaultMutableTreeNode.FPD_PLATFORMHEADER, true, + id)); + iTree.addNode(new IDefaultMutableTreeNode("Platform Definitions", + IDefaultMutableTreeNode.FPD_PLATFORMDEFINITIONS, true, id)); iTree.addNode(new IDefaultMutableTreeNode("Flash", IDefaultMutableTreeNode.FPD_FLASH, true, id)); iTree.addNode(new IDefaultMutableTreeNode("Framework Modules", IDefaultMutableTreeNode.FPD_FRAMEWORKMODULES, true, id)); @@ -2314,50 +2572,63 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele **/ private void doubleClickModuleTreeNode() { - Identification id = iTree.getSelectNode().getId(); - int intCategory = iTree.getSelectCategory(); + Identification id = null; + int intCategory = -1; String path = null; - // - // If the node is not opened yet - // Insert top level elements first - // - //if (intCategory == IDefaultMutableTreeNode.MSA_HEADER || intCategory == IDefaultMutableTreeNode.SPD_MSAFILES) { - if (intCategory == IDefaultMutableTreeNode.MSA_HEADER) { + boolean isOpen = false; + try { + id = iTree.getSelectNode().getId(); + intCategory = iTree.getSelectCategory(); + isOpen = iTree.getSelectNode().isOpening(); + + if (!isOpen) { + // + // If the node is not opened yet + // Insert top level elements first + // + if (intCategory == IDefaultMutableTreeNode.MODULE) { - if (intCategory == IDefaultMutableTreeNode.MSA_HEADER) { - path = iTree.getSelectNode().getId().getPath(); + if (intCategory == IDefaultMutableTreeNode.MODULE) { + path = iTree.getSelectNode().getId().getPath(); + } + if (intCategory == IDefaultMutableTreeNode.PACKAGE) { + path = iTree.getSelectNode().getId().getPath(); + } + openModule(path); + return; + } + if (intCategory == IDefaultMutableTreeNode.PACKAGE) { + path = iTree.getSelectNode().getId().getPath(); + openPackage(path); + return; + } + if (intCategory == IDefaultMutableTreeNode.PLATFORM) { + path = iTree.getSelectNode().getId().getPath(); + openPlatform(path); + return; + } } - if (intCategory == IDefaultMutableTreeNode.SPD_MSAFILES) { - path = iTree.getSelectNode().getId().getPath(); + + // + // Show editor panel + // + if (intCategory >= IDefaultMutableTreeNode.MSA_HEADER && intCategory < IDefaultMutableTreeNode.SPD_HEADER) { + showModuleElement(intCategory, openingModuleList.getOpeningModuleById(id)); + this.currentOpeningModuleIndex = openingModuleList.findIndexOfListById(id); } - openModule(path); - return; - } - if (intCategory == IDefaultMutableTreeNode.SPD_HEADER) { - path = iTree.getSelectNode().getId().getPath(); - openPackage(path); - return; - } - if (intCategory == IDefaultMutableTreeNode.FPD_PLATFORMHEADER) { - path = iTree.getSelectNode().getId().getPath(); - openPlatform(path); - return; - } - // - // Show editor panel - // - if (intCategory >= IDefaultMutableTreeNode.MSA_HEADER && intCategory < IDefaultMutableTreeNode.SPD_HEADER) { - showModuleElement(intCategory, openingModuleList.getOpeningModuleById(id)); - this.currentOpeningModuleIndex = openingModuleList.findIndexOfListById(id); - } - if (intCategory >= IDefaultMutableTreeNode.SPD_HEADER - && intCategory < IDefaultMutableTreeNode.FPD_PLATFORMHEADER) { - showPackageElement(intCategory, openingPackageList.getOpeningPackageById(id)); - this.currentOpeningPackageIndex = openingPackageList.findIndexOfListById(id); - } - if (intCategory >= IDefaultMutableTreeNode.FPD_PLATFORMHEADER) { - showPlatformElement(intCategory, openingPlatformList.getOpeningPlatformById(id)); - this.currentOpeningPlatformIndex = openingPlatformList.findIndexOfListById(id); + if (intCategory >= IDefaultMutableTreeNode.SPD_HEADER + && intCategory < IDefaultMutableTreeNode.FPD_PLATFORMHEADER) { + showPackageElement(intCategory, openingPackageList.getOpeningPackageById(id)); + this.currentOpeningPackageIndex = openingPackageList.findIndexOfListById(id); + } + if (intCategory >= IDefaultMutableTreeNode.FPD_PLATFORMHEADER) { + showPlatformElement(intCategory, openingPlatformList.getOpeningPlatformById(id)); + this.currentOpeningPlatformIndex = openingPlatformList.findIndexOfListById(id); + } + } catch (RuntimeException e) { + Log.log("double click category: " + intCategory); + Log.log("double click id path: " + id); + Log.log("double click exception: " + e.getMessage()); } } @@ -2367,34 +2638,33 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele @param elementType @param fpd - **/ + **/ private void showPlatformElement(int elementType, OpeningPlatformType fpd) { this.cleanDesktopPanePlatform(); + switch (elementType) { case IDefaultMutableTreeNode.FPD_PLATFORMDEFINITIONS: - FpdPlatformDefs frmFpdPlatformDefs = new FpdPlatformDefs(fpd.getXmlFpd()); + FpdPlatformDefs frmFpdPlatformDefs = new FpdPlatformDefs(fpd); getJDesktopPanePlatform().add(frmFpdPlatformDefs, 1); break; case IDefaultMutableTreeNode.FPD_PLATFORMHEADER: - FpdHeader frmFpdHeader = new FpdHeader(fpd.getXmlFpd()); + FpdHeader frmFpdHeader = new FpdHeader(fpd); getJDesktopPanePlatform().add(frmFpdHeader, 1); break; case IDefaultMutableTreeNode.FPD_FLASH: - FpdFlash frmFpdFlash = new FpdFlash(fpd.getXmlFpd()); + FpdFlash frmFpdFlash = new FpdFlash(fpd); getJDesktopPanePlatform().add(frmFpdFlash, 1); break; case IDefaultMutableTreeNode.FPD_FRAMEWORKMODULES: - FpdFrameworkModules frmFpdFrameworkModules = new FpdFrameworkModules(fpd.getXmlFpd()); + FpdFrameworkModules frmFpdFrameworkModules = new FpdFrameworkModules(fpd); getJDesktopPanePlatform().add(frmFpdFrameworkModules, 1); break; case IDefaultMutableTreeNode.FPD_PCDDYNAMICBUILDDECLARATIONS: - FpdDynamicPcdBuildDefinitions frmFpdDynamicPcdBuildDefinitions = new FpdDynamicPcdBuildDefinitions( - fpd - .getXmlFpd()); + FpdDynamicPcdBuildDefinitions frmFpdDynamicPcdBuildDefinitions = new FpdDynamicPcdBuildDefinitions(fpd); getJDesktopPanePlatform().add(frmFpdDynamicPcdBuildDefinitions, 1); break; case IDefaultMutableTreeNode.FPD_BUILDOPTIONS: - FpdBuildOptions frmFpdBuildOptions = new FpdBuildOptions(fpd.getXmlFpd()); + FpdBuildOptions frmFpdBuildOptions = new FpdBuildOptions(fpd); getJDesktopPanePlatform().add(frmFpdBuildOptions, 1); break; } @@ -2414,39 +2684,35 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele Tools.dirForNewSpd = spd.getId().getPath(); switch (elementType) { case IDefaultMutableTreeNode.SPD_HEADER: - SpdHeader frmSpdHeader = new SpdHeader(spd.getXmlSpd()); + SpdHeader frmSpdHeader = new SpdHeader(spd); getJDesktopPanePackage().add(frmSpdHeader, 1); break; - case IDefaultMutableTreeNode.SPD_PACKAGEDEFINITIONS: - SpdPackageDefinitions frmSpdPackageDefinitions = new SpdPackageDefinitions(spd.getXmlSpd()); - getJDesktopPanePackage().add(frmSpdPackageDefinitions, 1); - break; case IDefaultMutableTreeNode.SPD_LIBRARYCLASSDECLARATIONS: - SpdLibClassDecls frmSlcd = new SpdLibClassDecls(spd.getXmlSpd()); + SpdLibClassDecls frmSlcd = new SpdLibClassDecls(spd); getJDesktopPanePackage().add(frmSlcd, 1); break; case IDefaultMutableTreeNode.SPD_MSAFILES: - SpdMsaFiles frmSmf = new SpdMsaFiles(spd.getXmlSpd()); + SpdMsaFiles frmSmf = new SpdMsaFiles(spd); getJDesktopPanePackage().add(frmSmf, 1); break; case IDefaultMutableTreeNode.SPD_PACKAGEHEADERS: - SpdPackageHeaders frmSph = new SpdPackageHeaders(spd.getXmlSpd()); + SpdPackageHeaders frmSph = new SpdPackageHeaders(spd); getJDesktopPanePackage().add(frmSph, 1); break; case IDefaultMutableTreeNode.SPD_GUIDDECLARATIONS: - SpdGuidDecls frmSgd = new SpdGuidDecls(spd.getXmlSpd()); + SpdGuidDecls frmSgd = new SpdGuidDecls(spd); getJDesktopPanePackage().add(frmSgd, 1); break; case IDefaultMutableTreeNode.SPD_PROTOCOLDECLARATIONS: - SpdProtocolDecls frmSprod = new SpdProtocolDecls(spd.getXmlSpd()); + SpdProtocolDecls frmSprod = new SpdProtocolDecls(spd); getJDesktopPanePackage().add(frmSprod, 1); break; case IDefaultMutableTreeNode.SPD_PPIDECLARATIONS: - SpdPpiDecls frmSppid = new SpdPpiDecls(spd.getXmlSpd()); + SpdPpiDecls frmSppid = new SpdPpiDecls(spd); getJDesktopPanePackage().add(frmSppid, 1); break; case IDefaultMutableTreeNode.SPD_PCDDECLARATIONS: - SpdPcdDefs frmSpcdd = new SpdPcdDefs(spd.getXmlSpd()); + SpdPcdDefs frmSpcdd = new SpdPcdDefs(spd); getJDesktopPanePackage().add(frmSpcdd, 1); break; } @@ -2574,19 +2840,19 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele try { wt.addModuleToPackage(smb.getMid(), psa); } catch (IOException e) { + Log.wrn("Upddate MsaFiles of Package", e.getMessage()); Log.err("Upddate MsaFiles of Package", e.getMessage()); - e.printStackTrace(); return; } catch (XmlException e) { + Log.wrn("Upddate MsaFiles of Package", e.getMessage()); Log.err("Upddate MsaFiles of Package", e.getMessage()); - e.printStackTrace(); return; } catch (Exception e) { + Log.wrn("Upddate MsaFiles of Package", e.getMessage()); Log.err("Upddate MsaFiles of Package", e.getMessage()); - e.printStackTrace(); return; } - this.openModule(smb.getMid().getPath()); + this.openModule(smb.getMid().getPath(), smb.getMid()); } } else if (result == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) { // @@ -2603,17 +2869,26 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele try { wt.addPackageToDatabase(smb.getPid()); } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); + Log.err("addPackageToDatabase", e.getMessage()); } vPackageList.addElement(smb.getPid()); + // - // Add new SpdHeader node to the tree + // Add to Module Description node // IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vPackageList.lastElement().getName(), - IDefaultMutableTreeNode.SPD_HEADER, true, - vPackageList.lastElement()); + IDefaultMutableTreeNode.MODULE_PACKAGE, + false, vPackageList.lastElement()); + + iTree.addNode(dmtnModuleDescription, node); + + // + // Add new SpdHeader node to the tree + // + node = new IDefaultMutableTreeNode(vPackageList.lastElement().getName(), + IDefaultMutableTreeNode.SPD_HEADER, true, vPackageList.lastElement()); iTree.addNode(dmtnPackageDescription, node); + this.openPackage(smb.getPid().getPath()); } } else if (result == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) { @@ -2631,8 +2906,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele try { wt.addPlatformToDatabase(smb.getFid()); } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); + Log.err("addPlatformToDatabase", e.getMessage()); } vPlatformList.addElement(smb.getFid()); // @@ -2768,7 +3042,9 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele this.saveAll(); } if (result == JOptionPane.NO_OPTION) { + // // Do nothing + // } if (result == JOptionPane.CANCEL_OPTION) { return; @@ -2874,33 +3150,106 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele // Reinit whole window // closeAll(); - this.setTitle(windowTitle + "- [" + Workspace.getCurrentWorkspace() + "]"); + this.setTitle(DataType.PROJECT_NAME + " " + DataType.PROJECT_VERSION + " " + "- [" + + Workspace.getCurrentWorkspace() + "]"); } sw.dispose(); } + /** + To create a Far file from current workspace + + **/ + private void createFar() { + CreateStepOne cso = new CreateStepOne(this, true); + int result = cso.showDialog(); + if (result == DataType.RETURN_TYPE_OK) { + String strReturn = "Create Far Done!"; + JOptionPane.showConfirmDialog(null, strReturn, "Done", JOptionPane.DEFAULT_OPTION, + JOptionPane.INFORMATION_MESSAGE); + } + cso.dispose(); + } + + /** + To install a Far file to current workspace + + **/ + private void installFar() { + InstallStepOne iso = new InstallStepOne(this, true); + int result = iso.showDialog(); + if (result == DataType.RETURN_TYPE_OK) { + String strReturn = "Install Far Done!
The WORKSPACE will be refreshed!"; + JOptionPane.showConfirmDialog(null, strReturn, "Done", JOptionPane.DEFAULT_OPTION, + JOptionPane.INFORMATION_MESSAGE); + this.closeAll(); + } + iso.dispose(); + } + + /** + To remove a Far's items from current workspace + + **/ + private void removeFar() { + DeleteStepOne dso = new DeleteStepOne(this, true); + int result = dso.showDialog(); + if (result == DataType.RETURN_TYPE_OK) { + String strReturn = "Delete Far Done!
The WORKSPACE will be refreshed!"; + JOptionPane.showConfirmDialog(null, strReturn, "Done", JOptionPane.DEFAULT_OPTION, + JOptionPane.INFORMATION_MESSAGE); + this.closeAll(); + } + dso.dispose(); + } + + /** + To update an existing Far file + + **/ + private void updateFar() { + UpdateStepOne uso = new UpdateStepOne(this, true); + int result = uso.showDialog(); + if (result == DataType.RETURN_TYPE_OK) { + String strReturn = "Update Far Done!
The WORKSPACE will be refreshed!"; + JOptionPane.showConfirmDialog(null, strReturn, "Done", JOptionPane.DEFAULT_OPTION, + JOptionPane.INFORMATION_MESSAGE); + this.closeAll(); + } + uso.dispose(); + } + + /** + Show Tool Chain Configuration Dialog to setup Tool Chain + + **/ + private void setupToolChainConfiguration() { + ToolChainConfig tcc = ToolChainConfig.getInstance(); + tcc.showDialog(); + } + /** Clone selected item **/ private void cloneItem() { int mode = -1; - + // // Check if there is any item can be cloned // if (iTree.getSelectionPath() == null) { - Log.err("Please select a target to clone!"); + Log.wrn("Clone", "Please select a target to clone!"); return; } int category = iTree.getSelectCategory(); Identification id = iTree.getSelectNode().getId(); if (category == IDefaultMutableTreeNode.MODULE || category == IDefaultMutableTreeNode.PACKAGE || category == IDefaultMutableTreeNode.PLATFORM) { - Log.err("Please select a target to clone!"); + Log.wrn("Clone", "Please select a target to clone!"); return; } - + if (category == IDefaultMutableTreeNode.WORKSPACE) { mode = DataType.RETURN_TYPE_WORKSPACE; id = null; @@ -2914,9 +3263,10 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele if (category >= IDefaultMutableTreeNode.FPD_PLATFORMHEADER) { mode = DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA; } + Clone c = new Clone(this, true, mode, id); int result = c.showDialog(); - + if (result == DataType.RETURN_TYPE_CANCEL) { c.dispose(); } @@ -2926,13 +3276,7 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele if (result == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) { Tools.showInformationMessage("Module Surface Area Clone Finished"); vModuleList.addElement(c.getMid()); - // - // Add new MsaHeader node to the tree - // - IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vModuleList.lastElement().getName(), - IDefaultMutableTreeNode.MSA_HEADER, true, - vModuleList.lastElement()); - iTree.addNode(dmtnModuleDescription, node); + addModuleToTree(c.getMid()); } if (result == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) { Tools.showInformationMessage("Package Surface Area Clone Finished"); @@ -3005,7 +3349,10 @@ public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSele } else { int category = iTree.getSelectCategory(); if (category == IDefaultMutableTreeNode.MODULE || category == IDefaultMutableTreeNode.PACKAGE - || category == IDefaultMutableTreeNode.PLATFORM) { + || category == IDefaultMutableTreeNode.PLATFORM + || category == IDefaultMutableTreeNode.MODULE_PACKAGE + || category == IDefaultMutableTreeNode.MODULE_PACKAGE_LIBRARY + || category == IDefaultMutableTreeNode.MODULE_PACKAGE_MODULE) { jMenuItemToolsClone.setEnabled(false); } else { jMenuItemToolsClone.setEnabled(true);