2 Java class PackagePCD is GUI for create PCD definition elements of spd file.
4 Copyright (c) 2006, Intel Corporation
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 package org
.tianocore
.packaging
;
15 import java
.awt
.Dimension
;
16 import java
.awt
.Toolkit
;
17 import java
.awt
.event
.ActionEvent
;
18 import java
.awt
.event
.ActionListener
;
20 import javax
.swing
.ButtonGroup
;
21 import javax
.swing
.JPanel
;
22 import javax
.swing
.JRadioButton
;
23 import javax
.swing
.JLabel
;
24 import javax
.swing
.JTextField
;
25 import javax
.swing
.JComboBox
;
26 import javax
.swing
.JButton
;
27 import javax
.swing
.JFrame
;
29 import org
.tianocore
.common
.Tools
;
30 import org
.tianocore
.packaging
.common
.ui
.StarLabel
;
33 GUI for create PCD definition elements of spd file
35 @since PackageEditor 1.0
37 public class PackagePCD
extends JFrame
implements ActionListener
{
39 private JPanel jContentPane
= null;
41 private JLabel jLabelItemType
= null;
43 private JLabel jLabelC_Name
= null;
45 private JComboBox jComboBoxItemType
= null;
47 private JTextField jTextFieldC_Name
= null;
49 private JLabel jLabelToken
= null;
51 private JTextField jTextFieldToken
= null;
53 private JLabel jLabelDataType
= null;
55 private JButton jButtonOk
= null;
57 private JButton jButtonCancel
= null;
59 private JComboBox jComboBoxDataType
= null;
61 private JLabel jLabelOverrideID
= null;
63 private JTextField jTextFieldOverrideID
= null;
65 private ButtonGroup bg1
= null;
67 private ButtonGroup bg2
= null;
69 private ButtonGroup bg3
= null;
71 private StarLabel jStarLabel2
= null;
73 private StarLabel jStarLabel3
= null;
75 private SpdFileContents sfc
= null;
77 private StarLabel jStarLabel
= null;
79 private StarLabel jStarLabel1
= null;
82 This method initializes this
85 private void initialize() {
86 this.setTitle("PCD Definition");
87 this.setDefaultCloseOperation(javax
.swing
.WindowConstants
.DISPOSE_ON_CLOSE
);
92 This method initializes jComboBoxItemType
94 @return javax.swing.JComboBox
96 private JComboBox
getJComboBoxItemType() {
97 if (jComboBoxItemType
== null) {
98 jComboBoxItemType
= new JComboBox();
99 jComboBoxItemType
.setBounds(new java
.awt
.Rectangle(160, 110, 320, 20));
101 return jComboBoxItemType
;
105 This method initializes jTextFieldC_Name
107 @return javax.swing.JTextField
109 private JTextField
getJTextFieldC_Name() {
110 if (jTextFieldC_Name
== null) {
111 jTextFieldC_Name
= new JTextField();
112 jTextFieldC_Name
.setBounds(new java
.awt
.Rectangle(160, 60, 320, 20));
114 return jTextFieldC_Name
;
118 This method initializes jTextFieldToken
120 @return javax.swing.JTextField
122 private JTextField
getJTextFieldToken() {
123 if (jTextFieldToken
== null) {
124 jTextFieldToken
= new JTextField();
125 jTextFieldToken
.setBounds(new java
.awt
.Rectangle(160, 135, 320, 20));
127 return jTextFieldToken
;
131 This method initializes jButtonOk
133 @return javax.swing.JButton
135 private JButton
getJButtonOk() {
136 if (jButtonOk
== null) {
137 jButtonOk
= new JButton();
138 jButtonOk
.setText("OK");
139 jButtonOk
.setBounds(new java
.awt
.Rectangle(279,247,90,20));
140 jButtonOk
.addActionListener(this);
146 This method initializes jButtonCancel
148 @return javax.swing.JButton
150 private JButton
getJButtonCancel() {
151 if (jButtonCancel
== null) {
152 jButtonCancel
= new JButton();
153 jButtonCancel
.setText("Cancel");
154 jButtonCancel
.setBounds(new java
.awt
.Rectangle(389,247,90,20));
155 jButtonCancel
.addActionListener(this);
157 return jButtonCancel
;
161 This method initializes jComboBoxDataType
163 @return javax.swing.JComboBox
165 private JComboBox
getJComboBoxDataType() {
166 if (jComboBoxDataType
== null) {
167 jComboBoxDataType
= new JComboBox();
168 jComboBoxDataType
.setBounds(new java
.awt
.Rectangle(160, 160, 320, 20));
170 return jComboBoxDataType
;
174 This method initializes jTextFieldOverrideID
176 @return javax.swing.JTextField
178 private JTextField
getJTextFieldOverrideID() {
179 if (jTextFieldOverrideID
== null) {
180 jTextFieldOverrideID
= new JTextField();
181 jTextFieldOverrideID
.setBounds(new java
.awt
.Rectangle(159,198,320,20));
183 return jTextFieldOverrideID
;
187 This is the default constructor
189 public PackagePCD(SpdFileContents sfc
) {
197 This method initializes this
201 private void init() {
202 this.setSize(500, 450);
203 this.setContentPane(getJContentPane());
204 this.setTitle("Add PCDs");
206 this.getRootPane().setDefaultButton(jButtonOk
);
208 this.setVisible(true);
212 Start the window at the center of screen
215 protected void centerWindow(int intWidth
, int intHeight
) {
216 Dimension d
= Toolkit
.getDefaultToolkit().getScreenSize();
217 this.setLocation((d
.width
- intWidth
) / 2, (d
.height
- intHeight
) / 2);
221 Start the window at the center of screen
224 protected void centerWindow() {
225 centerWindow(this.getSize().width
, this.getSize().height
);
228 private JPanel
getJContentPane() {
229 if (jContentPane
== null) {
230 jLabelOverrideID
= new JLabel();
231 jLabelOverrideID
.setBounds(new java
.awt
.Rectangle(14,197,140,20));
232 jLabelOverrideID
.setText("Default Value");
233 jLabelC_Name
= new JLabel();
234 jLabelC_Name
.setText("C_Name");
235 jLabelC_Name
.setBounds(new java
.awt
.Rectangle(15, 60, 140, 20));
236 jLabelDataType
= new JLabel();
237 jLabelDataType
.setText("Data Type");
238 jLabelDataType
.setBounds(new java
.awt
.Rectangle(15, 160, 140, 20));
239 jLabelToken
= new JLabel();
240 jLabelToken
.setText("Token");
241 jLabelToken
.setBounds(new java
.awt
.Rectangle(15, 135, 140, 20));
242 jLabelItemType
= new JLabel();
243 jLabelItemType
.setText("Item Type");
244 jLabelItemType
.setBounds(new java
.awt
.Rectangle(15, 110, 140, 20));
245 bg1
= new ButtonGroup();
246 bg2
= new ButtonGroup();
247 bg3
= new ButtonGroup();
248 //bg1.add(getJRadioButtonPCData());
249 //bg2.add(getJRadioButtonPcdBuildData());
250 jContentPane
= new JPanel();
251 jContentPane
.setLayout(null);
252 //jContentPane.add(bg1);
253 jContentPane
.add(jLabelItemType
, null);
254 jContentPane
.add(jLabelC_Name
, null);
255 jContentPane
.add(getJTextFieldC_Name(), null);
256 jContentPane
.add(jLabelToken
, null);
257 jContentPane
.add(getJTextFieldToken(), null);
258 jContentPane
.add(jLabelDataType
, null);
259 jContentPane
.add(getJButtonOk(), null);
260 jContentPane
.add(getJButtonCancel(), null);
261 jContentPane
.add(getJComboBoxItemType(), null);
262 jContentPane
.add(getJComboBoxDataType(), null);
263 jContentPane
.add(jLabelOverrideID
, null);
264 jContentPane
.add(getJTextFieldOverrideID(), null);
266 jStarLabel
= new StarLabel();
267 jStarLabel1
= new StarLabel();
268 jStarLabel1
.setBounds(new java
.awt
.Rectangle(6, 59, 10, 20));
269 jStarLabel2
= new StarLabel();
270 jStarLabel3
= new StarLabel();
271 jStarLabel
.setLocation(new java
.awt
.Point(6, 110));
272 jStarLabel
.setLocation(new java
.awt
.Point(5, 85));
273 jStarLabel2
.setLocation(new java
.awt
.Point(5, 134));
274 jStarLabel3
.setLocation(new java
.awt
.Point(5, 159));
275 jContentPane
.add(jStarLabel2
, null);
276 jContentPane
.add(jStarLabel3
, null);
277 jContentPane
.add(jStarLabel
, null);
278 jContentPane
.add(jStarLabel1
, null);
284 This method initializes comboboxes
287 private void initFrame() {
289 jComboBoxItemType
.addItem("FEATURE_FLAG");
290 jComboBoxItemType
.addItem("FIXED_AT_BUILD");
291 jComboBoxItemType
.addItem("PATCHABLE_IN_MODULE");
292 jComboBoxItemType
.addItem("DYNAMIC");
293 jComboBoxItemType
.addItem("DYNAMIC_EX");
295 jComboBoxDataType
.addItem("UINT8");
296 jComboBoxDataType
.addItem("UINT16");
297 jComboBoxDataType
.addItem("UINT32");
298 jComboBoxDataType
.addItem("UINT64");
299 jComboBoxDataType
.addItem("VOID*");
300 jComboBoxDataType
.addItem("BOOLEAN");
303 public void actionPerformed(ActionEvent arg0
) {
304 if (arg0
.getSource() == jButtonOk
) {
308 if (arg0
.getSource() == jButtonCancel
) {
315 protected void save() {
317 sfc
.genSpdPcdDefinitions(jComboBoxItemType
.getSelectedItem().toString(), jTextFieldC_Name
.getText(),
318 jTextFieldToken
.getText(), jComboBoxDataType
.getSelectedItem().toString(), null,
319 null, null, null, null, null, jTextFieldOverrideID
.getText());
321 } // @jve:decl-index=0:visual-constraint="22,11"