View Javadoc

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 }