Revision 34026 branches/v2_0_0_prep/extensions/extWFS2/src/org/gvsig/wfs/gui/panels/fieldstree/CheckBoxTreeCellEditor.java

View differences:

CheckBoxTreeCellEditor.java
11 11
import javax.swing.tree.TreeCellEditor;
12 12
import javax.swing.tree.TreePath;
13 13

  
14
import org.gvsig.remoteclient.wfs.schema.type.IXMLType;
15

  
16 14
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
17 15
 *
18 16
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
......
115 113
					}else if(mouseEvent.getClickCount() == 1){
116 114
						changeAllChildren(selectedNode,!selectedNode.isSelected());
117 115
						changeParentState(selectedNode,!selectedNode.isSelected());
116
						selectedNode.setSelected(!selectedNode.isSelected());
118 117
						tree.repaint();
119 118
					}
120 119
				}
......
183 182
	private void changeAllChildren(CheckBoxNode selectedNode,boolean selected){
184 183
		for (int i=0 ; i<selectedNode.getChildren().size() ; i++){
185 184
			CheckBoxNode child = ((CheckBoxNode)selectedNode.getChildren().get(i));
186
			if ((child.getElement().getEntityType() == null) || 
187
					(child.getElement().getEntityType().getType() != IXMLType.GML_GEOMETRY)){
188
				child.setSelected(selected);	
185
			if (child.getFeatureField().isGeometry()){
186
				child.setSelected(true);	
187
			}else{			    
188
			    child.setSelected(selected);
189
    			if (child.getChildren().size() > 0){
190
    				changeAllChildren(child,selected);
191
    			}	
189 192
			}
190
			if (child.getChildren().size() > 0){
191
				changeAllChildren(child,selected);
192
			}			
193 193
		}
194 194
	}
195 195
}

Also available in: Unified diff