1 /*
2 * Copyright (c) 2006 Stiftung Deutsches Elektronen-Synchroton,
3 * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY.
4 *
5 * THIS SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "../AS IS" BASIS.
6 * WITHOUT WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED
7 * TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR PARTICULAR PURPOSE AND
8 * NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
9 * FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
10 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
11 * THE USE OR OTHER DEALINGS IN THE SOFTWARE. SHOULD THE SOFTWARE PROVE DEFECTIVE
12 * IN ANY RESPECT, THE USER ASSUMES THE COST OF ANY NECESSARY SERVICING, REPAIR OR
13 * CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE.
14 * NO USE OF ANY SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
15 * DESY HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
16 * OR MODIFICATIONS.
17 * THE FULL LICENSE SPECIFYING FOR THE SOFTWARE THE REDISTRIBUTION, MODIFICATION,
18 * USAGE AND OTHER RIGHTS AND OBLIGATIONS IS INCLUDED WITH THE DISTRIBUTION OF THIS
19 * PROJECT IN THE FILE LICENSE.HTML. IF THE LICENSE IS NOT INCLUDED YOU MAY FIND A COPY
20 * AT HTTP://WWW.DESY.DE/LEGAL/LICENSE.HTM
21 */
22
23 package de.desy.acop.displayers.selector;
24
25 import java.awt.Component;
26
27 import de.desy.acop.displayers.table.AcopTableParameters;
28 import de.desy.acop.displayers.tools.AcopDisplayerParameters;
29 import de.desy.acop.transport.ConnectionParameters;
30
31 /**
32 * <code>AcopTableParametersDialog</code> enables generation of
33 * <code>AcopTableParameters</code>. It uses the <code>TableCustomizerPanel</code>
34 * to customize the parameters.
35 *
36 * @author Jaka Bobnar, Cosylab
37 * @see AcopTableParameters
38 * @see TableCustomizerPanel
39 *
40 */
41 public class AcopTableParametersDialog extends AcopDisplayerParametersDialog<AcopTableParameters> {
42
43 private static final long serialVersionUID = 4031445693248397678L;
44 private TableCustomizerPanel tableCustomizerPanel;
45
46 /**
47 * Constructs a new AcopTableParametersDialog.
48 *
49 * @param comp thw owner of the dialog
50 */
51 public AcopTableParametersDialog(Component comp) {
52 super(comp);
53 }
54
55 /*
56 * (non-Javadoc)
57 * @see de.desy.acop.displayers.selector.AcopDisplayerParametersDialog#generateParameters()
58 */
59 @Override
60 protected AcopTableParameters generateParameters() {
61 return new AcopTableParameters(getDisplayerParameters().getConnectionParameters(),
62 getTableCustomizerPanel().getType(), getConverterPanel().getConverter(), getTableCustomizerPanel().getName());
63
64 }
65
66 /*
67 * (non-Javadoc)
68 * @see de.desy.acop.displayers.selector.AcopDisplayerParametersDialog#getCustomizerPanel()
69 */
70 @Override
71 protected MultipleDisplayerAbstractSettingsPanel<AcopTableParameters> getCustomizerPanel() {
72 return getTableCustomizerPanel();
73 }
74
75 private TableCustomizerPanel getTableCustomizerPanel()
76 {
77 if (tableCustomizerPanel == null) {
78 tableCustomizerPanel = new TableCustomizerPanel();
79 tableCustomizerPanel.setParameters(null);
80 }
81 return tableCustomizerPanel;
82 }
83
84 /*
85 * (non-Javadoc)
86 * @see de.desy.acop.displayers.selector.AcopDisplayerParametersDialog#showChartDialog(java.awt.Component, de.desy.acop.displayers.tools.AcopDisplayerParameters)
87 */
88 @Override
89 public AcopTableParameters showDialog(Component component, AcopDisplayerParameters adp) {
90 this.getTableCustomizerPanel().setType(null);
91 this.getTableCustomizerPanel().setName(null);
92 return super.showDialog(component, adp);
93 }
94
95 /*
96 * (non-Javadoc)
97 * @see de.desy.acop.displayers.selector.AcopDisplayerParametersDialog#showChartDialog(java.awt.Component, de.desy.acop.transport.ConnectionParameters)
98 */
99 @Override
100 public AcopTableParameters showDialog(Component component, ConnectionParameters cp) {
101 this.getTableCustomizerPanel().setType(null);
102 this.getTableCustomizerPanel().setName(null);
103 return super.showDialog(component, cp);
104 }
105
106 }