]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/module/ui/ModuleExterns.java
Fixed a spelling error and changed the Package Headers Tab title to be Package Header...
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / module / ui / ModuleExterns.java
CommitLineData
a13899c5 1/** @file\r
2 \r
3 The file is used to create, update DataHub of MSA/MBD 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
15package org.tianocore.frameworkwizard.module.ui;\r
16\r
06a19cee 17import java.awt.Dimension;\r
a13899c5 18import java.awt.event.ActionEvent;\r
19import java.awt.event.ComponentEvent;\r
a13899c5 20import java.awt.event.ItemListener;\r
06a19cee 21import java.awt.event.MouseEvent;\r
a13899c5 22import java.util.Vector;\r
23\r
24import javax.swing.JButton;\r
a13899c5 25import javax.swing.JPanel;\r
26import javax.swing.JScrollPane;\r
06a19cee 27import javax.swing.JTable;\r
28import javax.swing.ListSelectionModel;\r
29import javax.swing.event.ListSelectionEvent;\r
a13899c5 30\r
31import org.tianocore.ExternsDocument;\r
32import org.tianocore.PcdDriverTypes;\r
33import org.tianocore.ExternsDocument.Externs;\r
34import org.tianocore.ExternsDocument.Externs.Extern;\r
35import org.tianocore.ModuleSurfaceAreaDocument.ModuleSurfaceArea;\r
36import org.tianocore.frameworkwizard.common.DataType;\r
a13899c5 37import org.tianocore.frameworkwizard.common.EnumerationData;\r
06a19cee 38import org.tianocore.frameworkwizard.common.IDefaultTableModel;\r
a13899c5 39import org.tianocore.frameworkwizard.common.Log;\r
a13899c5 40import org.tianocore.frameworkwizard.common.Tools;\r
79cb6fdb 41import org.tianocore.frameworkwizard.common.Identifications.OpeningModuleType;\r
06a19cee 42import org.tianocore.frameworkwizard.common.ui.IFrame;\r
a13899c5 43import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
79cb6fdb 44import org.tianocore.frameworkwizard.module.Identifications.Externs.ExternsIdentification;\r
45import org.tianocore.frameworkwizard.module.Identifications.Externs.ExternsVector;\r
06a19cee 46import org.tianocore.frameworkwizard.module.ui.dialog.ExternsDlg;\r
a13899c5 47\r
48/**\r
49 The class is used to create, update DataHub of MSA/MBD file \r
50 It extends IInternalFrame\r
51 \r
52\r
53\r
54 **/\r
55public class ModuleExterns extends IInternalFrame implements ItemListener {\r
56\r
57 ///\r
58 /// Define class Serial Version UID\r
59 ///\r
60 private static final long serialVersionUID = -7382008402932047191L;\r
61\r
62 //\r
63 //Define class members\r
64 //\r
65 private JPanel jContentPane = null;\r
66\r
a13899c5 67 private JButton jButtonAdd = null;\r
68\r
69 private JButton jButtonRemove = null;\r
70\r
71 private JButton jButtonUpdate = null;\r
72\r
73 private JScrollPane jScrollPane = null;\r
74\r
06a19cee 75 private JScrollPane jScrollPaneTable = null;\r
a13899c5 76\r
06a19cee 77 private JTable jTable = null;\r
a13899c5 78\r
79 //\r
80 // Not used by UI\r
81 //\r
a13899c5 82 private OpeningModuleType omt = null;\r
83\r
84 private ModuleSurfaceArea msa = null;\r
85\r
86 private ExternsDocument.Externs externs = null;\r
87\r
88 private ExternsIdentification id = null;\r
89\r
90 private ExternsVector vid = new ExternsVector();\r
91\r
06a19cee 92 private IDefaultTableModel model = null;\r
a13899c5 93\r
06a19cee 94 private int selectedRow = -1;\r
a13899c5 95\r
96 /**\r
97 This method initializes jButtonAdd \r
98 \r
99 @return javax.swing.JButton jButtonAdd\r
100 \r
101 **/\r
102 private JButton getJButtonAdd() {\r
103 if (jButtonAdd == null) {\r
104 jButtonAdd = new JButton();\r
105 jButtonAdd.setBounds(new java.awt.Rectangle(230, 195, 80, 20));\r
106 jButtonAdd.setText("Add");\r
107 jButtonAdd.addActionListener(this);\r
108 jButtonAdd.setPreferredSize(new java.awt.Dimension(80, 20));\r
109 }\r
110 return jButtonAdd;\r
111 }\r
112\r
113 /**\r
114 This method initializes jButtonRemove \r
115 \r
116 @return javax.swing.JButton jButtonRemove\r
117 \r
118 **/\r
119 private JButton getJButtonRemove() {\r
120 if (jButtonRemove == null) {\r
121 jButtonRemove = new JButton();\r
122 jButtonRemove.setBounds(new java.awt.Rectangle(400, 195, 80, 20));\r
123 jButtonRemove.setText("Remove");\r
124 jButtonRemove.addActionListener(this);\r
125 jButtonRemove.setPreferredSize(new java.awt.Dimension(80, 20));\r
126 }\r
127 return jButtonRemove;\r
128 }\r
129\r
130 /**\r
131 This method initializes jButtonUpdate \r
132 \r
133 @return javax.swing.JButton jButtonUpdate\r
134 \r
135 **/\r
136 private JButton getJButtonUpdate() {\r
137 if (jButtonUpdate == null) {\r
138 jButtonUpdate = new JButton();\r
139 jButtonUpdate.setBounds(new java.awt.Rectangle(315, 195, 80, 20));\r
140 jButtonUpdate.setPreferredSize(new java.awt.Dimension(80, 20));\r
06a19cee 141 jButtonUpdate.setText("Edit");\r
a13899c5 142 jButtonUpdate.addActionListener(this);\r
143 }\r
144 return jButtonUpdate;\r
145 }\r
146\r
a13899c5 147 /**\r
148 This method initializes jScrollPane \r
149 \r
150 @return javax.swing.JScrollPane \r
151 */\r
152 private JScrollPane getJScrollPane() {\r
153 if (jScrollPane == null) {\r
154 jScrollPane = new JScrollPane();\r
155 jScrollPane.setViewportView(getJContentPane());\r
156 }\r
157 return jScrollPane;\r
158 }\r
159\r
160 /**\r
06a19cee 161 This method initializes jScrollPaneTable \r
a13899c5 162 \r
06a19cee 163 @return javax.swing.JScrollPane \r
a13899c5 164 **/\r
06a19cee 165 private JScrollPane getJScrollPaneTable() {\r
166 if (jScrollPaneTable == null) {\r
167 jScrollPaneTable = new JScrollPane();\r
168 jScrollPaneTable.setBounds(new java.awt.Rectangle(15, 10, 470, 420));\r
169 jScrollPaneTable.setPreferredSize(new Dimension(470, 420));\r
170 jScrollPaneTable.setViewportView(getJTable());\r
a13899c5 171 }\r
06a19cee 172 return jScrollPaneTable;\r
a13899c5 173 }\r
174\r
175 /**\r
06a19cee 176 This method initializes jTable \r
a13899c5 177 \r
06a19cee 178 @return javax.swing.JTable \r
a13899c5 179 **/\r
06a19cee 180 private JTable getJTable() {\r
181 if (jTable == null) {\r
182 jTable = new JTable();\r
183 model = new IDefaultTableModel();\r
184 jTable = new JTable(model);\r
185 jTable.setRowHeight(20);\r
186\r
187 model.addColumn("Name");\r
188 model.addColumn("Type");\r
189\r
190 jTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
191 jTable.getSelectionModel().addListSelectionListener(this);\r
192 jTable.getModel().addTableModelListener(this);\r
193 jTable.addMouseListener(this);\r
a13899c5 194 }\r
06a19cee 195 return jTable;\r
a13899c5 196 }\r
197\r
198 public static void main(String[] args) {\r
199\r
200 }\r
201\r
202 /**\r
203 This method initializes this\r
204 \r
205 **/\r
206 private void init() {\r
207 this.setSize(500, 515);\r
208 this.setContentPane(getJScrollPane());\r
209 this.setTitle("Externs");\r
a13899c5 210 }\r
211\r
212 /**\r
213 This method initializes this\r
214 Fill values to all fields if these values are not empty\r
215 \r
216 @param inPackageDependencies\r
217\r
218 **/\r
219 private void init(Externs inExterns) {\r
220 init();\r
221 this.externs = inExterns;\r
222\r
223 if (this.externs != null) {\r
224 //\r
225 // Get PcdIsDriver\r
226 //\r
227 if (this.externs.getPcdIsDriver() != null) {\r
06a19cee 228 String arg0 = this.externs.getPcdIsDriver().toString();\r
229 String arg1 = EnumerationData.EXTERNS_PCD_IS_DRIVER;\r
230\r
231 id = new ExternsIdentification(arg0, arg1, null, null);\r
232 vid.addExterns(id);\r
a13899c5 233 }\r
06a19cee 234\r
a13899c5 235 //\r
236 // Get specification\r
237 //\r
238 if (this.externs.getSpecificationList().size() > 0) {\r
239 for (int index = 0; index < this.externs.getSpecificationList().size(); index++) {\r
240 String arg0 = externs.getSpecificationList().get(index);\r
241 String arg1 = EnumerationData.EXTERNS_SPECIFICATION;\r
242\r
243 id = new ExternsIdentification(arg0, arg1, null, null);\r
244 vid.addExterns(id);\r
245 }\r
246 }\r
247\r
248 //\r
249 // Get Externs list\r
250 //\r
251 if (this.externs.getExternList().size() > 0) {\r
252 for (int index = 0; index < this.externs.getExternList().size(); index++) {\r
253 String arg0 = null;\r
254 String arg1 = null;\r
255 if (this.externs.getExternList().get(index).getModuleEntryPoint() != null) {\r
256 arg0 = this.externs.getExternList().get(index).getModuleEntryPoint();\r
257 arg1 = EnumerationData.EXTERNS_MODULE_ENTRY_POINT;\r
258 }\r
259 if (this.externs.getExternList().get(index).getModuleUnloadImage() != null) {\r
260 arg0 = this.externs.getExternList().get(index).getModuleUnloadImage();\r
261 arg1 = EnumerationData.EXTERNS_MODULE_UNLOAD_IMAGE;\r
262 }\r
263\r
264 if (this.externs.getExternList().get(index).getConstructor() != null) {\r
265 arg0 = this.externs.getExternList().get(index).getConstructor();\r
266 arg1 = EnumerationData.EXTERNS_CONSTRUCTOR;\r
267 }\r
268 if (this.externs.getExternList().get(index).getDestructor() != null) {\r
269 arg0 = this.externs.getExternList().get(index).getDestructor();\r
270 arg1 = EnumerationData.EXTERNS_DESTRUCTOR;\r
271 }\r
272\r
273 if (this.externs.getExternList().get(index).getDriverBinding() != null) {\r
274 arg0 = this.externs.getExternList().get(index).getDriverBinding();\r
275 arg1 = EnumerationData.EXTERNS_DRIVER_BINDING;\r
276 }\r
277 if (this.externs.getExternList().get(index).getComponentName() != null) {\r
278 arg0 = this.externs.getExternList().get(index).getComponentName();\r
279 arg1 = EnumerationData.EXTERNS_COMPONENT_NAME;\r
280 }\r
281 if (this.externs.getExternList().get(index).getDriverConfig() != null) {\r
282 arg0 = this.externs.getExternList().get(index).getDriverConfig();\r
283 arg1 = EnumerationData.EXTERNS_DRIVER_CONFIG;\r
284 }\r
285 if (this.externs.getExternList().get(index).getDriverDiag() != null) {\r
286 arg0 = this.externs.getExternList().get(index).getDriverDiag();\r
287 arg1 = EnumerationData.EXTERNS_DRIVER_DIAG;\r
288 }\r
289\r
290 if (this.externs.getExternList().get(index).getSetVirtualAddressMapCallBack() != null) {\r
291 arg0 = this.externs.getExternList().get(index).getSetVirtualAddressMapCallBack();\r
292 arg1 = EnumerationData.EXTERNS_SET_VIRTUAL_ADDRESS_MAP_CALL_BACK;\r
293 }\r
294 if (this.externs.getExternList().get(index).getExitBootServicesCallBack() != null) {\r
295 arg0 = this.externs.getExternList().get(index).getExitBootServicesCallBack();\r
296 arg1 = EnumerationData.EXTERNS_EXIT_BOOT_SERVICES_CALL_BACK;\r
297 }\r
298\r
299 String arg2 = externs.getExternList().get(index).getFeatureFlag();\r
300 Vector<String> arg3 = Tools\r
301 .convertListToVector(externs.getExternList().get(index).getSupArchList());\r
302\r
303 id = new ExternsIdentification(arg0, arg1, arg2, arg3);\r
304 vid.addExterns(id);\r
305 }\r
306 }\r
307 }\r
06a19cee 308 showTable();\r
a13899c5 309 }\r
310\r
311 /**\r
312 This is the default constructor\r
313 \r
314 **/\r
315 public ModuleExterns() {\r
316 super();\r
317 init();\r
318 this.setVisible(true);\r
319 }\r
320\r
321 /**\r
322 This is the override edit constructor\r
323 \r
324 @param inExterns The input data of ExternsDocument.Externs\r
325 \r
326 **/\r
327 public ModuleExterns(OpeningModuleType inOmt) {\r
328 super();\r
329 this.omt = inOmt;\r
330 this.msa = omt.getXmlMsa();\r
331 init(msa.getExterns());\r
332 this.setVisible(true);\r
333 }\r
334\r
335 /**\r
336 This method initializes jContentPane\r
337 \r
338 @return javax.swing.JPanel jContentPane\r
339 \r
340 **/\r
341 private JPanel getJContentPane() {\r
342 if (jContentPane == null) {\r
a13899c5 343 jContentPane = new JPanel();\r
344 jContentPane.setLayout(null);\r
06a19cee 345 jContentPane.setPreferredSize(new java.awt.Dimension(490, 490));\r
346\r
a13899c5 347 jContentPane.add(getJButtonAdd(), null);\r
348 jContentPane.add(getJButtonRemove(), null);\r
349 jContentPane.add(getJButtonUpdate(), null);\r
06a19cee 350 jContentPane.add(getJScrollPaneTable(), null);\r
a13899c5 351 }\r
352 return jContentPane;\r
353 }\r
354\r
06a19cee 355 private void showEdit(int index) {\r
356 ExternsDlg dlg = new ExternsDlg(vid.getExterns(index), new IFrame());\r
357 int result = dlg.showDialog();\r
358 if (result == DataType.RETURN_TYPE_OK) {\r
359 if (index == -1) {\r
360 this.vid.addExterns(dlg.getId());\r
361 } else {\r
362 this.vid.setExterns(dlg.getId(), index);\r
363 }\r
364 this.showTable();\r
365 this.save();\r
366 dlg.dispose();\r
367 }\r
368 if (result == DataType.RETURN_TYPE_CANCEL) {\r
369 dlg.dispose();\r
370 }\r
371 }\r
372\r
373 /**\r
374 Clear all table rows\r
375 \r
376 **/\r
377 private void clearAll() {\r
378 if (model != null) {\r
379 for (int index = model.getRowCount() - 1; index >= 0; index--) {\r
380 model.removeRow(index);\r
381 }\r
382 }\r
383 }\r
384\r
a13899c5 385 /**\r
06a19cee 386 Read content of vector and put then into table\r
a13899c5 387 \r
388 **/\r
06a19cee 389 private void showTable() {\r
390 clearAll();\r
391\r
392 if (vid.size() > 0) {\r
393 for (int index = 0; index < vid.size(); index++) {\r
394 model.addRow(vid.toStringVector(index));\r
395 }\r
396 }\r
397 this.jTable.repaint();\r
398 this.jTable.updateUI();\r
a13899c5 399 }\r
400\r
401 /* (non-Javadoc)\r
402 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)\r
403 *\r
404 * Override actionPerformed to listen all actions\r
405 * \r
406 */\r
407 public void actionPerformed(ActionEvent arg0) {\r
408 if (arg0.getSource() == jButtonAdd) {\r
06a19cee 409 showEdit(-1);\r
a13899c5 410 }\r
411 if (arg0.getSource() == jButtonUpdate) {\r
06a19cee 412 if (this.selectedRow < 0) {\r
413 Log.err("Please select one record first.");\r
a13899c5 414 return;\r
415 }\r
06a19cee 416 showEdit(selectedRow);\r
a13899c5 417 }\r
a13899c5 418\r
06a19cee 419 if (arg0.getSource() == jButtonRemove) {\r
420 if (jTable.isEditing()) {\r
421 jTable.getCellEditor().stopCellEditing();\r
a13899c5 422 }\r
06a19cee 423 if (selectedRow > -1) {\r
424 this.model.removeRow(selectedRow);\r
425 this.vid.removeExterns(selectedRow);\r
426 selectedRow = -1;\r
427 this.save();\r
a13899c5 428 }\r
429 }\r
a13899c5 430 }\r
431\r
432 /**\r
433 Save all components of Externs\r
434 if exists externs, set the value directly\r
435 if not exists externs, new an instance first\r
436 \r
437 **/\r
438 public void save() {\r
439 try {\r
440 int count = this.vid.size();\r
441\r
442 this.externs = Externs.Factory.newInstance();\r
06a19cee 443 // //\r
444 // // Save PcdIsDriver first\r
445 // //\r
446 // if (!this.jComboBoxPcdIsDriver.getSelectedItem().toString().equals(DataType.EMPTY_SELECT_ITEM)) {\r
447 // externs.setPcdIsDriver(PcdDriverTypes.Enum.forString(this.jComboBoxPcdIsDriver.getSelectedItem()\r
448 // .toString()));\r
449 // }\r
a13899c5 450\r
451 if (count > 0) {\r
452 for (int index = 0; index < count; index++) {\r
06a19cee 453 //\r
454 // Save Pcd Is Driver\r
455 //\r
456 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_PCD_IS_DRIVER)) {\r
457 externs.setPcdIsDriver(PcdDriverTypes.Enum.forString(vid.getExterns(index).getName()));\r
458 continue;\r
459 }\r
460\r
a13899c5 461 //\r
462 // Save specfication\r
463 //\r
464 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_SPECIFICATION)) {\r
465 if (!isEmpty(vid.getExterns(index).getName())) {\r
466 this.externs.addNewSpecification();\r
467 this.externs.setSpecificationArray(externs.getSpecificationList().size() - 1,\r
468 vid.getExterns(index).getName());\r
469 }\r
470 } else {\r
471 //\r
472 // Save extern\r
473 //\r
474 Extern e = Extern.Factory.newInstance();\r
475\r
476 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_MODULE_ENTRY_POINT)) {\r
477 if (!isEmpty(vid.getExterns(index).getName())) {\r
478 e.setModuleEntryPoint(vid.getExterns(index).getName());\r
479 }\r
480 }\r
481 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_MODULE_UNLOAD_IMAGE)) {\r
482 if (!isEmpty(vid.getExterns(index).getName())) {\r
483 e.setModuleUnloadImage(vid.getExterns(index).getName());\r
484 }\r
485 }\r
486\r
487 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_CONSTRUCTOR)) {\r
488 if (!isEmpty(vid.getExterns(index).getName())) {\r
489 e.setConstructor(vid.getExterns(index).getName());\r
490 }\r
491 }\r
492 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_DESTRUCTOR)) {\r
493 if (!isEmpty(vid.getExterns(index).getName())) {\r
494 e.setDestructor(vid.getExterns(index).getName());\r
495 }\r
496 }\r
497\r
498 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_DRIVER_BINDING)) {\r
499 if (!isEmpty(vid.getExterns(index).getName())) {\r
500 e.setDriverBinding(vid.getExterns(index).getName());\r
501 }\r
502 }\r
503 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_COMPONENT_NAME)) {\r
504 if (!isEmpty(vid.getExterns(index).getName())) {\r
505 e.setComponentName(vid.getExterns(index).getName());\r
506 }\r
507 }\r
508 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_DRIVER_CONFIG)) {\r
509 if (!isEmpty(vid.getExterns(index).getName())) {\r
510 e.setDriverConfig(vid.getExterns(index).getName());\r
511 }\r
512 }\r
513 if (vid.getExterns(index).getType().equals(EnumerationData.EXTERNS_DRIVER_DIAG)) {\r
514 if (!isEmpty(vid.getExterns(index).getName())) {\r
515 e.setDriverDiag(vid.getExterns(index).getName());\r
516 }\r
517 }\r
518\r
519 if (vid.getExterns(index).getType()\r
520 .equals(EnumerationData.EXTERNS_SET_VIRTUAL_ADDRESS_MAP_CALL_BACK)) {\r
521 if (!isEmpty(vid.getExterns(index).getName())) {\r
522 e.setSetVirtualAddressMapCallBack(vid.getExterns(index).getName());\r
523 }\r
524 }\r
525 if (vid.getExterns(index).getType()\r
526 .equals(EnumerationData.EXTERNS_EXIT_BOOT_SERVICES_CALL_BACK)) {\r
527 if (!isEmpty(vid.getExterns(index).getName())) {\r
528 e.setExitBootServicesCallBack(vid.getExterns(index).getName());\r
529 }\r
530 }\r
531\r
532 if (!isEmpty(vid.getExterns(index).getFeatureFlag())) {\r
533 e.setFeatureFlag(vid.getExterns(index).getFeatureFlag());\r
534 }\r
535 if (vid.getExterns(index).getSupArchList() != null\r
536 && vid.getExterns(index).getSupArchList().size() > 0) {\r
537 e.setSupArchList(vid.getExterns(index).getSupArchList());\r
538 }\r
539\r
540 this.externs.addNewExtern();\r
541 this.externs.setExternArray(this.externs.getExternList().size() - 1, e);\r
542 }\r
543 }\r
544 }\r
545\r
546 this.msa.setExterns(externs);\r
547 this.omt.setSaved(false);\r
548 } catch (Exception e) {\r
549 Log.err("Update Externs", e.getMessage());\r
550 }\r
551 }\r
552\r
553 /* (non-Javadoc)\r
06a19cee 554 * @see javax.swing.event.ListSelectionListener#valueChanged(javax.swing.event.ListSelectionEvent)\r
555 *\r
a13899c5 556 */\r
06a19cee 557 public void valueChanged(ListSelectionEvent arg0) {\r
558 if (arg0.getValueIsAdjusting()) {\r
a13899c5 559 return;\r
560 }\r
06a19cee 561 ListSelectionModel lsm = (ListSelectionModel) arg0.getSource();\r
562 if (lsm.isSelectionEmpty()) {\r
a13899c5 563 return;\r
a13899c5 564 } else {\r
06a19cee 565 selectedRow = lsm.getMinSelectionIndex();\r
a13899c5 566 }\r
a13899c5 567 }\r
568\r
569 /* (non-Javadoc)\r
06a19cee 570 * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)\r
a13899c5 571 *\r
a13899c5 572 */\r
06a19cee 573 public void mouseClicked(MouseEvent arg0) {\r
574 if (arg0.getClickCount() == 2) {\r
575 if (this.selectedRow < 0) {\r
576 return;\r
a13899c5 577 } else {\r
06a19cee 578 showEdit(selectedRow);\r
a13899c5 579 }\r
a13899c5 580 }\r
581 }\r
06a19cee 582\r
583 /* (non-Javadoc)\r
584 * @see java.awt.event.ComponentListener#componentResized(java.awt.event.ComponentEvent)\r
585 * \r
586 * Override componentResized to resize all components when frame's size is changed\r
587 */\r
588 public void componentResized(ComponentEvent arg0) {\r
589 int intCurrentWidth = this.getJContentPane().getWidth();\r
590 int intCurrentHeight = this.getJContentPane().getHeight();\r
591 int intPreferredWidth = this.getJContentPane().getPreferredSize().width;\r
592 int intPreferredHeight = this.getJContentPane().getPreferredSize().height;\r
593\r
594 resizeComponent(this.jScrollPaneTable, intCurrentWidth, intCurrentHeight, intPreferredWidth, intPreferredHeight);\r
595 relocateComponent(this.jButtonAdd, intCurrentWidth, intCurrentHeight, intPreferredWidth, intPreferredHeight,\r
596 DataType.SPACE_TO_RIGHT_FOR_ADD_BUTTON, DataType.SPACE_TO_BOTTOM_FOR_ADD_BUTTON);\r
597 relocateComponent(this.jButtonRemove, intCurrentWidth, intCurrentHeight, intPreferredWidth, intPreferredHeight,\r
598 DataType.SPACE_TO_RIGHT_FOR_REMOVE_BUTTON, DataType.SPACE_TO_BOTTOM_FOR_REMOVE_BUTTON);\r
599 relocateComponent(this.jButtonUpdate, intCurrentWidth, intCurrentHeight, intPreferredWidth, intPreferredHeight,\r
600 DataType.SPACE_TO_RIGHT_FOR_UPDATE_BUTTON, DataType.SPACE_TO_BOTTOM_FOR_UPDATE_BUTTON);\r
601 }\r
a13899c5 602}\r