]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/SelectModuleBelong.java
1. Restructure module description on main UI
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / SelectModuleBelong.java
CommitLineData
a13899c5 1/** @file\r
2 \r
3 The file is used to let user choose to create module in an existing package\r
4 or to create a new package first.\r
5 \r
6 Copyright (c) 2006, Intel Corporation\r
7 All rights reserved. This program and the accompanying materials\r
8 are licensed and made available under the terms and conditions of the BSD License\r
9 which accompanies this distribution. The full text of the license may be found at\r
10 http://opensource.org/licenses/bsd-license.php\r
11 \r
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
14 \r
15 **/\r
16package org.tianocore.frameworkwizard;\r
17\r
92e29378 18import java.awt.Component;\r
a13899c5 19import java.awt.event.ActionEvent;\r
20import java.io.File;\r
21import java.util.Vector;\r
22\r
92e29378 23import javax.swing.ButtonGroup;\r
a13899c5 24import javax.swing.JButton;\r
25import javax.swing.JComboBox;\r
26import javax.swing.JFileChooser;\r
27import javax.swing.JLabel;\r
28import javax.swing.JPanel;\r
29import javax.swing.JTextField;\r
30\r
31import org.tianocore.ModuleSurfaceAreaDocument;\r
32import org.tianocore.MsaHeaderDocument;\r
33import org.tianocore.SpdHeaderDocument;\r
34import org.tianocore.PackageSurfaceAreaDocument.PackageSurfaceArea;\r
35import org.tianocore.PlatformHeaderDocument.PlatformHeader;\r
36import org.tianocore.PlatformSurfaceAreaDocument.PlatformSurfaceArea;\r
37import org.tianocore.frameworkwizard.common.DataType;\r
38import org.tianocore.frameworkwizard.common.DataValidation;\r
39import org.tianocore.frameworkwizard.common.IFileFilter;\r
40import org.tianocore.frameworkwizard.common.Log;\r
41import org.tianocore.frameworkwizard.common.SaveFile;\r
42import org.tianocore.frameworkwizard.common.Tools;\r
43import org.tianocore.frameworkwizard.common.ui.IDialog;\r
44import org.tianocore.frameworkwizard.common.ui.IFrame;\r
45import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
79cb6fdb 46import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
a13899c5 47import org.tianocore.frameworkwizard.packaging.PackageIdentification;\r
48import org.tianocore.frameworkwizard.platform.PlatformIdentification;\r
49import org.tianocore.frameworkwizard.workspace.Workspace;\r
50import org.tianocore.frameworkwizard.workspace.WorkspaceTools;\r
92e29378 51import javax.swing.JRadioButton;\r
a13899c5 52\r
53public class SelectModuleBelong extends IDialog {\r
54\r
55 /**\r
56 Define class members\r
57 \r
58 **/\r
59 private static final long serialVersionUID = 4171355136991448972L;\r
60\r
92e29378 61 private JPanel jContentPane = null; // @jve:decl-index=0:visual-constraint="10,54"\r
a13899c5 62\r
63 private JComboBox jComboBoxExistingPackage = null;\r
64\r
65 private JButton jButtonOk = null;\r
66\r
67 private JButton jButtonCancel = null;\r
68\r
69 private Vector<PackageIdentification> packages = null;\r
70\r
71 private JLabel jLabelPackage = null;\r
72\r
73 private JLabel jLabelFilePath = null;\r
74\r
75 private JTextField jTextFieldFilePath = null;\r
76\r
77 private JButton jButtonBrowse = null;\r
78\r
79 private JLabel jLabelName = null;\r
80\r
81 private JTextField jTextFieldName = null;\r
82\r
83 private JLabel jLabelGuid = null;\r
84\r
85 private JTextField jTextFieldGuid = null;\r
86\r
87 private JButton jButtonGen = null;\r
88\r
89 private JLabel jLabelVersion = null;\r
90\r
91 private JTextField jTextFieldVersion = null;\r
92\r
93 private StarLabel jStarLabel1 = null;\r
94\r
95 private StarLabel jStarLabel2 = null;\r
96\r
97 private StarLabel jStarLabel3 = null;\r
98\r
99 private StarLabel jStarLabel4 = null;\r
100\r
101 private StarLabel jStarLabel5 = null;\r
92e29378 102 \r
103 private ButtonGroup bg = new ButtonGroup();\r
a13899c5 104\r
105 private WorkspaceTools wt = new WorkspaceTools();\r
106\r
107 private ModuleIdentification mid = null;\r
108\r
109 private PackageIdentification pid = null;\r
110\r
111 private PlatformIdentification fid = null;\r
112\r
113 private int mode = -1;\r
114\r
92e29378 115 private JLabel jLabelIsLibrary = null;\r
116\r
117 private JRadioButton jRadioButtonYes = null;\r
118\r
119 private JRadioButton jRadioButtonNo = null;\r
120\r
a13899c5 121 /**\r
122 * This method initializes jComboBoxExistingPackage \r
123 * \r
124 * @return javax.swing.JComboBox \r
125 */\r
126 private JComboBox getJComboBoxExistingPackage() {\r
127 if (jComboBoxExistingPackage == null) {\r
128 jComboBoxExistingPackage = new JComboBox();\r
129 jComboBoxExistingPackage.setBounds(new java.awt.Rectangle(140, 10, 340, 20));\r
130 }\r
131 return jComboBoxExistingPackage;\r
132 }\r
133\r
134 /**\r
135 * This method initializes jButtonNext \r
136 * \r
137 * @return javax.swing.JButton \r
138 */\r
139 private JButton getJButtonOk() {\r
140 if (jButtonOk == null) {\r
141 jButtonOk = new JButton();\r
92e29378 142 jButtonOk.setBounds(new java.awt.Rectangle(310, 165, 80, 20));\r
a13899c5 143 jButtonOk.setText("Ok");\r
144 jButtonOk.addActionListener(this);\r
145 }\r
146 return jButtonOk;\r
147 }\r
148\r
149 /**\r
150 * This method initializes jButtonCancel \r
151 * \r
152 * @return javax.swing.JButton \r
153 */\r
154 private JButton getJButtonCancel() {\r
155 if (jButtonCancel == null) {\r
156 jButtonCancel = new JButton();\r
92e29378 157 jButtonCancel.setBounds(new java.awt.Rectangle(395, 165, 80, 20));\r
a13899c5 158 jButtonCancel.setText("Cancel");\r
159 jButtonCancel.addActionListener(this);\r
160 }\r
161 return jButtonCancel;\r
162 }\r
163\r
164 /**\r
165 * This method initializes jTextFieldFilePath \r
166 * \r
167 * @return javax.swing.JTextField \r
168 */\r
169 private JTextField getJTextFieldFilePath() {\r
170 if (jTextFieldFilePath == null) {\r
171 jTextFieldFilePath = new JTextField();\r
92e29378 172 jTextFieldFilePath.setBounds(new java.awt.Rectangle(140, 60, 250, 20));\r
a13899c5 173 }\r
174 return jTextFieldFilePath;\r
175 }\r
176\r
177 /**\r
178 * This method initializes jButtonBrowse \r
179 * \r
180 * @return javax.swing.JButton \r
181 */\r
182 private JButton getJButtonBrowse() {\r
183 if (jButtonBrowse == null) {\r
184 jButtonBrowse = new JButton();\r
92e29378 185 jButtonBrowse.setBounds(new java.awt.Rectangle(395, 60, 85, 20));\r
a13899c5 186 jButtonBrowse.setText("Browse");\r
187 jButtonBrowse.addActionListener(this);\r
188 }\r
189 return jButtonBrowse;\r
190 }\r
191\r
192 /**\r
193 * This method initializes jTextFieldModuleName \r
194 * \r
195 * @return javax.swing.JTextField \r
196 */\r
197 private JTextField getJTextFieldName() {\r
198 if (jTextFieldName == null) {\r
199 jTextFieldName = new JTextField();\r
92e29378 200 jTextFieldName.setBounds(new java.awt.Rectangle(140, 85, 340, 20));\r
a13899c5 201 }\r
202 return jTextFieldName;\r
203 }\r
204\r
205 /**\r
206 * This method initializes jTextFieldGuid \r
207 * \r
208 * @return javax.swing.JTextField \r
209 */\r
210 private JTextField getJTextFieldGuid() {\r
211 if (jTextFieldGuid == null) {\r
212 jTextFieldGuid = new JTextField();\r
92e29378 213 jTextFieldGuid.setBounds(new java.awt.Rectangle(140, 110, 250, 20));\r
a13899c5 214 }\r
215 return jTextFieldGuid;\r
216 }\r
217\r
218 /**\r
219 * This method initializes jButtonGen \r
220 * \r
221 * @return javax.swing.JButton \r
222 */\r
223 private JButton getJButtonGen() {\r
224 if (jButtonGen == null) {\r
225 jButtonGen = new JButton();\r
92e29378 226 jButtonGen.setBounds(new java.awt.Rectangle(395, 110, 85, 20));\r
a13899c5 227 jButtonGen.setText("GEN");\r
228 jButtonGen.addActionListener(this);\r
229 }\r
230 return jButtonGen;\r
231 }\r
232\r
233 /**\r
234 * This method initializes jTextFieldVersion \r
235 * \r
236 * @return javax.swing.JTextField \r
237 */\r
238 private JTextField getJTextFieldVersion() {\r
239 if (jTextFieldVersion == null) {\r
240 jTextFieldVersion = new JTextField();\r
92e29378 241 jTextFieldVersion.setBounds(new java.awt.Rectangle(140, 135, 340, 20));\r
a13899c5 242 }\r
243 return jTextFieldVersion;\r
244 }\r
245\r
92e29378 246 /**\r
247 * This method initializes jRadioButtonYes \r
248 * \r
249 * @return javax.swing.JRadioButton \r
250 */\r
251 private JRadioButton getJRadioButtonYes() {\r
252 if (jRadioButtonYes == null) {\r
253 jRadioButtonYes = new JRadioButton();\r
254 jRadioButtonYes.setBounds(new java.awt.Rectangle(140,35,100,20));\r
255 jRadioButtonYes.setSelected(true);\r
256 jRadioButtonYes.setText("Yes");\r
257 }\r
258 return jRadioButtonYes;\r
259 }\r
260\r
261 /**\r
262 * This method initializes jRadioButtonNo \r
263 * \r
264 * @return javax.swing.JRadioButton \r
265 */\r
266 private JRadioButton getJRadioButtonNo() {\r
267 if (jRadioButtonNo == null) {\r
268 jRadioButtonNo = new JRadioButton();\r
269 jRadioButtonNo.setBounds(new java.awt.Rectangle(300,35,110,20));\r
270 jRadioButtonNo.setSelected(false);\r
271 jRadioButtonNo.setText("No");\r
272 }\r
273 return jRadioButtonNo;\r
274 }\r
275\r
a13899c5 276 /**\r
277 * @param args\r
278 */\r
279 public static void main(String[] args) {\r
280 SelectModuleBelong smb = new SelectModuleBelong();\r
281 smb.setVisible(true);\r
282 }\r
283\r
284 /**\r
285 * This is the default constructor\r
286 */\r
287 public SelectModuleBelong() {\r
288 super();\r
289 init();\r
290 }\r
291\r
292 /**\r
293 * This is the default constructor\r
294 */\r
295 public SelectModuleBelong(IFrame parentFrame, boolean modal, int fileType) {\r
296 super(parentFrame, modal);\r
297 this.mode = fileType;\r
298 init();\r
299 initExistingPackage();\r
300 if (mode != DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
301 this.jStarLabel1.setVisible(false);\r
302 this.jLabelPackage.setVisible(false);\r
303 this.jComboBoxExistingPackage.setVisible(false);\r
92e29378 304 this.jLabelIsLibrary.setVisible(false);\r
305 this.jRadioButtonYes.setVisible(false);\r
306 this.jRadioButtonNo.setVisible(false);\r
307 upLocation(this.jStarLabel2, 50);\r
308 upLocation(this.jStarLabel3, 50);\r
309 upLocation(this.jStarLabel4, 50);\r
310 upLocation(this.jStarLabel5, 50);\r
311 upLocation(this.jLabelFilePath, 50);\r
312 upLocation(this.jLabelName, 50);\r
313 upLocation(this.jLabelGuid, 50);\r
314 upLocation(this.jLabelVersion, 50);\r
315 upLocation(this.jTextFieldFilePath, 50);\r
316 upLocation(this.jTextFieldName, 50);\r
317 upLocation(this.jTextFieldGuid, 50);\r
318 upLocation(this.jTextFieldVersion, 50);\r
319 upLocation(this.jButtonBrowse, 50);\r
320 upLocation(this.jButtonGen, 50);\r
a13899c5 321 }\r
322 }\r
323\r
324 /**\r
325 * This method initializes this\r
326 * \r
327 * @return void\r
328 */\r
329 private void init() {\r
92e29378 330 this.setSize(500, 230);\r
a13899c5 331 this.setContentPane(getJContentPane());\r
8f4f211c 332 this.setTitle("New");\r
a13899c5 333 this.centerWindow();\r
334 }\r
335\r
336 /**\r
337 * This method initializes jContentPane\r
338 * \r
339 * @return javax.swing.JPanel\r
340 */\r
341 private JPanel getJContentPane() {\r
342 if (jContentPane == null) {\r
92e29378 343 jLabelIsLibrary = new JLabel();\r
344 jLabelIsLibrary.setBounds(new java.awt.Rectangle(15,35,120,20));\r
345 jLabelIsLibrary.setText("Is a Library");\r
a13899c5 346 jLabelVersion = new JLabel();\r
92e29378 347 jLabelVersion.setBounds(new java.awt.Rectangle(15, 135, 120, 20));\r
a13899c5 348 jLabelVersion.setText("Version");\r
349 jLabelGuid = new JLabel();\r
92e29378 350 jLabelGuid.setBounds(new java.awt.Rectangle(15, 110, 120, 20));\r
a13899c5 351 jLabelGuid.setText("Guid");\r
352 jLabelName = new JLabel();\r
92e29378 353 jLabelName.setBounds(new java.awt.Rectangle(15, 85, 120, 20));\r
a13899c5 354 jLabelName.setText("Name");\r
355 jLabelFilePath = new JLabel();\r
92e29378 356 jLabelFilePath.setBounds(new java.awt.Rectangle(15, 60, 120, 20));\r
a13899c5 357 jLabelFilePath.setText("File Path");\r
358 jLabelPackage = new JLabel();\r
359 jLabelPackage.setBounds(new java.awt.Rectangle(15, 10, 120, 20));\r
360 jLabelPackage.setText("Choose Package");\r
361 jContentPane = new JPanel();\r
362 jContentPane.setLayout(null);\r
92e29378 363 jContentPane.setSize(new java.awt.Dimension(490,198));\r
a13899c5 364 jContentPane.add(getJComboBoxExistingPackage(), null);\r
365 jContentPane.add(getJButtonOk(), null);\r
366 jContentPane.add(getJButtonCancel(), null);\r
367 jContentPane.add(jLabelPackage, null);\r
368 jContentPane.add(jLabelFilePath, null);\r
369 jContentPane.add(getJTextFieldFilePath(), null);\r
370 jContentPane.add(getJButtonBrowse(), null);\r
371 jContentPane.add(jLabelName, null);\r
372 jContentPane.add(getJTextFieldName(), null);\r
373 jContentPane.add(jLabelGuid, null);\r
374 jContentPane.add(getJTextFieldGuid(), null);\r
375 jContentPane.add(getJButtonGen(), null);\r
376 jContentPane.add(jLabelVersion, null);\r
377 jContentPane.add(getJTextFieldVersion(), null);\r
378\r
379 jStarLabel1 = new StarLabel();\r
380 jStarLabel1.setLocation(new java.awt.Point(0, 10));\r
381 jStarLabel2 = new StarLabel();\r
92e29378 382 jStarLabel2.setLocation(new java.awt.Point(0, 60));\r
a13899c5 383 jStarLabel3 = new StarLabel();\r
92e29378 384 jStarLabel3.setLocation(new java.awt.Point(0, 85));\r
a13899c5 385 jStarLabel4 = new StarLabel();\r
92e29378 386 jStarLabel4.setLocation(new java.awt.Point(0, 110));\r
a13899c5 387 jStarLabel5 = new StarLabel();\r
92e29378 388 jStarLabel5.setLocation(new java.awt.Point(0, 135));\r
a13899c5 389 jContentPane.add(jStarLabel1, null);\r
390 jContentPane.add(jStarLabel2, null);\r
391 jContentPane.add(jStarLabel3, null);\r
392 jContentPane.add(jStarLabel4, null);\r
393 jContentPane.add(jStarLabel5, null);\r
92e29378 394 jContentPane.add(jLabelIsLibrary, null);\r
395 jContentPane.add(getJRadioButtonYes(), null);\r
396 jContentPane.add(getJRadioButtonNo(), null);\r
397 bg.add(getJRadioButtonNo());\r
398 bg.add(getJRadioButtonYes());\r
a13899c5 399 }\r
400 return jContentPane;\r
401 }\r
402\r
403 /**\r
404 Query all existing packages and fill them into combox\r
405 \r
406 **/\r
407 private void initExistingPackage() {\r
408 packages = wt.getAllPackages();\r
409 for (int index = 0; index < packages.size(); index++) {\r
410 this.jComboBoxExistingPackage.addItem(packages.elementAt(index).getName());\r
411 }\r
412 }\r
413\r
414 /* (non-Javadoc)\r
415 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)\r
416 * \r
417 * Override actionPerformed to listen all actions\r
418 */\r
419 public void actionPerformed(ActionEvent arg0) {\r
420 if (arg0.getSource() == jButtonCancel) {\r
421 this.setVisible(false);\r
422 this.returnType = DataType.RETURN_TYPE_CANCEL;\r
423 }\r
424\r
425 if (arg0.getSource() == jButtonOk) {\r
426 if (this.check()) {\r
427 this.save();\r
428 } else {\r
429 return;\r
430 }\r
431 this.setVisible(false);\r
432 this.returnType = DataType.RETURN_TYPE_OK;\r
433 }\r
434\r
435 if (arg0.getSource() == this.jButtonGen) {\r
436 this.jTextFieldGuid.setText(Tools.generateUuidString());\r
437 }\r
438\r
439 if (arg0.getSource() == this.jButtonBrowse) {\r
440 JFileChooser fc = new JFileChooser();\r
441 fc.setAcceptAllFileFilterUsed(false);\r
442\r
443 if (mode == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
444 fc.setCurrentDirectory(new File(packages.elementAt(this.jComboBoxExistingPackage.getSelectedIndex())\r
445 .getPath()));\r
446 fc.addChoosableFileFilter(new IFileFilter(DataType.MODULE_SURFACE_AREA_EXT));\r
447 }\r
448 if (mode == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
449 fc.setCurrentDirectory(new File(Workspace.getCurrentWorkspace()));\r
450 fc.addChoosableFileFilter(new IFileFilter(DataType.PACKAGE_SURFACE_AREA_EXT));\r
451 }\r
452 if (mode == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
453 fc.setCurrentDirectory(new File(Workspace.getCurrentWorkspace()));\r
454 fc.addChoosableFileFilter(new IFileFilter(DataType.PLATFORM_SURFACE_AREA_EXT));\r
455 }\r
456 int result = fc.showSaveDialog(new JPanel());\r
457 if (result == JFileChooser.APPROVE_OPTION) {\r
458 this.jTextFieldFilePath.setText(Tools.addPathExt(fc.getSelectedFile().getPath(), mode));\r
459 }\r
460 }\r
461 }\r
462\r
463 /**\r
464 Data validation for all fields\r
465 \r
466 @retval true - All datas are valid\r
467 @retval false - At least one data is invalid\r
468 \r
469 **/\r
470 public boolean check() {\r
471 //\r
472 // Check if all required fields are not empty\r
473 //\r
474 if (isEmpty(this.jTextFieldFilePath.getText())) {\r
475 Log.err("File Path couldn't be empty");\r
476 return false;\r
477 }\r
478 if (isEmpty(this.jTextFieldName.getText())) {\r
479 Log.err("Name couldn't be empty");\r
480 return false;\r
481 }\r
482 if (isEmpty(this.jTextFieldGuid.getText())) {\r
483 Log.err("Guid Value couldn't be empty");\r
484 return false;\r
485 }\r
486 if (isEmpty(this.jTextFieldVersion.getText())) {\r
487 Log.err("Version couldn't be empty");\r
488 return false;\r
489 }\r
490\r
491 //\r
492 // Check if all fields have correct data types \r
493 //\r
494 if (!DataValidation.isBaseName(this.jTextFieldName.getText())) {\r
495 Log.err("Incorrect data type for Base Name");\r
496 return false;\r
497 }\r
498 if (!DataValidation.isGuid((this.jTextFieldGuid).getText())) {\r
499 Log.err("Incorrect data type for Guid");\r
500 return false;\r
501 }\r
502\r
503 if (mode == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
504 //\r
505 // Check if the module is already existed in current package\r
506 //\r
507 String packagePath = packages.elementAt(this.jComboBoxExistingPackage.getSelectedIndex()).getPath();\r
508 String modulePath = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
509 Vector<String> msaFile = wt.getAllModulesOfPackage(packagePath);\r
a13899c5 510\r
511 for (int index = 0; index < msaFile.size(); index++) {\r
79cb6fdb 512 if (msaFile.elementAt(index).equals(modulePath)) {\r
a13899c5 513 Log.err("This module is already existing in selected package");\r
514 return false;\r
515 }\r
516 }\r
517 }\r
518\r
519 if (mode == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
520 //\r
521 // Check if the package is already existed in database\r
522 //\r
523 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
524 Vector<PackageIdentification> vPackageList = wt.getAllPackages();\r
525 if (vPackageList != null && vPackageList.size() > 0) {\r
526 for (int index = 0; index < vPackageList.size(); index++) {\r
527 if (vPackageList.get(index).getPath().equals(path)) {\r
528 Log.err("This package is already existing in database");\r
529 return false;\r
530 }\r
531 }\r
532 }\r
533 }\r
534\r
535 if (mode == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
536 //\r
537 // Check if the platform is already existed in database\r
538 //\r
539 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
540 Vector<PlatformIdentification> vPlatfromList = wt.getAllPlatforms();\r
541 if (vPlatfromList != null && vPlatfromList.size() > 0) {\r
542 for (int index = 0; index < vPlatfromList.size(); index++) {\r
543 if (vPlatfromList.get(index).getPath().equals(path)) {\r
544 Log.err("This platform is already existing in database");\r
545 return false;\r
546 }\r
547 }\r
548 }\r
549 }\r
550\r
551 return true;\r
552 }\r
553\r
554 /**\r
555 Save file\r
556 \r
557 **/\r
558 public void save() {\r
559 if (mode == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
560 this.saveModule();\r
561 }\r
562 if (mode == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
563 this.savePackage();\r
564 }\r
565 if (mode == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
566 this.savePlatform();\r
567 }\r
568 }\r
569\r
570 /**\r
571 Save all components of Msa Header\r
572 \r
573 **/\r
574 private void saveModule() {\r
575 ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null;\r
576 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
577\r
578 //\r
579 // Save to memory\r
580 //\r
581 try {\r
582 MsaHeaderDocument.MsaHeader msaHeader = null;\r
583\r
584 msa = ModuleSurfaceAreaDocument.ModuleSurfaceArea.Factory.newInstance();\r
585 msaHeader = MsaHeaderDocument.MsaHeader.Factory.newInstance();\r
586\r
587 msaHeader.setModuleName(this.jTextFieldName.getText());\r
588 msaHeader.setGuidValue(this.jTextFieldGuid.getText());\r
589 msaHeader.setVersion(this.jTextFieldVersion.getText());\r
590\r
591 msa.setMsaHeader(msaHeader);\r
592 } catch (Exception e) {\r
593 Log.err("Save ModuleSurfaceArea Document", e.getMessage());\r
594 return;\r
595 }\r
596\r
597 //\r
598 // Save to real file\r
599 //\r
600 try {\r
601 SaveFile.saveMsaFile(path, msa);\r
602\r
603 } catch (Exception e) {\r
604 Log.err("Save Module to file system", e.getMessage());\r
605 return;\r
606 }\r
607\r
608 //\r
609 // Save to identification\r
610 //\r
611 mid = new ModuleIdentification(this.jTextFieldName.getText(), this.jTextFieldGuid.getText(),\r
92e29378 612 this.jTextFieldVersion.getText(), path, jRadioButtonYes.isSelected());\r
a13899c5 613 mid.setPackageId(packages.elementAt(this.jComboBoxExistingPackage.getSelectedIndex()));\r
614 }\r
615\r
616 /**\r
617 Save all components of Spd Header\r
618 \r
619 **/\r
620 private void savePackage() {\r
621 PackageSurfaceArea spd = null;\r
622 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
623\r
624 //\r
625 // Save to memory\r
626 //\r
627 try {\r
628 SpdHeaderDocument.SpdHeader spdHeader = null;\r
629\r
630 spd = PackageSurfaceArea.Factory.newInstance();\r
631 spdHeader = SpdHeaderDocument.SpdHeader.Factory.newInstance();\r
632\r
633 spdHeader.setPackageName(this.jTextFieldName.getText());\r
634 spdHeader.setGuidValue(this.jTextFieldGuid.getText());\r
635 spdHeader.setVersion(this.jTextFieldVersion.getText());\r
636\r
637 spd.setSpdHeader(spdHeader);\r
638 } catch (Exception e) {\r
639 Log.err("Save PackageSurfaceArea Document", e.getMessage());\r
640 return;\r
641 }\r
642\r
643 //\r
644 // Save to real file\r
645 //\r
646 try {\r
647 SaveFile.saveSpdFile(path, spd);\r
648\r
649 } catch (Exception e) {\r
650 Log.err("Save Package to file system", e.getMessage());\r
651 return;\r
652 }\r
653\r
654 //\r
655 // Save to identification\r
656 //\r
657 pid = new PackageIdentification(this.jTextFieldName.getText(), this.jTextFieldGuid.getText(),\r
658 this.jTextFieldVersion.getText(), path);\r
659 }\r
660\r
661 /**\r
662 Save all components of Fpd Header\r
663 \r
664 **/\r
665 private void savePlatform() {\r
666 PlatformSurfaceArea fpd = null;\r
667 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
668\r
669 //\r
670 // Save to memory\r
671 //\r
672 try {\r
673 PlatformHeader fpdHeader = null;\r
674\r
675 fpd = PlatformSurfaceArea.Factory.newInstance();\r
676 fpdHeader = PlatformHeader.Factory.newInstance();\r
677\r
678 fpdHeader.setPlatformName(this.jTextFieldName.getText());\r
679 fpdHeader.setGuidValue(this.jTextFieldGuid.getText());\r
680 fpdHeader.setVersion(this.jTextFieldVersion.getText());\r
681\r
682 fpd.setPlatformHeader(fpdHeader);\r
683 } catch (Exception e) {\r
684 Log.err("Save FrameworkPlatformDescription Document", e.getMessage());\r
685 return;\r
686 }\r
687\r
688 //\r
689 // Save to real file\r
690 //\r
691 try {\r
692 SaveFile.saveFpdFile(path, fpd);\r
693\r
694 } catch (Exception e) {\r
695 Log.err("Save Platform to file system", e.getMessage());\r
696 return;\r
697 }\r
698\r
699 //\r
700 // Save to identification\r
701 //\r
702 fid = new PlatformIdentification(this.jTextFieldName.getText(), this.jTextFieldGuid.getText(),\r
703 this.jTextFieldVersion.getText(), path);\r
704 }\r
705\r
706 public ModuleIdentification getMid() {\r
707 return mid;\r
708 }\r
709\r
710 public void setMid(ModuleIdentification mid) {\r
711 this.mid = mid;\r
712 }\r
713\r
714 public PlatformIdentification getFid() {\r
715 return fid;\r
716 }\r
717\r
718 public void setFid(PlatformIdentification fid) {\r
719 this.fid = fid;\r
720 }\r
721\r
722 public PackageIdentification getPid() {\r
723 return pid;\r
724 }\r
725\r
726 public void setPid(PackageIdentification pid) {\r
727 this.pid = pid;\r
728 }\r
92e29378 729 \r
730 private void upLocation(Component c, int size) {\r
731 c.setLocation(c.getLocation().x, c.getLocation().y - size);\r
732 }\r
a13899c5 733}\r