\r
import java.awt.event.ActionEvent;\r
import java.awt.event.ComponentEvent;\r
-import java.awt.event.ComponentListener;\r
+import java.awt.event.KeyEvent;\r
+import java.awt.event.KeyListener;\r
import java.awt.event.MouseEvent;\r
import java.awt.event.MouseListener;\r
import java.awt.event.WindowEvent;\r
+import java.io.BufferedWriter;\r
+import java.io.File;\r
+import java.io.FileWriter;\r
import java.io.IOException;\r
+import java.util.Iterator;\r
+import java.util.Set;\r
import java.util.Vector;\r
\r
import javax.swing.JButton;\r
import javax.swing.event.MenuListener;\r
import javax.swing.event.TreeSelectionEvent;\r
import javax.swing.event.TreeSelectionListener;\r
+import javax.swing.tree.TreePath;\r
\r
import org.apache.xmlbeans.XmlException;\r
-import org.tianocore.ModuleSurfaceAreaDocument;\r
import org.tianocore.PackageSurfaceAreaDocument;\r
-import org.tianocore.PlatformSurfaceAreaDocument;\r
import org.tianocore.frameworkwizard.common.DataType;\r
+import org.tianocore.frameworkwizard.common.GlobalData;\r
import org.tianocore.frameworkwizard.common.IFileFilter;\r
import org.tianocore.frameworkwizard.common.Log;\r
-import org.tianocore.frameworkwizard.common.OpenFile;\r
import org.tianocore.frameworkwizard.common.SaveFile;\r
import org.tianocore.frameworkwizard.common.Tools;\r
import org.tianocore.frameworkwizard.common.Identifications.Identification;\r
-import org.tianocore.frameworkwizard.common.Identifications.OpeningModuleList;\r
import org.tianocore.frameworkwizard.common.Identifications.OpeningModuleType;\r
-import org.tianocore.frameworkwizard.common.Identifications.OpeningPackageList;\r
import org.tianocore.frameworkwizard.common.Identifications.OpeningPackageType;\r
-import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformList;\r
import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType;\r
+import org.tianocore.frameworkwizard.common.find.FindResult;\r
import org.tianocore.frameworkwizard.common.ui.IDefaultMutableTreeNode;\r
import org.tianocore.frameworkwizard.common.ui.IDesktopManager;\r
import org.tianocore.frameworkwizard.common.ui.IFrame;\r
import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
import org.tianocore.frameworkwizard.module.ui.ModuleBootModes;\r
import org.tianocore.frameworkwizard.module.ui.ModuleDataHubs;\r
-import org.tianocore.frameworkwizard.module.ui.ModuleDefinitions;\r
import org.tianocore.frameworkwizard.module.ui.ModuleEvents;\r
import org.tianocore.frameworkwizard.module.ui.ModuleExterns;\r
import org.tianocore.frameworkwizard.module.ui.ModuleGuids;\r
import org.tianocore.frameworkwizard.workspace.Workspace;\r
import org.tianocore.frameworkwizard.workspace.WorkspaceTools;\r
import org.tianocore.frameworkwizard.workspace.ui.SwitchWorkspace;\r
+import org.tianocore.frameworkwizard.toolchain.Preferences;\r
\r
/**\r
The class is used to show main GUI of FrameworkWizard\r
It extends IFrame implements MouseListener, TreeSelectionListener, ComponentListener and MenuListener\r
\r
**/\r
-public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSelectionListener, ComponentListener,\r
+public class FrameworkWizardUI extends IFrame implements KeyListener, MouseListener, TreeSelectionListener,\r
MenuListener {\r
///\r
/// Define class Serial Version UID\r
private static final long serialVersionUID = -7103240960573031772L;\r
\r
///\r
- /// Used to save information of all files\r
+ /// Used to record current operation target\r
///\r
- private Vector<ModuleIdentification> vModuleList = new Vector<ModuleIdentification>();\r
-\r
- private Vector<PackageIdentification> vPackageList = new Vector<PackageIdentification>();\r
-\r
- private Vector<PlatformIdentification> vPlatformList = new Vector<PlatformIdentification>();\r
-\r
- private OpeningModuleList openingModuleList = new OpeningModuleList();\r
-\r
- private OpeningPackageList openingPackageList = new OpeningPackageList();\r
-\r
- private OpeningPlatformList openingPlatformList = new OpeningPlatformList();\r
-\r
private int currentOpeningModuleIndex = -1;\r
\r
private int currentOpeningPackageIndex = -1;\r
\r
private JMenuItem jMenuItemFileNew = null;\r
\r
+ private JMenuItem jMenuItemFileRefresh = null;\r
+\r
private JMenuItem jMenuItemFileSaveAs = null;\r
\r
private JMenuItem jMenuItemFileExit = null;\r
\r
private JMenuItem jMenuItemEditSelectAll = null;\r
\r
- private JMenuItem jMenuItemEditFind = null;\r
-\r
private JMenuItem jMenuItemEditFindNext = null;\r
\r
private JMenu jMenuView = null;\r
\r
private JMenuItem jMenuItemProjectChangeWorkspace = null;\r
\r
- private JMenu jMenuProjectBuildTargets = null;\r
+ private JMenuItem jMenuItemToolsBuildPreferences = null;\r
\r
- private JCheckBoxMenuItem jCheckBoxMenuItemProjectBuildTargetsDebug = null;\r
+ // private JCheckBoxMenuItem jCheckBoxMenuItemProjectBuildTargetsDebug = null;\r
\r
- private JCheckBoxMenuItem jCheckBoxMenuItemProjectBuildTargetsRelease = null;\r
+ // private JCheckBoxMenuItem jCheckBoxMenuItemProjectBuildTargetsRelease = null;\r
\r
private JMenuItem jMenuItemToolsToolChainConfiguration = null;\r
\r
\r
private JMenuItem jMenuItemProjectCreateFar = null;\r
\r
+ private JMenu jMenuEditFind = null;\r
+\r
+ private JMenuItem jMenuItemEditFindPcd = null;\r
+\r
+ private JMenuItem jMenuItemEditFindLibraryClass = null;\r
+\r
+ private JMenuItem jMenuItemEditFindPpi = null;\r
+\r
+ private JMenuItem jMenuItemEditFindProtocol = null;\r
+\r
+ private JMenuItem jMenuItemEditFindGuid = null;\r
+\r
+ private JMenuItem jMenuItemEditFindLibraryInstance = null;\r
+\r
///\r
/// A static definition for this class itself\r
///\r
private static FrameworkWizardUI fwui = null;\r
\r
+ private JMenuItem jMenuItemToolsGenerateGuidsXref = null;\r
+\r
/**\r
If the class hasn't an instnace, new one.\r
\r
jMenuFile.add(getJMenuItemFileSaveAll());\r
jMenuFile.addSeparator();\r
\r
+ jMenuFile.add(getJMenuItemFileRefresh());\r
+ jMenuFile.addSeparator();\r
+\r
jMenuFile.add(getJMenuItemFilePageSetup());\r
jMenuFile.add(getJMenuItemFilePrint());\r
jMenuFile.add(getJMenuItemFileImport());\r
return jMenuItemFileSaveAs;\r
}\r
\r
+ /**\r
+ This method initializes jMenuItemFileRefresh \r
+ \r
+ @return javax.swing.JMenuItem jMenuItemFileRefresh\r
+ \r
+ **/\r
+ private JMenuItem getJMenuItemFileRefresh() {\r
+ if (jMenuItemFileRefresh == null) {\r
+ jMenuItemFileRefresh = new JMenuItem();\r
+ jMenuItemFileRefresh.setText("Refresh");\r
+ jMenuItemFileRefresh.setMnemonic('R');\r
+ jMenuItemFileRefresh.addActionListener(this);\r
+ jMenuItemFileRefresh.setVisible(true);\r
+ }\r
+ return jMenuItemFileRefresh;\r
+ }\r
+\r
/**\r
This method initializes jMenuItemModuleExit \r
\r
jMenuEdit = new JMenu();\r
jMenuEdit.setText("Edit");\r
jMenuEdit.setMnemonic('E');\r
- jMenuEdit.setVisible(false);\r
+ jMenuEdit.setVisible(true);\r
\r
//\r
// Add sub menu items\r
//\r
jMenuEdit.add(getJMenuItemEditUndo());\r
jMenuEdit.add(getJMenuItemEditRedo());\r
- jMenuEdit.addSeparator();\r
+ //jMenuEdit.addSeparator();\r
\r
jMenuEdit.add(getJMenuItemEditCut());\r
jMenuEdit.add(getJMenuItemEditCopy());\r
jMenuEdit.add(getJMenuItemEditPaste());\r
jMenuEdit.add(getJMenuItemEditDelete());\r
- jMenuEdit.addSeparator();\r
+ //jMenuEdit.addSeparator();\r
\r
jMenuEdit.add(getJMenuItemEditSelectAll());\r
- jMenuEdit.add(getJMenuItemEditFind());\r
+ jMenuEdit.add(getJMenuEditFind());\r
jMenuEdit.add(getJMenuItemEditFindNext());\r
- jMenuEdit.addSeparator();\r
+ //jMenuEdit.addSeparator();\r
}\r
return jMenuEdit;\r
}\r
//\r
jMenuHelp = new JMenu();\r
jMenuHelp.setText("Help");\r
+ jMenuHelp.setMnemonic('H');\r
\r
//\r
// Add sub menu items\r
if (jMenuItemHelpAbout == null) {\r
jMenuItemHelpAbout = new JMenuItem();\r
jMenuItemHelpAbout.setText("About...");\r
+ jMenuItemHelpAbout.setMnemonic('A');\r
jMenuItemHelpAbout.addActionListener(this);\r
}\r
return jMenuItemHelpAbout;\r
jMenuItemEditDelete = new JMenuItem();\r
jMenuItemEditDelete.setText("Delete");\r
jMenuItemEditDelete.setMnemonic('D');\r
+ jMenuItemEditDelete.setVisible(false);\r
+ jMenuItemEditDelete.setEnabled(false);\r
jMenuItemEditDelete.addActionListener(this);\r
//\r
//Disabled first when no module is open\r
//\r
// Add sub menu items\r
//\r
- jMenuTools.add(getJMenuItemToolsToolChainConfiguration());\r
- jMenuTools.addSeparator();\r
\r
jMenuTools.add(getJMenuItemToolsClone());\r
jMenuTools.add(getJMenuItemToolsCodeScan());\r
+ jMenuTools.addSeparator();\r
+\r
+ jMenuTools.add(getJMenuItemToolsToolChainConfiguration());\r
+ jMenuTools.add(getJMenuItemToolsBuildPreferences());\r
+ jMenuTools.addSeparator();\r
+\r
+ jMenuTools.add(getJMenuItemToolsGenerateGuidsXref());\r
}\r
return jMenuTools;\r
}\r
if (jMenuItemFileCloseAll == null) {\r
jMenuItemFileCloseAll = new JMenuItem();\r
jMenuItemFileCloseAll.setText("Close All");\r
+ jMenuItemFileCloseAll.setMnemonic('A');\r
jMenuItemFileCloseAll.setEnabled(true);\r
jMenuItemFileCloseAll.addActionListener(this);\r
}\r
jMenuItemEditUndo.setText("Undo");\r
jMenuItemEditUndo.setMnemonic('U');\r
jMenuItemEditUndo.setEnabled(false);\r
+ jMenuItemEditUndo.setVisible(false);\r
jMenuItemEditUndo.addActionListener(this);\r
}\r
return jMenuItemEditUndo;\r
jMenuItemEditRedo.setText("Redo");\r
jMenuItemEditRedo.setMnemonic('R');\r
jMenuItemEditRedo.setEnabled(false);\r
+ jMenuItemEditRedo.setVisible(false);\r
jMenuItemEditRedo.addActionListener(this);\r
}\r
return jMenuItemEditRedo;\r
jMenuItemEditCut.setText("Cut");\r
jMenuItemEditCut.setMnemonic('t');\r
jMenuItemEditCut.setEnabled(false);\r
+ jMenuItemEditCut.setVisible(false);\r
jMenuItemEditCut.addActionListener(this);\r
}\r
return jMenuItemEditCut;\r
jMenuItemEditCopy.setText("Copy");\r
jMenuItemEditCopy.setMnemonic('C');\r
jMenuItemEditCopy.setEnabled(false);\r
+ jMenuItemEditCopy.setVisible(false);\r
jMenuItemEditCopy.addActionListener(this);\r
}\r
return jMenuItemEditCopy;\r
jMenuItemEditPaste.setText("Paste");\r
jMenuItemEditPaste.setMnemonic('P');\r
jMenuItemEditPaste.setEnabled(false);\r
+ jMenuItemEditPaste.setVisible(false);\r
jMenuItemEditPaste.addActionListener(this);\r
}\r
return jMenuItemEditPaste;\r
jMenuItemEditSelectAll.setText("Select All");\r
jMenuItemEditSelectAll.setMnemonic('A');\r
jMenuItemEditSelectAll.setEnabled(false);\r
+ jMenuItemEditSelectAll.setVisible(false);\r
jMenuItemEditSelectAll.addActionListener(this);\r
}\r
return jMenuItemEditSelectAll;\r
}\r
\r
- /**\r
- This method initializes jMenuItemEditFind \r
- \r
- @return javax.swing.JMenuItem \r
- \r
- **/\r
- private JMenuItem getJMenuItemEditFind() {\r
- if (jMenuItemEditFind == null) {\r
- jMenuItemEditFind = new JMenuItem();\r
- jMenuItemEditFind.setText("Find");\r
- jMenuItemEditFind.setMnemonic('F');\r
- jMenuItemEditFind.setEnabled(false);\r
- jMenuItemEditFind.addActionListener(this);\r
- }\r
- return jMenuItemEditFind;\r
- }\r
-\r
/**\r
This method initializes jMenuItemEditFindNext \r
\r
jMenuItemEditFindNext.setText("Find Next");\r
jMenuItemEditFindNext.setMnemonic('n');\r
jMenuItemEditFindNext.setEnabled(false);\r
+ jMenuItemEditFindNext.setVisible(false);\r
jMenuItemEditFindNext.addActionListener(this);\r
}\r
return jMenuItemEditFindNext;\r
jMenuProject.add(getJMenuItemProjectUpdateFar());\r
jMenuProject.add(getJMenuItemProjectRemoveFar());\r
\r
- jMenuProject.add(getJMenuProjectBuildTargets());\r
}\r
return jMenuProject;\r
}\r
}\r
\r
/**\r
- This method initializes jMenuProjectBuildTargets \r
+ This method initializes jMenuProjectBuildPreferences \r
\r
@return javax.swing.JMenu \r
\r
**/\r
- private JMenu getJMenuProjectBuildTargets() {\r
- if (jMenuProjectBuildTargets == null) {\r
- jMenuProjectBuildTargets = new JMenu();\r
- jMenuProjectBuildTargets.setText("Build Targets");\r
- jMenuProjectBuildTargets.setMnemonic('T');\r
- jMenuProjectBuildTargets.setVisible(false);\r
-\r
- jMenuProjectBuildTargets.add(getJCheckBoxMenuItemProjectBuildTargetsDebug());\r
- jMenuProjectBuildTargets.add(getJCheckBoxMenuItemProjectBuildTargetsRelease());\r
- }\r
- return jMenuProjectBuildTargets;\r
- }\r
-\r
- /**\r
- This method initializes jCheckBoxMenuItemProjectBuildTargetsDebug \r
- \r
- @return javax.swing.JCheckBoxMenuItem \r
- \r
- **/\r
- private JCheckBoxMenuItem getJCheckBoxMenuItemProjectBuildTargetsDebug() {\r
- if (jCheckBoxMenuItemProjectBuildTargetsDebug == null) {\r
- jCheckBoxMenuItemProjectBuildTargetsDebug = new JCheckBoxMenuItem();\r
- jCheckBoxMenuItemProjectBuildTargetsDebug.setText("Debug");\r
- jCheckBoxMenuItemProjectBuildTargetsDebug.setEnabled(false);\r
+ private JMenuItem getJMenuItemToolsBuildPreferences() {\r
+ if (jMenuItemToolsBuildPreferences == null) {\r
+ jMenuItemToolsBuildPreferences = new JMenuItem();\r
+ jMenuItemToolsBuildPreferences.setText("Build Preferences");\r
+ jMenuItemToolsBuildPreferences.setMnemonic('P');\r
+ jMenuItemToolsBuildPreferences.setEnabled(true);\r
+ jMenuItemToolsBuildPreferences.addActionListener(this);\r
}\r
- return jCheckBoxMenuItemProjectBuildTargetsDebug;\r
- }\r
-\r
- /**\r
- This method initializes jCheckBoxMenuItemProjectBuildTargetsRelease \r
- \r
- @return javax.swing.JCheckBoxMenuItem \r
- \r
- **/\r
- private JCheckBoxMenuItem getJCheckBoxMenuItemProjectBuildTargetsRelease() {\r
- if (jCheckBoxMenuItemProjectBuildTargetsRelease == null) {\r
- jCheckBoxMenuItemProjectBuildTargetsRelease = new JCheckBoxMenuItem();\r
- jCheckBoxMenuItemProjectBuildTargetsRelease.setText("Release");\r
- jCheckBoxMenuItemProjectBuildTargetsRelease.setEnabled(false);\r
- }\r
- return jCheckBoxMenuItemProjectBuildTargetsRelease;\r
+ return jMenuItemToolsBuildPreferences;\r
}\r
\r
/**\r
return jMenuItemProjectCreateFar;\r
}\r
\r
+ /**\r
+ * This method initializes jMenuEditFind \r
+ * \r
+ * @return javax.swing.JMenu \r
+ */\r
+ private JMenu getJMenuEditFind() {\r
+ if (jMenuEditFind == null) {\r
+ jMenuEditFind = new JMenu();\r
+ jMenuEditFind.setText("Find");\r
+ jMenuEditFind.setMnemonic('F');\r
+\r
+ jMenuEditFind.add(getJMenuItemEditFindPpi());\r
+ jMenuEditFind.add(getJMenuItemEditFindProtocol());\r
+ jMenuEditFind.add(getJMenuItemEditFindGuid());\r
+ jMenuEditFind.add(getJMenuItemEditFindPcd());\r
+ jMenuEditFind.add(getJMenuItemEditFindLibraryClass());\r
+ jMenuEditFind.add(getJMenuItemEditFindLibraryInstance());\r
+ }\r
+ return jMenuEditFind;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jMenuItemEditFindPcd \r
+ * \r
+ * @return javax.swing.JMenuItem \r
+ */\r
+ private JMenuItem getJMenuItemEditFindPcd() {\r
+ if (jMenuItemEditFindPcd == null) {\r
+ jMenuItemEditFindPcd = new JMenuItem();\r
+ jMenuItemEditFindPcd.setText("All PCD entries");\r
+ jMenuItemEditFindPcd.setMnemonic('P');\r
+ jMenuItemEditFindPcd.addActionListener(this);\r
+ }\r
+ return jMenuItemEditFindPcd;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jMenuItemEditFindLibraryClass \r
+ * \r
+ * @return javax.swing.JMenuItem \r
+ */\r
+ private JMenuItem getJMenuItemEditFindLibraryClass() {\r
+ if (jMenuItemEditFindLibraryClass == null) {\r
+ jMenuItemEditFindLibraryClass = new JMenuItem();\r
+ jMenuItemEditFindLibraryClass.setText("All Library Classes");\r
+ jMenuItemEditFindLibraryClass.setMnemonic('C');\r
+ jMenuItemEditFindLibraryClass.addActionListener(this);\r
+ }\r
+ return jMenuItemEditFindLibraryClass;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jMenuItemEditFindPpi \r
+ * \r
+ * @return javax.swing.JMenuItem \r
+ */\r
+ private JMenuItem getJMenuItemEditFindPpi() {\r
+ if (jMenuItemEditFindPpi == null) {\r
+ jMenuItemEditFindPpi = new JMenuItem();\r
+ jMenuItemEditFindPpi.setText("All PPIs");\r
+ jMenuItemEditFindPpi.setMnemonic('I');\r
+ jMenuItemEditFindPpi.addActionListener(this);\r
+ }\r
+ return jMenuItemEditFindPpi;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jMenuItemEditFindProtocol \r
+ * \r
+ * @return javax.swing.JMenuItem \r
+ */\r
+ private JMenuItem getJMenuItemEditFindProtocol() {\r
+ if (jMenuItemEditFindProtocol == null) {\r
+ jMenuItemEditFindProtocol = new JMenuItem();\r
+ jMenuItemEditFindProtocol.setText("All Protocols");\r
+ jMenuItemEditFindProtocol.setMnemonic('r');\r
+ jMenuItemEditFindProtocol.addActionListener(this);\r
+ }\r
+ return jMenuItemEditFindProtocol;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jMenuItemEditFindGuid \r
+ * \r
+ * @return javax.swing.JMenuItem \r
+ */\r
+ private JMenuItem getJMenuItemEditFindGuid() {\r
+ if (jMenuItemEditFindGuid == null) {\r
+ jMenuItemEditFindGuid = new JMenuItem();\r
+ jMenuItemEditFindGuid.setText("All GUIDs");\r
+ jMenuItemEditFindGuid.setMnemonic('G');\r
+ jMenuItemEditFindGuid.addActionListener(this);\r
+ }\r
+ return jMenuItemEditFindGuid;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jMenuItemEditFindLibraryInstance \r
+ * \r
+ * @return javax.swing.JMenuItem \r
+ */\r
+ private JMenuItem getJMenuItemEditFindLibraryInstance() {\r
+ if (jMenuItemEditFindLibraryInstance == null) {\r
+ jMenuItemEditFindLibraryInstance = new JMenuItem();\r
+ jMenuItemEditFindLibraryInstance.setText("All Library Instances");\r
+ jMenuItemEditFindLibraryInstance.setMnemonic('n');\r
+ jMenuItemEditFindLibraryInstance.addActionListener(this);\r
+ jMenuItemEditFindLibraryInstance.setVisible(false);\r
+ }\r
+ return jMenuItemEditFindLibraryInstance;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jMenuItemProjectGenerateGuidsXref \r
+ * \r
+ * @return javax.swing.JMenuItem \r
+ */\r
+ private JMenuItem getJMenuItemToolsGenerateGuidsXref() {\r
+ if (jMenuItemToolsGenerateGuidsXref == null) {\r
+ jMenuItemToolsGenerateGuidsXref = new JMenuItem();\r
+ jMenuItemToolsGenerateGuidsXref.setText("Generate guids.xref");\r
+ jMenuItemToolsGenerateGuidsXref.setMnemonic('G');\r
+ jMenuItemToolsGenerateGuidsXref.addActionListener(this);\r
+ }\r
+ return jMenuItemToolsGenerateGuidsXref;\r
+ }\r
+\r
/* (non-Javadoc)\r
* @see org.tianocore.packaging.common.ui.IFrame#main(java.lang.String[])\r
*\r
\r
**/\r
private void init() {\r
+ //\r
+ // Show splash screen\r
+ //\r
+ SplashScreen ss = new SplashScreen();\r
+ ss.setVisible(true);\r
+\r
//\r
// Set current workspace and check\r
// Check if exists WORKSPACE\r
System.exit(0);\r
}\r
\r
+ //\r
+ // Init Global Data\r
+ //\r
+ GlobalData.init();\r
+\r
+ //\r
+ // Close splash screen\r
+ //\r
+ ss.dispose();\r
+\r
+ //\r
+ // Init the frame\r
+ //\r
this.setSize(DataType.MAIN_FRAME_PREFERRED_SIZE_WIDTH, DataType.MAIN_FRAME_PREFERRED_SIZE_HEIGHT);\r
this.setResizable(true);\r
this.setJMenuBar(getjJMenuBar());\r
- this.addComponentListener(this);\r
- this.getCompontentsFromFrameworkDatabase();\r
this.setContentPane(getJContentPane());\r
this.setTitle(DataType.PROJECT_NAME + " " + DataType.PROJECT_VERSION + " " + "- ["\r
+ Workspace.getCurrentWorkspace() + "]");\r
//\r
// Operations of Menu\r
//\r
- if (arg0.getSource() == jMenuItemFileNew) {\r
+ if (arg0.getSource() == this.jMenuItemFileNew) {\r
this.fileNew();\r
}\r
\r
- if (arg0.getSource() == jMenuItemFileOpen) {\r
+ if (arg0.getSource() == this.jMenuItemFileOpen) {\r
this.open();\r
}\r
\r
- if (arg0.getSource() == jMenuItemFileClose) {\r
+ if (arg0.getSource() == this.jMenuItemFileClose) {\r
this.close();\r
}\r
\r
- if (arg0.getSource() == jMenuItemFileCloseAll) {\r
+ if (arg0.getSource() == this.jMenuItemFileCloseAll) {\r
this.closeAll();\r
+ this.makeEmptyTree();\r
}\r
\r
- if (arg0.getSource() == jMenuItemFileSave) {\r
+ if (arg0.getSource() == this.jMenuItemFileSave) {\r
this.save();\r
}\r
\r
- if (arg0.getSource() == jMenuItemFileSaveAs) {\r
+ if (arg0.getSource() == this.jMenuItemFileSaveAs) {\r
this.saveAs();\r
}\r
\r
- if (arg0.getSource() == jMenuItemFileSaveAll) {\r
+ if (arg0.getSource() == this.jMenuItemFileSaveAll) {\r
this.saveAll();\r
}\r
\r
- if (arg0.getSource() == jMenuItemFileExit) {\r
+ if (arg0.getSource() == this.jMenuItemFileRefresh) {\r
+ this.closeAll();\r
+ this.refresh();\r
+ this.makeEmptyTree();\r
+ }\r
+\r
+ if (arg0.getSource() == this.jMenuItemFileExit) {\r
this.exit();\r
}\r
\r
- if (arg0.getSource() == jMenuItemProjectChangeWorkspace) {\r
- changeWorkspace();\r
+ if (arg0.getSource() == this.jMenuItemEditFindPpi) {\r
+ this.findPpi();\r
+ }\r
+\r
+ if (arg0.getSource() == this.jMenuItemEditFindProtocol) {\r
+ this.findProtocol();\r
}\r
\r
- if (arg0.getSource() == jMenuItemProjectCreateFar) {\r
- createFar();\r
+ if (arg0.getSource() == this.jMenuItemEditFindGuid) {\r
+ this.findGuid();\r
}\r
\r
- if (arg0.getSource() == jMenuItemProjectInstallFar) {\r
- installFar();\r
+ if (arg0.getSource() == this.jMenuItemEditFindPcd) {\r
+ this.findPcd();\r
}\r
\r
- if (arg0.getSource() == jMenuItemProjectRemoveFar) {\r
- removeFar();\r
+ if (arg0.getSource() == this.jMenuItemEditFindLibraryClass) {\r
+ this.findLibraryClass();\r
}\r
\r
- if (arg0.getSource() == jMenuItemProjectUpdateFar) {\r
- updateFar();\r
+ if (arg0.getSource() == this.jMenuItemEditFindLibraryInstance) {\r
+ this.findLibraryInstance();\r
}\r
\r
- if (arg0.getSource() == jMenuItemToolsClone) {\r
- cloneItem();\r
+ if (arg0.getSource() == jMenuItemToolsBuildPreferences) {\r
+ configBuildPreferences();\r
}\r
\r
- if (arg0.getSource() == jMenuItemToolsToolChainConfiguration) {\r
- setupToolChainConfiguration();\r
+ if (arg0.getSource() == this.jMenuItemProjectChangeWorkspace) {\r
+ this.changeWorkspace();\r
}\r
\r
- if (arg0.getSource() == jMenuItemHelpAbout) {\r
+ if (arg0.getSource() == this.jMenuItemProjectCreateFar) {\r
+ this.createFar();\r
+ }\r
+\r
+ if (arg0.getSource() == this.jMenuItemProjectInstallFar) {\r
+ this.installFar();\r
+ }\r
+\r
+ if (arg0.getSource() == this.jMenuItemProjectRemoveFar) {\r
+ this.removeFar();\r
+ }\r
+\r
+ if (arg0.getSource() == this.jMenuItemProjectUpdateFar) {\r
+ this.updateFar();\r
+ }\r
+\r
+ if (arg0.getSource() == this.jMenuItemToolsClone) {\r
+ this.cloneItem();\r
+ }\r
+\r
+ if (arg0.getSource() == this.jMenuItemToolsToolChainConfiguration) {\r
+ this.setupToolChainConfiguration();\r
+ }\r
+\r
+ if (arg0.getSource() == this.jMenuItemToolsGenerateGuidsXref) {\r
+ this.generateGuidsXref();\r
+ }\r
+\r
+ if (arg0.getSource() == this.jMenuItemHelpAbout) {\r
About a = new About(this, true);\r
int result = a.showDialog();\r
if (result == DataType.RETURN_TYPE_OK) {\r
//\r
// Make root\r
//\r
- dmtnRoot = new IDefaultMutableTreeNode("WORKSPACE", IDefaultMutableTreeNode.WORKSPACE, -1);\r
+ dmtnRoot = new IDefaultMutableTreeNode("WORKSPACE", IDefaultMutableTreeNode.WORKSPACE, false, null, null);\r
\r
//\r
// Make Module Description\r
//\r
- dmtnModuleDescription = new IDefaultMutableTreeNode("ModuleDescription", IDefaultMutableTreeNode.MODULE, -1);\r
+ dmtnModuleDescription = new IDefaultMutableTreeNode("Modules", IDefaultMutableTreeNode.MODULE_DESCRIPTION,\r
+ false, null, dmtnRoot);\r
\r
//\r
// First add package\r
//\r
- if (this.vPackageList.size() > 0) {\r
- for (int index = 0; index < this.vPackageList.size(); index++) {\r
+ if (GlobalData.vPackageList.size() > 0) {\r
+ for (int index = 0; index < GlobalData.vPackageList.size(); index++) {\r
IDefaultMutableTreeNode dmtnModulePackage = null;\r
IDefaultMutableTreeNode dmtnModulePackageLibrary = null;\r
IDefaultMutableTreeNode dmtnModulePackageModule = null;\r
\r
- dmtnModulePackage = new IDefaultMutableTreeNode(this.vPackageList.elementAt(index).getName(),\r
+ dmtnModulePackage = new IDefaultMutableTreeNode(GlobalData.vPackageList.elementAt(index).getName(),\r
IDefaultMutableTreeNode.MODULE_PACKAGE, false,\r
- this.vPackageList.elementAt(index));\r
+ GlobalData.vPackageList.elementAt(index),\r
+ this.dmtnModuleDescription);\r
dmtnModulePackageLibrary = new IDefaultMutableTreeNode("Library",\r
IDefaultMutableTreeNode.MODULE_PACKAGE_LIBRARY,\r
- false, this.vPackageList.elementAt(index));\r
+ false, GlobalData.vPackageList.elementAt(index),\r
+ this.dmtnModuleDescription);\r
dmtnModulePackageModule = new IDefaultMutableTreeNode("Module",\r
IDefaultMutableTreeNode.MODULE_PACKAGE_MODULE,\r
- false, this.vPackageList.elementAt(index));\r
+ false, GlobalData.vPackageList.elementAt(index),\r
+ this.dmtnModuleDescription);\r
//\r
// And then add each module in its package\r
//\r
- Vector<ModuleIdentification> vModule = wt.getAllModules(this.vPackageList.elementAt(index));\r
+ Vector<ModuleIdentification> vModule = wt.getAllModules(GlobalData.vPackageList.elementAt(index));\r
for (int indexJ = 0; indexJ < vModule.size(); indexJ++) {\r
if (vModule.get(indexJ).isLibrary()) {\r
dmtnModulePackageLibrary.add(new IDefaultMutableTreeNode(vModule.get(indexJ).getName(),\r
- IDefaultMutableTreeNode.MODULE,\r
- false, vModule.get(indexJ)));\r
+ IDefaultMutableTreeNode.MODULE, false,\r
+ vModule.get(indexJ),\r
+ this.dmtnModuleDescription));\r
} else {\r
dmtnModulePackageModule.add(new IDefaultMutableTreeNode(vModule.get(indexJ).getName(),\r
- IDefaultMutableTreeNode.MODULE,\r
- false, vModule.get(indexJ)));\r
+ IDefaultMutableTreeNode.MODULE, false,\r
+ vModule.get(indexJ),\r
+ this.dmtnModuleDescription));\r
}\r
}\r
if (dmtnModulePackageModule.getChildCount() > 0) {\r
//\r
// Make Package Description\r
//\r
- dmtnPackageDescription = new IDefaultMutableTreeNode("PackageDescription", IDefaultMutableTreeNode.PACKAGE, -1);\r
- if (this.vPackageList.size() > 0) {\r
- for (int index = 0; index < this.vPackageList.size(); index++) {\r
- dmtnPackageDescription.add(new IDefaultMutableTreeNode(this.vPackageList.elementAt(index).getName(),\r
+ dmtnPackageDescription = new IDefaultMutableTreeNode("Packages", IDefaultMutableTreeNode.PACKAGE_DESCRIPTION,\r
+ false, null, this.dmtnRoot);\r
+ if (GlobalData.vPackageList.size() > 0) {\r
+ for (int index = 0; index < GlobalData.vPackageList.size(); index++) {\r
+ dmtnPackageDescription.add(new IDefaultMutableTreeNode(GlobalData.vPackageList.elementAt(index)\r
+ .getName(),\r
IDefaultMutableTreeNode.PACKAGE, false,\r
- this.vPackageList.elementAt(index)));\r
+ GlobalData.vPackageList.elementAt(index),\r
+ this.dmtnPackageDescription));\r
}\r
}\r
\r
//\r
// Make Platform Description\r
//\r
- dmtnPlatformDescription = new IDefaultMutableTreeNode("PlatformDescription", IDefaultMutableTreeNode.PLATFORM,\r
- -1);\r
- if (this.vPlatformList.size() > 0) {\r
- for (int index = 0; index < this.vPlatformList.size(); index++) {\r
- dmtnPlatformDescription.add(new IDefaultMutableTreeNode(this.vPlatformList.elementAt(index).getName(),\r
- IDefaultMutableTreeNode.PLATFORM,\r
- false, this.vPlatformList.elementAt(index)));\r
+ dmtnPlatformDescription = new IDefaultMutableTreeNode("Platforms",\r
+ IDefaultMutableTreeNode.PLATFORM_DESCRIPTION, false,\r
+ null, this.dmtnRoot);\r
+ if (GlobalData.vPlatformList.size() > 0) {\r
+ for (int index = 0; index < GlobalData.vPlatformList.size(); index++) {\r
+ dmtnPlatformDescription.add(new IDefaultMutableTreeNode(GlobalData.vPlatformList.elementAt(index)\r
+ .getName(),\r
+ IDefaultMutableTreeNode.PLATFORM, false,\r
+ GlobalData.vPlatformList.elementAt(index),\r
+ this.dmtnPlatformDescription));\r
}\r
}\r
\r
dmtnRoot.add(dmtnPlatformDescription);\r
iTree = new ITree(dmtnRoot);\r
iTree.addMouseListener(this);\r
+ iTree.addKeyListener(this);\r
jScrollPaneTree.setViewportView(iTree);\r
}\r
\r
* \r
*/\r
public void mouseClicked(MouseEvent arg0) {\r
- if (arg0.getButton() == MouseEvent.BUTTON1) {\r
- }\r
- if (arg0.getButton() == MouseEvent.BUTTON3) {\r
- }\r
//\r
// When double click\r
//\r
//\r
// Add new MsaHeader node to the tree\r
//\r
- IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(mid.getName(), IDefaultMutableTreeNode.MSA_HEADER,\r
- true, mid);\r
+ IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(mid.getName(), IDefaultMutableTreeNode.MODULE,\r
+ false, mid, this.dmtnModuleDescription);\r
//\r
// First find the module belongs to which package\r
//\r
//\r
if (!hasModule) {\r
parentModuleNode = new IDefaultMutableTreeNode("Module", IDefaultMutableTreeNode.MODULE_PACKAGE_MODULE,\r
- false, mid.getPackageId());\r
+ false, mid.getPackageId(), this.dmtnModuleDescription);\r
iTree.addNode(packageNode, parentModuleNode);\r
}\r
\r
if (!hasLibrary) {\r
parentLibraryNode = new IDefaultMutableTreeNode("Library",\r
IDefaultMutableTreeNode.MODULE_PACKAGE_LIBRARY, false,\r
- mid.getPackageId());\r
+ mid.getPackageId(), this.dmtnModuleDescription);\r
iTree.addNode(packageNode, parentLibraryNode);\r
}\r
\r
@param path input file path\r
\r
**/\r
- private void openModule(String path, ModuleIdentification moduleId) {\r
- ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null;\r
- try {\r
- msa = OpenFile.openMsaFile(path);\r
- } catch (IOException e) {\r
- Log.wrn("Open Module Surface Area " + path, e.getMessage());\r
- Log.err("Open Module Surface Area " + path, e.getMessage());\r
- return;\r
- } catch (XmlException e) {\r
- Log.wrn("Open Module Surface Area " + path, e.getMessage());\r
- Log.err("Open Module Surface Area " + path, e.getMessage());\r
- return;\r
- } catch (Exception e) {\r
- Log.wrn("Open Module Surface Area " + path, "Invalid file type");\r
- Log.err("Open Module Surface Area " + path, "Invalid file type");\r
- return;\r
- }\r
- Identification id = new Identification(msa.getMsaHeader().getModuleName(), msa.getMsaHeader().getGuidValue(),\r
- msa.getMsaHeader().getVersion(), path);\r
- //\r
- // Generate module id\r
- //\r
- PackageIdentification pid = wt.getPackageIdByModuleId(id);\r
- if (pid != null) {\r
- //\r
- // To judge if the module existed in vModuleList\r
- // If not, add it to vModuleList\r
- //\r
- boolean isFind = false;\r
- for (int index = 0; index < vModuleList.size(); index++) {\r
- if (vModuleList.elementAt(index).equals(id)) {\r
- isFind = true;\r
- break;\r
- }\r
- }\r
- if (!isFind) {\r
- ModuleIdentification mid = new ModuleIdentification(id, pid, moduleId.isLibrary());\r
- vModuleList.addElement(mid);\r
- addModuleToTree(mid);\r
- }\r
- } else {\r
+ private void openModule(String path, IDefaultMutableTreeNode belongNode) {\r
+ ModuleIdentification id = GlobalData.openingModuleList.getIdByPath(path);\r
+ if (id == null) {\r
//\r
// The module is not in existing packages\r
//\r
- Log.err("The module hasn't been added to any package of current workspace!");\r
+ Log.wrn("Open Module", "The module does not belong to any package in the current workspace!");\r
return;\r
}\r
\r
//\r
// Make the node selected\r
//\r
- iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnModuleDescription, id,\r
- IDefaultMutableTreeNode.MODULE)));\r
- //\r
- // Update opening Module list information\r
- //\r
- if (!openingModuleList.existsModule(id)) {\r
- //\r
- // Insert sub node of module\r
- //\r
- insertModuleTreeNode(id);\r
- iTree.getSelectNode().setOpening(true);\r
-\r
- //\r
- // Update opening module list\r
- //\r
- openingModuleList.insertToOpeningModuleList(id, msa);\r
- openingModuleList.setTreePathById(id, iTree.getSelectionPath());\r
- }\r
- //\r
- // Select msa header node and show it in editor panel\r
- //\r
- iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnModuleDescription, id,\r
- IDefaultMutableTreeNode.MSA_HEADER)));\r
- showModuleElement(IDefaultMutableTreeNode.MSA_HEADER, openingModuleList.getOpeningModuleById(id));\r
- this.currentOpeningModuleIndex = openingModuleList.findIndexOfListById(id);\r
- }\r
-\r
- /**\r
- Open Module\r
-\r
- @param path input file path\r
- \r
- **/\r
- private void openModule(String path) {\r
- ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null;\r
- try {\r
- msa = OpenFile.openMsaFile(path);\r
- } catch (IOException e) {\r
- Log.wrn("Open Module Surface Area " + path, e.getMessage());\r
- Log.err("Open Module Surface Area " + path, e.getMessage());\r
- return;\r
- } catch (XmlException e) {\r
- Log.wrn("Open Module Surface Area " + path, e.getMessage());\r
- Log.err("Open Module Surface Area " + path, e.getMessage());\r
- return;\r
- } catch (Exception e) {\r
- Log.wrn("Open Module Surface Area " + path, "Invalid file type");\r
- Log.err("Open Module Surface Area " + path, "Invalid file type");\r
- return;\r
- }\r
- Identification id = new Identification(msa.getMsaHeader().getModuleName(), msa.getMsaHeader().getGuidValue(),\r
- msa.getMsaHeader().getVersion(), path);\r
- //\r
- // Generate module id\r
- //\r
- PackageIdentification pid = wt.getPackageIdByModuleId(id);\r
- if (pid != null) {\r
- //\r
- // To judge if the module existed in vModuleList\r
- // If not, add it to vModuleList\r
- //\r
- boolean isFind = false;\r
- for (int index = 0; index < vModuleList.size(); index++) {\r
- if (vModuleList.elementAt(index).equals(id)) {\r
- isFind = true;\r
- break;\r
- }\r
- }\r
- if (!isFind) {\r
- ModuleIdentification mid = new ModuleIdentification(id, pid);\r
- vModuleList.addElement(mid);\r
- addModuleToTree(mid);\r
- }\r
- } else {\r
- //\r
- // The module is not in existing packages\r
- //\r
- Log.wrn("Open Module", "The module hasn't been added to any package of current workspace!");\r
- return;\r
- }\r
+ iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(belongNode, id, IDefaultMutableTreeNode.MODULE)));\r
\r
- //\r
- // Make the node selected\r
- //\r
- iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnModuleDescription, id,\r
- IDefaultMutableTreeNode.MODULE)));\r
//\r
// Update opening Module list information\r
//\r
- if (!openingModuleList.existsModule(id)) {\r
+ if (!iTree.getSelectNode().isOpening()) {\r
//\r
// Insert sub node of module\r
//\r
- insertModuleTreeNode(id);\r
+ insertModuleTreeNode(id, belongNode);\r
iTree.getSelectNode().setOpening(true);\r
\r
//\r
// Update opening module list\r
//\r
- openingModuleList.insertToOpeningModuleList(id, msa);\r
- openingModuleList.setTreePathById(id, iTree.getSelectionPath());\r
+ GlobalData.openingModuleList.setModuleOpen(id, true);\r
+ Set<TreePath> temp = GlobalData.openingModuleList.getTreePathById(id);\r
+ temp.add(iTree.getSelectionPath());\r
+ GlobalData.openingModuleList.setTreePathById(id, temp);\r
}\r
//\r
// Select msa header node and show it in editor panel\r
//\r
- iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnModuleDescription, id,\r
- IDefaultMutableTreeNode.MSA_HEADER)));\r
- showModuleElement(IDefaultMutableTreeNode.MSA_HEADER, openingModuleList.getOpeningModuleById(id));\r
- this.currentOpeningModuleIndex = openingModuleList.findIndexOfListById(id);\r
+ iTree\r
+ .setSelectionPath(iTree\r
+ .getPathOfNode(iTree\r
+ .getNodeById(belongNode, id, IDefaultMutableTreeNode.MSA_HEADER)));\r
+ showModuleElement(IDefaultMutableTreeNode.MSA_HEADER, GlobalData.openingModuleList.getOpeningModuleById(id));\r
+ this.currentOpeningModuleIndex = GlobalData.openingModuleList.findIndexOfListById(id);\r
}\r
\r
/**\r
\r
**/\r
private void openPackage(String path) {\r
- PackageSurfaceAreaDocument.PackageSurfaceArea spd = null;\r
- try {\r
- spd = OpenFile.openSpdFile(path);\r
- } catch (IOException e) {\r
- Log.wrn("Open Package Surface Area " + path, e.getMessage());\r
- Log.err("Open Package Surface Area " + path, e.getMessage());\r
- return;\r
- } catch (XmlException e) {\r
- Log.wrn("Open Package Surface Area " + path, e.getMessage());\r
- Log.err("Open Package Surface Area " + path, e.getMessage());\r
- return;\r
- } catch (Exception e) {\r
- Log.wrn("Open Package Surface Area " + path, "Invalid file type");\r
- Log.err("Open Package Surface Area " + path, "Invalid file type");\r
- return;\r
- }\r
- Identification id = new Identification(spd.getSpdHeader().getPackageName(), spd.getSpdHeader().getGuidValue(),\r
- spd.getSpdHeader().getVersion(), path);\r
- //\r
- // To judge if the package existed in vPackageList\r
- // If not, add it to vPackageList\r
- //\r
- boolean isFind = false;\r
- for (int index = 0; index < vPackageList.size(); index++) {\r
- if (vPackageList.elementAt(index).equals(id)) {\r
- isFind = true;\r
- break;\r
- }\r
- }\r
- if (!isFind) {\r
+ PackageIdentification id = GlobalData.openingPackageList.getIdByPath(path);\r
+ if (id == null) {\r
//\r
- // The module is not in existing packages\r
+ // The package is not in current workspace\r
//\r
- Log.wrn("Open Package", "The package hasn't been added to current workspace!");\r
+ Log.wrn("Open Package", "The package has not been installed in the current workspace!");\r
return;\r
}\r
\r
//\r
// Update opening package list information\r
//\r
- if (!openingPackageList.existsPackage(id)) {\r
+ if (!GlobalData.openingPackageList.getPackageOpen(id)) {\r
//\r
// Insert sub node of module\r
//\r
//\r
// Update opening module list\r
//\r
- openingPackageList.insertToOpeningPackageList(id, spd);\r
- openingPackageList.setTreePathById(id, iTree.getSelectionPath());\r
+ GlobalData.openingPackageList.setPackageOpen(id, true);\r
+ Set<TreePath> temp = GlobalData.openingPackageList.getTreePathById(id);\r
+ temp.add(iTree.getSelectionPath());\r
+ GlobalData.openingPackageList.setTreePathById(id, temp);\r
}\r
//\r
// Show spd header in editor panel\r
//\r
iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnPackageDescription, id,\r
IDefaultMutableTreeNode.SPD_HEADER)));\r
- showPackageElement(IDefaultMutableTreeNode.SPD_HEADER, openingPackageList.getOpeningPackageById(id));\r
- this.currentOpeningPackageIndex = openingPackageList.findIndexOfListById(id);\r
+ showPackageElement(IDefaultMutableTreeNode.SPD_HEADER, GlobalData.openingPackageList.getOpeningPackageById(id));\r
+ this.currentOpeningPackageIndex = GlobalData.openingPackageList.findIndexOfListById(id);\r
}\r
\r
/**\r
\r
**/\r
private void openPlatform(String path) {\r
- PlatformSurfaceAreaDocument.PlatformSurfaceArea fpd = null;\r
- try {\r
- fpd = OpenFile.openFpdFile(path);\r
- } catch (IOException e) {\r
- Log.wrn("Open Platform Surface Area " + path, e.getMessage());\r
- Log.err("Open Platform Surface Area " + path, e.getMessage());\r
- return;\r
- } catch (XmlException e) {\r
- Log.wrn("Open Platform Surface Area " + path, e.getMessage());\r
- Log.err("Open Platform Surface Area " + path, e.getMessage());\r
- return;\r
- } catch (Exception e) {\r
- Log.wrn("Open Platform Surface Area " + path, "Invalid file type");\r
- Log.err("Open Platform Surface Area " + path, "Invalid file type");\r
- return;\r
- }\r
- Identification id = new Identification(fpd.getPlatformHeader().getPlatformName(), fpd.getPlatformHeader()\r
- .getGuidValue(),\r
- fpd.getPlatformHeader().getVersion(), path);\r
- //\r
- // To judge if the platform existed in vPlatformList\r
- // If not, add it to vPlatformList\r
- //\r
- boolean isFind = false;\r
- for (int index = 0; index < vPlatformList.size(); index++) {\r
- if (vPlatformList.elementAt(index).equals(id)) {\r
- isFind = true;\r
- break;\r
- }\r
- }\r
- if (!isFind) {\r
+ PlatformIdentification id = GlobalData.openingPlatformList.getIdByPath(path);\r
+ if (id == null) {\r
//\r
- // The module is not in existing packages\r
+ // The platform is not in current workspace\r
//\r
- Log.wrn("Open Platform", "The platform hasn't been added to current workspace!");\r
+ Log.wrn("Open Platform", "The platform has not been installed in the current workspace!");\r
return;\r
}\r
\r
//\r
// Update opening package list information\r
//\r
- if (!openingPlatformList.existsPlatform(id)) {\r
+ if (!GlobalData.openingPlatformList.getPlatformOpen(id)) {\r
//\r
// Insert sub node of module\r
//\r
//\r
// Update opening module list\r
//\r
- openingPlatformList.insertToOpeningPlatformList(id, fpd);\r
- openingPlatformList.setTreePathById(id, iTree.getSelectionPath());\r
+ GlobalData.openingPlatformList.setPlatformOpen(id, true);\r
+ Set<TreePath> temp = GlobalData.openingPlatformList.getTreePathById(id);\r
+ temp.add(iTree.getSelectionPath());\r
+ GlobalData.openingPlatformList.setTreePathById(id, temp);\r
}\r
//\r
// Show fpd header in editor panel\r
//\r
iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnPlatformDescription, id,\r
IDefaultMutableTreeNode.FPD_PLATFORMHEADER)));\r
- showPlatformElement(IDefaultMutableTreeNode.FPD_PLATFORMHEADER, openingPlatformList.getOpeningPlatformById(id));\r
- this.currentOpeningPlatformIndex = openingPlatformList.findIndexOfListById(id);\r
+ showPlatformElement(IDefaultMutableTreeNode.FPD_PLATFORMHEADER,\r
+ GlobalData.openingPlatformList.getOpeningPlatformById(id));\r
+ this.currentOpeningPlatformIndex = GlobalData.openingPlatformList.findIndexOfListById(id);\r
}\r
\r
/**\r
\r
**/\r
private void saveModule(int index) {\r
- OpeningModuleType omt = openingModuleList.getOpeningModuleByIndex(index);\r
+ OpeningModuleType omt = GlobalData.openingModuleList.getOpeningModuleByIndex(index);\r
if (omt.isNew()) {\r
if (getNewFilePath(DataType.MODULE_SURFACE_AREA_EXT) != JFileChooser.APPROVE_OPTION) {\r
return;\r
}\r
try {\r
SaveFile.saveMsaFile(omt.getId().getPath(), omt.getXmlMsa());\r
- openingModuleList.setNew(omt.getId(), false);\r
- openingModuleList.setModuleSaved(omt.getId(), true);\r
+ GlobalData.openingModuleList.setNew(omt.getId(), false);\r
+ GlobalData.openingModuleList.setModuleSaved(omt.getId(), true);\r
} catch (Exception e) {\r
Log.wrn("Save Module", e.getMessage());\r
Log.err("Save Module", e.getMessage());\r
\r
**/\r
private void savePackage(int index) {\r
- OpeningPackageType opt = openingPackageList.getOpeningPackageByIndex(index);\r
+ OpeningPackageType opt = GlobalData.openingPackageList.getOpeningPackageByIndex(index);\r
if (opt.isNew()) {\r
if (getNewFilePath(DataType.PACKAGE_SURFACE_AREA_EXT) != JFileChooser.APPROVE_OPTION) {\r
return;\r
}\r
try {\r
SaveFile.saveSpdFile(opt.getId().getPath(), opt.getXmlSpd());\r
- openingPackageList.setNew(opt.getId(), false);\r
- openingPackageList.setPackageSaved(opt.getId(), true);\r
+ GlobalData.openingPackageList.setNew(opt.getId(), false);\r
+ GlobalData.openingPackageList.setPackageSaved(opt.getId(), true);\r
} catch (Exception e) {\r
Log.wrn("Save Package", e.getMessage());\r
Log.err("Save Package", e.getMessage());\r
\r
**/\r
private void savePlatform(int index) {\r
- OpeningPlatformType opt = openingPlatformList.getOpeningPlatformByIndex(index);\r
+ OpeningPlatformType opt = GlobalData.openingPlatformList.getOpeningPlatformByIndex(index);\r
if (opt.isNew()) {\r
if (getNewFilePath(DataType.PACKAGE_SURFACE_AREA_EXT) != JFileChooser.APPROVE_OPTION) {\r
return;\r
}\r
try {\r
SaveFile.saveFpdFile(opt.getId().getPath(), opt.getXmlFpd());\r
- openingPlatformList.setNew(opt.getId(), false);\r
- openingPlatformList.setPlatformSaved(opt.getId(), true);\r
+ GlobalData.openingPlatformList.setNew(opt.getId(), false);\r
+ GlobalData.openingPlatformList.setPlatformSaved(opt.getId(), true);\r
} catch (Exception e) {\r
Log.wrn("Save Package", e.getMessage());\r
Log.err("Save Package", e.getMessage());\r
}\r
}\r
\r
- public void componentHidden(ComponentEvent arg0) {\r
- // TODO Auto-generated method stub\r
-\r
- }\r
-\r
- public void componentMoved(ComponentEvent arg0) {\r
- // TODO Auto-generated method stub\r
-\r
- }\r
-\r
public void componentResized(ComponentEvent arg0) {\r
- this.jSplitPane.setSize(this.getWidth() - DataType.MAIN_FRAME_WIDTH_SPACING,\r
- this.getHeight() - DataType.MAIN_FRAME_HEIGHT_SPACING);\r
- this.jSplitPane.validate();\r
- resizeDesktopPanel();\r
- }\r
-\r
- public void componentShown(ComponentEvent arg0) {\r
- // TODO Auto-generated method stub\r
-\r
+ if (this.jSplitPane != null) {\r
+ this.jSplitPane.setSize(this.getWidth() - DataType.MAIN_FRAME_WIDTH_SPACING,\r
+ this.getHeight() - DataType.MAIN_FRAME_HEIGHT_SPACING);\r
+ this.jSplitPane.validate();\r
+ resizeDesktopPanel();\r
+ }\r
}\r
\r
/**\r
}\r
}\r
\r
- private void getCompontentsFromFrameworkDatabase() {\r
- this.vModuleList = wt.getAllModules();\r
- this.vPackageList = wt.getAllPackages();\r
- this.vPlatformList = wt.getAllPlatforms();\r
- }\r
-\r
- private void insertModuleTreeNode(Identification id) {\r
- iTree.addNode(new IDefaultMutableTreeNode("Module Header", IDefaultMutableTreeNode.MSA_HEADER, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Module Definitions", IDefaultMutableTreeNode.MSA_MODULEDEFINITIONS,\r
- true, id));\r
+ private void insertModuleTreeNode(Identification id, IDefaultMutableTreeNode belongNode) {\r
+ iTree.addNode(new IDefaultMutableTreeNode("Module Header", IDefaultMutableTreeNode.MSA_HEADER, true, id,\r
+ belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Source Files", IDefaultMutableTreeNode.MSA_SOURCEFILES, true, id,\r
+ belongNode));\r
iTree.addNode(new IDefaultMutableTreeNode("Library Class Definitions",\r
- IDefaultMutableTreeNode.MSA_LIBRARYCLASSDEFINITIONS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Source Files", IDefaultMutableTreeNode.MSA_SOURCEFILES, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Package Dependencies",\r
- IDefaultMutableTreeNode.MSA_PACKAGEDEPENDENCIES, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Protocols", IDefaultMutableTreeNode.MSA_PROTOCOLS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Events", IDefaultMutableTreeNode.MSA_EVENTS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Hobs", IDefaultMutableTreeNode.MSA_HOBS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Ppis", IDefaultMutableTreeNode.MSA_PPIS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Variables", IDefaultMutableTreeNode.MSA_VARIABLES, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Boot Modes", IDefaultMutableTreeNode.MSA_BOOTMODES, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("System Tables", IDefaultMutableTreeNode.MSA_SYSTEMTABLES, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Data Hubs", IDefaultMutableTreeNode.MSA_DATAHUBS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Hii Packages", IDefaultMutableTreeNode.MSA_HIIPACKAGES, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Guids", IDefaultMutableTreeNode.MSA_GUIDS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Externs", IDefaultMutableTreeNode.MSA_EXTERNS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("PcdCoded", IDefaultMutableTreeNode.MSA_PCDS, true, id));\r
+ IDefaultMutableTreeNode.MSA_LIBRARYCLASSDEFINITIONS, true, id,\r
+ belongNode));\r
+ iTree\r
+ .addNode(new IDefaultMutableTreeNode("Package Dependencies",\r
+ IDefaultMutableTreeNode.MSA_PACKAGEDEPENDENCIES, true, id, belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Protocols", IDefaultMutableTreeNode.MSA_PROTOCOLS, true, id,\r
+ belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Events", IDefaultMutableTreeNode.MSA_EVENTS, true, id, belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Hobs", IDefaultMutableTreeNode.MSA_HOBS, true, id, belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Ppis", IDefaultMutableTreeNode.MSA_PPIS, true, id, belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Variables", IDefaultMutableTreeNode.MSA_VARIABLES, true, id,\r
+ belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Boot Modes", IDefaultMutableTreeNode.MSA_BOOTMODES, true, id,\r
+ belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("System Tables", IDefaultMutableTreeNode.MSA_SYSTEMTABLES, true, id,\r
+ belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Data Hubs", IDefaultMutableTreeNode.MSA_DATAHUBS, true, id,\r
+ belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Hii Packages", IDefaultMutableTreeNode.MSA_HIIPACKAGES, true, id,\r
+ belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Guids", IDefaultMutableTreeNode.MSA_GUIDS, true, id, belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("External Defintions", IDefaultMutableTreeNode.MSA_EXTERNS, true, id,\r
+ belongNode));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Pcd Coded", IDefaultMutableTreeNode.MSA_PCDS, true, id, belongNode));\r
}\r
\r
private void insertPackageTreeNode(Identification id) {\r
- iTree.addNode(new IDefaultMutableTreeNode("Package Header", IDefaultMutableTreeNode.SPD_HEADER, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Package Definitions",\r
- IDefaultMutableTreeNode.SPD_PACKAGEDEFINITIONS, true, id));\r
+ IDefaultMutableTreeNode idmtTemp = this.dmtnPackageDescription;\r
+ iTree.addNode(new IDefaultMutableTreeNode("Package Header", IDefaultMutableTreeNode.SPD_HEADER, true, id,\r
+ idmtTemp));\r
iTree.addNode(new IDefaultMutableTreeNode("Library Class Declarations",\r
- IDefaultMutableTreeNode.SPD_LIBRARYCLASSDECLARATIONS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Msa Files", IDefaultMutableTreeNode.SPD_MSAFILES, false, id));\r
+ IDefaultMutableTreeNode.SPD_LIBRARYCLASSDECLARATIONS, true, id,\r
+ idmtTemp));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Msa Files", IDefaultMutableTreeNode.SPD_MSAFILES, false, id,\r
+ idmtTemp));\r
iTree.addNode(new IDefaultMutableTreeNode("Package Includes", IDefaultMutableTreeNode.SPD_PACKAGEHEADERS, true,\r
- id));\r
+ id, idmtTemp));\r
iTree.addNode(new IDefaultMutableTreeNode("Guid Declarations", IDefaultMutableTreeNode.SPD_GUIDDECLARATIONS,\r
- true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Protocol Declarations",\r
- IDefaultMutableTreeNode.SPD_PROTOCOLDECLARATIONS, true, id));\r
+ true, id, idmtTemp));\r
+ iTree\r
+ .addNode(new IDefaultMutableTreeNode("Protocol Declarations",\r
+ IDefaultMutableTreeNode.SPD_PROTOCOLDECLARATIONS, true, id, idmtTemp));\r
iTree.addNode(new IDefaultMutableTreeNode("Ppi Declarations", IDefaultMutableTreeNode.SPD_PPIDECLARATIONS,\r
- true, id));\r
+ true, id, idmtTemp));\r
iTree.addNode(new IDefaultMutableTreeNode("Pcd Declarations", IDefaultMutableTreeNode.SPD_PCDDECLARATIONS,\r
- true, id));\r
+ true, id, idmtTemp));\r
+ //\r
+ // Add modules in this package\r
+ //\r
+ IDefaultMutableTreeNode dmtnModulePackageLibrary = null;\r
+ IDefaultMutableTreeNode dmtnModulePackageModule = null;\r
+\r
+ dmtnModulePackageLibrary = new IDefaultMutableTreeNode("Library",\r
+ IDefaultMutableTreeNode.MODULE_PACKAGE_LIBRARY, false,\r
+ id, idmtTemp);\r
+ dmtnModulePackageModule = new IDefaultMutableTreeNode("Module", IDefaultMutableTreeNode.MODULE_PACKAGE_MODULE,\r
+ false, id, idmtTemp);\r
+\r
+ Vector<ModuleIdentification> vModule = wt.getAllModules(new PackageIdentification(id));\r
+ for (int indexJ = 0; indexJ < vModule.size(); indexJ++) {\r
+ if (vModule.get(indexJ).isLibrary()) {\r
+ dmtnModulePackageLibrary.add(new IDefaultMutableTreeNode(vModule.get(indexJ).getName(),\r
+ IDefaultMutableTreeNode.MODULE, false,\r
+ vModule.get(indexJ), idmtTemp));\r
+ } else {\r
+ dmtnModulePackageModule.add(new IDefaultMutableTreeNode(vModule.get(indexJ).getName(),\r
+ IDefaultMutableTreeNode.MODULE, false,\r
+ vModule.get(indexJ), idmtTemp));\r
+ }\r
+ }\r
+ if (dmtnModulePackageModule.getChildCount() > 0) {\r
+ iTree.addNode(dmtnModulePackageModule);\r
+ }\r
+ if (dmtnModulePackageLibrary.getChildCount() > 0) {\r
+ iTree.addNode(dmtnModulePackageLibrary);\r
+ }\r
}\r
\r
private void insertPlatformTreeNode(Identification id) {\r
+ IDefaultMutableTreeNode idmtTemp = this.dmtnPlatformDescription;\r
iTree.addNode(new IDefaultMutableTreeNode("Platform Header", IDefaultMutableTreeNode.FPD_PLATFORMHEADER, true,\r
- id));\r
+ id, idmtTemp));\r
iTree.addNode(new IDefaultMutableTreeNode("Platform Definitions",\r
- IDefaultMutableTreeNode.FPD_PLATFORMDEFINITIONS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Flash", IDefaultMutableTreeNode.FPD_FLASH, true, id));\r
+ IDefaultMutableTreeNode.FPD_PLATFORMDEFINITIONS, true, id, idmtTemp));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Flash Information", IDefaultMutableTreeNode.FPD_FLASH, true, id,\r
+ idmtTemp));\r
iTree.addNode(new IDefaultMutableTreeNode("Framework Modules", IDefaultMutableTreeNode.FPD_FRAMEWORKMODULES,\r
- true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Pcd Dynamic Build Declarations",\r
- IDefaultMutableTreeNode.FPD_PCDDYNAMICBUILDDECLARATIONS, true, id));\r
- iTree.addNode(new IDefaultMutableTreeNode("Build Options", IDefaultMutableTreeNode.FPD_BUILDOPTIONS, true, id));\r
+ true, id, idmtTemp));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Dynamic PCD Build Declarations",\r
+ IDefaultMutableTreeNode.FPD_PCDDYNAMICBUILDDECLARATIONS, true, id,\r
+ idmtTemp));\r
+ iTree.addNode(new IDefaultMutableTreeNode("Build Options", IDefaultMutableTreeNode.FPD_BUILDOPTIONS, true, id,\r
+ idmtTemp));\r
+\r
+ //\r
+ // Add modules in this platform\r
+ //\r
+ IDefaultMutableTreeNode dmtnModulePackageLibrary = null;\r
+ IDefaultMutableTreeNode dmtnModulePackageModule = null;\r
+\r
+ dmtnModulePackageLibrary = new IDefaultMutableTreeNode("Library",\r
+ IDefaultMutableTreeNode.MODULE_PACKAGE_LIBRARY, false,\r
+ id, idmtTemp);\r
+ dmtnModulePackageModule = new IDefaultMutableTreeNode("Module", IDefaultMutableTreeNode.MODULE_PACKAGE_MODULE,\r
+ false, id, idmtTemp);\r
+\r
+ Vector<ModuleIdentification> vModule = wt.getAllModules(new PlatformIdentification(id));\r
+ for (int indexJ = 0; indexJ < vModule.size(); indexJ++) {\r
+ if (vModule.get(indexJ).isLibrary()) {\r
+ dmtnModulePackageLibrary.add(new IDefaultMutableTreeNode(vModule.get(indexJ).getName(),\r
+ IDefaultMutableTreeNode.MODULE, false,\r
+ vModule.get(indexJ), idmtTemp));\r
+ } else {\r
+ dmtnModulePackageModule.add(new IDefaultMutableTreeNode(vModule.get(indexJ).getName(),\r
+ IDefaultMutableTreeNode.MODULE, false,\r
+ vModule.get(indexJ), idmtTemp));\r
+ }\r
+ }\r
+ if (dmtnModulePackageModule.getChildCount() > 0) {\r
+ iTree.addNode(dmtnModulePackageModule);\r
+ }\r
+ if (dmtnModulePackageLibrary.getChildCount() > 0) {\r
+ iTree.addNode(dmtnModulePackageLibrary);\r
+ }\r
}\r
\r
/**\r
Identification id = null;\r
int intCategory = -1;\r
String path = null;\r
- boolean isOpen = false;\r
+ IDefaultMutableTreeNode belongNode = null;\r
+\r
try {\r
- id = iTree.getSelectNode().getId();\r
+ //\r
+ // Get selected tree node\r
+ //\r
+ if (iTree.getSelectNode() != null) {\r
+ id = iTree.getSelectNode().getId();\r
+ }\r
+\r
+ //\r
+ // If id is null, return directly\r
+ //\r
+ if (id == null) {\r
+ return;\r
+ }\r
+\r
intCategory = iTree.getSelectCategory();\r
- isOpen = iTree.getSelectNode().isOpening();\r
- \r
- if (!isOpen) {\r
- // \r
- // If the node is not opened yet\r
- // Insert top level elements first\r
- //\r
- if (intCategory == IDefaultMutableTreeNode.MODULE) {\r
+ belongNode = iTree.getSelectNode().getBelongNode();\r
\r
- if (intCategory == IDefaultMutableTreeNode.MODULE) {\r
- path = iTree.getSelectNode().getId().getPath();\r
- }\r
- if (intCategory == IDefaultMutableTreeNode.PACKAGE) {\r
- path = iTree.getSelectNode().getId().getPath();\r
- }\r
- openModule(path);\r
- return;\r
- }\r
- if (intCategory == IDefaultMutableTreeNode.PACKAGE) {\r
- path = iTree.getSelectNode().getId().getPath();\r
- openPackage(path);\r
- return;\r
- }\r
- if (intCategory == IDefaultMutableTreeNode.PLATFORM) {\r
- path = iTree.getSelectNode().getId().getPath();\r
- openPlatform(path);\r
- return;\r
- }\r
+ // \r
+ // If the node is not opened yet\r
+ // Insert top level elements first\r
+ //\r
+ if (intCategory == IDefaultMutableTreeNode.MODULE) {\r
+ path = iTree.getSelectNode().getId().getPath();\r
+ openModule(path, belongNode);\r
+ return;\r
+ }\r
+ if (intCategory == IDefaultMutableTreeNode.PACKAGE) {\r
+ path = iTree.getSelectNode().getId().getPath();\r
+ openPackage(path);\r
+ return;\r
+ }\r
+ if (intCategory == IDefaultMutableTreeNode.PLATFORM) {\r
+ path = iTree.getSelectNode().getId().getPath();\r
+ openPlatform(path);\r
+ return;\r
}\r
- \r
+\r
//\r
// Show editor panel\r
//\r
if (intCategory >= IDefaultMutableTreeNode.MSA_HEADER && intCategory < IDefaultMutableTreeNode.SPD_HEADER) {\r
- showModuleElement(intCategory, openingModuleList.getOpeningModuleById(id));\r
- this.currentOpeningModuleIndex = openingModuleList.findIndexOfListById(id);\r
+ showModuleElement(intCategory,\r
+ GlobalData.openingModuleList.getOpeningModuleById(new ModuleIdentification(id)));\r
+ this.currentOpeningModuleIndex = GlobalData.openingModuleList\r
+ .findIndexOfListById(new ModuleIdentification(\r
+ id));\r
}\r
if (intCategory >= IDefaultMutableTreeNode.SPD_HEADER\r
&& intCategory < IDefaultMutableTreeNode.FPD_PLATFORMHEADER) {\r
- showPackageElement(intCategory, openingPackageList.getOpeningPackageById(id));\r
- this.currentOpeningPackageIndex = openingPackageList.findIndexOfListById(id);\r
+ showPackageElement(intCategory,\r
+ GlobalData.openingPackageList.getOpeningPackageById(new PackageIdentification(id)));\r
+ this.currentOpeningPackageIndex = GlobalData.openingPackageList\r
+ .findIndexOfListById(new PackageIdentification(\r
+ id));\r
}\r
if (intCategory >= IDefaultMutableTreeNode.FPD_PLATFORMHEADER) {\r
- showPlatformElement(intCategory, openingPlatformList.getOpeningPlatformById(id));\r
- this.currentOpeningPlatformIndex = openingPlatformList.findIndexOfListById(id);\r
+ showPlatformElement(\r
+ intCategory,\r
+ GlobalData.openingPlatformList\r
+ .getOpeningPlatformById(new PlatformIdentification(id)));\r
+ this.currentOpeningPlatformIndex = GlobalData.openingPlatformList\r
+ .findIndexOfListById(new PlatformIdentification(\r
+ id));\r
}\r
- } catch (RuntimeException e) {\r
- Log.log("double click category: " + intCategory);\r
- Log.log("double click id path: " + id);\r
- Log.log("double click exception: " + e.getMessage());\r
+ } catch (Exception e) {\r
+ Log.err("double click category: " + intCategory);\r
+ Log.err("double click belong node: " + belongNode.toString());\r
+ Log.err("double click id path: " + id);\r
+ Log.err("double click exception: " + e.getMessage());\r
}\r
}\r
\r
MsaHeader frmMsaHeader = new MsaHeader(msa);\r
getJDesktopPaneModule().add(frmMsaHeader, 1);\r
break;\r
- case IDefaultMutableTreeNode.MSA_MODULEDEFINITIONS:\r
- ModuleDefinitions frmMd = new ModuleDefinitions(msa);\r
- getJDesktopPaneModule().add(frmMd, 1);\r
- break;\r
case IDefaultMutableTreeNode.MSA_LIBRARYCLASSDEFINITIONS:\r
ModuleLibraryClassDefinitions frmMlcd = new ModuleLibraryClassDefinitions(msa);\r
getJDesktopPaneModule().add(frmMlcd, 1);\r
smb.dispose();\r
return;\r
} else if (result == DataType.RETURN_TYPE_OK) {\r
- PackageSurfaceAreaDocument.PackageSurfaceArea psa = null;\r
- if (this.openingPackageList.existsPackage(smb.getMid().getPackageId())) {\r
- psa = openingPackageList.getPackageSurfaceAreaFromId(smb.getMid().getPackageId());\r
- }\r
- try {\r
- wt.addModuleToPackage(smb.getMid(), psa);\r
- } catch (IOException e) {\r
- Log.wrn("Upddate MsaFiles of Package", e.getMessage());\r
- Log.err("Upddate MsaFiles of Package", e.getMessage());\r
- return;\r
- } catch (XmlException e) {\r
- Log.wrn("Upddate MsaFiles of Package", e.getMessage());\r
- Log.err("Upddate MsaFiles of Package", e.getMessage());\r
- return;\r
- } catch (Exception e) {\r
- Log.wrn("Upddate MsaFiles of Package", e.getMessage());\r
- Log.err("Upddate MsaFiles of Package", e.getMessage());\r
- return;\r
+ ModuleIdentification mid = smb.getMid();\r
+ if (mid != null) {\r
+ //\r
+ // Update package of workspace first\r
+ //\r
+ PackageSurfaceAreaDocument.PackageSurfaceArea psa = null;\r
+ if (GlobalData.openingPackageList.existsPackage(mid.getPackageId())) {\r
+ psa = GlobalData.openingPackageList.getPackageSurfaceAreaFromId(mid.getPackageId());\r
+ }\r
+ try {\r
+ wt.addModuleToPackage(mid, psa);\r
+ } catch (IOException e) {\r
+ Log.wrn("Update MsaFiles in Package", e.getMessage());\r
+ Log.err("Update MsaFiles in Package", e.getMessage());\r
+ return;\r
+ } catch (XmlException e) {\r
+ Log.wrn("Update MsaFiles in Package", e.getMessage());\r
+ Log.err("Update MsaFiles in Package", e.getMessage());\r
+ return;\r
+ } catch (Exception e) {\r
+ Log.wrn("Update MsaFiles in Package", e.getMessage());\r
+ Log.err("Update MsaFiles in Package", e.getMessage());\r
+ return;\r
+ }\r
+\r
+ //\r
+ // Update Global Data\r
+ //\r
+ GlobalData.openingModuleList.insertToOpeningModuleList(mid, smb.getMsa());\r
+ GlobalData.vModuleList.addElement(mid);\r
+\r
+ //\r
+ // Create new node on the tree\r
+ //\r
+ addModuleToTree(mid);\r
+\r
+ //\r
+ // Open the node\r
+ //\r
+ this.openModule(mid.getPath(), this.dmtnModuleDescription);\r
}\r
- this.openModule(smb.getMid().getPath(), smb.getMid());\r
}\r
} else if (result == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
//\r
smb.dispose();\r
return;\r
} else if (result == DataType.RETURN_TYPE_OK) {\r
- try {\r
- wt.addPackageToDatabase(smb.getPid());\r
- } catch (Exception e) {\r
- Log.err("addPackageToDatabase", e.getMessage());\r
- }\r
- vPackageList.addElement(smb.getPid());\r
-\r
- //\r
- // Add to Module Description node\r
- //\r
- IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vPackageList.lastElement().getName(),\r
- IDefaultMutableTreeNode.MODULE_PACKAGE,\r
- false, vPackageList.lastElement());\r
-\r
- iTree.addNode(dmtnModuleDescription, node);\r
-\r
- //\r
- // Add new SpdHeader node to the tree\r
- //\r
- node = new IDefaultMutableTreeNode(vPackageList.lastElement().getName(),\r
- IDefaultMutableTreeNode.SPD_HEADER, true, vPackageList.lastElement());\r
- iTree.addNode(dmtnPackageDescription, node);\r
+ PackageIdentification pid = smb.getPid();\r
+ if (pid != null) {\r
+ try {\r
+ wt.addPackageToDatabase(smb.getPid());\r
+ } catch (Exception e) {\r
+ Log.err("addPackageToDatabase", e.getMessage());\r
+ }\r
\r
- this.openPackage(smb.getPid().getPath());\r
+ //\r
+ // Update Global Data\r
+ //\r
+ GlobalData.openingPackageList.insertToOpeningPackageList(pid, smb.getSpd());\r
+ GlobalData.vPackageList.addElement(pid);\r
+\r
+ //\r
+ // Add to Module Description node\r
+ //\r
+ IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(pid.getName(),\r
+ IDefaultMutableTreeNode.MODULE_PACKAGE,\r
+ false, pid, this.dmtnModuleDescription);\r
+\r
+ iTree.addNode(dmtnModuleDescription, node);\r
+\r
+ //\r
+ // Add new SpdHeader node to the tree\r
+ //\r
+ node = new IDefaultMutableTreeNode(pid.getName(), IDefaultMutableTreeNode.PACKAGE, true, pid,\r
+ this.dmtnPackageDescription);\r
+ iTree.addNode(dmtnPackageDescription, node);\r
+\r
+ this.openPackage(pid.getPath());\r
+ }\r
}\r
} else if (result == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
//\r
smb.dispose();\r
return;\r
} else if (result == DataType.RETURN_TYPE_OK) {\r
- try {\r
- wt.addPlatformToDatabase(smb.getFid());\r
- } catch (Exception e) {\r
- Log.err("addPlatformToDatabase", e.getMessage());\r
+ PlatformIdentification fid = smb.getFid();\r
+ if (fid != null) {\r
+ try {\r
+ wt.addPlatformToDatabase(fid);\r
+ } catch (Exception e) {\r
+ Log.err("addPlatformToDatabase", e.getMessage());\r
+ }\r
+\r
+ //\r
+ // Update global data\r
+ //\r
+ GlobalData.openingPlatformList.insertToOpeningPlatformList(fid, smb.getFpd());\r
+ GlobalData.vPlatformList.addElement(fid);\r
+ //\r
+ // Add new SpdHeader node to the tree\r
+ //\r
+ IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(fid.getName(),\r
+ IDefaultMutableTreeNode.PLATFORM, true,\r
+ fid, this.dmtnPlatformDescription);\r
+ iTree.addNode(dmtnPlatformDescription, node);\r
+ this.openPlatform(fid.getPath());\r
}\r
- vPlatformList.addElement(smb.getFid());\r
- //\r
- // Add new SpdHeader node to the tree\r
- //\r
- IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vPlatformList.lastElement().getName(),\r
- IDefaultMutableTreeNode.FPD_PLATFORMHEADER,\r
- true, vPlatformList.lastElement());\r
- iTree.addNode(dmtnPlatformDescription, node);\r
- this.openPlatform(smb.getFid().getPath());\r
}\r
}\r
}\r
String path = fc.getSelectedFile().getPath();\r
String match = path.substring(path.length() - 4);\r
if (match.equals(DataType.FILE_EXT_SEPARATOR + DataType.MODULE_SURFACE_AREA_EXT)) {\r
- openModule(path);\r
+ openModule(path, this.dmtnModuleDescription);\r
} else if (match.equals(DataType.FILE_EXT_SEPARATOR + DataType.PACKAGE_SURFACE_AREA_EXT)) {\r
openPackage(path);\r
} else if (match.equals(DataType.FILE_EXT_SEPARATOR + DataType.PLATFORM_SURFACE_AREA_EXT)) {\r
\r
**/\r
private void close() {\r
+ TreePath item = null;\r
switch (this.jTabbedPaneEditor.getSelectedIndex()) {\r
//\r
// Current is module\r
//\r
case 0:\r
if (this.currentOpeningModuleIndex > -1) {\r
- if (!openingModuleList.getModuleSaved(currentOpeningModuleIndex)) {\r
+ if (!GlobalData.openingModuleList.getModuleSaved(currentOpeningModuleIndex)) {\r
int result = showSaveDialog();\r
if (result == JOptionPane.YES_OPTION) {\r
this.saveAll();\r
return;\r
}\r
}\r
- iTree.removeNodeChildrenByPath(openingModuleList.getTreePathByIndex(currentOpeningModuleIndex));\r
- this.openingModuleList.removeFromOpeningModuleListByIndex(this.currentOpeningModuleIndex);\r
+\r
+ //\r
+ // Remove all tree paths for the module\r
+ //\r
+ Set<TreePath> openingTreePaths = GlobalData.openingModuleList\r
+ .getTreePathByIndex(currentOpeningModuleIndex);\r
+ Iterator<TreePath> openingTreePathsIter = openingTreePaths.iterator();\r
+ while (openingTreePathsIter.hasNext()) {\r
+ item = openingTreePathsIter.next();\r
+ iTree.getNodeByPath(item).setOpening(false);\r
+ iTree.removeNodeChildrenByPath(item);\r
+ }\r
+\r
+ GlobalData.openingModuleList.setModuleOpen(this.currentOpeningModuleIndex, false);\r
this.cleanDesktopPaneModule();\r
this.currentOpeningModuleIndex = -1;\r
}\r
break;\r
//\r
// Current is package\r
- // \r
+ //\r
case 1:\r
if (this.currentOpeningPackageIndex > -1) {\r
- if (!openingPackageList.getPackageSaved(currentOpeningPackageIndex)) {\r
+ if (!GlobalData.openingPackageList.getPackageSaved(currentOpeningPackageIndex)) {\r
int result = showSaveDialog();\r
if (result == JOptionPane.YES_OPTION) {\r
this.saveAll();\r
return;\r
}\r
}\r
- iTree.removeNodeChildrenByPath(openingPackageList.getTreePathByIndex(currentOpeningPackageIndex));\r
- this.openingPackageList.removeFromOpeningPackageListByIndex(this.currentOpeningPackageIndex);\r
+\r
+ //\r
+ // Remove all tree paths for the module\r
+ //\r
+ Set<TreePath> openingTreePaths = GlobalData.openingPackageList\r
+ .getTreePathByIndex(currentOpeningPackageIndex);\r
+ Iterator<TreePath> openingTreePathsIter = openingTreePaths.iterator();\r
+ while (openingTreePathsIter.hasNext()) {\r
+ item = openingTreePathsIter.next();\r
+ iTree.getNodeByPath(item).setOpening(false);\r
+ iTree.removeNodeChildrenByPath(item);\r
+ }\r
+\r
+ GlobalData.openingPackageList.setPackageOpen(this.currentOpeningPackageIndex, false);\r
this.cleanDesktopPanePackage();\r
this.currentOpeningPackageIndex = -1;\r
}\r
//\r
case 2:\r
if (this.currentOpeningPlatformIndex > -1) {\r
- if (!openingPlatformList.getPlatformSaved(currentOpeningPlatformIndex)) {\r
+ if (!GlobalData.openingPlatformList.getPlatformSaved(currentOpeningPlatformIndex)) {\r
int result = showSaveDialog();\r
if (result == JOptionPane.YES_OPTION) {\r
this.saveAll();\r
return;\r
}\r
}\r
- iTree.removeNodeChildrenByPath(openingPlatformList.getTreePathByIndex(currentOpeningPlatformIndex));\r
- this.openingPlatformList.removeFromOpeningPlatformListByIndex(this.currentOpeningPlatformIndex);\r
+\r
+ //\r
+ // Remove all tree paths for the module\r
+ //\r
+ Set<TreePath> openingTreePaths = GlobalData.openingPlatformList\r
+ .getTreePathByIndex(currentOpeningPlatformIndex);\r
+ Iterator<TreePath> openingTreePathsIter = openingTreePaths.iterator();\r
+ while (openingTreePathsIter.hasNext()) {\r
+ item = openingTreePathsIter.next();\r
+ iTree.getNodeByPath(item).setOpening(false);\r
+ iTree.removeNodeChildrenByPath(item);\r
+ }\r
+\r
+ GlobalData.openingPlatformList.setPlatformOpen(this.currentOpeningPlatformIndex, false);\r
this.cleanDesktopPanePlatform();\r
this.currentOpeningPlatformIndex = -1;\r
}\r
**/\r
private void closeAll() {\r
int result = -1;\r
- if (!openingModuleList.isSaved() || !openingPackageList.isSaved() || !openingPlatformList.isSaved()) {\r
+ if (!GlobalData.openingModuleList.isSaved() || !GlobalData.openingPackageList.isSaved()\r
+ || !GlobalData.openingPlatformList.isSaved()) {\r
result = showSaveDialog();\r
}\r
if (result == JOptionPane.YES_OPTION) {\r
return;\r
}\r
this.cleanDesktopPane();\r
- this.getCompontentsFromFrameworkDatabase();\r
- openingModuleList.removeAllFromOpeningModuleList();\r
- openingPackageList.removeAllFromOpeningPackageList();\r
- openingPlatformList.removeAllFromOpeningPlatformList();\r
- this.makeEmptyTree();\r
+ GlobalData.openingModuleList.closeAll();\r
+ GlobalData.openingPackageList.closeAll();\r
+ GlobalData.openingPlatformList.closeAll();\r
+ }\r
+\r
+ /**\r
+ Refresh all global data from disk to memory\r
+ \r
+ **/\r
+ private void refresh() {\r
+ GlobalData.init();\r
}\r
\r
/**\r
//\r
// Save all modules\r
//\r
- for (int index = 0; index < openingModuleList.size(); index++) {\r
- if (!openingModuleList.getModuleSaved(index)) {\r
+ for (int index = 0; index < GlobalData.openingModuleList.size(); index++) {\r
+ if (!GlobalData.openingModuleList.getModuleSaved(index)) {\r
saveModule(index);\r
}\r
}\r
//\r
// Save all packages\r
//\r
- for (int index = 0; index < openingPackageList.size(); index++) {\r
- if (!openingPackageList.getPackageSaved(index)) {\r
+ for (int index = 0; index < GlobalData.openingPackageList.size(); index++) {\r
+ if (!GlobalData.openingPackageList.getPackageSaved(index)) {\r
savePackage(index);\r
}\r
}\r
//\r
// Save all platforms\r
//\r
- for (int index = 0; index < openingPlatformList.size(); index++) {\r
- if (!openingPlatformList.getPlatformSaved(index)) {\r
+ for (int index = 0; index < GlobalData.openingPlatformList.size(); index++) {\r
+ if (!GlobalData.openingPlatformList.getPlatformSaved(index)) {\r
savePlatform(index);\r
}\r
}\r
**/\r
private void exit() {\r
int result = -1;\r
- if (!openingModuleList.isSaved() || !openingPackageList.isSaved() || !openingPlatformList.isSaved()) {\r
+ if (!GlobalData.openingModuleList.isSaved() || !GlobalData.openingPackageList.isSaved()\r
+ || !GlobalData.openingPlatformList.isSaved()) {\r
result = showSaveDialog();\r
}\r
if (result == JOptionPane.YES_OPTION) {\r
System.exit(0);\r
}\r
\r
+ /**\r
+ To find all defined PPIs in workspace\r
+ \r
+ **/\r
+ private void findPpi() {\r
+ FindResult fr = FindResult.getInstance("PPI");\r
+ fr.setVisible(true);\r
+ }\r
+\r
+ /**\r
+ To find all defined PROTOCOLs in workspace\r
+ \r
+ **/\r
+ private void findProtocol() {\r
+ FindResult fr = FindResult.getInstance("PROTOCOL");\r
+ fr.setVisible(true);\r
+ }\r
+\r
+ /**\r
+ To find all defined PROTOCOLs in workspace\r
+ \r
+ **/\r
+ private void findGuid() {\r
+ FindResult fr = FindResult.getInstance("GUID");\r
+ fr.setVisible(true);\r
+ }\r
+\r
+ /**\r
+ To find all defined PROTOCOLs in workspace\r
+ \r
+ **/\r
+ private void findPcd() {\r
+ FindResult fr = FindResult.getInstance("PCD");\r
+ fr.setVisible(true);\r
+ }\r
+\r
+ /**\r
+ To find all defined Library Classes in workspace\r
+ \r
+ **/\r
+ private void findLibraryClass() {\r
+ FindResult fr = FindResult.getInstance("LIBRARY_CLASS");\r
+ fr.setVisible(true);\r
+ }\r
+\r
+ /**\r
+ To find all defined Library Instances in workspace\r
+ \r
+ **/\r
+ private void findLibraryInstance() {\r
+ FindResult fr = FindResult.getInstance("LIBRARY_INSTANCE");\r
+ fr.setVisible(true);\r
+ }\r
+\r
/**\r
Switch current workspace to others\r
\r
//\r
// Reinit whole window\r
//\r
- closeAll();\r
+ this.closeAll();\r
this.setTitle(DataType.PROJECT_NAME + " " + DataType.PROJECT_VERSION + " " + "- ["\r
+ Workspace.getCurrentWorkspace() + "]");\r
+ //\r
+ // Refrash the tree\r
+ //\r
+ this.refresh();\r
}\r
sw.dispose();\r
}\r
CreateStepOne cso = new CreateStepOne(this, true);\r
int result = cso.showDialog();\r
if (result == DataType.RETURN_TYPE_OK) {\r
- String strReturn = "Create Far Done!";\r
+ String strReturn = "Far Creation Completed!";\r
JOptionPane.showConfirmDialog(null, strReturn, "Done", JOptionPane.DEFAULT_OPTION,\r
JOptionPane.INFORMATION_MESSAGE);\r
}\r
InstallStepOne iso = new InstallStepOne(this, true);\r
int result = iso.showDialog();\r
if (result == DataType.RETURN_TYPE_OK) {\r
- String strReturn = "<html>Install Far Done! <br>The WORKSPACE will be refreshed!</html>";\r
+ String strReturn = "<html>Far Installalation completed!<br>Refreshing the WORKSPACE!</html>";\r
JOptionPane.showConfirmDialog(null, strReturn, "Done", JOptionPane.DEFAULT_OPTION,\r
JOptionPane.INFORMATION_MESSAGE);\r
this.closeAll();\r
+ this.refresh();\r
+ this.makeEmptyTree();\r
}\r
iso.dispose();\r
}\r
DeleteStepOne dso = new DeleteStepOne(this, true);\r
int result = dso.showDialog();\r
if (result == DataType.RETURN_TYPE_OK) {\r
- String strReturn = "<html>Delete Far Done! <br>The WORKSPACE will be refreshed!</html>";\r
+ String strReturn = "<html>Far Deletion completed!<br>Refreshing the WORKSPACE!</html>";\r
JOptionPane.showConfirmDialog(null, strReturn, "Done", JOptionPane.DEFAULT_OPTION,\r
JOptionPane.INFORMATION_MESSAGE);\r
this.closeAll();\r
+ this.refresh();\r
+ this.makeEmptyTree();\r
}\r
dso.dispose();\r
}\r
UpdateStepOne uso = new UpdateStepOne(this, true);\r
int result = uso.showDialog();\r
if (result == DataType.RETURN_TYPE_OK) {\r
- String strReturn = "<html>Update Far Done! <br>The WORKSPACE will be refreshed!</html>";\r
+ String strReturn = "<html>Far Update completed!<br>Refreshing the WORKSPACE!</html>";\r
JOptionPane.showConfirmDialog(null, strReturn, "Done", JOptionPane.DEFAULT_OPTION,\r
JOptionPane.INFORMATION_MESSAGE);\r
this.closeAll();\r
+ this.refresh();\r
+ this.makeEmptyTree();\r
}\r
uso.dispose();\r
}\r
tcc.showDialog();\r
}\r
\r
+ private void configBuildPreferences() {\r
+ Preferences bt = Preferences.getInstance();\r
+ bt.showDialog();\r
+ }\r
+\r
/**\r
Clone selected item\r
\r
}\r
int category = iTree.getSelectCategory();\r
Identification id = iTree.getSelectNode().getId();\r
- if (category == IDefaultMutableTreeNode.MODULE || category == IDefaultMutableTreeNode.PACKAGE\r
- || category == IDefaultMutableTreeNode.PLATFORM) {\r
- Log.wrn("Clone", "Please select a target to clone!");\r
- return;\r
- }\r
\r
if (category == IDefaultMutableTreeNode.WORKSPACE) {\r
mode = DataType.RETURN_TYPE_WORKSPACE;\r
id = null;\r
}\r
- if (category >= IDefaultMutableTreeNode.MSA_HEADER && category < IDefaultMutableTreeNode.SPD_HEADER) {\r
+ if ((category == IDefaultMutableTreeNode.MODULE)\r
+ || (category >= IDefaultMutableTreeNode.MSA_HEADER && category < IDefaultMutableTreeNode.SPD_HEADER)) {\r
mode = DataType.RETURN_TYPE_MODULE_SURFACE_AREA;\r
}\r
- if (category >= IDefaultMutableTreeNode.SPD_HEADER && category < IDefaultMutableTreeNode.FPD_PLATFORMHEADER) {\r
+ if ((category == IDefaultMutableTreeNode.PACKAGE)\r
+ || (category >= IDefaultMutableTreeNode.SPD_HEADER && category < IDefaultMutableTreeNode.FPD_PLATFORMHEADER)) {\r
mode = DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA;\r
}\r
- if (category >= IDefaultMutableTreeNode.FPD_PLATFORMHEADER) {\r
+ if ((category == IDefaultMutableTreeNode.PLATFORM) || (category >= IDefaultMutableTreeNode.FPD_PLATFORMHEADER)) {\r
mode = DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA;\r
}\r
\r
c.dispose();\r
}\r
if (result == DataType.RETURN_TYPE_WORKSPACE) {\r
- Tools.showInformationMessage("Workspace Clone Finished");\r
+ Tools.showInformationMessage("Workspace Clone Completed!");\r
}\r
if (result == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
- Tools.showInformationMessage("Module Surface Area Clone Finished");\r
- vModuleList.addElement(c.getMid());\r
+ Tools.showInformationMessage("Module Clone Completed!");\r
addModuleToTree(c.getMid());\r
}\r
if (result == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
- Tools.showInformationMessage("Package Surface Area Clone Finished");\r
- vPackageList.addElement(c.getPid());\r
+ Tools.showInformationMessage("Package Clone Completed!");\r
//\r
// Add new SpdHeader node to the tree\r
//\r
- IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vPackageList.lastElement().getName(),\r
- IDefaultMutableTreeNode.SPD_HEADER, true,\r
- vPackageList.lastElement());\r
- iTree.addNode(dmtnPackageDescription, node);\r
+ IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(GlobalData.vPackageList.lastElement().getName(),\r
+ IDefaultMutableTreeNode.PACKAGE, false,\r
+ GlobalData.vPackageList.lastElement(),\r
+ this.dmtnPackageDescription);\r
+ iTree.addNode(this.dmtnPackageDescription, node);\r
}\r
if (result == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
Tools.showInformationMessage("Platform Surface Area Clone Finished");\r
- vPlatformList.addElement(c.getFid());\r
//\r
// Add new SpdHeader node to the tree\r
//\r
- IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vPlatformList.lastElement().getName(),\r
- IDefaultMutableTreeNode.FPD_PLATFORMHEADER,\r
- true, vPlatformList.lastElement());\r
- iTree.addNode(dmtnPlatformDescription, node);\r
- //this.openPlatform(c.getFid().getPath());\r
+ IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(\r
+ GlobalData.vPlatformList.lastElement().getName(),\r
+ IDefaultMutableTreeNode.PLATFORM, false,\r
+ GlobalData.vPlatformList.lastElement(),\r
+ this.dmtnPlatformDescription);\r
+ iTree.addNode(this.dmtnPlatformDescription, node);\r
}\r
if (result == DataType.RETURN_TYPE_OK) {\r
\r
//\r
// Enable close/close all if some files are opened\r
//\r
- jMenuItemFileClose.setEnabled(openingModuleList.isOpend() || openingPackageList.isOpend()\r
- || openingPlatformList.isOpend());\r
- jMenuItemFileCloseAll.setEnabled(openingModuleList.isOpend() || openingPackageList.isOpend()\r
- || openingPlatformList.isOpend());\r
+ jMenuItemFileClose.setEnabled(GlobalData.openingModuleList.isOpen()\r
+ || GlobalData.openingPackageList.isOpen()\r
+ || GlobalData.openingPlatformList.isOpen());\r
+ jMenuItemFileCloseAll.setEnabled(GlobalData.openingModuleList.isOpen()\r
+ || GlobalData.openingPackageList.isOpen()\r
+ || GlobalData.openingPlatformList.isOpen());\r
\r
//\r
// Enable save/save all if some files are changed\r
//\r
- jMenuItemFileSave.setEnabled(!openingModuleList.isSaved() || !openingPackageList.isSaved()\r
- || !openingPlatformList.isSaved());\r
- jMenuItemFileSaveAll.setEnabled(!openingModuleList.isSaved() || !openingPackageList.isSaved()\r
- || !openingPlatformList.isSaved());\r
+ jMenuItemFileSave.setEnabled(!GlobalData.openingModuleList.isSaved()\r
+ || !GlobalData.openingPackageList.isSaved()\r
+ || !GlobalData.openingPlatformList.isSaved());\r
+ jMenuItemFileSaveAll.setEnabled(!GlobalData.openingModuleList.isSaved()\r
+ || !GlobalData.openingPackageList.isSaved()\r
+ || !GlobalData.openingPlatformList.isSaved());\r
}\r
\r
if (arg0.getSource() == jMenuTools) {\r
jMenuItemToolsClone.setEnabled(false);\r
} else {\r
int category = iTree.getSelectCategory();\r
- if (category == IDefaultMutableTreeNode.MODULE || category == IDefaultMutableTreeNode.PACKAGE\r
- || category == IDefaultMutableTreeNode.PLATFORM\r
+ if (category == IDefaultMutableTreeNode.MODULE_DESCRIPTION\r
+ || category == IDefaultMutableTreeNode.PACKAGE_DESCRIPTION\r
+ || category == IDefaultMutableTreeNode.PLATFORM_DESCRIPTION\r
|| category == IDefaultMutableTreeNode.MODULE_PACKAGE\r
|| category == IDefaultMutableTreeNode.MODULE_PACKAGE_LIBRARY\r
|| category == IDefaultMutableTreeNode.MODULE_PACKAGE_MODULE) {\r
}\r
}\r
}\r
+\r
+ public void keyTyped(KeyEvent arg0) {\r
+ // TODO Auto-generated method stub\r
+\r
+ }\r
+\r
+ public void keyPressed(KeyEvent arg0) {\r
+ // TODO Auto-generated method stub\r
+\r
+ }\r
+\r
+ public void keyReleased(KeyEvent arg0) {\r
+ if (arg0.getSource() == this.iTree) {\r
+ if (arg0.getKeyCode() == KeyEvent.VK_ENTER) {\r
+ this.doubleClickModuleTreeNode();\r
+ }\r
+ }\r
+ }\r
+\r
+ /**\r
+ Search whole workspace and find all module's name and guid, and save them to a file\r
+ \r
+ **/\r
+ private void generateGuidsXref() {\r
+ //\r
+ // Init File Chooser\r
+ //\r
+ JFileChooser fc = new JFileChooser();\r
+ fc.setCurrentDirectory(new File(Workspace.getCurrentWorkspace()));\r
+ fc.setSelectedFile(new File(Workspace.getCurrentWorkspace() + DataType.FILE_SEPARATOR\r
+ + DataType.GUIDS_XREF_FILE_NAME));\r
+ fc.setMultiSelectionEnabled(false);\r
+\r
+ //\r
+ // Get guids xref and save to file\r
+ //\r
+ int result = fc.showSaveDialog(new JPanel());\r
+ if (result == JFileChooser.APPROVE_OPTION) {\r
+ Vector<String> v = wt.getAllModuleGuidXref();\r
+ if (v.size() < 1) {\r
+ Log.wrn("No guids found!!!");\r
+ return;\r
+ }\r
+ File f = fc.getSelectedFile();\r
+ if (!f.exists()) {\r
+ try {\r
+ f.createNewFile();\r
+ } catch (IOException e) {\r
+ Log.wrn("Fail to create file", e.getMessage());\r
+ Log.err("Fail to create file when generating guids.xref", e.getMessage());\r
+ }\r
+ }\r
+ FileWriter fw = null;\r
+ BufferedWriter bw = null;\r
+ try {\r
+ fw = new FileWriter(f);\r
+ bw = new BufferedWriter(fw);\r
+ for (int index = 0; index < v.size(); index++) {\r
+ bw.write(v.get(index));\r
+ bw.newLine();\r
+ }\r
+ bw.flush();\r
+ fw.flush();\r
+ bw.close();\r
+ fw.close();\r
+ } catch (IOException e) {\r
+ Log.wrn("Fail to write file", e.getMessage());\r
+ Log.err("Fail to write file when generating guids.xref", e.getMessage());\r
+ return;\r
+ }\r
+\r
+ JOptionPane.showConfirmDialog(null, "File is created", "Generate guids.xref", JOptionPane.DEFAULT_OPTION,\r
+ JOptionPane.INFORMATION_MESSAGE);\r
+ }\r
+ }\r
}\r