Revision 9575 branches/v10/extensions/extWFS2/src/com/iver/cit/gvsig/gui/panels/WFSSelectAttributesPanel.java

View differences:

WFSSelectAttributesPanel.java
2 2

  
3 3
import java.beans.PropertyChangeEvent;
4 4
import java.beans.PropertyChangeListener;
5
import java.io.File;
6 5
import java.util.Vector;
7 6

  
8
import javax.swing.JFrame;
9 7
import javax.swing.JPanel;
10 8
import javax.swing.JScrollPane;
11 9

  
12
import org.gvsig.remoteClient.gml.factories.XMLElementsFactory;
13
import org.gvsig.remoteClient.gml.schemas.IXMLType;
14
import org.gvsig.remoteClient.gml.schemas.XMLComplexType;
15 10
import org.gvsig.remoteClient.gml.schemas.XMLElement;
16
import org.gvsig.remoteClient.gml.schemas.XMLSchemaParser;
17 11

  
18 12
import com.iver.andami.PluginServices;
19 13
import com.iver.cit.gvsig.fmap.layers.WFSLayerNode;
......
65 59
 *
66 60
 * $Id$
67 61
 * $Log$
68
 * Revision 1.7.2.4  2006-12-04 09:39:34  ppiqueras
69
 * 1 Bug corregido
62
 * Revision 1.7.2.5  2007-01-08 09:52:11  ppiqueras
63
 * Corridos bugs + nueva funcionalidad.
70 64
 *
65
 * Revision 1.5  2006/12/26 09:19:52  ppiqueras
66
 * Cambiado "atttibutes" en todas las aparaciones en atributos, métodos, clases, paquetes o comentarios por "fields". (Sólo a aquellas que afectan a clases dentro del proyecto extWFS2).
67
 *
68
 * Revision 1.17  2006/12/15 13:58:25  ppiqueras
69
 * Eliminado un import que sobraba, y reorganizado código
70
 *
71 71
 * Revision 1.16  2006/12/04 08:59:47  ppiqueras
72 72
 * Algunos bugs corregidos. A cambio hay 2 bugs relacionados que todavía no han sido corregidos (ver PHPCollab) (los tiene asignados Jorge).
73 73
 *
......
133 133
/**
134 134
 * This panel shows the feature fields list
135 135
 * @author Jorge Piera Llodr? (piera_jor@gva.es)
136
 * @author Pablo Piqueras Bartolom? (p_queras@hotmail.com)
136 137
 */
