]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/FrameworkWizardUI.java
1. Add help for ToolChainConfig
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / FrameworkWizardUI.java
CommitLineData
a13899c5 1/** @file\r
2 \r
3 The main GUI for module editor. \r
4 \r
5 Copyright (c) 2006, Intel Corporation\r
6 All rights reserved. This program and the accompanying materials\r
7 are licensed and made available under the terms and conditions of the BSD License\r
8 which accompanies this distribution. The full text of the license may be found at\r
9 http://opensource.org/licenses/bsd-license.php\r
10 \r
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13 \r
14 **/\r
15\r
16package org.tianocore.frameworkwizard;\r
17\r
18import java.awt.event.ActionEvent;\r
19import java.awt.event.ComponentEvent;\r
20import java.awt.event.ComponentListener;\r
21import java.awt.event.MouseEvent;\r
22import java.awt.event.MouseListener;\r
23import java.awt.event.WindowEvent;\r
24import java.io.IOException;\r
25import java.util.Vector;\r
26\r
27import javax.swing.JButton;\r
28import javax.swing.JCheckBoxMenuItem;\r
29import javax.swing.JDesktopPane;\r
30import javax.swing.JFileChooser;\r
31import javax.swing.JFrame;\r
32import javax.swing.JInternalFrame;\r
33import javax.swing.JMenu;\r
34import javax.swing.JMenuBar;\r
35import javax.swing.JMenuItem;\r
36import javax.swing.JOptionPane;\r
37import javax.swing.JPanel;\r
38import javax.swing.JScrollPane;\r
39import javax.swing.JSplitPane;\r
40import javax.swing.JTabbedPane;\r
41import javax.swing.event.MenuEvent;\r
42import javax.swing.event.MenuListener;\r
43import javax.swing.event.TreeSelectionEvent;\r
44import javax.swing.event.TreeSelectionListener;\r
45\r
46import org.apache.xmlbeans.XmlException;\r
47import org.tianocore.ModuleSurfaceAreaDocument;\r
48import org.tianocore.PackageSurfaceAreaDocument;\r
49import org.tianocore.PlatformSurfaceAreaDocument;\r
50import org.tianocore.frameworkwizard.common.DataType;\r
51import org.tianocore.frameworkwizard.common.IFileFilter;\r
a13899c5 52import org.tianocore.frameworkwizard.common.Log;\r
a13899c5 53import org.tianocore.frameworkwizard.common.SaveFile;\r
54import org.tianocore.frameworkwizard.common.Tools;\r
79cb6fdb 55import org.tianocore.frameworkwizard.common.Identifications.Identification;\r
56import org.tianocore.frameworkwizard.common.Identifications.OpenFile;\r
57import org.tianocore.frameworkwizard.common.Identifications.OpeningModuleList;\r
58import org.tianocore.frameworkwizard.common.Identifications.OpeningModuleType;\r
59import org.tianocore.frameworkwizard.common.Identifications.OpeningPackageList;\r
60import org.tianocore.frameworkwizard.common.Identifications.OpeningPackageType;\r
61import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformList;\r
62import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType;\r
a13899c5 63import org.tianocore.frameworkwizard.common.ui.IDefaultMutableTreeNode;\r
64import org.tianocore.frameworkwizard.common.ui.IDesktopManager;\r
65import org.tianocore.frameworkwizard.common.ui.IFrame;\r
66import org.tianocore.frameworkwizard.common.ui.ITree;\r
79cb6fdb 67import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
a13899c5 68import org.tianocore.frameworkwizard.module.ui.ModuleBootModes;\r
69import org.tianocore.frameworkwizard.module.ui.ModuleDataHubs;\r
70import org.tianocore.frameworkwizard.module.ui.ModuleDefinitions;\r
71import org.tianocore.frameworkwizard.module.ui.ModuleEvents;\r
72import org.tianocore.frameworkwizard.module.ui.ModuleExterns;\r
73import org.tianocore.frameworkwizard.module.ui.ModuleGuids;\r
74import org.tianocore.frameworkwizard.module.ui.ModuleHiiPackages;\r
75import org.tianocore.frameworkwizard.module.ui.ModuleHobs;\r
76import org.tianocore.frameworkwizard.module.ui.ModuleLibraryClassDefinitions;\r
77import org.tianocore.frameworkwizard.module.ui.ModulePCDs;\r
78import org.tianocore.frameworkwizard.module.ui.ModulePackageDependencies;\r
79import org.tianocore.frameworkwizard.module.ui.ModulePpis;\r
80import org.tianocore.frameworkwizard.module.ui.ModuleProtocols;\r
81import org.tianocore.frameworkwizard.module.ui.ModuleSourceFiles;\r
82import org.tianocore.frameworkwizard.module.ui.ModuleSystemTables;\r
83import org.tianocore.frameworkwizard.module.ui.ModuleVariables;\r
84import org.tianocore.frameworkwizard.module.ui.MsaHeader;\r
85import org.tianocore.frameworkwizard.packaging.PackageIdentification;\r
86import org.tianocore.frameworkwizard.packaging.ui.SpdGuidDecls;\r
87import org.tianocore.frameworkwizard.packaging.ui.SpdHeader;\r
88import org.tianocore.frameworkwizard.packaging.ui.SpdLibClassDecls;\r
89import org.tianocore.frameworkwizard.packaging.ui.SpdMsaFiles;\r
90import org.tianocore.frameworkwizard.packaging.ui.SpdPackageDefinitions;\r
91import org.tianocore.frameworkwizard.packaging.ui.SpdPackageHeaders;\r
92import org.tianocore.frameworkwizard.packaging.ui.SpdPcdDefs;\r
93import org.tianocore.frameworkwizard.packaging.ui.SpdPpiDecls;\r
94import org.tianocore.frameworkwizard.packaging.ui.SpdProtocolDecls;\r
95import org.tianocore.frameworkwizard.platform.PlatformIdentification;\r
96import org.tianocore.frameworkwizard.platform.ui.FpdBuildOptions;\r
97import org.tianocore.frameworkwizard.platform.ui.FpdDynamicPcdBuildDefinitions;\r
98import org.tianocore.frameworkwizard.platform.ui.FpdFlash;\r
99import org.tianocore.frameworkwizard.platform.ui.FpdFrameworkModules;\r
100import org.tianocore.frameworkwizard.platform.ui.FpdHeader;\r
101import org.tianocore.frameworkwizard.platform.ui.FpdPlatformDefs;\r
102import org.tianocore.frameworkwizard.workspace.Workspace;\r
103import org.tianocore.frameworkwizard.workspace.WorkspaceTools;\r
104import org.tianocore.frameworkwizard.workspace.ui.SwitchWorkspace;\r
105\r
106/**\r
107 The class is used to show main GUI of ModuleEditor\r
108 It extends IFrame implements MouseListener, TreeSelectionListener\r
109\r
110 **/\r
111public class FrameworkWizardUI extends IFrame implements MouseListener, TreeSelectionListener, ComponentListener,\r
112 MenuListener {\r
113 ///\r
114 /// Define class Serial Version UID\r
115 ///\r
116 private static final long serialVersionUID = -7103240960573031772L;\r
117 \r
118 //\r
119 // To save information of all files\r
120 //\r
121 private Vector<ModuleIdentification> vModuleList = new Vector<ModuleIdentification>();\r
122\r
123 private Vector<PackageIdentification> vPackageList = new Vector<PackageIdentification>();\r
124\r
125 private Vector<PlatformIdentification> vPlatformList = new Vector<PlatformIdentification>();\r
126\r
127 private OpeningModuleList openingModuleList = new OpeningModuleList();\r
128\r
129 private OpeningPackageList openingPackageList = new OpeningPackageList();\r
130\r
131 private OpeningPlatformList openingPlatformList = new OpeningPlatformList();\r
132\r
133 private int currentOpeningModuleIndex = -1;\r
134\r
135 private int currentOpeningPackageIndex = -1;\r
136\r
137 private int currentOpeningPlatformIndex = -1;\r
138\r
a13899c5 139 private IDefaultMutableTreeNode dmtnRoot = null;\r
140\r
141 private IDefaultMutableTreeNode dmtnModuleDescription = null;\r
142\r
143 private IDefaultMutableTreeNode dmtnPackageDescription = null;\r
144\r
145 private IDefaultMutableTreeNode dmtnPlatformDescription = null;\r
146\r
147 private JPanel jContentPane = null;\r
148\r
149 private JMenuBar jMenuBar = null;\r
150\r
151 private JMenu jMenuFile = null;\r
152\r
153 private JMenuItem jMenuItemFileNew = null;\r
154\r
155 private JMenuItem jMenuItemFileSaveAs = null;\r
156\r
157 private JMenuItem jMenuItemFileExit = null;\r
158\r
159 private JMenu jMenuEdit = null;\r
160\r
161 private JDesktopPane jDesktopPaneModule = null;\r
162\r
163 private JDesktopPane jDesktopPanePackage = null;\r
164\r
165 private JDesktopPane jDesktopPanePlatform = null;\r
166\r
167 private JTabbedPane jTabbedPaneTree = null;\r
168\r
169 private JTabbedPane jTabbedPaneEditor = null;\r
170\r
171 private IDesktopManager iDesktopManager = new IDesktopManager();\r
172\r
173 private JScrollPane jScrollPaneTree = null;\r
174\r
175 private ITree iTree = null;\r
176\r
177 private JMenu jMenuHelp = null;\r
178\r
179 private JMenuItem jMenuItemHelpAbout = null;\r
180\r
181 private JMenuItem jMenuItemEditDelete = null;\r
182\r
183 private WorkspaceTools wt = new WorkspaceTools();\r
184\r
185 private JMenuItem jMenuItemFileSave = null;\r
186\r
187 private JMenuItem jMenuItemFileClose = null;\r
188\r
189 private JMenu jMenuTools = null;\r
190\r
191 private JMenu jMenuWindow = null;\r
192\r
193 private JPanel jPanelOperation = null;\r
194\r
195 private JButton jButtonOk = null;\r
196\r
197 private JButton jButtonCancel = null;\r
198\r
199 private JMenuItem jMenuItemFileOpen = null;\r
200\r
201 private JMenuItem jMenuItemFileCloseAll = null;\r
202\r
203 private JMenuItem jMenuItemFileSaveAll = null;\r
204\r
205 private JMenuItem jMenuItemFilePageSetup = null;\r
206\r
207 private JMenuItem jMenuItemFilePrint = null;\r
208\r
209 private JMenuItem jMenuItemFileImport = null;\r
210\r
211 private JMenuItem jMenuItemFileProperties = null;\r
212\r
213 private JMenu jMenuFileRecentFiles = null;\r
214\r
215 private JSplitPane jSplitPane = null;\r
216\r
217 private JMenuItem jMenuItemEditUndo = null;\r
218\r
219 private JMenuItem jMenuItemEditRedo = null;\r
220\r
221 private JMenuItem jMenuItemEditCut = null;\r
222\r
223 private JMenuItem jMenuItemEditCopy = null;\r
224\r
225 private JMenuItem jMenuItemEditPaste = null;\r
226\r
227 private JMenuItem jMenuItemEditSelectAll = null;\r
228\r
229 private JMenuItem jMenuItemEditFind = null;\r
230\r
231 private JMenuItem jMenuItemEditFindNext = null;\r
232\r
233 private JMenu jMenuView = null;\r
234\r
235 private JMenu jMenuViewToolbars = null;\r
236\r
237 private JCheckBoxMenuItem jCheckBoxMenuItemViewToolbarsFile = null;\r
238\r
239 private JCheckBoxMenuItem jCheckBoxMenuItemViewToolbarsEdit = null;\r
240\r
241 private JCheckBoxMenuItem jCheckBoxMenuItemViewToolbarsWindow = null;\r
242\r
243 private JMenuItem jMenuItemViewStandard = null;\r
244\r
245 private JMenuItem jMenuItemViewAdvanced = null;\r
246\r
247 private JMenu jMenuProject = null;\r
248\r
249 private JMenuItem jMenuItemProjectAdmin = null;\r
250\r
251 private JMenuItem jMenuItemProjectChangeWorkspace = null;\r
252\r
253 private JMenu jMenuProjectBuildTargets = null;\r
254\r
255 private JCheckBoxMenuItem jCheckBoxMenuItemProjectBuildTargetsDebug = null;\r
256\r
257 private JCheckBoxMenuItem jCheckBoxMenuItemProjectBuildTargetsRelease = null;\r
258\r
259 private JMenuItem jMenuItemToolsToolChainConfiguration = null;\r
260\r
261 private JMenuItem jMenuItemToolsClone = null;\r
262\r
263 private JMenuItem jMenuItemToolsCodeScan = null;\r
264\r
265 private JMenuItem jMenuItemWindowDisplaySide = null;\r
266\r
267 private JMenuItem jMenuItemWindowDisplayTopBottom = null;\r
268\r
269 private JMenuItem jMenuItemViewXML = null;\r
270\r
271 private JMenuItem jMenuItemWindowTabView = null;\r
272\r
273 private JMenuItem jMenuItemWindowSource = null;\r
274\r
275 private JMenuItem jMenuItemWindowXML = null;\r
276\r
277 private JMenuItem jMenuItemWindowPreferences = null;\r
278\r
279 private JMenuItem jMenuItemHelpContents = null;\r
280\r
281 private JMenuItem jMenuItemHelpIndex = null;\r
282\r
283 private JMenuItem jMenuItemHelpSearch = null;\r
284\r
285 private JMenuItem jMenuItemProjectInstallPackage = null;\r
286\r
287 private JMenuItem jMenuItemProjectUpdatePackage = null;\r
288\r
289 private JMenuItem jMenuItemProjectRemovePackage = null;\r
290\r
291 //private JToolBar jToolBarFile = null;\r
292\r
293 //private JToolBar jToolBarEdit = null;\r
294\r
295 //private JToolBar jToolBarWindow = null;\r
296\r
297 /**\r
298 This method initializes jMenuBar \r
299 \r
300 @return javax.swing.JMenuBar Main menu bar for the entire GUI\r
301 \r
302 **/\r
303 private JMenuBar getjJMenuBar() {\r
304 if (jMenuBar == null) {\r
305 jMenuBar = new JMenuBar();\r
306 jMenuBar.setPreferredSize(new java.awt.Dimension(0, 18));\r
307 jMenuBar.add(getJMenuFile());\r
308 jMenuBar.add(getJMenuEdit());\r
309 jMenuBar.add(getJMenuView());\r
310 jMenuBar.add(getJMenuProject());\r
311 jMenuBar.add(getJMenuTools());\r
312 jMenuBar.add(getJMenuWindow());\r
313 jMenuBar.add(getJMenuHelp());\r
314 }\r
315 return jMenuBar;\r
316 }\r
317\r
318 /**\r
319 This method initializes jSplitPane\r
320 \r
321 @return javax.swing.JSplitPane\r
322 \r
323 **/\r
324 private JSplitPane getJSplitPane() {\r
325 if (jSplitPane == null) {\r
326 jSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, getJTabbedPaneTree(), getJTabbedPaneEditor());\r
327 jSplitPane.setBounds(new java.awt.Rectangle(0, 1, DataType.MAIN_FRAME_SPLIT_PANEL_PREFERRED_SIZE_WIDTH,\r
328 DataType.MAIN_FRAME_SPLIT_PANEL_PREFERRED_SIZE_HEIGHT));\r
329 jSplitPane.addComponentListener(this);\r
330 }\r
331 return jSplitPane;\r
332 }\r
333\r
334 /**\r
335 This method initializes jTabbedPaneEditor \r
336 \r
337 @return javax.swing.JTabbedPane \r
338 \r
339 */\r
340 private JTabbedPane getJTabbedPaneEditor() {\r
341 if (jTabbedPaneEditor == null) {\r
342 jTabbedPaneEditor = new JTabbedPane();\r
343 jTabbedPaneEditor.setBounds(new java.awt.Rectangle(DataType.MAIN_FRAME_EDITOR_PANEL_LOCATION_X,\r
344 DataType.MAIN_FRAME_EDITOR_PANEL_LOCATION_Y,\r
345 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_WIDTH,\r
346 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_HEIGHT));\r
347 jTabbedPaneEditor\r
348 .setMinimumSize(new java.awt.Dimension(\r
349 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_WIDTH,\r
350 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_HEIGHT));\r
351 //jTabbedPaneEditor.addChangeListener(this);\r
352 jTabbedPaneEditor.addTab("Module", null, getJDesktopPaneModule(), null);\r
353 jTabbedPaneEditor.addTab("Package", null, getJDesktopPanePackage(), null);\r
354 jTabbedPaneEditor.addTab("Platform", null, getJDesktopPanePlatform(), null);\r
355 }\r
356 return jTabbedPaneEditor;\r
357 }\r
358\r
359 /**\r
360 This method initializes jTabbedPaneTree\r
361 \r
362 @return javax.swing.JTabbedPane \r
363 \r
364 */\r
365 private JTabbedPane getJTabbedPaneTree() {\r
366 if (jTabbedPaneTree == null) {\r
367 jTabbedPaneTree = new JTabbedPane();\r
368 jTabbedPaneTree\r
369 .setPreferredSize(new java.awt.Dimension(\r
370 DataType.MAIN_FRAME_TREE_PANEL_PREFERRED_SIZE_WIDTH,\r
371 DataType.MAIN_FRAME_TREE_PANEL_PREFERRED_SIZE_HEIGHT));\r
372 jTabbedPaneTree\r
373 .setMinimumSize(new java.awt.Dimension(DataType.MAIN_FRAME_TREE_PANEL_PREFERRED_SIZE_WIDTH,\r
374 DataType.MAIN_FRAME_TREE_PANEL_PREFERRED_SIZE_HEIGHT));\r
375 jTabbedPaneTree.addTab("Workspace Explorer", null, getJScrollPaneTree(), null);\r
376 }\r
377 return jTabbedPaneTree;\r
378 }\r
379\r
380 /**\r
381 This method initializes jMenuFile \r
382 \r
383 @return javax.swing.JMenu jMenuModule\r
384 \r
385 **/\r
386 private JMenu getJMenuFile() {\r
387 if (jMenuFile == null) {\r
388 jMenuFile = new JMenu();\r
389 jMenuFile.setText("File");\r
390 jMenuFile.setMnemonic('F');\r
391 jMenuFile.add(getJMenuItemFileNew());\r
392 jMenuFile.add(getJMenuItemFileOpen());\r
393 jMenuFile.add(getJMenuItemFileClose());\r
394 jMenuFile.add(getJMenuItemFileCloseAll());\r
395 jMenuFile.addSeparator();\r
396 jMenuFile.add(getJMenuFileRecentFiles());\r
397 //jMenuFile.addSeparator();\r
398 jMenuFile.add(getJMenuItemFileSave());\r
399 jMenuFile.add(getJMenuItemFileSaveAs());\r
400 jMenuFile.add(getJMenuItemFileSaveAll());\r
401 jMenuFile.addSeparator();\r
402 jMenuFile.add(getJMenuItemFilePageSetup());\r
403 jMenuFile.add(getJMenuItemFilePrint());\r
404 //jMenuFile.addSeparator();\r
405 jMenuFile.add(getJMenuItemFileImport());\r
406 //jMenuFile.addSeparator();\r
407 jMenuFile.add(getJMenuItemFileProperties());\r
408 //jMenuFile.addSeparator();\r
409 jMenuFile.add(getJMenuItemFileExit());\r
410 jMenuFile.addMenuListener(this);\r
411 }\r
412 return jMenuFile;\r
413 }\r
414\r
415 /**\r
416 This method initializes jMenuItemFileSaveAs \r
417 \r
418 @return javax.swing.JMenuItem jMenuItemFileSaveAs\r
419 \r
420 **/\r
421 private JMenuItem getJMenuItemFileSaveAs() {\r
422 if (jMenuItemFileSaveAs == null) {\r
423 jMenuItemFileSaveAs = new JMenuItem();\r
424 jMenuItemFileSaveAs.setText("Save As...");\r
425 jMenuItemFileSaveAs.setMnemonic('a');\r
426 jMenuItemFileSaveAs.addActionListener(this);\r
427 jMenuItemFileSaveAs.setEnabled(false);\r
428 jMenuItemFileSaveAs.setVisible(false);\r
429 }\r
430 return jMenuItemFileSaveAs;\r
431 }\r
432\r
433 /**\r
434 This method initializes jMenuItemModuleExit \r
435 \r
436 @return javax.swing.JMenuItem jMenuItemModuleExit\r
437 \r
438 **/\r
439 private JMenuItem getJMenuItemFileExit() {\r
440 if (jMenuItemFileExit == null) {\r
441 jMenuItemFileExit = new JMenuItem();\r
442 jMenuItemFileExit.setText("Exit");\r
443 jMenuItemFileExit.setMnemonic('x');\r
444 jMenuItemFileExit.addActionListener(this);\r
445 }\r
446 return jMenuItemFileExit;\r
447 }\r
448\r
449 /**\r
450 This method initializes jMenuEdit \r
451 \r
452 @return javax.swing.JMenu jMenuEdit\r
453 \r
454 **/\r
455 private JMenu getJMenuEdit() {\r
456 if (jMenuEdit == null) {\r
457 jMenuEdit = new JMenu();\r
458 jMenuEdit.setText("Edit");\r
459 jMenuEdit.setMnemonic('E');\r
460 jMenuEdit.add(getJMenuItemEditUndo());\r
461 jMenuEdit.add(getJMenuItemEditRedo());\r
462 jMenuEdit.addSeparator();\r
463 jMenuEdit.add(getJMenuItemEditCut());\r
464 jMenuEdit.add(getJMenuItemEditCopy());\r
465 jMenuEdit.add(getJMenuItemEditPaste());\r
466 jMenuEdit.add(getJMenuItemEditDelete());\r
467 jMenuEdit.addSeparator();\r
468 jMenuEdit.add(getJMenuItemEditSelectAll());\r
469 jMenuEdit.add(getJMenuItemEditFind());\r
470 jMenuEdit.add(getJMenuItemEditFindNext());\r
471 jMenuEdit.addSeparator();\r
472 jMenuEdit.setVisible(false);\r
473 }\r
474 return jMenuEdit;\r
475 }\r
476\r
477 /**\r
478 This method initializes jDesktopPane \r
479 \r
480 @return javax.swing.JDesktopPane jDesktopPane\r
481 \r
482 **/\r
483 private JDesktopPane getJDesktopPaneModule() {\r
484 if (jDesktopPaneModule == null) {\r
485 jDesktopPaneModule = new JDesktopPane();\r
486 jDesktopPaneModule\r
487 .setBounds(new java.awt.Rectangle(DataType.MAIN_FRAME_EDITOR_PANEL_LOCATION_X,\r
488 DataType.MAIN_FRAME_EDITOR_PANEL_LOCATION_Y,\r
489 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_WIDTH,\r
490 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_HEIGHT));\r
491 jDesktopPaneModule\r
492 .setMinimumSize(new java.awt.Dimension(\r
493 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_WIDTH,\r
494 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_HEIGHT));\r
495 jDesktopPaneModule.setDesktopManager(iDesktopManager);\r
496 jDesktopPaneModule.addComponentListener(this);\r
497 }\r
498 return jDesktopPaneModule;\r
499 }\r
500\r
501 /**\r
502 This method initializes jDesktopPane \r
503 \r
504 @return javax.swing.JDesktopPane jDesktopPane\r
505 \r
506 **/\r
507 private JDesktopPane getJDesktopPanePackage() {\r
508 if (jDesktopPanePackage == null) {\r
509 jDesktopPanePackage = new JDesktopPane();\r
510 jDesktopPanePackage\r
511 .setBounds(new java.awt.Rectangle(DataType.MAIN_FRAME_EDITOR_PANEL_LOCATION_X,\r
512 DataType.MAIN_FRAME_EDITOR_PANEL_LOCATION_Y,\r
513 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_WIDTH,\r
514 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_HEIGHT));\r
515 jDesktopPanePackage\r
516 .setMinimumSize(new java.awt.Dimension(\r
517 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_WIDTH,\r
518 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_HEIGHT));\r
519 jDesktopPanePackage.setDesktopManager(iDesktopManager);\r
520 jDesktopPanePackage.addComponentListener(this);\r
521 }\r
522 return jDesktopPanePackage;\r
523 }\r
524\r
525 /**\r
526 This method initializes jDesktopPane \r
527 \r
528 @return javax.swing.JDesktopPane jDesktopPane\r
529 \r
530 **/\r
531 private JDesktopPane getJDesktopPanePlatform() {\r
532 if (jDesktopPanePlatform == null) {\r
533 jDesktopPanePlatform = new JDesktopPane();\r
534 jDesktopPanePlatform\r
535 .setBounds(new java.awt.Rectangle(\r
536 DataType.MAIN_FRAME_EDITOR_PANEL_LOCATION_X,\r
537 DataType.MAIN_FRAME_EDITOR_PANEL_LOCATION_Y,\r
538 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_WIDTH,\r
539 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_HEIGHT));\r
540 jDesktopPanePlatform\r
541 .setMinimumSize(new java.awt.Dimension(\r
542 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_WIDTH,\r
543 DataType.MAIN_FRAME_EDITOR_PANEL_PREFERRED_SIZE_HEIGHT));\r
544 jDesktopPanePlatform.setDesktopManager(iDesktopManager);\r
545 jDesktopPanePlatform.addComponentListener(this);\r
546 }\r
547 return jDesktopPanePlatform;\r
548 }\r
549\r
550 /**\r
551 This method initializes jScrollPaneTree \r
552 \r
553 @return javax.swing.JScrollPane jScrollPaneTree\r
554 \r
555 **/\r
556 private JScrollPane getJScrollPaneTree() {\r
557 if (jScrollPaneTree == null) {\r
558 jScrollPaneTree = new JScrollPane();\r
559 //jScrollPaneTree.setBounds(new java.awt.Rectangle(0, 1, 290, 545));\r
560 jScrollPaneTree\r
561 .setPreferredSize(new java.awt.Dimension(\r
562 DataType.MAIN_FRAME_TREE_PANEL_PREFERRED_SIZE_WIDTH,\r
563 DataType.MAIN_FRAME_TREE_PANEL_PREFERRED_SIZE_HEIGHT));\r
564 jScrollPaneTree\r
565 .setMinimumSize(new java.awt.Dimension(\r
566 DataType.MAIN_FRAME_TREE_PANEL_PREFERRED_SIZE_WIDTH / 2,\r
567 DataType.MAIN_FRAME_TREE_PANEL_PREFERRED_SIZE_HEIGHT));\r
568 jScrollPaneTree.setViewportView(getITree());\r
569 }\r
570 return jScrollPaneTree;\r
571 }\r
572\r
573 /**\r
574 This method initializes iTree \r
575 \r
576 @return org.tianocore.packaging.common.ui.ITree iTree\r
577 \r
578 **/\r
579 private ITree getITree() {\r
580 //\r
581 //Before open a real module, use an empty root node for the tree\r
582 //\r
583 makeEmptyTree();\r
584 return iTree;\r
585 }\r
586\r
587 /**\r
588 This method initializes jMenuHelp \r
589 \r
590 @return javax.swing.JMenu jMenuHelp\r
591 \r
592 **/\r
593 private JMenu getJMenuHelp() {\r
594 if (jMenuHelp == null) {\r
595 jMenuHelp = new JMenu();\r
596 jMenuHelp.setText("Help");\r
597 jMenuHelp.add(getJMenuItemHelpContents());\r
598 jMenuHelp.add(getJMenuItemHelpIndex());\r
599 jMenuHelp.add(getJMenuItemHelpSearch());\r
600 //jMenuHelp.addSeparator();\r
601 jMenuHelp.add(getJMenuItemHelpAbout());\r
602 }\r
603 return jMenuHelp;\r
604 }\r
605\r
606 /**\r
607 This method initializes jMenuItemHelpAbout \r
608 \r
609 @return javax.swing.JMenuItem jMenuItemHelpAbout\r
610 \r
611 **/\r
612 private JMenuItem getJMenuItemHelpAbout() {\r
613 if (jMenuItemHelpAbout == null) {\r
614 jMenuItemHelpAbout = new JMenuItem();\r
615 jMenuItemHelpAbout.setText("About...");\r
616 jMenuItemHelpAbout.addActionListener(this);\r
617 }\r
618 return jMenuItemHelpAbout;\r
619 }\r
620\r
621 /**\r
622 This method initializes jMenuItemEditDelete \r
623 \r
624 @return javax.swing.JMenuItem jMenuItemEditDelete\r
625 \r
626 **/\r
627 private JMenuItem getJMenuItemEditDelete() {\r
628 if (jMenuItemEditDelete == null) {\r
629 jMenuItemEditDelete = new JMenuItem();\r
630 jMenuItemEditDelete.setText("Delete");\r
631 jMenuItemEditDelete.setMnemonic('D');\r
632 jMenuItemEditDelete.addActionListener(this);\r
633 //\r
634 //Disabled when no module is open\r
635 //\r
636 jMenuItemEditDelete.setEnabled(false);\r
637 }\r
638 return jMenuItemEditDelete;\r
639 }\r
640\r
641 // /**\r
642 // This method initializes jPopupMenu \r
643 // \r
644 // @return javax.swing.JPopupMenu jPopupMenu\r
645 // \r
646 // **/\r
647 // private JPopupMenu getJPopupMenu() {\r
648 // if (jPopupMenu == null) {\r
649 // jPopupMenu = new JPopupMenu();\r
650 // //\r
651 // //Add menu items of popup menu\r
652 // //\r
653 // jPopupMenu.add(getJMenuItemPopupAdd());\r
654 // jPopupMenu.add(getJMenuItemPopupUpdate());\r
655 // jPopupMenu.add(getJMenuItemPopupDelete());\r
656 // jPopupMenu.setBorder(new BevelBorder(BevelBorder.RAISED));\r
657 // jPopupMenu.addMouseListener(this);\r
658 // }\r
659 // return jPopupMenu;\r
660 // }\r
661 //\r
662 // /**\r
663 // This method initializes jMenuItemPopupAdd \r
664 // \r
665 // @return javax.swing.JMenuItem jMenuItemPopupAdd\r
666 // \r
667 // **/\r
668 // private JMenuItem getJMenuItemPopupAdd() {\r
669 // if (jMenuItemPopupAdd == null) {\r
670 // jMenuItemPopupAdd = new JMenuItem();\r
671 // jMenuItemPopupAdd.setText("Add");\r
672 // jMenuItemPopupAdd.addActionListener(this);\r
673 // jMenuItemPopupAdd.setEnabled(false);\r
674 // }\r
675 // return jMenuItemPopupAdd;\r
676 // }\r
677 //\r
678 // /**\r
679 // This method initializes jMenuItemPopupUpdate \r
680 // \r
681 // @return javax.swing.JMenuItem jMenuItemPopupUpdate\r
682 // \r
683 // **/\r
684 // private JMenuItem getJMenuItemPopupUpdate() {\r
685 // if (jMenuItemPopupUpdate == null) {\r
686 // jMenuItemPopupUpdate = new JMenuItem();\r
687 // jMenuItemPopupUpdate.setText("Update");\r
688 // jMenuItemPopupUpdate.addActionListener(this);\r
689 // jMenuItemPopupUpdate.setEnabled(false);\r
690 // }\r
691 // return jMenuItemPopupUpdate;\r
692 // }\r
693 //\r
694 // /**\r
695 // This method initializes jMenuItemPopupDelete \r
696 // \r
697 // @return javax.swing.JMenuItem jMenuItemPopupDelete\r
698 // \r
699 // **/\r
700 // private JMenuItem getJMenuItemPopupDelete() {\r
701 // if (jMenuItemPopupDelete == null) {\r
702 // jMenuItemPopupDelete = new JMenuItem();\r
703 // jMenuItemPopupDelete.setText("Delete");\r
704 // jMenuItemPopupDelete.addActionListener(this);\r
705 // jMenuItemPopupDelete.setEnabled(false);\r
706 // }\r
707 // return jMenuItemPopupDelete;\r
708 // }\r
709\r
710 /**\r
711 This method initializes jMenuFileNew \r
712 \r
713 @return javax.swing.JMenuItem jMenuFileNew\r
714 \r
715 **/\r
716 private JMenuItem getJMenuItemFileNew() {\r
717 if (jMenuItemFileNew == null) {\r
718 jMenuItemFileNew = new JMenuItem();\r
719 jMenuItemFileNew.setText("New...");\r
720 jMenuItemFileNew.setMnemonic('N');\r
721 jMenuItemFileNew.addActionListener(this);\r
722 }\r
723 return jMenuItemFileNew;\r
724 }\r
725\r
726 /**\r
727 This method initializes jMenuItemFileSave \r
728 \r
729 @return javax.swing.JMenuItem jMenuItemModuleSave\r
730 \r
731 **/\r
732 private JMenuItem getJMenuItemFileSave() {\r
733 if (jMenuItemFileSave == null) {\r
734 jMenuItemFileSave = new JMenuItem();\r
735 jMenuItemFileSave.setText("Save");\r
736 jMenuItemFileSave.setMnemonic('S');\r
737 jMenuItemFileSave.addActionListener(this);\r
738 jMenuItemFileSave.setEnabled(true);\r
739 }\r
740 return jMenuItemFileSave;\r
741 }\r
742\r
743 /**\r
744 This method initializes jMenuItemModuleClose \r
745 \r
746 @return javax.swing.JMenuItem jMenuItemModuleClose\r
747 \r
748 **/\r
749 private JMenuItem getJMenuItemFileClose() {\r
750 if (jMenuItemFileClose == null) {\r
751 jMenuItemFileClose = new JMenuItem();\r
752 jMenuItemFileClose.setText("Close");\r
753 jMenuItemFileClose.setMnemonic('C');\r
754 jMenuItemFileClose.setEnabled(true);\r
755 jMenuItemFileClose.addActionListener(this);\r
756 }\r
757 return jMenuItemFileClose;\r
758 }\r
759\r
760 /**\r
761 This method initializes jMenuTools\r
762 Reserved \r
763 \r
764 @return javax.swing.JMenu jMenuTools\r
765 \r
766 **/\r
767 private JMenu getJMenuTools() {\r
768 if (jMenuTools == null) {\r
769 jMenuTools = new JMenu();\r
770 jMenuTools.setText("Tools");\r
771 jMenuTools.setMnemonic('T');\r
772 jMenuTools.add(getJMenuItemToolsToolChainConfiguration());\r
79cb6fdb 773 jMenuTools.addSeparator();\r
a13899c5 774 jMenuTools.add(getJMenuItemToolsClone());\r
775 //jMenuTools.addSeparator();\r
776 jMenuTools.add(getJMenuItemToolsCodeScan());\r
777 jMenuTools.addMenuListener(this);\r
778 }\r
779 return jMenuTools;\r
780 }\r
781\r
782 /**\r
783 This method initializes jMenuWindow \r
784 Reserved\r
785 \r
786 @return javax.swing.JMenu jMenuWindow\r
787 \r
788 **/\r
789 private JMenu getJMenuWindow() {\r
790 if (jMenuWindow == null) {\r
791 jMenuWindow = new JMenu();\r
792 jMenuWindow.setText("Window");\r
793 jMenuWindow.setMnemonic('W');\r
794 jMenuWindow.add(getJMenuItemWindowDisplaySide());\r
795 jMenuWindow.add(getJMenuItemWindowDisplayTopBottom());\r
796 jMenuWindow.addSeparator();\r
797 jMenuWindow.add(getJMenuItemWindowTabView());\r
798 jMenuWindow.addSeparator();\r
799 jMenuWindow.add(getJMenuItemWindowSource());\r
800 jMenuWindow.add(getJMenuItemWindowXML());\r
801 jMenuWindow.addSeparator();\r
802 jMenuWindow.add(getJMenuItemWindowPreferences());\r
803 jMenuWindow.setVisible(false);\r
804 }\r
805 return jMenuWindow;\r
806 }\r
807\r
808 /**\r
809 This method initializes jPanelOperation \r
810 \r
811 @return javax.swing.JPanel jPanelOperation\r
812 \r
813 **/\r
814 private JPanel getJPanelOperation() {\r
815 if (jPanelOperation == null) {\r
816 jPanelOperation = new JPanel();\r
817 jPanelOperation.setLayout(null);\r
818 jPanelOperation.setBounds(new java.awt.Rectangle(295, 520, 500, 25));\r
819 jPanelOperation.add(getJButtonOk(), null);\r
820 jPanelOperation.add(getJButtonCancel(), null);\r
821 jPanelOperation.setVisible(false);\r
822 }\r
823 return jPanelOperation;\r
824 }\r
825\r
826 /**\r
827 This method initializes jButtonOk \r
828 \r
829 @return javax.swing.JButton jButtonOk\r
830 \r
831 **/\r
832 private JButton getJButtonOk() {\r
833 if (jButtonOk == null) {\r
834 jButtonOk = new JButton();\r
835 jButtonOk.setBounds(new java.awt.Rectangle(395, 2, 90, 20));\r
836 jButtonOk.setText("Ok");\r
837 jButtonOk.setEnabled(false);\r
838 jButtonOk.addActionListener(this);\r
839 }\r
840 return jButtonOk;\r
841 }\r
842\r
843 /**\r
844 This method initializes jButtonCancel \r
845 \r
846 @return javax.swing.JButton jButtonCancel\r
847 \r
848 **/\r
849 private JButton getJButtonCancel() {\r
850 if (jButtonCancel == null) {\r
851 jButtonCancel = new JButton();\r
852 jButtonCancel.setBounds(new java.awt.Rectangle(395, 2, 90, 20));\r
853 jButtonCancel.setText("Cancel");\r
854 jButtonCancel.setEnabled(false);\r
855 jButtonCancel.addActionListener(this);\r
856 jButtonCancel.setVisible(false);\r
857 }\r
858 return jButtonCancel;\r
859 }\r
860\r
861 /**\r
862 This method initializes jMenuItemFileOpen \r
863 \r
864 @return javax.swing.JMenuItem jMenuItemFileOpen\r
865 */\r
866 private JMenuItem getJMenuItemFileOpen() {\r
867 if (jMenuItemFileOpen == null) {\r
868 jMenuItemFileOpen = new JMenuItem();\r
869 jMenuItemFileOpen.setText("Open...");\r
870 jMenuItemFileOpen.setMnemonic('O');\r
871 jMenuItemFileOpen.addActionListener(this);\r
872 }\r
873 return jMenuItemFileOpen;\r
874 }\r
875\r
876 /**\r
877 This method initializes jMenuItemFileCloseAll \r
878 \r
879 @return javax.swing.JMenuItem jMenuItemFileOpen\r
880 */\r
881 private JMenuItem getJMenuItemFileCloseAll() {\r
882 if (jMenuItemFileCloseAll == null) {\r
883 jMenuItemFileCloseAll = new JMenuItem();\r
884 jMenuItemFileCloseAll.setText("Close All");\r
885 jMenuItemFileCloseAll.setEnabled(true);\r
886 jMenuItemFileCloseAll.addActionListener(this);\r
887 }\r
888 return jMenuItemFileCloseAll;\r
889 }\r
890\r
891 /**\r
892 This method initializes jMenuItemFileSaveAll \r
893 \r
894 @return javax.swing.JMenuItem jMenuItemFileSaveAll\r
895 */\r
896 private JMenuItem getJMenuItemFileSaveAll() {\r
897 if (jMenuItemFileSaveAll == null) {\r
898 jMenuItemFileSaveAll = new JMenuItem();\r
899 jMenuItemFileSaveAll.setText("Save All");\r
900 jMenuItemFileSaveAll.setMnemonic('v');\r
901 jMenuItemFileSaveAll.setEnabled(true);\r
902 jMenuItemFileSaveAll.addActionListener(this);\r
903 }\r
904 return jMenuItemFileSaveAll;\r
905 }\r
906\r
907 /**\r
908 This method initializes jMenuItemFilePageSetup \r
909 \r
910 @return javax.swing.JMenuItem \r
911 */\r
912 private JMenuItem getJMenuItemFilePageSetup() {\r
913 if (jMenuItemFilePageSetup == null) {\r
914 jMenuItemFilePageSetup = new JMenuItem();\r
915 jMenuItemFilePageSetup.setText("Page Setup");\r
916 jMenuItemFilePageSetup.setMnemonic('u');\r
917 jMenuItemFilePageSetup.setEnabled(false);\r
918 jMenuItemFilePageSetup.addActionListener(this);\r
919 jMenuItemFilePageSetup.setVisible(false);\r
920 }\r
921 return jMenuItemFilePageSetup;\r
922 }\r
923\r
924 /**\r
925 This method initializes jMenuItemFilePrint \r
926 \r
927 @return javax.swing.JMenuItem \r
928 */\r
929 private JMenuItem getJMenuItemFilePrint() {\r
930 if (jMenuItemFilePrint == null) {\r
931 jMenuItemFilePrint = new JMenuItem();\r
932 jMenuItemFilePrint.setText("Print");\r
933 jMenuItemFilePrint.setMnemonic('P');\r
934 jMenuItemFilePrint.setEnabled(false);\r
935 jMenuItemFilePrint.addActionListener(this);\r
936 jMenuItemFilePrint.setVisible(false);\r
937 }\r
938 return jMenuItemFilePrint;\r
939 }\r
940\r
941 /**\r
942 This method initializes jMenuItemFileImport \r
943 \r
944 @return javax.swing.JMenuItem \r
945 */\r
946 private JMenuItem getJMenuItemFileImport() {\r
947 if (jMenuItemFileImport == null) {\r
948 jMenuItemFileImport = new JMenuItem();\r
949 jMenuItemFileImport.setText("Import");\r
950 jMenuItemFileImport.setMnemonic('I');\r
951 jMenuItemFileImport.setEnabled(false);\r
952 jMenuItemFileImport.addActionListener(this);\r
953 jMenuItemFileImport.setVisible(false);\r
954 }\r
955 return jMenuItemFileImport;\r
956 }\r
957\r
958 /**\r
959 * This method initializes jMenuItemFileProperties \r
960 * \r
961 * @return javax.swing.JMenuItem \r
962 */\r
963 private JMenuItem getJMenuItemFileProperties() {\r
964 if (jMenuItemFileProperties == null) {\r
965 jMenuItemFileProperties = new JMenuItem();\r
966 jMenuItemFileProperties.setText("Properties");\r
967 jMenuItemFileProperties.setMnemonic('t');\r
968 jMenuItemFileProperties.setEnabled(false);\r
969 jMenuItemFileProperties.addActionListener(this);\r
970 jMenuItemFileProperties.setVisible(false);\r
971 }\r
972 return jMenuItemFileProperties;\r
973 }\r
974\r
975 /**\r
976 * This method initializes jMenuFileRecentFiles \r
977 * \r
978 * @return javax.swing.JMenu \r
979 */\r
980 private JMenu getJMenuFileRecentFiles() {\r
981 if (jMenuFileRecentFiles == null) {\r
982 jMenuFileRecentFiles = new JMenu();\r
983 jMenuFileRecentFiles.setText("Recent Files");\r
984 jMenuFileRecentFiles.setMnemonic('F');\r
985 jMenuFileRecentFiles.setEnabled(false);\r
986 jMenuFileRecentFiles.addActionListener(this);\r
987 jMenuFileRecentFiles.setVisible(false);\r
988 }\r
989 return jMenuFileRecentFiles;\r
990 }\r
991\r
992 /**\r
993 This method initializes jMenuItemEditUndo \r
994 \r
995 @return javax.swing.JMenuItem \r
996 */\r
997 private JMenuItem getJMenuItemEditUndo() {\r
998 if (jMenuItemEditUndo == null) {\r
999 jMenuItemEditUndo = new JMenuItem();\r
1000 jMenuItemEditUndo.setText("Undo");\r
1001 jMenuItemEditUndo.setMnemonic('U');\r
1002 jMenuItemEditUndo.setEnabled(false);\r
1003 jMenuItemEditUndo.addActionListener(this);\r
1004 }\r
1005 return jMenuItemEditUndo;\r
1006 }\r
1007\r
1008 /**\r
1009 This method initializes jMenuItemEditRedo \r
1010 \r
1011 @return javax.swing.JMenuItem \r
1012 */\r
1013 private JMenuItem getJMenuItemEditRedo() {\r
1014 if (jMenuItemEditRedo == null) {\r
1015 jMenuItemEditRedo = new JMenuItem();\r
1016 jMenuItemEditRedo.setText("Redo");\r
1017 jMenuItemEditRedo.setMnemonic('R');\r
1018 jMenuItemEditRedo.setEnabled(false);\r
1019 jMenuItemEditRedo.addActionListener(this);\r
1020 }\r
1021 return jMenuItemEditRedo;\r
1022 }\r
1023\r
1024 /**\r
1025 This method initializes jMenuItemEditCut \r
1026 \r
1027 @return javax.swing.JMenuItem \r
1028 */\r
1029 private JMenuItem getJMenuItemEditCut() {\r
1030 if (jMenuItemEditCut == null) {\r
1031 jMenuItemEditCut = new JMenuItem();\r
1032 jMenuItemEditCut.setText("Cut");\r
1033 jMenuItemEditCut.setMnemonic('t');\r
1034 jMenuItemEditCut.setEnabled(false);\r
1035 jMenuItemEditCut.addActionListener(this);\r
1036 }\r
1037 return jMenuItemEditCut;\r
1038 }\r
1039\r
1040 /**\r
1041 This method initializes jMenuItemEditCopy \r
1042 \r
1043 @return javax.swing.JMenuItem \r
1044 */\r
1045 private JMenuItem getJMenuItemEditCopy() {\r
1046 if (jMenuItemEditCopy == null) {\r
1047 jMenuItemEditCopy = new JMenuItem();\r
1048 jMenuItemEditCopy.setText("Copy");\r
1049 jMenuItemEditCopy.setMnemonic('C');\r
1050 jMenuItemEditCopy.setEnabled(false);\r
1051 jMenuItemEditCopy.addActionListener(this);\r
1052 }\r
1053 return jMenuItemEditCopy;\r
1054 }\r
1055\r
1056 /**\r
1057 This method initializes jMenuItemEditPaste \r
1058 \r
1059 return javax.swing.JMenuItem \r
1060 */\r
1061 private JMenuItem getJMenuItemEditPaste() {\r
1062 if (jMenuItemEditPaste == null) {\r
1063 jMenuItemEditPaste = new JMenuItem();\r
1064 jMenuItemEditPaste.setText("Paste");\r
1065 jMenuItemEditPaste.setMnemonic('P');\r
1066 jMenuItemEditPaste.setEnabled(false);\r
1067 jMenuItemEditPaste.addActionListener(this);\r
1068 }\r
1069 return jMenuItemEditPaste;\r
1070 }\r
1071\r
1072 /**\r
1073 This method initializes jMenuItem \r
1074 \r
1075 @return javax.swing.JMenuItem \r
1076 */\r
1077 private JMenuItem getJMenuItemEditSelectAll() {\r
1078 if (jMenuItemEditSelectAll == null) {\r
1079 jMenuItemEditSelectAll = new JMenuItem();\r
1080 jMenuItemEditSelectAll.setText("Select All");\r
1081 jMenuItemEditSelectAll.setMnemonic('A');\r
1082 jMenuItemEditSelectAll.setEnabled(false);\r
1083 jMenuItemEditSelectAll.addActionListener(this);\r
1084 }\r
1085 return jMenuItemEditSelectAll;\r
1086 }\r
1087\r
1088 /**\r
1089 This method initializes jMenuItemEditFind \r
1090 \r
1091 @return javax.swing.JMenuItem \r
1092 */\r
1093 private JMenuItem getJMenuItemEditFind() {\r
1094 if (jMenuItemEditFind == null) {\r
1095 jMenuItemEditFind = new JMenuItem();\r
1096 jMenuItemEditFind.setText("Find");\r
1097 jMenuItemEditFind.setMnemonic('F');\r
1098 jMenuItemEditFind.setEnabled(false);\r
1099 jMenuItemEditFind.addActionListener(this);\r
1100 }\r
1101 return jMenuItemEditFind;\r
1102 }\r
1103\r
1104 /**\r
1105 This method initializes jMenuItemEditFindNext \r
1106 \r
1107 @return javax.swing.JMenuItem \r
1108 \r
1109 */\r
1110 private JMenuItem getJMenuItemEditFindNext() {\r
1111 if (jMenuItemEditFindNext == null) {\r
1112 jMenuItemEditFindNext = new JMenuItem();\r
1113 jMenuItemEditFindNext.setText("Find Next");\r
1114 jMenuItemEditFindNext.setMnemonic('n');\r
1115 jMenuItemEditFindNext.setEnabled(false);\r
1116 jMenuItemEditFindNext.addActionListener(this);\r
1117 }\r
1118 return jMenuItemEditFindNext;\r
1119 }\r
1120\r
1121 /**\r
1122 This method initializes jMenuView \r
1123 \r
1124 @return javax.swing.JMenu \r
1125 \r
1126 */\r
1127 private JMenu getJMenuView() {\r
1128 if (jMenuView == null) {\r
1129 jMenuView = new JMenu();\r
1130 jMenuView.setText("View");\r
1131 jMenuView.setMnemonic('V');\r
1132 jMenuView.add(getJMenuViewToolbars());\r
1133 jMenuView.add(getJMenuItemViewAdvanced());\r
1134 jMenuView.add(getJMenuItemViewStandard());\r
1135 jMenuView.add(getJMenuItemViewXML());\r
1136 jMenuView.setVisible(false);\r
1137 }\r
1138 return jMenuView;\r
1139 }\r
1140\r
1141 /**\r
1142 This method initializes jMenuViewToolbars \r
1143 \r
1144 @return javax.swing.JMenu \r
1145 \r
1146 */\r
1147 private JMenu getJMenuViewToolbars() {\r
1148 if (jMenuViewToolbars == null) {\r
1149 jMenuViewToolbars = new JMenu();\r
1150 jMenuViewToolbars.setText("Toolbars");\r
1151 jMenuViewToolbars.setMnemonic('T');\r
1152 jMenuViewToolbars.add(getJCheckBoxMenuItemViewToolbarsFile());\r
1153 jMenuViewToolbars.add(getJCheckBoxMenuItemViewToolbarsEdit());\r
1154 jMenuViewToolbars.add(getJCheckBoxMenuItemViewToolbarsWindow());\r
1155 }\r
1156 return jMenuViewToolbars;\r
1157 }\r
1158\r
1159 /**\r
1160 This method initializes jCheckBoxMenuItemViewToolbarsFile \r
1161 \r
1162 @return javax.swing.JCheckBoxMenuItem \r
1163 \r
1164 */\r
1165 private JCheckBoxMenuItem getJCheckBoxMenuItemViewToolbarsFile() {\r
1166 if (jCheckBoxMenuItemViewToolbarsFile == null) {\r
1167 jCheckBoxMenuItemViewToolbarsFile = new JCheckBoxMenuItem();\r
1168 jCheckBoxMenuItemViewToolbarsFile.setText("File");\r
1169 jCheckBoxMenuItemViewToolbarsFile.setEnabled(false);\r
1170 jCheckBoxMenuItemViewToolbarsFile.addActionListener(this);\r
1171 }\r
1172 return jCheckBoxMenuItemViewToolbarsFile;\r
1173 }\r
1174\r
1175 /**\r
1176 This method initializes jCheckBoxMenuItemViewToolbarsEdit \r
1177 \r
1178 @return javax.swing.JCheckBoxMenuItem \r
1179 \r
1180 */\r
1181 private JCheckBoxMenuItem getJCheckBoxMenuItemViewToolbarsEdit() {\r
1182 if (jCheckBoxMenuItemViewToolbarsEdit == null) {\r
1183 jCheckBoxMenuItemViewToolbarsEdit = new JCheckBoxMenuItem();\r
1184 jCheckBoxMenuItemViewToolbarsEdit.setText("Edit");\r
1185 jCheckBoxMenuItemViewToolbarsEdit.setEnabled(false);\r
1186 jCheckBoxMenuItemViewToolbarsEdit.addActionListener(this);\r
1187 }\r
1188 return jCheckBoxMenuItemViewToolbarsEdit;\r
1189 }\r
1190\r
1191 /**\r
1192 This method initializes jCheckBoxMenuItemViewToolbarsWindow \r
1193 \r
1194 @return javax.swing.JCheckBoxMenuItem \r
1195 \r
1196 */\r
1197 private JCheckBoxMenuItem getJCheckBoxMenuItemViewToolbarsWindow() {\r
1198 if (jCheckBoxMenuItemViewToolbarsWindow == null) {\r
1199 jCheckBoxMenuItemViewToolbarsWindow = new JCheckBoxMenuItem();\r
1200 jCheckBoxMenuItemViewToolbarsWindow.setText("Window");\r
1201 jCheckBoxMenuItemViewToolbarsWindow.setEnabled(false);\r
1202 jCheckBoxMenuItemViewToolbarsWindow.addActionListener(this);\r
1203 }\r
1204 return jCheckBoxMenuItemViewToolbarsWindow;\r
1205 }\r
1206\r
1207 /**\r
1208 This method initializes jMenuItemStandard \r
1209 \r
1210 @return javax.swing.JMenuItem \r
1211 \r
1212 */\r
1213 private JMenuItem getJMenuItemViewStandard() {\r
1214 if (jMenuItemViewStandard == null) {\r
1215 jMenuItemViewStandard = new JMenuItem();\r
1216 jMenuItemViewStandard.setText("Standard");\r
1217 jMenuItemViewStandard.setMnemonic('S');\r
1218 jMenuItemViewStandard.setEnabled(false);\r
1219 jMenuItemViewStandard.addActionListener(this);\r
1220 }\r
1221 return jMenuItemViewStandard;\r
1222 }\r
1223\r
1224 /**\r
1225 This method initializes jMenuItemAdvanced \r
1226 \r
1227 @return javax.swing.JMenuItem \r
1228 \r
1229 */\r
1230 private JMenuItem getJMenuItemViewAdvanced() {\r
1231 if (jMenuItemViewAdvanced == null) {\r
1232 jMenuItemViewAdvanced = new JMenuItem();\r
1233 jMenuItemViewAdvanced.setText("Advanced");\r
1234 jMenuItemViewAdvanced.setMnemonic('A');\r
1235 jMenuItemViewAdvanced.setEnabled(false);\r
1236 jMenuItemViewAdvanced.addActionListener(this);\r
1237 }\r
1238 return jMenuItemViewAdvanced;\r
1239 }\r
1240\r
1241 /**\r
1242 This method initializes jMenuProject \r
1243 \r
1244 @return javax.swing.JMenu \r
1245 \r
1246 */\r
1247 private JMenu getJMenuProject() {\r
1248 if (jMenuProject == null) {\r
1249 jMenuProject = new JMenu();\r
1250 jMenuProject.setText("Project");\r
1251 jMenuProject.setMnemonic('P');\r
1252 jMenuProject.add(getJMenuItemProjectAdmin());\r
1253 //jMenuProject.addSeparator();\r
1254 jMenuProject.add(getJMenuItemProjectChangeWorkspace());\r
1255 jMenuProject.addSeparator();\r
1256 jMenuProject.add(getJMenuItemProjectInstallPackage());\r
1257 jMenuProject.add(getJMenuItemProjectUpdatePackage());\r
1258 jMenuProject.add(getJMenuItemProjectRemovePackage());\r
1259 //jMenuProject.addSeparator();\r
1260 jMenuProject.add(getJMenuProjectBuildTargets());\r
1261 }\r
1262 return jMenuProject;\r
1263 }\r
1264\r
1265 /**\r
1266 This method initializes jMenuItemProjectAdmin \r
1267 \r
1268 @return javax.swing.JMenuItem \r
1269 \r
1270 */\r
1271 private JMenuItem getJMenuItemProjectAdmin() {\r
1272 if (jMenuItemProjectAdmin == null) {\r
1273 jMenuItemProjectAdmin = new JMenuItem();\r
1274 jMenuItemProjectAdmin.setText("Admin...");\r
1275 jMenuItemProjectAdmin.setMnemonic('A');\r
1276 jMenuItemProjectAdmin.setEnabled(false);\r
1277 jMenuItemProjectAdmin.addActionListener(this);\r
1278 jMenuItemProjectAdmin.setVisible(false);\r
1279 }\r
1280 return jMenuItemProjectAdmin;\r
1281 }\r
1282\r
1283 /**\r
1284 This method initializes jMenuItemProjectChangeWorkspace \r
1285 \r
1286 @return javax.swing.JMenuItem \r
1287 \r
1288 */\r
1289 private JMenuItem getJMenuItemProjectChangeWorkspace() {\r
1290 if (jMenuItemProjectChangeWorkspace == null) {\r
1291 jMenuItemProjectChangeWorkspace = new JMenuItem();\r
1292 jMenuItemProjectChangeWorkspace.setText("Change WORKSPACE...");\r
1293 jMenuItemProjectChangeWorkspace.setMnemonic('W');\r
1294 jMenuItemProjectChangeWorkspace.setEnabled(true);\r
1295 jMenuItemProjectChangeWorkspace.addActionListener(this);\r
1296 }\r
1297 return jMenuItemProjectChangeWorkspace;\r
1298 }\r
1299\r
1300 /**\r
1301 This method initializes jMenuProjectBuildTargets \r
1302 \r
1303 @return javax.swing.JMenu \r
1304 \r
1305 */\r
1306 private JMenu getJMenuProjectBuildTargets() {\r
1307 if (jMenuProjectBuildTargets == null) {\r
1308 jMenuProjectBuildTargets = new JMenu();\r
1309 jMenuProjectBuildTargets.setText("Build Targets");\r
1310 jMenuProjectBuildTargets.setMnemonic('T');\r
1311 jMenuProjectBuildTargets.add(getJCheckBoxMenuItemProjectBuildTargetsDebug());\r
1312 jMenuProjectBuildTargets.add(getJCheckBoxMenuItemProjectBuildTargetsRelease());\r
1313 jMenuProjectBuildTargets.setVisible(false);\r
1314 }\r
1315 return jMenuProjectBuildTargets;\r
1316 }\r
1317\r
1318 /**\r
1319 This method initializes jCheckBoxMenuItemProjectBuildTargetsDebug \r
1320 \r
1321 @return javax.swing.JCheckBoxMenuItem \r
1322 \r
1323 */\r
1324 private JCheckBoxMenuItem getJCheckBoxMenuItemProjectBuildTargetsDebug() {\r
1325 if (jCheckBoxMenuItemProjectBuildTargetsDebug == null) {\r
1326 jCheckBoxMenuItemProjectBuildTargetsDebug = new JCheckBoxMenuItem();\r
1327 jCheckBoxMenuItemProjectBuildTargetsDebug.setText("Debug");\r
1328 jCheckBoxMenuItemProjectBuildTargetsDebug.setEnabled(false);\r
1329 }\r
1330 return jCheckBoxMenuItemProjectBuildTargetsDebug;\r
1331 }\r
1332\r
1333 /**\r
1334 This method initializes jCheckBoxMenuItemProjectBuildTargetsRelease \r
1335 \r
1336 @return javax.swing.JCheckBoxMenuItem \r
1337 \r
1338 */\r
1339 private JCheckBoxMenuItem getJCheckBoxMenuItemProjectBuildTargetsRelease() {\r
1340 if (jCheckBoxMenuItemProjectBuildTargetsRelease == null) {\r
1341 jCheckBoxMenuItemProjectBuildTargetsRelease = new JCheckBoxMenuItem();\r
1342 jCheckBoxMenuItemProjectBuildTargetsRelease.setText("Release");\r
1343 jCheckBoxMenuItemProjectBuildTargetsRelease.setEnabled(false);\r
1344 }\r
1345 return jCheckBoxMenuItemProjectBuildTargetsRelease;\r
1346 }\r
1347\r
1348 /**\r
1349 This method initializes jMenuItemToolsToolChainConfiguration \r
1350 \r
1351 @return javax.swing.JMenuItem \r
1352 \r
1353 */\r
1354 private JMenuItem getJMenuItemToolsToolChainConfiguration() {\r
1355 if (jMenuItemToolsToolChainConfiguration == null) {\r
1356 jMenuItemToolsToolChainConfiguration = new JMenuItem();\r
1357 jMenuItemToolsToolChainConfiguration.setText("Tool Chain Configuration...");\r
1358 jMenuItemToolsToolChainConfiguration.setMnemonic('C');\r
1359 jMenuItemToolsToolChainConfiguration.addActionListener(this);\r
a13899c5 1360 }\r
1361 return jMenuItemToolsToolChainConfiguration;\r
1362 }\r
1363\r
1364 /**\r
1365 This method initializes jMenuItemToolsClone \r
1366 \r
1367 @return javax.swing.JMenuItem \r
1368 \r
1369 */\r
1370 private JMenuItem getJMenuItemToolsClone() {\r
1371 if (jMenuItemToolsClone == null) {\r
1372 jMenuItemToolsClone = new JMenuItem();\r
1373 jMenuItemToolsClone.setText("Clone...");\r
1374 jMenuItemToolsClone.setMnemonic('l');\r
1375 jMenuItemToolsClone.setEnabled(true);\r
1376 jMenuItemToolsClone.addActionListener(this);\r
1377 }\r
1378 return jMenuItemToolsClone;\r
1379 }\r
1380\r
1381 /**\r
1382 This method initializes jMenuItemToolsCodeScan \r
1383 \r
1384 @return javax.swing.JMenuItem \r
1385 \r
1386 */\r
1387 private JMenuItem getJMenuItemToolsCodeScan() {\r
1388 if (jMenuItemToolsCodeScan == null) {\r
1389 jMenuItemToolsCodeScan = new JMenuItem();\r
1390 jMenuItemToolsCodeScan.setText("Code Scan...");\r
1391 jMenuItemToolsCodeScan.setMnemonic('S');\r
1392 jMenuItemToolsCodeScan.setEnabled(false);\r
1393 jMenuItemToolsCodeScan.addActionListener(this);\r
1394 jMenuItemToolsCodeScan.setVisible(false);\r
1395 }\r
1396 return jMenuItemToolsCodeScan;\r
1397 }\r
1398\r
1399 /**\r
1400 This method initializes jMenuItemWindowSplitVertical \r
1401 \r
1402 @return javax.swing.JMenuItem \r
1403 \r
1404 */\r
1405 private JMenuItem getJMenuItemWindowDisplaySide() {\r
1406 if (jMenuItemWindowDisplaySide == null) {\r
1407 jMenuItemWindowDisplaySide = new JMenuItem();\r
1408 jMenuItemWindowDisplaySide.setText("Display Side by Side");\r
1409 jMenuItemWindowDisplaySide.setMnemonic('S');\r
1410 jMenuItemWindowDisplaySide.setEnabled(false);\r
1411 jMenuItemWindowDisplaySide.addActionListener(this);\r
1412 }\r
1413 return jMenuItemWindowDisplaySide;\r
1414 }\r
1415\r
1416 /**\r
1417 This method initializes jMenuItemWindowSplitHorizontal \r
1418 \r
1419 @return javax.swing.JMenuItem \r
1420 \r
1421 */\r
1422 private JMenuItem getJMenuItemWindowDisplayTopBottom() {\r
1423 if (jMenuItemWindowDisplayTopBottom == null) {\r
1424 jMenuItemWindowDisplayTopBottom = new JMenuItem();\r
1425 jMenuItemWindowDisplayTopBottom.setText("Display Top and Bottom");\r
1426 jMenuItemWindowDisplayTopBottom.setMnemonic('B');\r
1427 jMenuItemWindowDisplayTopBottom.setEnabled(false);\r
1428 jMenuItemWindowDisplayTopBottom.addActionListener(this);\r
1429 }\r
1430 return jMenuItemWindowDisplayTopBottom;\r
1431 }\r
1432\r
1433 /**\r
1434 This method initializes jMenuItemViewXML \r
1435 \r
1436 @return javax.swing.JMenuItem \r
1437 \r
1438 */\r
1439 private JMenuItem getJMenuItemViewXML() {\r
1440 if (jMenuItemViewXML == null) {\r
1441 jMenuItemViewXML = new JMenuItem();\r
1442 jMenuItemViewXML.setText("XML");\r
1443 jMenuItemViewXML.setMnemonic('X');\r
1444 jMenuItemViewXML.setEnabled(false);\r
1445 jMenuItemViewXML.addActionListener(this);\r
1446 }\r
1447 return jMenuItemViewXML;\r
1448 }\r
1449\r
1450 /**\r
1451 This method initializes jMenuItemWindowTabView \r
1452 \r
1453 @return javax.swing.JMenuItem \r
1454 \r
1455 */\r
1456 private JMenuItem getJMenuItemWindowTabView() {\r
1457 if (jMenuItemWindowTabView == null) {\r
1458 jMenuItemWindowTabView = new JMenuItem();\r
1459 jMenuItemWindowTabView.setText("Tab View");\r
1460 jMenuItemWindowTabView.setMnemonic('T');\r
1461 jMenuItemWindowTabView.setEnabled(false);\r
1462 jMenuItemWindowTabView.addActionListener(this);\r
1463 }\r
1464 return jMenuItemWindowTabView;\r
1465 }\r
1466\r
1467 /**\r
1468 This method initializes jMenuItemWindowSource \r
1469 \r
1470 @return javax.swing.JMenuItem \r
1471 \r
1472 */\r
1473 private JMenuItem getJMenuItemWindowSource() {\r
1474 if (jMenuItemWindowSource == null) {\r
1475 jMenuItemWindowSource = new JMenuItem();\r
1476 jMenuItemWindowSource.setText("Source");\r
1477 jMenuItemWindowSource.setMnemonic('S');\r
1478 jMenuItemWindowSource.setEnabled(false);\r
1479 jMenuItemWindowSource.addActionListener(this);\r
1480 }\r
1481 return jMenuItemWindowSource;\r
1482 }\r
1483\r
1484 /**\r
1485 This method initializes jMenuItemWindowXML \r
1486 \r
1487 @return javax.swing.JMenuItem \r
1488 \r
1489 */\r
1490 private JMenuItem getJMenuItemWindowXML() {\r
1491 if (jMenuItemWindowXML == null) {\r
1492 jMenuItemWindowXML = new JMenuItem();\r
1493 jMenuItemWindowXML.setText("XML");\r
1494 jMenuItemWindowXML.setMnemonic('X');\r
1495 jMenuItemWindowXML.setEnabled(false);\r
1496 jMenuItemWindowXML.addActionListener(this);\r
1497 }\r
1498 return jMenuItemWindowXML;\r
1499 }\r
1500\r
1501 /**\r
1502 This method initializes jMenuItemWindowPreferences \r
1503 \r
1504 @return javax.swing.JMenuItem \r
1505 \r
1506 */\r
1507 private JMenuItem getJMenuItemWindowPreferences() {\r
1508 if (jMenuItemWindowPreferences == null) {\r
1509 jMenuItemWindowPreferences = new JMenuItem();\r
1510 jMenuItemWindowPreferences.setText("Preferences");\r
1511 jMenuItemWindowPreferences.setMnemonic('P');\r
1512 jMenuItemWindowPreferences.setEnabled(false);\r
1513 jMenuItemWindowPreferences.addActionListener(this);\r
1514 }\r
1515 return jMenuItemWindowPreferences;\r
1516 }\r
1517\r
1518 /**\r
1519 This method initializes jMenuItemHelpContents \r
1520 \r
1521 @return javax.swing.JMenuItem \r
1522 \r
1523 */\r
1524 private JMenuItem getJMenuItemHelpContents() {\r
1525 if (jMenuItemHelpContents == null) {\r
1526 jMenuItemHelpContents = new JMenuItem();\r
1527 jMenuItemHelpContents.setText("Contents");\r
1528 jMenuItemHelpContents.setMnemonic('C');\r
1529 jMenuItemHelpContents.setEnabled(false);\r
1530 jMenuItemHelpContents.addActionListener(this);\r
1531 jMenuItemHelpContents.setVisible(false);\r
1532 }\r
1533 return jMenuItemHelpContents;\r
1534 }\r
1535\r
1536 /**\r
1537 This method initializes jMenuItemHelpIndex \r
1538 \r
1539 @return javax.swing.JMenuItem \r
1540 \r
1541 */\r
1542 private JMenuItem getJMenuItemHelpIndex() {\r
1543 if (jMenuItemHelpIndex == null) {\r
1544 jMenuItemHelpIndex = new JMenuItem();\r
1545 jMenuItemHelpIndex.setText("Index");\r
1546 jMenuItemHelpIndex.setMnemonic('I');\r
1547 jMenuItemHelpIndex.setEnabled(false);\r
1548 jMenuItemHelpIndex.addActionListener(this);\r
1549 jMenuItemHelpIndex.setVisible(false);\r
1550 }\r
1551 return jMenuItemHelpIndex;\r
1552 }\r
1553\r
1554 /**\r
1555 This method initializes jMenuItemHelpSearch \r
1556 \r
1557 @return javax.swing.JMenuItem \r
1558 \r
1559 */\r
1560 private JMenuItem getJMenuItemHelpSearch() {\r
1561 if (jMenuItemHelpSearch == null) {\r
1562 jMenuItemHelpSearch = new JMenuItem();\r
1563 jMenuItemHelpSearch.setText("Search");\r
1564 jMenuItemHelpSearch.setMnemonic('S');\r
1565 jMenuItemHelpSearch.setEnabled(false);\r
1566 jMenuItemHelpSearch.addActionListener(this);\r
1567 jMenuItemHelpSearch.setVisible(false);\r
1568 }\r
1569 return jMenuItemHelpSearch;\r
1570 }\r
1571\r
1572 /**\r
1573 * This method initializes jToolBar \r
1574 * \r
1575 * @return javax.swing.JToolBar \r
1576 */\r
1577 // private JToolBar getJToolBarFile() {\r
1578 // if (jToolBarFile == null) {\r
1579 // jToolBarFile = new JToolBar();\r
1580 // jToolBarFile.setFloatable(false);\r
1581 // }\r
1582 // return jToolBarFile;\r
1583 // }\r
1584 /**\r
1585 * This method initializes jToolBarEdit \r
1586 * \r
1587 * @return javax.swing.JToolBar \r
1588 */\r
1589 // private JToolBar getJToolBarEdit() {\r
1590 // if (jToolBarEdit == null) {\r
1591 // jToolBarEdit = new JToolBar();\r
1592 // jToolBarEdit.setFloatable(false);\r
1593 // }\r
1594 // return jToolBarEdit;\r
1595 // }\r
1596 /**\r
1597 * This method initializes jMenuItemToolsInstallPackage \r
1598 * \r
1599 * @return javax.swing.JMenuItem \r
1600 */\r
1601 private JMenuItem getJMenuItemProjectInstallPackage() {\r
1602 if (jMenuItemProjectInstallPackage == null) {\r
1603 jMenuItemProjectInstallPackage = new JMenuItem();\r
1604 jMenuItemProjectInstallPackage.setText("Install Distribution Package");\r
1605 jMenuItemProjectInstallPackage.setMnemonic('I');\r
1606 jMenuItemProjectInstallPackage.setEnabled(false);\r
1607 jMenuItemProjectInstallPackage.addActionListener(this);\r
1608 }\r
1609 return jMenuItemProjectInstallPackage;\r
1610 }\r
1611\r
1612 /**\r
1613 * This method initializes jMenuItemToolsUpdatePackage \r
1614 * \r
1615 * @return javax.swing.JMenuItem \r
1616 */\r
1617 private JMenuItem getJMenuItemProjectUpdatePackage() {\r
1618 if (jMenuItemProjectUpdatePackage == null) {\r
1619 jMenuItemProjectUpdatePackage = new JMenuItem();\r
1620 jMenuItemProjectUpdatePackage.setText("Update Disstribution Package");\r
1621 jMenuItemProjectUpdatePackage.setMnemonic('U');\r
1622 jMenuItemProjectUpdatePackage.setEnabled(false);\r
1623 jMenuItemProjectUpdatePackage.addActionListener(this);\r
1624 }\r
1625 return jMenuItemProjectUpdatePackage;\r
1626 }\r
1627\r
1628 /**\r
1629 * This method initializes jMenuItemRemovePackage \r
1630 * \r
1631 * @return javax.swing.JMenuItem \r
1632 */\r
1633 private JMenuItem getJMenuItemProjectRemovePackage() {\r
1634 if (jMenuItemProjectRemovePackage == null) {\r
1635 jMenuItemProjectRemovePackage = new JMenuItem();\r
1636 jMenuItemProjectRemovePackage.setText("Remove Distribution Package");\r
1637 jMenuItemProjectRemovePackage.setMnemonic('R');\r
1638 jMenuItemProjectRemovePackage.setEnabled(false);\r
1639 jMenuItemProjectRemovePackage.addActionListener(this);\r
1640 }\r
1641 return jMenuItemProjectRemovePackage;\r
1642 }\r
1643\r
1644 /* (non-Javadoc)\r
1645 * @see org.tianocore.packaging.common.ui.IFrame#main(java.lang.String[])\r
1646 *\r
1647 * Main class, start the GUI\r
1648 * \r
1649 */\r
1650 public static void main(String[] args) {\r
1651 FrameworkWizardUI module = new FrameworkWizardUI();\r
1652 module.setVisible(true);\r
1653 }\r
1654\r
1655 /**\r
1656 This is the default constructor\r
1657 \r
1658 **/\r
1659 public FrameworkWizardUI() {\r
1660 super();\r
1661 init();\r
1662 }\r
1663\r
1664 /**\r
1665 This method initializes this\r
1666 \r
1667 \r
1668 **/\r
1669 private void init() {\r
1670 //\r
1671 // Set current workspace and check\r
1672 // Check if exists WORKSPACE\r
1673 // \r
1674 //\r
1675 Workspace.setCurrentWorkspace(System.getenv("WORKSPACE"));\r
1676 if (!Workspace.checkCurrentWorkspace()) {\r
1677 JOptionPane.showConfirmDialog(null, "Workspace is not setup correctly. Please setup first.", "Warning",\r
1678 JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE);\r
1679 this.dispose();\r
1680 System.exit(0);\r
1681 }\r
1682\r
1683 this.setSize(DataType.MAIN_FRAME_PREFERRED_SIZE_WIDTH, DataType.MAIN_FRAME_PREFERRED_SIZE_HEIGHT);\r
1684 this.setResizable(true);\r
1685 this.setJMenuBar(getjJMenuBar());\r
1686 this.addComponentListener(this);\r
1687 this.getCompontentsFromFrameworkDatabase();\r
1688 this.setContentPane(getJContentPane());\r
8f9acbd7 1689 this.setTitle(DataType.PROJECT_NAME + " " + DataType.PROJECT_VERSION + " " + "- [" + Workspace.getCurrentWorkspace() + "]");\r
a13899c5 1690 this.setExitType(1);\r
79cb6fdb 1691\r
a13899c5 1692 //\r
1693 // max the window\r
1694 //\r
1695 this.setExtendedState(JFrame.MAXIMIZED_BOTH);\r
1696 }\r
1697\r
1698 /**\r
1699 This method initializes jContentPane\r
1700 \r
1701 @return javax.swing.JPanel jContentPane\r
1702 \r
1703 **/\r
1704 private JPanel getJContentPane() {\r
1705 if (jContentPane == null) {\r
1706 jContentPane = new JPanel();\r
1707 jContentPane.setLayout(null);\r
1708 jContentPane.add(getJPanelOperation(), null);\r
1709 jContentPane.add(getJSplitPane(), null);\r
1710 }\r
1711 return jContentPane;\r
1712 }\r
1713\r
1714 /* (non-Javadoc)\r
1715 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)\r
1716 *\r
1717 * Override actionPerformed to listen all actions\r
1718 *\r
1719 */\r
1720 public void actionPerformed(ActionEvent arg0) {\r
1721 //\r
1722 // Operations of Menu\r
1723 //\r
1724 if (arg0.getSource() == jMenuItemFileNew) {\r
1725 this.fileNew();\r
1726 }\r
1727\r
1728 if (arg0.getSource() == jMenuItemFileOpen) {\r
1729 this.open();\r
1730 }\r
1731\r
1732 if (arg0.getSource() == jMenuItemFileClose) {\r
1733 this.close();\r
1734 }\r
1735\r
1736 if (arg0.getSource() == jMenuItemFileCloseAll) {\r
1737 this.closeAll();\r
1738 }\r
1739\r
1740 if (arg0.getSource() == jMenuItemFileSave) {\r
1741 this.save();\r
1742 }\r
1743\r
1744 if (arg0.getSource() == jMenuItemFileSaveAs) {\r
1745 this.saveAs();\r
1746 }\r
1747\r
1748 if (arg0.getSource() == jMenuItemFileSaveAll) {\r
1749 this.saveAll();\r
1750 }\r
1751\r
1752 if (arg0.getSource() == jMenuItemFileExit) {\r
1753 this.exit();\r
1754 }\r
1755\r
1756 if (arg0.getSource() == jMenuItemProjectChangeWorkspace) {\r
1757 changeWorkspace();\r
1758 }\r
1759\r
1760 if (arg0.getSource() == jMenuItemToolsClone) {\r
1761 cloneItem();\r
1762 }\r
79cb6fdb 1763 \r
1764 if (arg0.getSource() == jMenuItemToolsToolChainConfiguration) {\r
1765 setupToolChainConfiguration();\r
1766 }\r
a13899c5 1767\r
1768 if (arg0.getSource() == jMenuItemHelpAbout) {\r
1769 About a = new About(this, true);\r
1770 int result = a.showDialog();\r
1771 if (result == DataType.RETURN_TYPE_OK) {\r
1772 a.dispose();\r
1773 }\r
1774 }\r
1775 }\r
1776\r
1777 /**\r
1778 Create an empty tree if no file is open\r
1779 \r
1780 **/\r
1781 private void makeEmptyTree() {\r
1782 // Make root\r
1783 dmtnRoot = new IDefaultMutableTreeNode("WORKSPACE", IDefaultMutableTreeNode.WORKSPACE, -1);\r
1784\r
1785 // Make Module Description\r
1786 dmtnModuleDescription = new IDefaultMutableTreeNode("ModuleDescription", IDefaultMutableTreeNode.MODULE, -1);\r
1787\r
1788 if (this.vModuleList.size() > 0) {\r
1789 for (int index = 0; index < this.vModuleList.size(); index++) {\r
1790 dmtnModuleDescription.add(new IDefaultMutableTreeNode(this.vModuleList.elementAt(index).getName(),\r
1791 IDefaultMutableTreeNode.MSA_HEADER, false,\r
1792 this.vModuleList.elementAt(index)));\r
1793 }\r
1794 }\r
1795\r
1796 // Make Package Description\r
1797 dmtnPackageDescription = new IDefaultMutableTreeNode("PackageDescription", IDefaultMutableTreeNode.PACKAGE, -1);\r
1798 if (this.vPackageList.size() > 0) {\r
1799 for (int index = 0; index < this.vPackageList.size(); index++) {\r
1800 dmtnPackageDescription.add(new IDefaultMutableTreeNode(this.vPackageList.elementAt(index).getName(),\r
1801 IDefaultMutableTreeNode.SPD_HEADER, false,\r
1802 this.vPackageList.elementAt(index)));\r
1803 }\r
1804 }\r
1805\r
1806 // Make Platform Description\r
1807 dmtnPlatformDescription = new IDefaultMutableTreeNode("PlatformDescription", IDefaultMutableTreeNode.PLATFORM,\r
1808 -1);\r
1809 if (this.vPlatformList.size() > 0) {\r
1810 for (int index = 0; index < this.vPlatformList.size(); index++) {\r
1811 dmtnPlatformDescription.add(new IDefaultMutableTreeNode(this.vPlatformList.elementAt(index).getName(),\r
1812 IDefaultMutableTreeNode.FPD_PLATFORMHEADER,\r
1813 false, this.vPlatformList.elementAt(index)));\r
1814 }\r
1815 }\r
1816\r
1817 dmtnRoot.add(dmtnModuleDescription);\r
1818 dmtnRoot.add(dmtnPackageDescription);\r
1819 dmtnRoot.add(dmtnPlatformDescription);\r
1820 iTree = new ITree(dmtnRoot);\r
1821 iTree.addMouseListener(this);\r
1822 jScrollPaneTree.setViewportView(iTree);\r
1823 }\r
1824\r
1825 /* (non-Javadoc)\r
1826 * @see java.awt.event.WindowListener#windowClosing(java.awt.event.WindowEvent)\r
1827 *\r
1828 * Override windowClosing to popup warning message to confirm quit\r
1829 * \r
1830 */\r
1831 public void windowClosing(WindowEvent arg0) {\r
1832 this.exit();\r
1833 }\r
1834\r
1835 /* (non-Javadoc)\r
1836 * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)\r
1837 * \r
1838 * Override mouseClicked to check if need display popup menu\r
1839 * \r
1840 */\r
1841 public void mouseClicked(MouseEvent arg0) {\r
1842 if (arg0.getButton() == MouseEvent.BUTTON1) {\r
1843 }\r
1844 if (arg0.getButton() == MouseEvent.BUTTON3) {\r
1845 }\r
1846 //\r
1847 // When double click\r
1848 //\r
1849 if (arg0.getClickCount() == 2) {\r
1850 doubleClickModuleTreeNode();\r
1851 }\r
1852 }\r
1853\r
1854 public void mouseEntered(MouseEvent arg0) {\r
1855 // TODO Auto-generated method stub\r
1856 }\r
1857\r
1858 public void mouseExited(MouseEvent arg0) {\r
1859 // TODO Auto-generated method stub\r
1860 }\r
1861\r
1862 public void mousePressed(MouseEvent arg0) {\r
1863 // TODO Auto-generated method stub\r
1864 }\r
1865\r
1866 public void mouseReleased(MouseEvent arg0) {\r
1867 // TODO Auto-generated method stub\r
1868 }\r
1869\r
1870 /**\r
1871 Remove all Internal Frame of Module Desktop Pane\r
1872 \r
1873 **/\r
1874 private void cleanDesktopPaneModule() {\r
1875 if (jDesktopPaneModule != null) {\r
1876 JInternalFrame[] iif = this.jDesktopPaneModule.getAllFrames();\r
1877 for (int index = 0; index < iif.length; index++) {\r
1878 iif[index].dispose();\r
1879 }\r
1880 }\r
1881 }\r
1882\r
1883 /**\r
1884 Remove all Internal Frame of package Desktop Pane\r
1885 \r
1886 **/\r
1887 private void cleanDesktopPanePackage() {\r
1888 if (jDesktopPanePlatform != null) {\r
1889 JInternalFrame[] iif = this.jDesktopPanePackage.getAllFrames();\r
1890 for (int index = 0; index < iif.length; index++) {\r
1891 iif[index].dispose();\r
1892 }\r
1893 }\r
1894 }\r
1895\r
1896 /**\r
1897 Remove all Internal Frame of platform Desktop Pane\r
1898 \r
1899 **/\r
1900 private void cleanDesktopPanePlatform() {\r
1901 if (jDesktopPanePlatform != null) {\r
1902 JInternalFrame[] iif = this.jDesktopPanePlatform.getAllFrames();\r
1903 for (int index = 0; index < iif.length; index++) {\r
1904 iif[index].dispose();\r
1905 }\r
1906 }\r
1907 }\r
1908\r
1909 /**\r
1910 Remove all Internal Frame of all Desktop Panes\r
1911 \r
1912 **/\r
1913 private void cleanDesktopPane() {\r
1914 cleanDesktopPaneModule();\r
1915 cleanDesktopPanePackage();\r
1916 cleanDesktopPanePlatform();\r
1917 }\r
1918\r
1919 /**\r
1920 Set file filter as input ext\r
1921 \r
1922 @param ext\r
1923 @return\r
1924 \r
1925 **/\r
1926 private int getNewFilePath(String ext) {\r
1927 JFileChooser fc = new JFileChooser(Workspace.getCurrentWorkspace());\r
1928 fc.setAcceptAllFileFilterUsed(false);\r
1929 fc.addChoosableFileFilter(new IFileFilter(ext));\r
1930 return fc.showSaveDialog(new JPanel());\r
1931 }\r
1932\r
1933 /**\r
1934 Open Module\r
1935\r
1936 @param path input file path\r
1937 \r
1938 **/\r
1939 private void openModule(String path) {\r
1940 ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null;\r
1941 try {\r
1942 msa = OpenFile.openMsaFile(path);\r
1943 } catch (IOException e) {\r
1944 Log.err("Open Module Surface Area " + path, e.getMessage());\r
1945 return;\r
1946 } catch (XmlException e) {\r
1947 Log.err("Open Module Surface Area " + path, e.getMessage());\r
1948 return;\r
1949 } catch (Exception e) {\r
1950 Log.err("Open Module Surface Area " + path, "Invalid file type");\r
1951 return;\r
1952 }\r
1953 Identification id = new Identification(msa.getMsaHeader().getModuleName(), msa.getMsaHeader().getGuidValue(),\r
1954 msa.getMsaHeader().getVersion(), path);\r
1955 //\r
1956 // Generate module id\r
1957 //\r
1958 PackageIdentification pid = wt.getPackageIdByModuleId(id);\r
1959 if (pid != null) {\r
1960 //\r
1961 // To judge if the module existed in vModuleList\r
1962 // If not, add it to vModuleList\r
1963 //\r
1964 boolean isFind = false;\r
1965 for (int index = 0; index < vModuleList.size(); index++) {\r
1966 if (vModuleList.elementAt(index).equals(id)) {\r
1967 isFind = true;\r
1968 break;\r
1969 }\r
1970 }\r
1971 if (!isFind) {\r
1972 vModuleList.addElement(new ModuleIdentification(id, pid));\r
1973 //\r
1974 // Add new MsaHeader node to the tree\r
1975 //\r
1976 IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vModuleList.lastElement().getName(),\r
1977 IDefaultMutableTreeNode.MSA_HEADER, true,\r
1978 vModuleList.lastElement());\r
1979 iTree.addNode(dmtnModuleDescription, node);\r
1980 }\r
1981 } else {\r
1982 //\r
1983 // The module is not in existing packages\r
1984 //\r
1985 Log.err("The module hasn't been added to any package of current workspace!");\r
1986 return;\r
1987 }\r
1988\r
1989 // Make the node selected\r
1990 //\r
1991 iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnModuleDescription, id,\r
1992 IDefaultMutableTreeNode.MSA_HEADER)));\r
1993 //\r
1994 // Update opening Module list information\r
1995 //\r
1996 if (!openingModuleList.existsModule(id)) {\r
1997 //\r
1998 // Insert sub node of module\r
1999 //\r
2000 insertModuleTreeNode(id);\r
2001 iTree.getSelectNode().setOpening(true);\r
2002\r
2003 //\r
2004 // Update opening module list\r
2005 //\r
2006 openingModuleList.insertToOpeningModuleList(id, msa);\r
2007 openingModuleList.setTreePathById(id, iTree.getSelectionPath());\r
2008 }\r
2009 //\r
2010 // Show msa header in editor panel\r
2011 //\r
2012 showModuleElement(IDefaultMutableTreeNode.MSA_HEADER, openingModuleList.getOpeningModuleById(id));\r
2013 this.currentOpeningModuleIndex = openingModuleList.findIndexOfListById(id);\r
2014 }\r
2015\r
2016 /**\r
2017 Open Package\r
2018\r
2019 @param path input file path\r
2020 \r
2021 **/\r
2022 private void openPackage(String path) {\r
2023 PackageSurfaceAreaDocument.PackageSurfaceArea spd = null;\r
2024 try {\r
2025 spd = OpenFile.openSpdFile(path);\r
2026 } catch (IOException e) {\r
2027 Log.err("Open Package Surface Area " + path, e.getMessage());\r
2028 return;\r
2029 } catch (XmlException e) {\r
2030 Log.err("Open Package Surface Area " + path, e.getMessage());\r
2031 return;\r
2032 } catch (Exception e) {\r
2033 Log.err("Open Package Surface Area " + path, "Invalid file type");\r
2034 return;\r
2035 }\r
2036 Identification id = new Identification(spd.getSpdHeader().getPackageName(), spd.getSpdHeader().getGuidValue(),\r
2037 spd.getSpdHeader().getVersion(), path);\r
2038 //\r
2039 // To judge if the package existed in vPackageList\r
2040 // If not, add it to vPackageList\r
2041 //\r
2042 boolean isFind = false;\r
2043 for (int index = 0; index < vPackageList.size(); index++) {\r
2044 if (vPackageList.elementAt(index).equals(id)) {\r
2045 isFind = true;\r
2046 break;\r
2047 }\r
2048 }\r
2049 if (!isFind) {\r
2050 //\r
2051 // The module is not in existing packages\r
2052 //\r
2053 Log.err("The package hasn't been added to current workspace!");\r
2054 return;\r
2055 }\r
2056\r
2057 //\r
2058 // Make the node selected\r
2059 //\r
2060 iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnPackageDescription, id,\r
2061 IDefaultMutableTreeNode.SPD_HEADER)));\r
2062 //\r
2063 // Update opening package list information\r
2064 //\r
2065 if (!openingPackageList.existsPackage(id)) {\r
2066 //\r
2067 // Insert sub node of module\r
2068 //\r
2069 insertPackageTreeNode(id);\r
2070 iTree.getSelectNode().setOpening(true);\r
2071\r
2072 //\r
2073 // Update opening module list\r
2074 //\r
2075 openingPackageList.insertToOpeningPackageList(id, spd);\r
2076 openingPackageList.setTreePathById(id, iTree.getSelectionPath());\r
2077 }\r
2078 //\r
2079 // Show spd header in editor panel\r
2080 //\r
2081 showPackageElement(IDefaultMutableTreeNode.SPD_HEADER, openingPackageList.getOpeningPackageById(id));\r
2082 this.currentOpeningPackageIndex = openingPackageList.findIndexOfListById(id);\r
2083 }\r
2084\r
2085 /**\r
2086 Open Package\r
2087\r
2088 @param path input file path\r
2089 \r
2090 **/\r
2091 private void openPlatform(String path) {\r
2092 PlatformSurfaceAreaDocument.PlatformSurfaceArea fpd = null;\r
2093 try {\r
2094 fpd = OpenFile.openFpdFile(path);\r
2095 } catch (IOException e) {\r
2096 Log.err("Open Platform Surface Area " + path, e.getMessage());\r
2097 return;\r
2098 } catch (XmlException e) {\r
2099 Log.err("Open Platform Surface Area " + path, e.getMessage());\r
2100 return;\r
2101 } catch (Exception e) {\r
2102 Log.err("Open Platform Surface Area " + path, "Invalid file type");\r
2103 return;\r
2104 }\r
2105 Identification id = new Identification(fpd.getPlatformHeader().getPlatformName(), fpd.getPlatformHeader()\r
2106 .getGuidValue(),\r
2107 fpd.getPlatformHeader().getVersion(), path);\r
2108 //\r
2109 // To judge if the platform existed in vPlatformList\r
2110 // If not, add it to vPlatformList\r
2111 //\r
2112 boolean isFind = false;\r
2113 for (int index = 0; index < vPlatformList.size(); index++) {\r
2114 if (vPlatformList.elementAt(index).equals(id)) {\r
2115 isFind = true;\r
2116 break;\r
2117 }\r
2118 }\r
2119 if (!isFind) {\r
2120 //\r
2121 // The module is not in existing packages\r
2122 //\r
2123 Log.err("The platform hasn't been added to current workspace!");\r
2124 return;\r
2125 }\r
2126\r
2127 //\r
2128 // Make the node selected\r
2129 //\r
2130 iTree.setSelectionPath(iTree.getPathOfNode(iTree.getNodeById(this.dmtnPlatformDescription, id,\r
2131 IDefaultMutableTreeNode.FPD_PLATFORMHEADER)));\r
2132 //\r
2133 // Update opening package list information\r
2134 //\r
2135 if (!openingPlatformList.existsPlatform(id)) {\r
2136 //\r
2137 // Insert sub node of module\r
2138 //\r
2139 insertPlatformTreeNode(id);\r
2140 iTree.getSelectNode().setOpening(true);\r
2141\r
2142 //\r
2143 // Update opening module list\r
2144 //\r
2145 openingPlatformList.insertToOpeningPlatformList(id, fpd);\r
2146 openingPlatformList.setTreePathById(id, iTree.getSelectionPath());\r
2147 }\r
2148 //\r
2149 // Show fpd header in editor panel\r
2150 //\r
2151 showPlatformElement(IDefaultMutableTreeNode.FPD_PLATFORMHEADER, openingPlatformList.getOpeningPlatformById(id));\r
2152 this.currentOpeningPlatformIndex = openingPlatformList.findIndexOfListById(id);\r
2153 }\r
2154\r
2155 /**\r
2156 Save module \r
2157 \r
2158 **/\r
2159 private void saveModule(int index) {\r
2160 OpeningModuleType omt = openingModuleList.getOpeningModuleByIndex(index);\r
2161 if (omt.isNew()) {\r
2162 if (getNewFilePath(DataType.MODULE_SURFACE_AREA_EXT) != JFileChooser.APPROVE_OPTION) {\r
2163 return;\r
2164 }\r
2165 }\r
2166 try {\r
2167 SaveFile.saveMsaFile(omt.getId().getPath(), omt.getXmlMsa());\r
2168 openingModuleList.setNew(omt.getId(), false);\r
2169 openingModuleList.setModuleSaved(omt.getId(), true);\r
2170 } catch (Exception e) {\r
2171 Log.err("Save Module", e.getMessage());\r
2172 }\r
2173 }\r
2174\r
2175 /**\r
2176 Save package \r
2177 \r
2178 **/\r
2179 private void savePackage(int index) {\r
2180 OpeningPackageType opt = openingPackageList.getOpeningPackageByIndex(index);\r
2181 if (opt.isNew()) {\r
2182 if (getNewFilePath(DataType.PACKAGE_SURFACE_AREA_EXT) != JFileChooser.APPROVE_OPTION) {\r
2183 return;\r
2184 }\r
2185 }\r
2186 try {\r
2187 SaveFile.saveSpdFile(opt.getId().getPath(), opt.getXmlSpd());\r
2188 openingPackageList.setNew(opt.getId(), false);\r
2189 openingPackageList.setPackageSaved(opt.getId(), true);\r
2190 } catch (Exception e) {\r
2191 Log.err("Save Package", e.getMessage());\r
2192 }\r
2193 }\r
2194\r
2195 /**\r
2196 Save platform \r
2197 \r
2198 **/\r
2199 private void savePlatform(int index) {\r
2200 OpeningPlatformType opt = openingPlatformList.getOpeningPlatformByIndex(index);\r
2201 if (opt.isNew()) {\r
2202 if (getNewFilePath(DataType.PACKAGE_SURFACE_AREA_EXT) != JFileChooser.APPROVE_OPTION) {\r
2203 return;\r
2204 }\r
2205 }\r
2206 try {\r
2207 SaveFile.saveFpdFile(opt.getId().getPath(), opt.getXmlFpd());\r
2208 openingPlatformList.setNew(opt.getId(), false);\r
2209 openingPlatformList.setPlatformSaved(opt.getId(), true);\r
2210 } catch (Exception e) {\r
2211 Log.err("Save Package", e.getMessage());\r
2212 }\r
2213 }\r
2214\r
2215 public void componentHidden(ComponentEvent arg0) {\r
2216 // TODO Auto-generated method stub\r
2217\r
2218 }\r
2219\r
2220 public void componentMoved(ComponentEvent arg0) {\r
2221 // TODO Auto-generated method stub\r
2222\r
2223 }\r
2224\r
2225 public void componentResized(ComponentEvent arg0) {\r
2226 this.jSplitPane.setSize(this.getWidth() - DataType.MAIN_FRAME_WIDTH_SPACING,\r
2227 this.getHeight() - DataType.MAIN_FRAME_HEIGHT_SPACING);\r
2228 this.jSplitPane.validate();\r
2229 resizeDesktopPanel();\r
2230 }\r
2231\r
2232 public void componentShown(ComponentEvent arg0) {\r
2233 // TODO Auto-generated method stub\r
2234\r
2235 }\r
2236\r
2237 /**\r
2238 Resize JDesktopPanel\r
2239 \r
2240 */\r
2241 private void resizeDesktopPanel() {\r
2242 resizeDesktopPanel(this.jDesktopPaneModule);\r
2243 resizeDesktopPanel(this.jDesktopPanePackage);\r
2244 resizeDesktopPanel(this.jDesktopPanePlatform);\r
2245 }\r
2246\r
2247 /**\r
2248 Resize JDesktopPanel\r
2249 \r
2250 */\r
2251 private void resizeDesktopPanel(JDesktopPane jdk) {\r
2252 JInternalFrame[] iif = jdk.getAllFrames();\r
2253 for (int index = 0; index < iif.length; index++) {\r
2254 iif[index].setSize(jdk.getWidth(), jdk.getHeight());\r
2255 }\r
2256 }\r
2257\r
2258 private void getCompontentsFromFrameworkDatabase() {\r
2259 this.vModuleList = wt.getAllModules();\r
2260 this.vPackageList = wt.getAllPackages();\r
2261 this.vPlatformList = wt.getAllPlatforms();\r
2262 }\r
2263\r
2264 private void insertModuleTreeNode(Identification id) {\r
2265 iTree.addNode(new IDefaultMutableTreeNode("Module Definitions", IDefaultMutableTreeNode.MSA_MODULEDEFINITIONS,\r
2266 true, id));\r
2267 iTree.addNode(new IDefaultMutableTreeNode("Library Class Definitions",\r
2268 IDefaultMutableTreeNode.MSA_LIBRARYCLASSDEFINITIONS, true, id));\r
2269 iTree.addNode(new IDefaultMutableTreeNode("Source Files", IDefaultMutableTreeNode.MSA_SOURCEFILES, true, id));\r
2270 iTree.addNode(new IDefaultMutableTreeNode("Package Dependencies",\r
2271 IDefaultMutableTreeNode.MSA_PACKAGEDEPENDENCIES, true, id));\r
2272 iTree.addNode(new IDefaultMutableTreeNode("Protocols", IDefaultMutableTreeNode.MSA_PROTOCOLS, true, id));\r
2273 iTree.addNode(new IDefaultMutableTreeNode("Events", IDefaultMutableTreeNode.MSA_EVENTS, true, id));\r
2274 iTree.addNode(new IDefaultMutableTreeNode("Hobs", IDefaultMutableTreeNode.MSA_HOBS, true, id));\r
2275 iTree.addNode(new IDefaultMutableTreeNode("Ppis", IDefaultMutableTreeNode.MSA_PPIS, true, id));\r
2276 iTree.addNode(new IDefaultMutableTreeNode("Variables", IDefaultMutableTreeNode.MSA_VARIABLES, true, id));\r
2277 iTree.addNode(new IDefaultMutableTreeNode("Boot Modes", IDefaultMutableTreeNode.MSA_BOOTMODES, true, id));\r
2278 iTree.addNode(new IDefaultMutableTreeNode("System Tables", IDefaultMutableTreeNode.MSA_SYSTEMTABLES, true, id));\r
2279 iTree.addNode(new IDefaultMutableTreeNode("Data Hubs", IDefaultMutableTreeNode.MSA_DATAHUBS, true, id));\r
2280 iTree.addNode(new IDefaultMutableTreeNode("Hii Packages", IDefaultMutableTreeNode.MSA_HIIPACKAGES, true, id));\r
2281 iTree.addNode(new IDefaultMutableTreeNode("Guids", IDefaultMutableTreeNode.MSA_GUIDS, true, id));\r
2282 iTree.addNode(new IDefaultMutableTreeNode("Externs", IDefaultMutableTreeNode.MSA_EXTERNS, true, id));\r
2283 iTree.addNode(new IDefaultMutableTreeNode("PcdCoded", IDefaultMutableTreeNode.MSA_PCDS, true, id));\r
2284 }\r
2285\r
2286 private void insertPackageTreeNode(Identification id) {\r
2287 iTree.addNode(new IDefaultMutableTreeNode("Package Definitions",\r
2288 IDefaultMutableTreeNode.SPD_PACKAGEDEFINITIONS, true, id));\r
2289 iTree.addNode(new IDefaultMutableTreeNode("Library Class Declarations",\r
2290 IDefaultMutableTreeNode.SPD_LIBRARYCLASSDECLARATIONS, true, id));\r
2291 iTree.addNode(new IDefaultMutableTreeNode("Msa Files", IDefaultMutableTreeNode.SPD_MSAFILES, false, id));\r
2292 iTree.addNode(new IDefaultMutableTreeNode("Package Headers", IDefaultMutableTreeNode.SPD_PACKAGEHEADERS, true,\r
2293 id));\r
2294 iTree.addNode(new IDefaultMutableTreeNode("Guid Declarations", IDefaultMutableTreeNode.SPD_GUIDDECLARATIONS,\r
2295 true, id));\r
2296 iTree.addNode(new IDefaultMutableTreeNode("Protocol Declarations",\r
2297 IDefaultMutableTreeNode.SPD_PROTOCOLDECLARATIONS, true, id));\r
2298 iTree.addNode(new IDefaultMutableTreeNode("Ppi Declarations", IDefaultMutableTreeNode.SPD_PPIDECLARATIONS,\r
2299 true, id));\r
2300 iTree.addNode(new IDefaultMutableTreeNode("Pcd Declarations", IDefaultMutableTreeNode.SPD_PCDDECLARATIONS,\r
2301 true, id));\r
2302 }\r
2303\r
2304 private void insertPlatformTreeNode(Identification id) {\r
2305 iTree.addNode(new IDefaultMutableTreeNode("Platform Definitions", IDefaultMutableTreeNode.FPD_PLATFORMDEFINITIONS, true, id));\r
2306 iTree.addNode(new IDefaultMutableTreeNode("Flash", IDefaultMutableTreeNode.FPD_FLASH, true, id));\r
2307 iTree.addNode(new IDefaultMutableTreeNode("Framework Modules", IDefaultMutableTreeNode.FPD_FRAMEWORKMODULES,\r
2308 true, id));\r
2309 iTree.addNode(new IDefaultMutableTreeNode("Pcd Dynamic Build Declarations",\r
2310 IDefaultMutableTreeNode.FPD_PCDDYNAMICBUILDDECLARATIONS, true, id));\r
2311 iTree.addNode(new IDefaultMutableTreeNode("Build Options", IDefaultMutableTreeNode.FPD_BUILDOPTIONS, true, id));\r
2312 }\r
2313\r
2314 /**\r
2315 Operate when double click a tree node\r
2316 \r
2317 **/\r
2318 private void doubleClickModuleTreeNode() {\r
2319 Identification id = iTree.getSelectNode().getId();\r
2320 int intCategory = iTree.getSelectCategory();\r
2321 String path = null;\r
2322 // \r
2323 // If the node is not opened yet\r
2324 // Insert top level elements first\r
2325 //\r
2326 //if (intCategory == IDefaultMutableTreeNode.MSA_HEADER || intCategory == IDefaultMutableTreeNode.SPD_MSAFILES) {\r
2327 if (intCategory == IDefaultMutableTreeNode.MSA_HEADER) {\r
2328\r
2329 if (intCategory == IDefaultMutableTreeNode.MSA_HEADER) {\r
2330 path = iTree.getSelectNode().getId().getPath();\r
2331 }\r
2332 if (intCategory == IDefaultMutableTreeNode.SPD_MSAFILES) {\r
2333 path = iTree.getSelectNode().getId().getPath();\r
2334 }\r
2335 openModule(path);\r
2336 return;\r
2337 }\r
2338 if (intCategory == IDefaultMutableTreeNode.SPD_HEADER) {\r
2339 path = iTree.getSelectNode().getId().getPath();\r
2340 openPackage(path);\r
2341 return;\r
2342 }\r
2343 if (intCategory == IDefaultMutableTreeNode.FPD_PLATFORMHEADER) {\r
2344 path = iTree.getSelectNode().getId().getPath();\r
2345 openPlatform(path);\r
2346 return;\r
2347 }\r
2348 //\r
2349 // Show editor panel\r
2350 //\r
2351 if (intCategory >= IDefaultMutableTreeNode.MSA_HEADER && intCategory < IDefaultMutableTreeNode.SPD_HEADER) {\r
2352 showModuleElement(intCategory, openingModuleList.getOpeningModuleById(id));\r
2353 this.currentOpeningModuleIndex = openingModuleList.findIndexOfListById(id);\r
2354 }\r
2355 if (intCategory >= IDefaultMutableTreeNode.SPD_HEADER\r
2356 && intCategory < IDefaultMutableTreeNode.FPD_PLATFORMHEADER) {\r
2357 showPackageElement(intCategory, openingPackageList.getOpeningPackageById(id));\r
2358 this.currentOpeningPackageIndex = openingPackageList.findIndexOfListById(id);\r
2359 }\r
2360 if (intCategory >= IDefaultMutableTreeNode.FPD_PLATFORMHEADER) {\r
2361 showPlatformElement(intCategory, openingPlatformList.getOpeningPlatformById(id));\r
2362 this.currentOpeningPlatformIndex = openingPlatformList.findIndexOfListById(id);\r
2363 }\r
2364 }\r
2365\r
2366 /**\r
2367 Show content of editor panel via selected element\r
2368 \r
2369 @param elementType\r
2370 @param fpd\r
2371 \r
2372 **/\r
2373 private void showPlatformElement(int elementType, OpeningPlatformType fpd) {\r
2374 this.cleanDesktopPanePlatform();\r
d6d24759 2375 \r
a13899c5 2376 switch (elementType) {\r
2377 case IDefaultMutableTreeNode.FPD_PLATFORMDEFINITIONS:\r
d6d24759 2378 FpdPlatformDefs frmFpdPlatformDefs = new FpdPlatformDefs(fpd);\r
a13899c5 2379 getJDesktopPanePlatform().add(frmFpdPlatformDefs, 1);\r
2380 break;\r
2381 case IDefaultMutableTreeNode.FPD_PLATFORMHEADER:\r
d6d24759 2382 FpdHeader frmFpdHeader = new FpdHeader(fpd);\r
a13899c5 2383 getJDesktopPanePlatform().add(frmFpdHeader, 1);\r
2384 break;\r
2385 case IDefaultMutableTreeNode.FPD_FLASH:\r
d6d24759 2386 FpdFlash frmFpdFlash = new FpdFlash(fpd);\r
a13899c5 2387 getJDesktopPanePlatform().add(frmFpdFlash, 1);\r
2388 break;\r
2389 case IDefaultMutableTreeNode.FPD_FRAMEWORKMODULES:\r
d6d24759 2390 FpdFrameworkModules frmFpdFrameworkModules = new FpdFrameworkModules(fpd);\r
a13899c5 2391 getJDesktopPanePlatform().add(frmFpdFrameworkModules, 1);\r
2392 break;\r
2393 case IDefaultMutableTreeNode.FPD_PCDDYNAMICBUILDDECLARATIONS:\r
d6d24759 2394 FpdDynamicPcdBuildDefinitions frmFpdDynamicPcdBuildDefinitions = new FpdDynamicPcdBuildDefinitions(fpd);\r
a13899c5 2395 getJDesktopPanePlatform().add(frmFpdDynamicPcdBuildDefinitions, 1);\r
2396 break;\r
2397 case IDefaultMutableTreeNode.FPD_BUILDOPTIONS:\r
d6d24759 2398 FpdBuildOptions frmFpdBuildOptions = new FpdBuildOptions(fpd);\r
a13899c5 2399 getJDesktopPanePlatform().add(frmFpdBuildOptions, 1);\r
2400 break;\r
2401 }\r
2402 this.jTabbedPaneEditor.setSelectedIndex(2);\r
2403 resizeDesktopPanel();\r
2404 }\r
2405\r
2406 /**\r
2407 Show content of editor panel via selected element\r
2408 \r
2409 @param elementType\r
2410 @param spd\r
2411 \r
2412 */\r
2413 private void showPackageElement(int elementType, OpeningPackageType spd) {\r
2414 this.cleanDesktopPanePackage();\r
2415 Tools.dirForNewSpd = spd.getId().getPath();\r
2416 switch (elementType) {\r
2417 case IDefaultMutableTreeNode.SPD_HEADER:\r
d6d24759 2418 SpdHeader frmSpdHeader = new SpdHeader(spd);\r
a13899c5 2419 getJDesktopPanePackage().add(frmSpdHeader, 1);\r
2420 break;\r
2421 case IDefaultMutableTreeNode.SPD_PACKAGEDEFINITIONS:\r
d6d24759 2422 SpdPackageDefinitions frmSpdPackageDefinitions = new SpdPackageDefinitions(spd);\r
a13899c5 2423 getJDesktopPanePackage().add(frmSpdPackageDefinitions, 1);\r
2424 break;\r
2425 case IDefaultMutableTreeNode.SPD_LIBRARYCLASSDECLARATIONS:\r
d6d24759 2426 SpdLibClassDecls frmSlcd = new SpdLibClassDecls(spd);\r
a13899c5 2427 getJDesktopPanePackage().add(frmSlcd, 1);\r
2428 break;\r
2429 case IDefaultMutableTreeNode.SPD_MSAFILES:\r
d6d24759 2430 SpdMsaFiles frmSmf = new SpdMsaFiles(spd);\r
a13899c5 2431 getJDesktopPanePackage().add(frmSmf, 1);\r
2432 break;\r
2433 case IDefaultMutableTreeNode.SPD_PACKAGEHEADERS:\r
d6d24759 2434 SpdPackageHeaders frmSph = new SpdPackageHeaders(spd);\r
a13899c5 2435 getJDesktopPanePackage().add(frmSph, 1);\r
2436 break;\r
2437 case IDefaultMutableTreeNode.SPD_GUIDDECLARATIONS:\r
d6d24759 2438 SpdGuidDecls frmSgd = new SpdGuidDecls(spd);\r
a13899c5 2439 getJDesktopPanePackage().add(frmSgd, 1);\r
2440 break;\r
2441 case IDefaultMutableTreeNode.SPD_PROTOCOLDECLARATIONS:\r
d6d24759 2442 SpdProtocolDecls frmSprod = new SpdProtocolDecls(spd);\r
a13899c5 2443 getJDesktopPanePackage().add(frmSprod, 1);\r
2444 break;\r
2445 case IDefaultMutableTreeNode.SPD_PPIDECLARATIONS:\r
d6d24759 2446 SpdPpiDecls frmSppid = new SpdPpiDecls(spd);\r
a13899c5 2447 getJDesktopPanePackage().add(frmSppid, 1);\r
2448 break;\r
2449 case IDefaultMutableTreeNode.SPD_PCDDECLARATIONS:\r
d6d24759 2450 SpdPcdDefs frmSpcdd = new SpdPcdDefs(spd);\r
a13899c5 2451 getJDesktopPanePackage().add(frmSpcdd, 1);\r
2452 break;\r
2453 }\r
2454 this.jTabbedPaneEditor.setSelectedIndex(1);\r
2455 resizeDesktopPanel();\r
2456 }\r
2457\r
2458 /**\r
2459 Show content of editor panel via selected element\r
2460 \r
2461 @param elementType\r
2462 @param msa\r
2463 \r
2464 */\r
2465 private void showModuleElement(int elementType, OpeningModuleType msa) {\r
2466 this.cleanDesktopPaneModule();\r
2467 switch (elementType) {\r
2468 case IDefaultMutableTreeNode.MSA_HEADER:\r
2469 MsaHeader frmMsaHeader = new MsaHeader(msa);\r
2470 getJDesktopPaneModule().add(frmMsaHeader, 1);\r
2471 break;\r
2472 case IDefaultMutableTreeNode.MSA_MODULEDEFINITIONS:\r
2473 ModuleDefinitions frmMd = new ModuleDefinitions(msa);\r
2474 getJDesktopPaneModule().add(frmMd, 1);\r
2475 break;\r
2476 case IDefaultMutableTreeNode.MSA_LIBRARYCLASSDEFINITIONS:\r
2477 ModuleLibraryClassDefinitions frmMlcd = new ModuleLibraryClassDefinitions(msa);\r
2478 getJDesktopPaneModule().add(frmMlcd, 1);\r
2479 break;\r
2480 case IDefaultMutableTreeNode.MSA_PACKAGEDEPENDENCIES:\r
2481 ModulePackageDependencies frmMpd = new ModulePackageDependencies(msa);\r
2482 getJDesktopPaneModule().add(frmMpd, 1);\r
2483 break;\r
2484 case IDefaultMutableTreeNode.MSA_SOURCEFILES:\r
2485 ModuleSourceFiles frmMsf = new ModuleSourceFiles(msa);\r
2486 getJDesktopPaneModule().add(frmMsf, 1);\r
2487 break;\r
2488 case IDefaultMutableTreeNode.MSA_PROTOCOLS:\r
2489 ModuleProtocols frmMp = new ModuleProtocols(msa);\r
2490 getJDesktopPaneModule().add(frmMp, 1);\r
2491 break;\r
2492 case IDefaultMutableTreeNode.MSA_EVENTS:\r
2493 ModuleEvents frmMe = new ModuleEvents(msa);\r
2494 getJDesktopPaneModule().add(frmMe, 1);\r
2495 break;\r
2496 case IDefaultMutableTreeNode.MSA_HOBS:\r
2497 ModuleHobs frmMh = new ModuleHobs(msa);\r
2498 getJDesktopPaneModule().add(frmMh, 1);\r
2499 break;\r
2500 case IDefaultMutableTreeNode.MSA_PPIS:\r
2501 ModulePpis frmMpp = new ModulePpis(msa);\r
2502 getJDesktopPaneModule().add(frmMpp, 1);\r
2503 break;\r
2504 case IDefaultMutableTreeNode.MSA_VARIABLES:\r
2505 ModuleVariables frmMv = new ModuleVariables(msa);\r
2506 getJDesktopPaneModule().add(frmMv, 1);\r
2507 break;\r
2508 case IDefaultMutableTreeNode.MSA_BOOTMODES:\r
2509 ModuleBootModes frmMbm = new ModuleBootModes(msa);\r
2510 getJDesktopPaneModule().add(frmMbm, 1);\r
2511 break;\r
2512 case IDefaultMutableTreeNode.MSA_SYSTEMTABLES:\r
2513 ModuleSystemTables frmMst = new ModuleSystemTables(msa);\r
2514 getJDesktopPaneModule().add(frmMst, 1);\r
2515 break;\r
2516 case IDefaultMutableTreeNode.MSA_DATAHUBS:\r
2517 ModuleDataHubs frmMdh = new ModuleDataHubs(msa);\r
2518 getJDesktopPaneModule().add(frmMdh, 1);\r
2519 break;\r
2520 case IDefaultMutableTreeNode.MSA_HIIPACKAGES:\r
2521 ModuleHiiPackages frmMf = new ModuleHiiPackages(msa);\r
2522 getJDesktopPaneModule().add(frmMf, 1);\r
2523 break;\r
2524 case IDefaultMutableTreeNode.MSA_GUIDS:\r
2525 ModuleGuids frmGuid = new ModuleGuids(msa);\r
2526 getJDesktopPaneModule().add(frmGuid, 1);\r
2527 break;\r
2528 case IDefaultMutableTreeNode.MSA_EXTERNS:\r
2529 ModuleExterns frmMex = new ModuleExterns(msa);\r
2530 getJDesktopPaneModule().add(frmMex, 1);\r
2531 break;\r
2532 case IDefaultMutableTreeNode.MSA_PCDS:\r
2533 ModulePCDs frmPcd = new ModulePCDs(msa);\r
2534 getJDesktopPaneModule().add(frmPcd, 1);\r
2535 break;\r
2536 }\r
2537 this.jTabbedPaneEditor.setSelectedIndex(0);\r
2538 resizeDesktopPanel();\r
2539 }\r
2540\r
2541 //\r
2542 // Define operations of menu\r
2543 //\r
2544 /**\r
2545 New a file\r
2546 \r
2547 **/\r
2548 private void fileNew() {\r
2549 int result = -1;\r
2550 //\r
2551 // Selece new file type\r
2552 //\r
2553 NewFileChooser nfc = new NewFileChooser(this, true);\r
2554 result = nfc.showDialog();\r
2555\r
2556 if (result == DataType.RETURN_TYPE_CANCEL) {\r
2557 nfc.dispose();\r
2558 return;\r
2559 } else if (result == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
2560 //\r
2561 // To new a module\r
2562 //\r
2563 SelectModuleBelong smb = new SelectModuleBelong(this, true, result);\r
2564 result = smb.showDialog();\r
2565\r
2566 if (result == DataType.RETURN_TYPE_CANCEL) {\r
2567 nfc.dispose();\r
2568 smb.dispose();\r
2569 return;\r
2570 } else if (result == DataType.RETURN_TYPE_OK) {\r
2571 PackageSurfaceAreaDocument.PackageSurfaceArea psa = null;\r
2572 if (this.openingPackageList.existsPackage(smb.getMid().getPackageId())) {\r
2573 psa = openingPackageList.getPackageSurfaceAreaFromId(smb.getMid().getPackageId());\r
2574 }\r
2575 try {\r
2576 wt.addModuleToPackage(smb.getMid(), psa);\r
2577 } catch (IOException e) {\r
2578 Log.err("Upddate MsaFiles of Package", e.getMessage());\r
2579 e.printStackTrace();\r
2580 return;\r
2581 } catch (XmlException e) {\r
2582 Log.err("Upddate MsaFiles of Package", e.getMessage());\r
2583 e.printStackTrace();\r
2584 return;\r
2585 } catch (Exception e) {\r
2586 Log.err("Upddate MsaFiles of Package", e.getMessage());\r
2587 e.printStackTrace();\r
2588 return;\r
2589 }\r
2590 this.openModule(smb.getMid().getPath());\r
2591 }\r
2592 } else if (result == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
2593 //\r
2594 // To new a package\r
2595 //\r
2596 SelectModuleBelong smb = new SelectModuleBelong(this, true, result);\r
2597 result = smb.showDialog();\r
2598\r
2599 if (result == DataType.RETURN_TYPE_CANCEL) {\r
2600 nfc.dispose();\r
2601 smb.dispose();\r
2602 return;\r
2603 } else if (result == DataType.RETURN_TYPE_OK) {\r
2604 try {\r
2605 wt.addPackageToDatabase(smb.getPid());\r
2606 } catch (Exception e) {\r
2607 // TODO Auto-generated catch block\r
2608 e.printStackTrace();\r
2609 }\r
2610 vPackageList.addElement(smb.getPid());\r
2611 //\r
2612 // Add new SpdHeader node to the tree\r
2613 //\r
2614 IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vPackageList.lastElement().getName(),\r
2615 IDefaultMutableTreeNode.SPD_HEADER, true,\r
2616 vPackageList.lastElement());\r
2617 iTree.addNode(dmtnPackageDescription, node);\r
2618 this.openPackage(smb.getPid().getPath());\r
2619 }\r
2620 } else if (result == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
2621 //\r
2622 // To new a platform\r
2623 //\r
2624 SelectModuleBelong smb = new SelectModuleBelong(this, true, result);\r
2625 result = smb.showDialog();\r
2626\r
2627 if (result == DataType.RETURN_TYPE_CANCEL) {\r
2628 nfc.dispose();\r
2629 smb.dispose();\r
2630 return;\r
2631 } else if (result == DataType.RETURN_TYPE_OK) {\r
2632 try {\r
2633 wt.addPlatformToDatabase(smb.getFid());\r
2634 } catch (Exception e) {\r
2635 // TODO Auto-generated catch block\r
2636 e.printStackTrace();\r
2637 }\r
2638 vPlatformList.addElement(smb.getFid());\r
2639 //\r
2640 // Add new SpdHeader node to the tree\r
2641 //\r
2642 IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vPlatformList.lastElement().getName(),\r
2643 IDefaultMutableTreeNode.FPD_PLATFORMHEADER,\r
2644 true, vPlatformList.lastElement());\r
2645 iTree.addNode(dmtnPlatformDescription, node);\r
2646 this.openPlatform(smb.getFid().getPath());\r
2647 }\r
2648 }\r
2649 }\r
2650\r
2651 /**\r
2652 Open a file\r
2653 \r
2654 **/\r
2655 private void open() {\r
2656 JFileChooser fc = new JFileChooser(Workspace.getCurrentWorkspace());\r
2657 fc.setAcceptAllFileFilterUsed(false);\r
2658 IFileFilter iffM = new IFileFilter(DataType.MODULE_SURFACE_AREA_EXT);\r
2659 IFileFilter iffP = new IFileFilter(DataType.PACKAGE_SURFACE_AREA_EXT);\r
2660 IFileFilter iffF = new IFileFilter(DataType.PLATFORM_SURFACE_AREA_EXT);\r
2661 fc.addChoosableFileFilter(iffM);\r
2662 fc.addChoosableFileFilter(iffP);\r
2663 fc.addChoosableFileFilter(iffF);\r
2664 fc.setFileFilter(iffM);\r
2665\r
2666 int result = fc.showOpenDialog(new JPanel());\r
2667\r
2668 if (result == JFileChooser.APPROVE_OPTION) {\r
2669 String path = fc.getSelectedFile().getPath();\r
2670 String match = path.substring(path.length() - 4);\r
2671 if (match.equals(DataType.FILE_EXT_SEPARATOR + DataType.MODULE_SURFACE_AREA_EXT)) {\r
2672 openModule(path);\r
2673 } else if (match.equals(DataType.FILE_EXT_SEPARATOR + DataType.PACKAGE_SURFACE_AREA_EXT)) {\r
2674 openPackage(path);\r
2675 } else if (match.equals(DataType.FILE_EXT_SEPARATOR + DataType.PLATFORM_SURFACE_AREA_EXT)) {\r
2676 openPlatform(path);\r
2677 }\r
2678 }\r
2679 }\r
2680\r
2681 /**\r
2682 Close files\r
2683 \r
2684 **/\r
2685 private void close() {\r
2686 switch (this.jTabbedPaneEditor.getSelectedIndex()) {\r
2687 //\r
2688 // Current is module\r
2689 //\r
2690 case 0:\r
2691 if (this.currentOpeningModuleIndex > -1) {\r
2692 if (!openingModuleList.getModuleSaved(currentOpeningModuleIndex)) {\r
2693 int result = showSaveDialog();\r
2694 if (result == JOptionPane.YES_OPTION) {\r
2695 this.saveAll();\r
2696 }\r
2697 if (result == JOptionPane.NO_OPTION) {\r
2698 // Do nothing\r
2699 }\r
2700 if (result == JOptionPane.CANCEL_OPTION) {\r
2701 return;\r
2702 }\r
2703 }\r
2704 iTree.removeNodeChildrenByPath(openingModuleList.getTreePathByIndex(currentOpeningModuleIndex));\r
2705 this.openingModuleList.removeFromOpeningModuleListByIndex(this.currentOpeningModuleIndex);\r
2706 this.cleanDesktopPaneModule();\r
2707 this.currentOpeningModuleIndex = -1;\r
2708 }\r
2709 break;\r
2710 //\r
2711 // Current is package\r
2712 // \r
2713 case 1:\r
2714 if (this.currentOpeningPackageIndex > -1) {\r
2715 if (!openingPackageList.getPackageSaved(currentOpeningPackageIndex)) {\r
2716 int result = showSaveDialog();\r
2717 if (result == JOptionPane.YES_OPTION) {\r
2718 this.saveAll();\r
2719 }\r
2720 if (result == JOptionPane.NO_OPTION) {\r
2721 // Do nothing\r
2722 }\r
2723 if (result == JOptionPane.CANCEL_OPTION) {\r
2724 return;\r
2725 }\r
2726 }\r
2727 iTree.removeNodeChildrenByPath(openingPackageList.getTreePathByIndex(currentOpeningPackageIndex));\r
2728 this.openingPackageList.removeFromOpeningPackageListByIndex(this.currentOpeningPackageIndex);\r
2729 this.cleanDesktopPanePackage();\r
2730 this.currentOpeningPackageIndex = -1;\r
2731 }\r
2732 break;\r
2733 //\r
2734 // Current is platform\r
2735 //\r
2736 case 2:\r
2737 if (this.currentOpeningPlatformIndex > -1) {\r
2738 if (!openingPlatformList.getPlatformSaved(currentOpeningPlatformIndex)) {\r
2739 int result = showSaveDialog();\r
2740 if (result == JOptionPane.YES_OPTION) {\r
2741 this.saveAll();\r
2742 }\r
2743 if (result == JOptionPane.NO_OPTION) {\r
2744 // Do nothing\r
2745 }\r
2746 if (result == JOptionPane.CANCEL_OPTION) {\r
2747 return;\r
2748 }\r
2749 }\r
2750 iTree.removeNodeChildrenByPath(openingPlatformList.getTreePathByIndex(currentOpeningPlatformIndex));\r
2751 this.openingPlatformList.removeFromOpeningPlatformListByIndex(this.currentOpeningPlatformIndex);\r
2752 this.cleanDesktopPanePlatform();\r
2753 this.currentOpeningPlatformIndex = -1;\r
2754 }\r
2755 break;\r
2756 }\r
2757 }\r
2758\r
2759 /**\r
2760 Close all opening files and clean all showing internal frame\r
2761 \r
2762 **/\r
2763 private void closeAll() {\r
2764 int result = -1;\r
2765 if (!openingModuleList.isSaved() || !openingPackageList.isSaved() || !openingPlatformList.isSaved()) {\r
2766 result = showSaveDialog();\r
2767 }\r
2768 if (result == JOptionPane.YES_OPTION) {\r
2769 this.saveAll();\r
2770 }\r
2771 if (result == JOptionPane.NO_OPTION) {\r
2772 // Do nothing\r
2773 }\r
2774 if (result == JOptionPane.CANCEL_OPTION) {\r
2775 return;\r
2776 }\r
2777 this.cleanDesktopPane();\r
2778 this.getCompontentsFromFrameworkDatabase();\r
2779 openingModuleList.removeAllFromOpeningModuleList();\r
2780 openingPackageList.removeAllFromOpeningPackageList();\r
2781 openingPlatformList.removeAllFromOpeningPlatformList();\r
2782 this.makeEmptyTree();\r
2783 }\r
2784\r
2785 /**\r
2786 Save currentModule when press button OK\r
2787 \r
2788 **/\r
2789 private void save() {\r
2790 switch (this.jTabbedPaneEditor.getSelectedIndex()) {\r
2791 case 0:\r
2792 if (this.currentOpeningModuleIndex > -1) {\r
2793 saveModule(this.currentOpeningModuleIndex);\r
2794 }\r
2795 break;\r
2796 case 1:\r
2797 if (this.currentOpeningPackageIndex > -1) {\r
2798 savePackage(this.currentOpeningPackageIndex);\r
2799 }\r
2800 break;\r
2801 case 2:\r
2802 if (this.currentOpeningPlatformIndex > -1) {\r
2803 savePlatform(this.currentOpeningPlatformIndex);\r
2804 }\r
2805 break;\r
2806 }\r
2807 }\r
2808\r
2809 private void saveAs() {\r
2810\r
2811 }\r
2812\r
2813 private void saveAll() {\r
2814 //\r
2815 // Save all modules\r
2816 //\r
2817 for (int index = 0; index < openingModuleList.size(); index++) {\r
2818 if (!openingModuleList.getModuleSaved(index)) {\r
2819 saveModule(index);\r
2820 }\r
2821 }\r
2822\r
2823 //\r
2824 // Save all packages\r
2825 //\r
2826 for (int index = 0; index < openingPackageList.size(); index++) {\r
2827 if (!openingPackageList.getPackageSaved(index)) {\r
2828 savePackage(index);\r
2829 }\r
2830 }\r
2831\r
2832 //\r
2833 // Save all platforms\r
2834 //\r
2835 for (int index = 0; index < openingPlatformList.size(); index++) {\r
2836 if (!openingPlatformList.getPlatformSaved(index)) {\r
2837 savePlatform(index);\r
2838 }\r
2839 }\r
2840 }\r
2841\r
2842 /**\r
2843 To save changed items before exit.\r
2844 \r
2845 **/\r
2846 private void exit() {\r
2847 int result = -1;\r
2848 if (!openingModuleList.isSaved() || !openingPackageList.isSaved() || !openingPlatformList.isSaved()) {\r
2849 result = showSaveDialog();\r
2850 }\r
2851 if (result == JOptionPane.YES_OPTION) {\r
2852 this.saveAll();\r
2853 }\r
2854 if (result == JOptionPane.NO_OPTION) {\r
2855 // Do nothing\r
2856 }\r
2857 if (result == JOptionPane.CANCEL_OPTION) {\r
2858 return;\r
2859 }\r
2860 this.dispose();\r
2861 System.exit(0);\r
2862 }\r
2863\r
2864 /**\r
2865 Switch current workspace to others\r
2866 \r
2867 **/\r
2868 private void changeWorkspace() {\r
2869 SwitchWorkspace sw = new SwitchWorkspace(this, true);\r
2870 int result = sw.showDialog();\r
2871 if (result == DataType.RETURN_TYPE_CANCEL) {\r
2872 return;\r
2873 } else if (result == DataType.RETURN_TYPE_OK) {\r
2874 //\r
2875 // Reinit whole window\r
2876 //\r
2877 closeAll();\r
8f9acbd7 2878 this.setTitle(DataType.PROJECT_NAME + " " + DataType.PROJECT_VERSION + " " + "- [" + Workspace.getCurrentWorkspace() + "]");\r
a13899c5 2879 }\r
2880 sw.dispose();\r
2881 }\r
79cb6fdb 2882 \r
2883 /**\r
2884 Show Tool Chain Configuration Dialog to setup Tool Chain\r
2885 \r
2886 **/\r
2887 private void setupToolChainConfiguration() {\r
2888 ToolChainConfig tcc = new ToolChainConfig(this, true);\r
2889 int result = tcc.showDialog();\r
2890 \r
2891 if (result == DataType.RETURN_TYPE_CANCEL) {\r
2892 tcc.dispose();\r
2893 }\r
2894 }\r
2895 \r
a13899c5 2896 /**\r
2897 Clone selected item\r
2898 \r
2899 **/\r
2900 private void cloneItem() {\r
2901 int mode = -1;\r
2902 \r
2903 //\r
2904 // Check if there is any item can be cloned\r
2905 //\r
2906 if (iTree.getSelectionPath() == null) {\r
2907 Log.err("Please select a target to clone!");\r
2908 return;\r
2909 }\r
2910 int category = iTree.getSelectCategory();\r
2911 Identification id = iTree.getSelectNode().getId();\r
2912 if (category == IDefaultMutableTreeNode.MODULE || category == IDefaultMutableTreeNode.PACKAGE\r
2913 || category == IDefaultMutableTreeNode.PLATFORM) {\r
2914 Log.err("Please select a target to clone!");\r
2915 return;\r
2916 }\r
2917 \r
2918 if (category == IDefaultMutableTreeNode.WORKSPACE) {\r
2919 mode = DataType.RETURN_TYPE_WORKSPACE;\r
2920 id = null;\r
2921 }\r
2922 if (category >= IDefaultMutableTreeNode.MSA_HEADER && category < IDefaultMutableTreeNode.SPD_HEADER) {\r
2923 mode = DataType.RETURN_TYPE_MODULE_SURFACE_AREA;\r
2924 }\r
2925 if (category >= IDefaultMutableTreeNode.SPD_HEADER && category < IDefaultMutableTreeNode.FPD_PLATFORMHEADER) {\r
2926 mode = DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA;\r
2927 }\r
2928 if (category >= IDefaultMutableTreeNode.FPD_PLATFORMHEADER) {\r
2929 mode = DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA;\r
2930 }\r
79cb6fdb 2931 \r
a13899c5 2932 Clone c = new Clone(this, true, mode, id);\r
2933 int result = c.showDialog();\r
2934 \r
2935 if (result == DataType.RETURN_TYPE_CANCEL) {\r
2936 c.dispose();\r
2937 }\r
2938 if (result == DataType.RETURN_TYPE_WORKSPACE) {\r
2939 Tools.showInformationMessage("Workspace Clone Finished");\r
2940 }\r
2941 if (result == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
2942 Tools.showInformationMessage("Module Surface Area Clone Finished");\r
2943 vModuleList.addElement(c.getMid());\r
2944 //\r
2945 // Add new MsaHeader node to the tree\r
2946 //\r
2947 IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vModuleList.lastElement().getName(),\r
2948 IDefaultMutableTreeNode.MSA_HEADER, true,\r
2949 vModuleList.lastElement());\r
2950 iTree.addNode(dmtnModuleDescription, node);\r
2951 }\r
2952 if (result == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
2953 Tools.showInformationMessage("Package Surface Area Clone Finished");\r
2954 vPackageList.addElement(c.getPid());\r
2955 //\r
2956 // Add new SpdHeader node to the tree\r
2957 //\r
2958 IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vPackageList.lastElement().getName(),\r
2959 IDefaultMutableTreeNode.SPD_HEADER, true,\r
2960 vPackageList.lastElement());\r
2961 iTree.addNode(dmtnPackageDescription, node);\r
2962 }\r
2963 if (result == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
2964 Tools.showInformationMessage("Platform Surface Area Clone Finished");\r
2965 vPlatformList.addElement(c.getFid());\r
2966 //\r
2967 // Add new SpdHeader node to the tree\r
2968 //\r
2969 IDefaultMutableTreeNode node = new IDefaultMutableTreeNode(vPlatformList.lastElement().getName(),\r
2970 IDefaultMutableTreeNode.FPD_PLATFORMHEADER,\r
2971 true, vPlatformList.lastElement());\r
2972 iTree.addNode(dmtnPlatformDescription, node);\r
2973 //this.openPlatform(c.getFid().getPath());\r
2974 }\r
2975 if (result == DataType.RETURN_TYPE_OK) {\r
2976\r
2977 }\r
2978 }\r
2979\r
2980 public void valueChanged(TreeSelectionEvent arg0) {\r
2981 // TODO Auto-generated method stub\r
2982\r
2983 }\r
2984\r
2985 public void menuCanceled(MenuEvent arg0) {\r
2986 // TODO Auto-generated method stub\r
2987\r
2988 }\r
2989\r
2990 public void menuDeselected(MenuEvent arg0) {\r
2991 // TODO Auto-generated method stub\r
2992\r
2993 }\r
2994\r
2995 public void menuSelected(MenuEvent arg0) {\r
2996 if (arg0.getSource() == jMenuFile) {\r
2997 //\r
2998 // Enable close/close all if some files are opened\r
2999 //\r
3000 jMenuItemFileClose.setEnabled(openingModuleList.isOpend() || openingPackageList.isOpend()\r
3001 || openingPlatformList.isOpend());\r
3002 jMenuItemFileCloseAll.setEnabled(openingModuleList.isOpend() || openingPackageList.isOpend()\r
3003 || openingPlatformList.isOpend());\r
3004\r
3005 //\r
3006 // Enable save/save all if some files are changed\r
3007 //\r
3008 jMenuItemFileSave.setEnabled(!openingModuleList.isSaved() || !openingPackageList.isSaved()\r
3009 || !openingPlatformList.isSaved());\r
3010 jMenuItemFileSaveAll.setEnabled(!openingModuleList.isSaved() || !openingPackageList.isSaved()\r
3011 || !openingPlatformList.isSaved());\r
3012 }\r
3013\r
3014 if (arg0.getSource() == jMenuTools) {\r
3015 //\r
3016 // Enable clone when select some items\r
3017 //\r
3018 if (iTree.getSelectionPath() == null) {\r
3019 jMenuItemToolsClone.setEnabled(false);\r
3020 } else {\r
3021 int category = iTree.getSelectCategory();\r
3022 if (category == IDefaultMutableTreeNode.MODULE || category == IDefaultMutableTreeNode.PACKAGE\r
3023 || category == IDefaultMutableTreeNode.PLATFORM) {\r
3024 jMenuItemToolsClone.setEnabled(false);\r
3025 } else {\r
3026 jMenuItemToolsClone.setEnabled(true);\r
3027 }\r
3028 }\r
3029 }\r
3030 }\r
3031}\r