]>
git.proxmox.com Git - mirror_edk2.git/blob - Tools/Source/PackageEditor/src/org/tianocore/packaging/UpdateProtocols.java
2 Java class UpdateProtocols is GUI for update protocol declarations in 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 javax
.swing
.JPanel
;
16 import javax
.swing
.JFrame
;
17 import javax
.swing
.JLabel
;
18 import javax
.swing
.JTextField
;
19 import javax
.swing
.JButton
;
21 import javax
.swing
.JScrollPane
;
22 import javax
.swing
.JTable
;
23 import javax
.swing
.table
.*;
25 import org
.tianocore
.common
.Tools
;
27 import java
.awt
.Dimension
;
28 import java
.awt
.Toolkit
;
29 import java
.awt
.event
.ActionEvent
;
30 import java
.awt
.event
.ActionListener
;
34 GUI for update protocol declarations in spd file
36 @since PackageEditor 1.0
38 public class UpdateProtocols
extends JFrame
implements ActionListener
{
40 private JPanel jContentPane
= null;
42 private JScrollPane jScrollPane
= null;
44 private JTable jTable
= null;
46 private SpdFileContents sfc
= null;
48 private JButton jButtonOk
= null;
50 private JButton jButtonCancel
= null;
52 private DefaultTableModel model
= null;
54 private JButton jButton
= null;
57 This is the default constructor
59 public UpdateProtocols(SpdFileContents sfc
) {
66 public void actionPerformed(ActionEvent arg0
) {
67 if (arg0
.getSource() == jButtonOk
) {
72 if (arg0
.getSource() == jButtonCancel
) {
77 if (arg0
.getSource() == jButton
) {
78 String
[] o
= { "", "", "" };
84 This method initializes this
88 private void initialize() {
89 this.setSize(604, 553);
90 this.setDefaultCloseOperation(javax
.swing
.WindowConstants
.DISPOSE_ON_CLOSE
);
91 this.setTitle("Update Protocol Declarations");
92 this.setContentPane(getJContentPane());
97 Start the window at the center of screen
100 protected void centerWindow(int intWidth
, int intHeight
) {
101 Dimension d
= Toolkit
.getDefaultToolkit().getScreenSize();
102 this.setLocation((d
.width
- intWidth
) / 2, (d
.height
- intHeight
) / 2);
106 Start the window at the center of screen
109 protected void centerWindow() {
110 centerWindow(this.getSize().width
, this.getSize().height
);
113 This method initializes jContentPane
115 @return javax.swing.JPanel
117 private JPanel
getJContentPane() {
118 if (jContentPane
== null) {
119 jContentPane
= new JPanel();
120 jContentPane
.setLayout(null);
121 jContentPane
.add(getJScrollPane(), null);
122 jContentPane
.add(getJButtonOk(), null);
123 jContentPane
.add(getJButtonCancel(), null);
124 jContentPane
.add(getJButton(), null);
130 This method initializes jScrollPane
132 @return javax.swing.JScrollPane
134 private JScrollPane
getJScrollPane() {
135 if (jScrollPane
== null) {
136 jScrollPane
= new JScrollPane();
137 jScrollPane
.setBounds(new java
.awt
.Rectangle(38, 45, 453, 419));
138 jScrollPane
.setViewportView(getJTable());
144 This method initializes jTable
146 @return javax.swing.JTable
148 private JTable
getJTable() {
149 if (jTable
== null) {
150 model
= new DefaultTableModel();
151 jTable
= new JTable(model
);
152 jTable
.setRowHeight(20);
153 model
.addColumn("Name");
154 model
.addColumn("C_Name");
155 model
.addColumn("GUID");
157 // initialize table using SpdFileContents object
159 if (sfc
.getSpdProtocolDeclarationCount() == 0) {
162 String
[][] saa
= new String
[sfc
.getSpdProtocolDeclarationCount()][3];
163 sfc
.getSpdProtocolDeclarations(saa
);
165 while (i
< saa
.length
) {
166 model
.addRow(saa
[i
]);
170 jTable
.getColumnModel().getColumn(2).setCellEditor(new GuidEditor());
177 Remove original protocol declarations before saving updated ones
179 protected void save() {
180 if (jTable
.isEditing()) {
181 jTable
.getCellEditor().stopCellEditing();
183 sfc
.removeSpdProtocolDeclaration();
184 int rowCount
= model
.getRowCount();
186 while (i
< rowCount
) {
188 if (model
.getValueAt(i
, 0) != null) {
189 name
= model
.getValueAt(i
, 0).toString();
192 if (model
.getValueAt(i
, 1) != null) {
193 cName
= model
.getValueAt(i
, 1).toString();
196 if (model
.getValueAt(i
, 2) != null) {
197 guid
= model
.getValueAt(i
, 2).toString();
199 sfc
.genSpdProtocolDeclarations(name
, cName
, guid
, null);
205 This method initializes jButtonOk
207 @return javax.swing.JButton
209 private JButton
getJButtonOk() {
210 if (jButtonOk
== null) {
211 jButtonOk
= new JButton();
212 jButtonOk
.setText("Ok");
213 jButtonOk
.setSize(new java
.awt
.Dimension(84, 20));
214 jButtonOk
.setLocation(new java
.awt
.Point(316, 486));
215 jButtonOk
.addActionListener(this);
221 This method initializes jButtonCancel
223 @return javax.swing.JButton
225 private JButton
getJButtonCancel() {
226 if (jButtonCancel
== null) {
227 jButtonCancel
= new JButton();
228 jButtonCancel
.setText("Cancel");
229 jButtonCancel
.setSize(new java
.awt
.Dimension(82, 20));
230 jButtonCancel
.setLocation(new java
.awt
.Point(411, 486));
231 jButtonCancel
.addActionListener(this);
233 return jButtonCancel
;
237 This method initializes jButton
239 @return javax.swing.JButton
241 private JButton
getJButton() {
242 if (jButton
== null) {
243 jButton
= new JButton();
244 jButton
.setBounds(new java
.awt
.Rectangle(232, 486, 71, 19));
245 jButton
.setText("Insert");
246 jButton
.addActionListener(this);
250 } // @jve:decl-index=0:visual-constraint="11,7"