137 138
public class WFSSelectAttributesPanel extends JPanel {
138 139
	private static final long serialVersionUID = 3073243334672620143L;
139
	private JScrollPane attributesScroll = null;
140
	private AttributesTreeTable attributesTreeTable = null;
140
	private JScrollPane fieldsScroll = null;
141
	private AttributesTreeTable fieldsTreeTable = null;
141 142
	private AttributesTreeTableModel model = null;
142 143
	private WFSParamsPanel parent = null;
143 144
	private JPanel treeTablePanel = null;
144
	private boolean attributesSelectedOfSameLayerHasChanged;
145
	private boolean fieldsSelectedOfSameLayerHasChanged;
145 146

  
146 147
	public WFSSelectAttributesPanel(WFSParamsPanel parent){
147 148
		super();
......
153 154
		this.setLayout(null);
154 155
		this.setBounds(10, 5, 481, 427);		
155 156
		this.add(getTreeTablePanel(), null);
156
		attributesSelectedOfSameLayerHasChanged = false;
157
		fieldsSelectedOfSameLayerHasChanged = false;
157 158
	}
158 159

  
159 160
	/**
......
161 162
	 *
162 163
	 * @return javax.swing.JScrollPane
163 164
	 */
164
	private JScrollPane getAttributesScroll() {
165
		if (attributesScroll == null) {
166
			attributesScroll = new JScrollPane();
167
			attributesScroll.setLocation(new java.awt.Point(6,20));
168
			attributesScroll.setSize(new java.awt.Dimension(470,349));
169
			attributesScroll.setViewportView(getAttributesTreeTable());
165
	private JScrollPane getFieldsScroll() {
166
		if (fieldsScroll == null) {
167
			fieldsScroll = new JScrollPane();
168
			fieldsScroll.setLocation(new java.awt.Point(6,20));
169
			fieldsScroll.setSize(new java.awt.Dimension(470,349));
170
			fieldsScroll.setViewportView(getAttributesTreeTable());
170 171
		}
171
		return attributesScroll;
172
		return fieldsScroll;
172 173
	}
173 174

  
174 175
	/**
......
177 178
	 * @return javax.swing.JList
178 179
	 */
179 180
	public AttributesTreeTable getAttributesTreeTable() {
180
		if (attributesTreeTable == null) {
181
		if (fieldsTreeTable == null) {
181 182
			model = new TreeTableModelWithCheckBoxes();
182
			attributesTreeTable = new AttributesTreeTable(model,this);
183
			attributesTreeTable.setLocation(new java.awt.Point(7,4));
184
			attributesTreeTable.setSize(new java.awt.Dimension(482,302));
183
			fieldsTreeTable = new AttributesTreeTable(model,this);
184
			fieldsTreeTable.setLocation(new java.awt.Point(7,4));
185
			fieldsTreeTable.setSize(new java.awt.Dimension(482,302));
185 186
			
186
			// If user has changed the attributes selection in the same layer
187
			attributesTreeTable.addPropertyChangeListener(new PropertyChangeListener() {
187
			// If user has changed the fields selection in the same layer
188
			fieldsTreeTable.addPropertyChangeListener(new PropertyChangeListener() {
188 189
				/*
189 190
				 *  (non-Javadoc)
190 191
				 * @see java.beans.PropertyChangeListener#propertyChange(java.beans.PropertyChangeEvent)
191 192
				 */
192 193
				public void propertyChange(PropertyChangeEvent evt) {
193
					if (evt.getPropertyName().compareTo("tableCellEditor") == 0) // If the selection of the attributes of the layer has changed
194
						attributesSelectedOfSameLayerHasChanged = true;					
195
					else if (evt.getPropertyName().compareTo("selectionModel") == 0) // If the layer has changed
196
						attributesSelectedOfSameLayerHasChanged = false;
194
					// If the selection of the fields of the layer has changed
195
					if (evt.getPropertyName().compareTo("tableCellEditor") == 0)
196
					{
197
						fieldsSelectedOfSameLayerHasChanged = true;						
198
					}					
199
					else if (evt.getPropertyName().compareTo("selectionModel") == 0) { // If the layer has changed
200
						fieldsSelectedOfSameLayerHasChanged = false;
201
					}
197 202
				}
198 203
			});
199 204
		}
200
		return attributesTreeTable;
205
		return fieldsTreeTable;
201 206
	}
202 207

  
203 208
	public void refresh(WFSLayerNode feature){
......
211 216
	private void setFields(WFSLayerNode feature){
212 217
		Vector fields = feature.getFields();
213 218
		model = new TreeTableModelWithCheckBoxes(fields.get(0));
214
		attributesTreeTable.setModel(model);
219
		fieldsTreeTable.setModel(model);
215 220
	}
216 221
	
217 222
	public void setSelectedFields(WFSLayerNode feature){
218 223
		Vector selectedFields = feature.getSelectedFields();
219
		attributesTreeTable.setSelectedFields(selectedFields);
224
		fieldsTreeTable.setSelectedFields(selectedFields);
220 225
	}		
221 226

  
222 227
	/**
......
224 229
	 * @return the selected fields.
225 230
	 */
226 231
	public XMLElement[] getSelectedFields(){
227
		return attributesTreeTable.getSelectedElements();
232
		return fieldsTreeTable.getSelectedElements();
228 233
	}
229 234

  
230 235
	/**
......
238 243
			treeTablePanel.setLayout(null);
239 244
			treeTablePanel.setLocation(new java.awt.Point(7,4));
240 245
			treeTablePanel.setSize(new java.awt.Dimension(482,375));
241
			treeTablePanel.add(getAttributesScroll(), null);
246
			treeTablePanel.add(getFieldsScroll(), null);
242 247
			treeTablePanel.setBorder(javax.swing.BorderFactory.createTitledBorder(
243 248
					null, PluginServices.getText(this, "select_fields"),
244 249
					javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
......
248 253
	}
249 254
	
250 255
	/**
251
	 * Returns true if user has changed the selection of some attribute of the same layer; else returns false
256
	 * Returns true if user has changed the selection of some field of the same layer; else returns false
252 257
	 * 
253 258
	 * @return A boolean value
254 259
	 */
255
	public boolean getAttributesSelectedOfSameLayerHasChanged() {
256
		return this.attributesSelectedOfSameLayerHasChanged;
260
	public boolean getFieldsSelectedOfSameLayerHasChanged() {
261
		return this.fieldsSelectedOfSameLayerHasChanged;
257 262
	}
258 263
	
259 264
	/**
......
264 269
	}
265 270

  
266 271
	/**
267
	 * Resets the value of the attribute 'attributesSelectedOfSameLayerHasChanged'
272
	 * Resets the value of the field 'fieldsSelectedOfSameLayerHasChanged'
268 273
	 * 
269 274
	 * @return A boolean value
270 275
	 */
271
	public void resetAttributesSelectedOfSameLayerHasChanged() {
272
		this.attributesSelectedOfSameLayerHasChanged = false;
276
	public void resetFieldsSelectedOfSameLayerHasChanged() {
277
		this.fieldsSelectedOfSameLayerHasChanged = false;
273 278
	}
274 279
}  //  @jve:decl-index=0:visual-constraint="10,22"

Also available in: Unified diff