Revision 9575 branches/v10/extensions/extWFS2/src/com/iver/cit/gvsig/gui/panels/WFSSelectAttributesPanel.java
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