]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/packaging/ui/SpdHeader.java
changed variable names from textfieldsomething to somethingtextfield
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / packaging / ui / SpdHeader.java
CommitLineData
a13899c5 1/** @file\r
2 \r
3 The file is used to create, update spdHeader of Spd file\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.packaging.ui;\r
17\r
a13899c5 18import java.awt.event.ActionEvent;\r
19import java.awt.event.ComponentEvent;\r
20import java.awt.event.FocusAdapter;\r
21import java.awt.event.FocusEvent;\r
22\r
23import javax.swing.JButton;\r
ce73a791 24import javax.swing.JFrame;\r
a13899c5 25import javax.swing.JLabel;\r
ce73a791 26import javax.swing.JOptionPane;\r
a13899c5 27import javax.swing.JPanel;\r
28import javax.swing.JScrollPane;\r
29import javax.swing.JTextArea;\r
30import javax.swing.JTextField;\r
31\r
32import org.tianocore.PackageSurfaceAreaDocument;\r
33import org.tianocore.frameworkwizard.common.DataValidation;\r
a13899c5 34import org.tianocore.frameworkwizard.common.Tools;\r
d6d24759 35import org.tianocore.frameworkwizard.common.Identifications.OpeningPackageType;\r
a13899c5 36import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
37import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
3c0192d4 38import javax.swing.JCheckBox;\r
a13899c5 39\r
40/**\r
41 The class is used to create, update spdHeader of Spd file\r
42 It extends IInternalFrame\r
43 \r
44 @since PackageEditor 1.0\r
45\r
46 **/\r
47public class SpdHeader extends IInternalFrame {\r
48\r
07e741e0 49 private int dialogWidth = 560;\r
50\r
51 private int labelColumn = 12;\r
52\r
53 private int labelWidth = 155;\r
54\r
55 private int buttonWidth = 60;\r
56\r
57 private final int valueColumn = 168;\r
58\r
59 private final int valueWidth = 320;\r
60 \r
61 private final int specWidth = 420;\r
62 \r
63 private int shortValueWidth = valueWidth - (buttonWidth + 5);\r
64\r
65 private final int oneRowHeight = 20;\r
66\r
67 private final int threeRowHeight = 60;\r
68\r
69 private final int fourRowHeight = 80;\r
70\r
71 private final int rowSep = 5;\r
72\r
73 private final int rowOne = 12;\r
74\r
75 private final int rowTwo = rowOne + oneRowHeight + rowSep;\r
76\r
77 private final int rowThree = rowTwo + oneRowHeight + rowSep;\r
78\r
79 private final int rowFour = rowThree + oneRowHeight + rowSep;\r
80\r
81 private final int rowFive = rowFour + threeRowHeight + rowSep;\r
82\r
83 private final int rowSix = rowFive + fourRowHeight + rowSep;\r
84\r
85 private final int rowSeven = rowSix + oneRowHeight + rowSep;\r
86\r
87 private final int rowEight = rowSeven + oneRowHeight + rowSep;\r
88\r
89 private final int rowNine = rowEight + fourRowHeight + rowSep;\r
90\r
91 private final int rowTen = rowNine + oneRowHeight + rowSep;\r
92\r
93 private int dialogHeight = rowTen + threeRowHeight;\r
94\r
a13899c5 95 ///\r
96 /// Define class Serial Version UID\r
97 ///\r
98 private static final long serialVersionUID = -8152099582923006900L;\r
99\r
100 //\r
101 //Define class members\r
102 //\r
ce73a791 103 static JFrame frame;\r
07e741e0 104\r
a13899c5 105 private JPanel jContentPane = null;\r
106\r
07e741e0 107 private JLabel jPackageNameLabel = null;\r
a13899c5 108\r
07e741e0 109 private JTextField jPackageNameTextField = null;\r
a13899c5 110\r
07e741e0 111 private JLabel jGuidLabel = null;\r
a13899c5 112\r
07e741e0 113 private JTextField jGuidTextField = null;\r
a13899c5 114\r
07e741e0 115 private JLabel jVersionLabel = null;\r
a13899c5 116\r
07e741e0 117 private JTextField jVersionTextField = null;\r
a13899c5 118\r
07e741e0 119 private JButton jGenerateGuidButton = null;\r
a13899c5 120\r
07e741e0 121 private JLabel jLicenseLabel = null;\r
a13899c5 122\r
07e741e0 123 private JTextArea jLicenseTextArea = null;\r
a13899c5 124\r
125 private JLabel jLabelCopyright = null;\r
126\r
07e741e0 127 private JLabel jDescriptionLabel = null;\r
a13899c5 128\r
07e741e0 129 private JTextArea jDescriptionTextArea = null;\r
a13899c5 130\r
07e741e0 131 // private JLabel jLabelSpecification = null;\r
a13899c5 132\r
07e741e0 133 private JTextField jSpecificationTextField = null;\r
a13899c5 134\r
135 private JButton jButtonOk = null;\r
136\r
137 private JButton jButtonCancel = null;\r
138\r
07e741e0 139 private JScrollPane jLicenseScrollPane = null;\r
a13899c5 140\r
07e741e0 141 private JScrollPane jDescriptionScrollPane = null;\r
142 \r
143 private JScrollPane jCopyrightScrollPane = null;\r
a13899c5 144\r
07e741e0 145 private JLabel jAbstractLabel = null;\r
a13899c5 146\r
07e741e0 147 private JTextField jAbstractTextField = null;\r
a13899c5 148\r
149 private StarLabel jStarLabel1 = null;\r
150\r
151 private StarLabel jStarLabel2 = null;\r
152\r
153 private StarLabel jStarLabel3 = null;\r
154\r
155 private StarLabel jStarLabel4 = null;\r
156\r
157 private StarLabel jStarLabel5 = null;\r
158\r
159 private StarLabel jStarLabel6 = null;\r
160\r
161 private StarLabel jStarLabel7 = null;\r
07e741e0 162 \r
163 private StarLabel jStarLabel8 = null;\r
a13899c5 164\r
165 private StarLabel jStarLabel9 = null;\r
07e741e0 166\r
a13899c5 167 private SpdFileContents sfc = null;\r
168\r
07e741e0 169 private OpeningPackageType docConsole = null;\r
a13899c5 170\r
07e741e0 171 private JTextArea jCopyrightTextArea = null;\r
a13899c5 172\r
07e741e0 173 private JScrollPane topScrollPane = null;\r
a13899c5 174\r
07e741e0 175 private JLabel jUrlLabel = null;\r
3c0192d4 176\r
07e741e0 177 private JTextField jUrlTextField = null;\r
3c0192d4 178\r
179 private JCheckBox jCheckBoxRdOnly = null;\r
180\r
181 private JCheckBox jCheckBoxRePkg = null;\r
182\r
a13899c5 183 /**\r
07e741e0 184 This method initializes jPackageNameTextField \r
a13899c5 185 \r
07e741e0 186 @return javax.swing.JTextField jPackageNameTextField\r
a13899c5 187 \r
188 **/\r
07e741e0 189 private JTextField getJPackageNameTextField() {\r
190 if (jPackageNameTextField == null) {\r
191 jPackageNameTextField = new JTextField();\r
192 jPackageNameTextField.setBounds(new java.awt.Rectangle(valueColumn, rowOne, valueWidth, oneRowHeight));\r
193 jPackageNameTextField.setPreferredSize(new java.awt.Dimension(valueWidth, oneRowHeight));\r
194 jPackageNameTextField.addFocusListener(new FocusAdapter() {\r
195 public void focusLost(FocusEvent e) {\r
196 if (!DataValidation.isUiNameType(jPackageNameTextField.getText())) {\r
197 JOptionPane.showMessageDialog(frame, "Package Name must start with a letter.");\r
ce73a791 198 return;\r
199 }\r
07e741e0 200 if (jPackageNameTextField.getText().equals(sfc.getSpdHdrPkgName())) {\r
a490bca8 201 return;\r
202 }\r
d6d24759 203 docConsole.setSaved(false);\r
07e741e0 204 sfc.setSpdHdrPkgName(jPackageNameTextField.getText());\r
a13899c5 205 }\r
206 });\r
207 }\r
07e741e0 208 return jPackageNameTextField;\r
a13899c5 209 }\r
210\r
211 /**\r
07e741e0 212 This method initializes jGuidTextField \r
a13899c5 213 \r
07e741e0 214 @return javax.swing.JTextField jGuidTextField\r
a13899c5 215 \r
216 **/\r
07e741e0 217 private JTextField getJGuidTextField() {\r
218 if (jGuidTextField == null) {\r
219 jGuidTextField = new JTextField();\r
220 jGuidTextField.setBounds(new java.awt.Rectangle(valueColumn, rowTwo, shortValueWidth, oneRowHeight));\r
221 jGuidTextField.setPreferredSize(new java.awt.Dimension(shortValueWidth, oneRowHeight));\r
222 jGuidTextField.addFocusListener(new FocusAdapter() {\r
223 public void focusLost(FocusEvent e) {\r
224 if (!DataValidation.isGuid(jGuidTextField.getText())) {\r
225 JOptionPane.showMessageDialog(frame, "Guid must be in registry (8-4-4-4-12) format.");\r
ce73a791 226 return;\r
227 }\r
07e741e0 228 if (jGuidTextField.getText().equals(sfc.getSpdHdrGuidValue())) {\r
a490bca8 229 return;\r
230 }\r
d6d24759 231 docConsole.setSaved(false);\r
07e741e0 232 sfc.setSpdHdrGuidValue(jGuidTextField.getText());\r
a13899c5 233 }\r
234 });\r
235 }\r
07e741e0 236 return jGuidTextField;\r
a13899c5 237 }\r
238\r
239 /**\r
07e741e0 240 This method initializes jVersionTextField \r
a13899c5 241 \r
07e741e0 242 @return javax.swing.JTextField jVersionTextField\r
a13899c5 243 \r
244 **/\r
07e741e0 245 private JTextField getJVersionTextField() {\r
246 if (jVersionTextField == null) {\r
247 jVersionTextField = new JTextField();\r
248 jVersionTextField.setBounds(new java.awt.Rectangle(valueColumn, rowThree, valueWidth, oneRowHeight));\r
249 jVersionTextField.setPreferredSize(new java.awt.Dimension(valueWidth, oneRowHeight));\r
250 jVersionTextField.addFocusListener(new FocusAdapter() {\r
251 public void focusLost(FocusEvent e) {\r
252 if (!DataValidation.isVersion(jVersionTextField.getText())) {\r
253 JOptionPane.showMessageDialog(frame, "Version must start with a number.");\r
254 return;\r
255 }\r
256 if (jVersionTextField.getText().equals(sfc.getSpdHdrVer())) {\r
257 return;\r
258 }\r
259 docConsole.setSaved(false);\r
260 sfc.setSpdHdrVer(jVersionTextField.getText());\r
261 }\r
a13899c5 262 });\r
263 }\r
07e741e0 264 return jVersionTextField;\r
a13899c5 265 }\r
266\r
267 /**\r
07e741e0 268 This method initializes jGenerateGuidButton \r
a13899c5 269 \r
07e741e0 270 @return javax.swing.JButton jGenerateGuidButton\r
a13899c5 271 \r
272 **/\r
07e741e0 273 private JButton getJGenerateGuidButton() {\r
274 if (jGenerateGuidButton == null) {\r
275 jGenerateGuidButton = new JButton();\r
276 jGenerateGuidButton.setBounds(new java.awt.Rectangle(valueColumn + shortValueWidth + 5, rowTwo, buttonWidth, oneRowHeight));\r
277 jGenerateGuidButton.setText("GEN");\r
278 jGenerateGuidButton.addActionListener(this);\r
a13899c5 279 }\r
07e741e0 280 return jGenerateGuidButton;\r
a13899c5 281 }\r
282\r
283 /**\r
07e741e0 284 This method initializes jLicenseTextArea \r
a13899c5 285 \r
07e741e0 286 @return javax.swing.JTextArea jLicenseTextArea\r
a13899c5 287 \r
288 **/\r
07e741e0 289 private JTextArea getJLicenseTextArea() {\r
290 if (jLicenseTextArea == null) {\r
291 jLicenseTextArea = new JTextArea();\r
292 // jLicenseTextArea.setText("");\r
293 jLicenseTextArea.setLineWrap(true);\r
294 jLicenseTextArea.addFocusListener(new FocusAdapter() {\r
295 public void focusLost(FocusEvent e) {\r
296 if (jLicenseTextArea.getText().length() == 0) {\r
297 JOptionPane.showMessageDialog(frame, "License is a required field.");\r
ce73a791 298 return;\r
299 }\r
07e741e0 300 if (jLicenseTextArea.getText().equals(sfc.getSpdHdrLicense())) {\r
a490bca8 301 return;\r
302 }\r
d6d24759 303 docConsole.setSaved(false);\r
07e741e0 304 sfc.setSpdHdrLicense(jLicenseTextArea.getText());\r
a13899c5 305 }\r
306 });\r
307 }\r
07e741e0 308 return jLicenseTextArea;\r
a13899c5 309 }\r
310\r
311 /**\r
07e741e0 312 This method initializes jDescriptionTextArea \r
a13899c5 313 \r
07e741e0 314 @return javax.swing.JTextArea jDescriptionTextArea\r
a13899c5 315 \r
316 **/\r
07e741e0 317 private JTextArea getJDescriptionTextArea() {\r
318 if (jDescriptionTextArea == null) {\r
319 jDescriptionTextArea = new JTextArea();\r
320 jDescriptionTextArea.setLineWrap(true);\r
321 jDescriptionTextArea.addFocusListener(new FocusAdapter() {\r
322 public void focusLost(FocusEvent e) {\r
323 if (jDescriptionTextArea.getText().length() == 0) {\r
324 JOptionPane\r
325 .showMessageDialog(frame,\r
326 "Description is a required field, and should reflect the contents of the package.");\r
ce73a791 327 return;\r
328 }\r
07e741e0 329 if (jDescriptionTextArea.getText().equals(sfc.getSpdHdrDescription())) {\r
a490bca8 330 return;\r
331 }\r
d6d24759 332 docConsole.setSaved(false);\r
07e741e0 333 sfc.setSpdHdrDescription(jDescriptionTextArea.getText());\r
a13899c5 334 }\r
335 });\r
336 }\r
07e741e0 337 return jDescriptionTextArea;\r
a13899c5 338 }\r
339\r
340 /**\r
07e741e0 341 This method initializes jSpecificationTextField \r
a13899c5 342 \r
07e741e0 343 @return javax.swing.JTextField jSpecificationTextField\r
a13899c5 344 \r
345 **/\r
07e741e0 346 private JTextField getJSpecificationTextField() {\r
347 if (jSpecificationTextField == null) {\r
348 jSpecificationTextField = new JTextField();\r
349 jSpecificationTextField.setBounds(new java.awt.Rectangle(labelColumn, dialogHeight - 40, specWidth, oneRowHeight));\r
350 jSpecificationTextField.setEditable(false);\r
351 jSpecificationTextField.setPreferredSize(new java.awt.Dimension(specWidth, oneRowHeight));\r
352 jSpecificationTextField.setLocation(new java.awt.Point(2, dialogHeight - oneRowHeight));\r
353 jSpecificationTextField.setBorder(null);\r
354\r
355 // jSpecificationTextField.addFocusListener(new FocusAdapter(){\r
356 // public void focusLost(FocusEvent e){\r
357 // sfc.setSpdHdrSpec(jSpecificationTextField.getText());\r
358 // }\r
359 // });\r
a13899c5 360 }\r
07e741e0 361 return jSpecificationTextField;\r
a13899c5 362 }\r
363\r
364 /**\r
365 This method initializes jButtonOk \r
366 \r
367 @return javax.swing.JButton jButtonOk\r
368 \r
369 **/\r
370 private JButton getJButtonOk() {\r
371 if (jButtonOk == null) {\r
372 jButtonOk = new JButton();\r
373 jButtonOk.setText("OK");\r
07e741e0 374 jButtonOk.setBounds(new java.awt.Rectangle(290, 445, 90, oneRowHeight));\r
a13899c5 375 jButtonOk.setVisible(false);\r
376 jButtonOk.addActionListener(this);\r
377 }\r
378 return jButtonOk;\r
379 }\r
380\r
381 /**\r
382 This method initializes jButtonCancel \r
383 \r
384 @return javax.swing.JButton jButtonCancel\r
385 \r
386 **/\r
387 private JButton getJButtonCancel() {\r
388 if (jButtonCancel == null) {\r
389 jButtonCancel = new JButton();\r
390 jButtonCancel.setText("Cancel");\r
07e741e0 391 jButtonCancel.setBounds(new java.awt.Rectangle(390, 445, 90, oneRowHeight));\r
a13899c5 392 jButtonCancel.setVisible(false);\r
393 jButtonCancel.addActionListener(this);\r
394 }\r
395 return jButtonCancel;\r
396 }\r
397\r
398 /**\r
07e741e0 399 This method initializes jLicenseScrollPane \r
a13899c5 400 \r
07e741e0 401 @return javax.swing.JScrollPane jLicenseScrollPane\r
a13899c5 402 \r
403 **/\r
07e741e0 404 private JScrollPane getJLicenseScrollPane() {\r
405 if (jLicenseScrollPane == null) {\r
406 jLicenseScrollPane = new JScrollPane();\r
407 jLicenseScrollPane.setBounds(new java.awt.Rectangle(valueColumn, rowFive, valueWidth, fourRowHeight));\r
408 jLicenseScrollPane.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
409 jLicenseScrollPane.setPreferredSize(new java.awt.Dimension(valueWidth, fourRowHeight));\r
410 jLicenseScrollPane.setViewportView(getJLicenseTextArea());\r
a13899c5 411 }\r
07e741e0 412 return jLicenseScrollPane;\r
a13899c5 413 }\r
414\r
415 /**\r
07e741e0 416 This method initializes jDescriptionScrollPane \r
a13899c5 417 \r
07e741e0 418 @return javax.swing.JScrollPane jDescriptionScrollPane\r
a13899c5 419 \r
420 **/\r
07e741e0 421 private JScrollPane getJDescriptionScrollPane() {\r
422 if (jDescriptionScrollPane == null) {\r
423 jDescriptionScrollPane = new JScrollPane();\r
424 jDescriptionScrollPane.setBounds(new java.awt.Rectangle(valueColumn, rowEight, valueWidth, fourRowHeight));\r
425 jDescriptionScrollPane.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
426 jDescriptionScrollPane.setPreferredSize(new java.awt.Dimension(valueWidth, fourRowHeight));\r
427 jDescriptionScrollPane.setViewportView(getJDescriptionTextArea());\r
a13899c5 428 }\r
07e741e0 429 return jDescriptionScrollPane;\r
a13899c5 430 }\r
431\r
432 /**\r
07e741e0 433 This method initializes jAbstractTextField \r
a13899c5 434 \r
07e741e0 435 @return javax.swing.JTextField jAbstractTextField\r
a13899c5 436 \r
437 **/\r
07e741e0 438 private JTextField getJAbstractTextField() {\r
439 if (jAbstractTextField == null) {\r
440 jAbstractTextField = new JTextField();\r
441 jAbstractTextField.setBounds(new java.awt.Rectangle(valueColumn, rowSeven, valueWidth, oneRowHeight));\r
442 jAbstractTextField.setPreferredSize(new java.awt.Dimension(valueWidth, oneRowHeight));\r
443 jAbstractTextField.addFocusListener(new FocusAdapter() {\r
444 public void focusLost(FocusEvent e) {\r
445 if (!DataValidation.isAbstract(jAbstractTextField.getText())) {\r
ce73a791 446 JOptionPane.showMessageDialog(frame, "Abstract could NOT be empty.");\r
447 return;\r
448 }\r
07e741e0 449 if (jAbstractTextField.getText().equals(sfc.getSpdHdrAbs())) {\r
a490bca8 450 return;\r
451 }\r
d6d24759 452 docConsole.setSaved(false);\r
07e741e0 453 sfc.setSpdHdrAbs(jAbstractTextField.getText());\r
a13899c5 454 }\r
455 });\r
456 }\r
07e741e0 457 return jAbstractTextField;\r
a13899c5 458 }\r
459\r
07e741e0 460 private JScrollPane getCopyrightScrollPane() {\r
461 if (jCopyrightScrollPane == null) {\r
462 jCopyrightScrollPane = new JScrollPane();\r
463 jCopyrightScrollPane.setBounds(new java.awt.Rectangle(valueColumn, rowFour, valueWidth, threeRowHeight));\r
464 jCopyrightScrollPane.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
465 jCopyrightScrollPane.setPreferredSize(new java.awt.Dimension(valueWidth, threeRowHeight));\r
466 jCopyrightScrollPane.setViewportView(getJCopyrightTextArea());\r
467 }\r
468 return jCopyrightScrollPane;\r
469 }\r
a13899c5 470 /**\r
07e741e0 471 This method initializes jTextFieldCopyright \r
472 \r
473 @return javax.swing.JTextField jTextFieldCopyright\r
a13899c5 474 \r
475 **/\r
07e741e0 476 private JTextArea getJCopyrightTextArea() {\r
477 if (jCopyrightTextArea == null) {\r
478 jCopyrightTextArea = new JTextArea();\r
479 jCopyrightTextArea.setWrapStyleWord(true);\r
480 jCopyrightTextArea.addFocusListener(new FocusAdapter() {\r
481 public void focusLost(FocusEvent e) {\r
482 if (!DataValidation.isCopyright(jCopyrightTextArea.getText())) {\r
483 JOptionPane.showMessageDialog(frame, "Copyright must be entered.");\r
484 return;\r
485 }\r
486 if (jCopyrightTextArea.getText().equals(sfc.getSpdHdrCopyright())) {\r
487 return;\r
488 }\r
489 docConsole.setSaved(false);\r
490 sfc.setSpdHdrCopyright(jCopyrightTextArea.getText());\r
491 }\r
a13899c5 492 });\r
493 }\r
07e741e0 494 return jCopyrightTextArea;\r
a13899c5 495 }\r
496\r
497 /**\r
498 * This method initializes jTextField \r
499 * \r
500 * @return javax.swing.JTextField \r
501 */\r
07e741e0 502 private JTextField getJUrlTextField() {\r
503 if (jUrlTextField == null) {\r
504 jUrlTextField = new JTextField();\r
505 jUrlTextField.setBounds(new java.awt.Rectangle(valueColumn, rowSix, valueWidth, oneRowHeight));\r
506 jUrlTextField.setPreferredSize(new java.awt.Dimension(valueWidth, oneRowHeight));\r
507 jUrlTextField.addFocusListener(new FocusAdapter() {\r
508 public void focusLost(FocusEvent e) {\r
509 if (jUrlTextField.getText().length() == 0 && sfc.getSpdHdrUrl() == null) {\r
510 return;\r
511 }\r
512 if (jUrlTextField.getText().equals(sfc.getSpdHdrUrl())) {\r
513 return;\r
514 }\r
515 sfc.setSpdHdrLicense(jLicenseTextArea.getText());\r
516 sfc.setSpdHdrUrl(jUrlTextField.getText());\r
517 docConsole.setSaved(false);\r
518 }\r
a13899c5 519 });\r
520 }\r
07e741e0 521 return jUrlTextField;\r
a13899c5 522 }\r
523\r
3c0192d4 524 /**\r
525 * This method initializes jCheckBoxRdOnly \r
526 * \r
527 * @return javax.swing.JCheckBox \r
528 */\r
529 private JCheckBox getJCheckBoxRdOnly() {\r
530 if (jCheckBoxRdOnly == null) {\r
531 jCheckBoxRdOnly = new JCheckBox();\r
532 jCheckBoxRdOnly.setText("Read Only");\r
07e741e0 533 jCheckBoxRdOnly.setLocation(new java.awt.Point(labelColumn, rowNine));\r
534 jCheckBoxRdOnly.setSize(new java.awt.Dimension(labelWidth, oneRowHeight));\r
535 // jCheckBoxRdOnly.setPreferredSize(new java.awt.Dimension(150, oneRowHeight));\r
3c0192d4 536 jCheckBoxRdOnly.addItemListener(new java.awt.event.ItemListener() {\r
537 public void itemStateChanged(java.awt.event.ItemEvent e) {\r
538 if (docConsole != null) {\r
539 docConsole.setSaved(false);\r
540 }\r
07e741e0 541 sfc.setSpdPkgDefsRdOnly(jCheckBoxRdOnly.isSelected() + "");\r
3c0192d4 542 }\r
543 });\r
544 }\r
545 return jCheckBoxRdOnly;\r
546 }\r
547\r
548 /**\r
549 * This method initializes jCheckBoxRePkg \r
550 * \r
551 * @return javax.swing.JCheckBox \r
552 */\r
553 private JCheckBox getJCheckBoxRePkg() {\r
554 if (jCheckBoxRePkg == null) {\r
555 jCheckBoxRePkg = new JCheckBox();\r
07e741e0 556 jCheckBoxRePkg.setLocation(new java.awt.Point(labelColumn, rowTen));\r
3c0192d4 557 jCheckBoxRePkg.setText("RePackagable");\r
07e741e0 558 jCheckBoxRePkg.setSize(new java.awt.Dimension(labelWidth, oneRowHeight));\r
3c0192d4 559 jCheckBoxRePkg.addItemListener(new java.awt.event.ItemListener() {\r
560 public void itemStateChanged(java.awt.event.ItemEvent e) {\r
561 if (docConsole != null) {\r
562 docConsole.setSaved(false);\r
563 }\r
07e741e0 564 sfc.setSpdPkgDefsRePkg(jCheckBoxRePkg.isSelected() + "");\r
3c0192d4 565 }\r
566 });\r
567 }\r
568 return jCheckBoxRePkg;\r
569 }\r
570\r
a13899c5 571 public static void main(String[] args) {\r
572 new SpdHeader().setVisible(true);\r
573 }\r
574\r
575 /**\r
576 This is the default constructor\r
577 \r
578 **/\r
579 public SpdHeader() {\r
580 super();\r
581 init();\r
582 this.setVisible(true);\r
583 }\r
584\r
585 /**\r
586 This is the override edit constructor\r
587 \r
588 @param inspdHeader The input data of spdHeaderDocument.spdHeader\r
589 \r
590 **/\r
591 public SpdHeader(PackageSurfaceAreaDocument.PackageSurfaceArea inPsa) {\r
592 this();\r
593 sfc = new SpdFileContents(inPsa);\r
594 init(sfc);\r
595 }\r
07e741e0 596\r
597 public SpdHeader(OpeningPackageType opt) {\r
d6d24759 598 this(opt.getXmlSpd());\r
599 docConsole = opt;\r
600 }\r
07e741e0 601\r
a13899c5 602 /**\r
603 This method initializes this\r
604 \r
605 **/\r
606 private void init() {\r
607 this.setContentPane(getTopScrollPane());\r
608 this.setTitle("Package Surface Area Header");\r
609 initFrame();\r
610 }\r
611\r
612 /**\r
613 This method initializes this\r
614 Fill values to all fields if these values are not empty\r
615 \r
616 @param inspdHeader The input data of spdHeaderDocument.spdHeader\r
617 \r
618 **/\r
619 private void init(SpdFileContents sfc) {\r
07e741e0 620 if (sfc.getSpdHdrPkgName() != null) {\r
621 jPackageNameTextField.setText(sfc.getSpdHdrPkgName());\r
622 }\r
623 if (sfc.getSpdHdrGuidValue() != null) {\r
624 jGuidTextField.setText(sfc.getSpdHdrGuidValue());\r
625 }\r
626 if (sfc.getSpdHdrVer() != null) {\r
627 jVersionTextField.setText(sfc.getSpdHdrVer());\r
628 }\r
629 if (sfc.getSpdHdrLicense() != null) {\r
630 jLicenseTextArea.setText(sfc.getSpdHdrLicense());\r
631 }\r
632 if (sfc.getSpdHdrUrl() != null) {\r
633 jUrlTextField.setText(sfc.getSpdHdrUrl());\r
634 }\r
635 if (sfc.getSpdHdrCopyright() != null) {\r
636 jCopyrightTextArea.setText(sfc.getSpdHdrCopyright());\r
637 }\r
638 if (sfc.getSpdHdrAbs() != null) {\r
639 jAbstractTextField.setText(sfc.getSpdHdrAbs());\r
640 }\r
641 if (sfc.getSpdHdrDescription() != null) {\r
642 jDescriptionTextArea.setText(sfc.getSpdHdrDescription());\r
643 }\r
644 if (sfc.getSpdHdrSpec() != null) {\r
645 jSpecificationTextField.setText(sfc.getSpdHdrSpec());\r
646 }\r
647 sfc.setSpdHdrSpec(jSpecificationTextField.getText());\r
648\r
649 if (!sfc.getSpdPkgDefsRdOnly().equals("true")) {\r
650 sfc.setSpdPkgDefsRdOnly("false");\r
651 jCheckBoxRdOnly.setSelected(false);\r
652 } else {\r
653 jCheckBoxRdOnly.setSelected(true);\r
654 }\r
655 if (!sfc.getSpdPkgDefsRePkg().equals("true")) {\r
656 sfc.setSpdPkgDefsRePkg("false");\r
657 jCheckBoxRePkg.setSelected(false);\r
658 } else {\r
659 jCheckBoxRePkg.setSelected(true);\r
660 }\r
661\r
a13899c5 662 }\r
663\r
664 /**\r
665 This method initializes jContentPane\r
666 \r
667 @return javax.swing.JPanel jContentPane\r
668 \r
669 **/\r
670 private JPanel getJContentPane() {\r
671 if (jContentPane == null) {\r
a13899c5 672 jStarLabel1 = new StarLabel();\r
07e741e0 673 jStarLabel1.setLocation(new java.awt.Point(2, rowOne));\r
a13899c5 674 jStarLabel2 = new StarLabel();\r
07e741e0 675 jStarLabel2.setLocation(new java.awt.Point(2, rowTwo));\r
a13899c5 676 jStarLabel3 = new StarLabel();\r
07e741e0 677 jStarLabel3.setLocation(new java.awt.Point(2, rowThree));\r
a13899c5 678 jStarLabel4 = new StarLabel();\r
07e741e0 679 jStarLabel4.setLocation(new java.awt.Point(2, rowFour));\r
a13899c5 680 jStarLabel5 = new StarLabel();\r
07e741e0 681 jStarLabel5.setLocation(new java.awt.Point(2, rowFive));\r
a13899c5 682 jStarLabel6 = new StarLabel();\r
07e741e0 683 jStarLabel6.setLocation(new java.awt.Point(2, rowSeven));\r
a13899c5 684 jStarLabel7 = new StarLabel();\r
07e741e0 685 jStarLabel7.setLocation(new java.awt.Point(2, rowEight));\r
686 jStarLabel8 = new StarLabel();\r
687 jStarLabel8.setLocation(new java.awt.Point(2, rowNine));\r
a13899c5 688 jStarLabel9 = new StarLabel();\r
07e741e0 689 jStarLabel9.setLocation(new java.awt.Point(2, rowTen));\r
690\r
691 jPackageNameLabel = new JLabel();\r
692 jPackageNameLabel.setText("Package Name");\r
693 jPackageNameLabel.setBounds(new java.awt.Rectangle(labelColumn, rowOne, labelWidth, oneRowHeight));\r
694 jGuidLabel = new JLabel();\r
695 jGuidLabel.setBounds(new java.awt.Rectangle(labelColumn, rowTwo, labelWidth, oneRowHeight));\r
696 jGuidLabel.setText("Guid");\r
697 jVersionLabel = new JLabel();\r
698 jVersionLabel.setText("Version");\r
699 jVersionLabel.setBounds(new java.awt.Rectangle(labelColumn, rowThree, labelWidth, oneRowHeight));\r
700 jLabelCopyright = new JLabel();\r
701 jLabelCopyright.setText("Copyright");\r
702 jLabelCopyright.setBounds(new java.awt.Rectangle(labelColumn, rowFour, labelWidth, oneRowHeight));\r
703 jLicenseLabel = new JLabel();\r
704 jLicenseLabel.setText("License");\r
705 jLicenseLabel.setBounds(new java.awt.Rectangle(labelColumn, rowFive, labelWidth, oneRowHeight));\r
706 jUrlLabel = new JLabel();\r
707 jUrlLabel.setBounds(new java.awt.Rectangle(labelColumn, rowSix, labelWidth, oneRowHeight));\r
708 jUrlLabel.setText("URL");\r
709 jAbstractLabel = new JLabel();\r
710 jAbstractLabel.setBounds(new java.awt.Rectangle(labelColumn, rowSeven, labelWidth, oneRowHeight));\r
711 jAbstractLabel.setText("Abstract");\r
712 jDescriptionLabel = new JLabel();\r
713 jDescriptionLabel.setText("Description");\r
714 jDescriptionLabel.setBounds(new java.awt.Rectangle(labelColumn, rowEight, labelWidth, oneRowHeight));\r
715\r
716 jContentPane = new JPanel();\r
717 jContentPane.setLayout(null);\r
718 jContentPane.setLocation(new java.awt.Point(0, 0));\r
719 jContentPane.setPreferredSize(new java.awt.Dimension(dialogWidth - 20, dialogHeight - 20));\r
720\r
a13899c5 721 jContentPane.add(jStarLabel1, null);\r
722 jContentPane.add(jStarLabel2, null);\r
723 jContentPane.add(jStarLabel3, null);\r
724 jContentPane.add(jStarLabel4, null);\r
725 jContentPane.add(jStarLabel5, null);\r
726 jContentPane.add(jStarLabel6, null);\r
727 jContentPane.add(jStarLabel7, null);\r
07e741e0 728 jContentPane.add(jStarLabel8, null);\r
a13899c5 729 jContentPane.add(jStarLabel9, null);\r
a13899c5 730\r
07e741e0 731 jContentPane.add(jPackageNameLabel, null);\r
732 jContentPane.add(getJPackageNameTextField(), null);\r
733 jContentPane.add(jGuidLabel, null);\r
734 jContentPane.add(getJGuidTextField(), null);\r
735 jContentPane.add(jVersionLabel, null);\r
736 jContentPane.add(getJVersionTextField(), null);\r
737 jContentPane.add(getJGenerateGuidButton(), null);\r
738 jContentPane.add(jLabelCopyright, null);\r
739 jContentPane.add(getCopyrightScrollPane(), null);\r
740 jContentPane.add(jLicenseLabel, null);\r
741 jContentPane.add(getJLicenseScrollPane(), null);\r
742 jContentPane.add(jUrlLabel, null);\r
743 jContentPane.add(getJUrlTextField(), null);\r
744 jContentPane.add(jAbstractLabel, null);\r
745 jContentPane.add(getJAbstractTextField(), null);\r
746 jContentPane.add(jDescriptionLabel, null);\r
747 jContentPane.add(getJDescriptionScrollPane(), null);\r
748\r
749// jContentPane.add(getJButtonOk(), null);\r
750// jContentPane.add(getJButtonCancel(), null);\r
751\r
3c0192d4 752 jContentPane.add(getJCheckBoxRdOnly(), null);\r
753 jContentPane.add(getJCheckBoxRePkg(), null);\r
07e741e0 754 jContentPane.add(getJSpecificationTextField(), null);\r
755\r
a13899c5 756 }\r
757 return jContentPane;\r
758 }\r
759\r
760 /* (non-Javadoc)\r
761 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)\r
762 *\r
763 * Override actionPerformed to listen all actions\r
764 *\r
765 */\r
766 public void actionPerformed(ActionEvent arg0) {\r
07e741e0 767\r
768 if (arg0.getSource() == jGenerateGuidButton) {\r
a13899c5 769 //ToDo: invoke GuidValueEditor\r
07e741e0 770 jGuidTextField.setText(Tools.generateUuidString());\r
a490bca8 771 docConsole.setSaved(false);\r
07e741e0 772 sfc.setSpdHdrGuidValue(jGuidTextField.getText());\r
a13899c5 773 }\r
774 }\r
07e741e0 775\r
a13899c5 776 /**\r
777 This method initializes Package type and Compontent type\r
778 \r
779 **/\r
780 private void initFrame() {\r
07e741e0 781\r
a13899c5 782 }\r
783\r
07e741e0 784 /* (non-Javadoc)\r
785 * @see java.awt.event.ComponentListener#componentResized(java.awt.event.ComponentEvent)\r
786 * \r
787 * Override componentResized to resize all components when frame's size is changed\r
788 */\r
789 public void componentResized(ComponentEvent arg0) {\r
790 int intPreferredWidth = dialogWidth;\r
a13899c5 791 int intCurrentWidth = this.getJContentPane().getWidth();\r
07e741e0 792\r
793// Tools.resizeComponentWidth(this.jPackageNameTextField, intCurrentWidth, intPreferredWidth);\r
794// Tools.resizeComponentWidth(this.jGuidTextField, intCurrentWidth, intPreferredWidth);\r
795// Tools.resizeComponentWidth(this.jVersionTextField, intCurrentWidth, intPreferredWidth);\r
796 Tools.resizeComponentWidth(this.jUrlTextField, intCurrentWidth, intPreferredWidth);\r
797 Tools.resizeComponentWidth(this.jLicenseScrollPane, intCurrentWidth, intPreferredWidth);\r
798 Tools.resizeComponentWidth(this.jCopyrightTextArea, intCurrentWidth, intPreferredWidth);\r
799 Tools.resizeComponentWidth(this.jDescriptionScrollPane, intCurrentWidth, intPreferredWidth);\r
800 // Tools.resizeComponentWidth(this.jSpecificationTextField, intCurrentWidth,intPreferredWidth);\r
801 Tools.resizeComponentWidth(this.jAbstractTextField, intCurrentWidth, intPreferredWidth);\r
802// Tools.relocateComponentX(this.jGenerateGuidButton, intCurrentWidth, jGenerateGuidButton.getWidth(), 30);\r
803 }\r
a13899c5 804\r
805 private JScrollPane getTopScrollPane() {\r
07e741e0 806 if (topScrollPane == null) {\r
a13899c5 807 topScrollPane = new JScrollPane();\r
808 topScrollPane.setViewportView(getJContentPane());\r
809 }\r
810 return topScrollPane;\r
811 }\r
812}\r