Revision 24265

View differences:

branches/v2_0_0_prep/extensions/extCAD/src/com/iver/cit/gvsig/gui/cad/tools/ComplexSelectionCADTool.java
54 54
import org.gvsig.fmap.data.exceptions.DataException;
55 55
import org.gvsig.fmap.data.exceptions.InitializeException;
56 56
import org.gvsig.fmap.data.exceptions.ReadException;
57
import org.gvsig.fmap.data.feature.EditableFeature;
57 58
import org.gvsig.fmap.data.feature.Feature;
59
import org.gvsig.fmap.data.feature.FeatureSelection;
58 60
import org.gvsig.fmap.data.feature.FeatureStore;
59 61
import org.gvsig.fmap.data.feature.FeatureType;
60
import org.gvsig.fmap.data.feature.exceptions.IsNotFeatureSettingException;
61 62
import org.gvsig.fmap.geom.Geometry;
62
import org.gvsig.fmap.geom.GeometryFactory;
63
import org.gvsig.fmap.geom.GeometryManager;
64 63
import org.gvsig.fmap.geom.handler.Handler;
65 64
import org.gvsig.fmap.geom.operation.Draw;
66 65
import org.gvsig.fmap.geom.operation.DrawOperationContext;
......
87 86
 * @author Vicente Caballero Navarro
88 87
 */
89 88
public class ComplexSelectionCADTool extends SelectionCADTool {
90
	//public final static int tolerance = 4;
91

  
92 89
	private ComplexSelectionCADToolContext _fsm;
93 90
	private List pointsPolygon=new ArrayList();
94 91

  
95
	//private Point2D firstPoint;
96

  
97
	//private Point2D lastPoint;
98

  
99

  
100

  
101
	//private String nextState;
102
// Registros de los que se ha sleccionado alg?n handler.
103
	//private ArrayList rowselectedHandlers=new ArrayList();
104
	//private String type=PluginServices.getText(this,"inside_circle");
105
	//private ArrayList pointsPolygon=new ArrayList();
106 92
	/**
107 93
	 * Crea un nuevo ComplexSelectionCADTool.
108 94
	 */
......
154 140
			// TODO Auto-generated catch block
155 141
			e.printStackTrace();
156 142
		}
157
//		VectorialEditableAdapter vea=vle.getVEA();
158 143
		ArrayList selectedHandler = vle.getSelectedHandler();
159
//		ArrayList selectedRow = vle.getSelectedRow();
160 144
		System.out.println("STATUS ACTUAL = " + _fsm.getTransition());
161 145
		if (status.equals("Selection.FirstPoint")) {
162 146
			firstPoint=new Point2D.Double(x,y);
......
164 148
		} else if (status.equals("Selection.SecondPoint")) {
165 149
		} else if (status.equals("Selection.WithFeatures")) {
166 150
		} else if (status.equals("Selection.WithHandlers")) {
167
			featureStore.getCommandsRecord().startComplex();
151
			String description=PluginServices.getText(this,"move_handlers");
152
			featureStore.beginEditingGroup(description);
168 153
			ArrayList selectedRowsAux=new ArrayList();
169
			Iterator iterator=featureStore.getSelection().iterator();
170
			while (iterator.hasNext()) {
171
				Feature feature = (Feature) iterator.next();
154
			Iterator iterator;
155
			try {
156
				iterator = ((FeatureSelection)featureStore.getSelection()).iterator();
172 157

  
173
//			}
174
//			for (int i = 0; i < selectedRow.size(); i++) {
175
//				IRowEdited row = (IRowEdited) selectedRow.get(i);
176
//				IFeature feat = (IFeature) row.getLinkedRow().cloneRow();
177
				Geometry ig = ((Geometry)feature.getDefaultGeometry()).cloneGeometry();
178
				// Movemos los handlers que hemos seleccionado
179
				// previamente dentro del m?todo select()
180
				Handler[] handlers=ig.getHandlers(Geometry.SELECTHANDLER);
181
				for (int k = 0; k < selectedHandler.size(); k++) {
182
					Handler h = (Handler)selectedHandler.get(k);
183
					for (int j=0;j<handlers.length;j++) {
184
						if (h.getPoint().equals(handlers[j].getPoint()))
185
							handlers[j].set(x,y);
158
				while (iterator.hasNext()) {
159
					Feature feature = (Feature) iterator.next();
160

  
161
//					}
162
					Geometry ig = ((Geometry)feature.getDefaultGeometry()).cloneGeometry();
163
					// Movemos los handlers que hemos seleccionado
164
					// previamente dentro del m?todo select()
165
					Handler[] handlers=ig.getHandlers(Geometry.SELECTHANDLER);
166
					for (int k = 0; k < selectedHandler.size(); k++) {
167
						Handler h = (Handler)selectedHandler.get(k);
168
						for (int j=0;j<handlers.length;j++) {
169
							if (h.getPoint().equals(handlers[j].getPoint()))
170
								handlers[j].set(x,y);
171
						}
186 172
					}
173
					EditableFeature eFeature=feature.getEditable();
174
					eFeature.setGeometry(featureStore.getDefaultFeatureType().getDefaultGeometryAttributeName(), ig);
175
					featureStore.update(eFeature);
176
					selectedRowsAux.add(eFeature);
187 177
				}
188
				try {
189
					feature.editing();
190
					feature.setGeometry(featureStore.getDefaultFeatureType().getDefaultGeometryAttributeName(), ig);
191
					featureStore.update(feature);
192
				} catch (IsNotFeatureSettingException e) {
193
					// TODO Auto-generated catch block
194
					e.printStackTrace();
195
				} catch (DataException e) {
196
					// TODO Auto-generated catch block
197
					e.printStackTrace();
198
				}
199
//				modifyFeature(row.getIndex(), feat);
200
				selectedRowsAux.add(feature);
178
			} catch (DataException e1) {
179
				// TODO Auto-generated catch block
180
				e1.printStackTrace();
201 181
			}
202 182
			firstPoint=new Point2D.Double(x,y);
203 183
//			vle.setSelectionCache(VectorialLayerEdited.SAVEPREVIOUS, selectedRowsAux);
204
				String description=PluginServices.getText(this,"move_handlers");
205
				featureStore.getCommandsRecord().endComplex(description);
184

  
185
				featureStore.endEditingGroup();
206 186
		}else if (status.equals("Selection.NextPointPolygon")) {
207 187
			pointsPolygon.add(new Point2D.Double(x,y));
208 188
		}
......
214 194
	 * @param y
215 195
	 * @return numFeatures selected
216 196
	 */
217
	public int selectWithSecondPointOutRectangle(double x, double y, InputEvent event) {
197
	public long selectWithSecondPointOutRectangle(double x, double y, InputEvent event) {
218 198
		Point2D lastPoint=new Point2D.Double(x,y);
219 199
		GeneralPathX gpx=new GeneralPathX();
220 200
		gpx.moveTo(firstPoint.getX(),firstPoint.getY());
......
231 211
	 * @param y
232 212
	 * @return numFeatures selected
233 213
	 */
234
	public int selectWithCircle(double x, double y, InputEvent event) {
214
	public long selectWithCircle(double x, double y, InputEvent event) {
235 215
		Geometry circle=geomFactory.createCircle(firstPoint,new Point2D.Double(x,y));
236 216
		return selectWithPolygon(circle);
237 217
	}
238
	public int selectWithPolygon(Geometry polygon) {
218
	public long selectWithPolygon(Geometry polygon) {
239 219
		VectorialLayerEdited vle = getVLE();
240 220
		PluginServices.getMDIManager().setWaitCursor();
241 221

  
......
246 226
		} else if (getType().equals(PluginServices.getText(this,"out_circle")) || getType().equals(PluginServices.getText(this,"out_polygon")) || getType().equals(PluginServices.getText(this,"out_rectangle"))) {
247 227
			vle.selectOutPolygon(polygon);
248 228
		}
249
		int countSelection=0;
229
		long countSelection=0;
250 230
		try {
251
			countSelection = vle.getFeatureStore().getSelection().size();
231
			countSelection = ((FeatureSelection)vle.getFeatureStore().getSelection()).getSize();
252 232
		} catch (ReadException e) {
253 233
			// TODO Auto-generated catch block
254 234
			e.printStackTrace();
235
		} catch (DataException e) {
236
			// TODO Auto-generated catch block
237
			e.printStackTrace();
255 238
		}
256
//		ArrayList selectedRow = vle.getSelectedRow();
257 239
		PluginServices.getMDIManager().restoreCursor();
258 240
		if (countSelection>0){
259
//		if (selectedRow.size() > 0) {
260 241
			nextState = "Selection.WithSelectedFeatures";
261 242
			end();
262 243
		} else
......
304 285
			} catch (GeometryOperationException e) {
305 286
				e.printStackTrace();
306 287
			}
307
//			geomFactory.createPolyline2D(elShape).draw((Graphics2D) g,
308
//					vp,
309
//					DefaultCADTool.geometrySelectSymbol);
310 288
			Image img = vle.getSelectionImage();
311 289
	        g.drawImage(img, 0, 0, null);
312 290
	        return;
......
327 305
			} catch (GeometryOperationException e) {
328 306
				e.printStackTrace();
329 307
			}
330
//			circleSel.draw((Graphics2D) g,
331
//					vp,
332
//					DefaultCADTool.geometrySelectSymbol);
333 308
			Image img = vle.getSelectionImage();
334 309
	        g.drawImage(img, 0, 0, null);
335 310
	        return;
......
347 322
			} catch (GeometryOperationException e) {
348 323
				e.printStackTrace();
349 324
			}
350
//			polygon.draw((Graphics2D) g,
351
//					vp,
352
//					DefaultCADTool.geometrySelectSymbol);
353 325
			Image img = vle.getSelectionImage();
354 326
	        g.drawImage(img, 0, 0, null);
355 327
	        return;
......
381 353
				} catch (GeometryOperationException e) {
382 354
					e.printStackTrace();
383 355
				}
384
//				geom.draw((Graphics2D) g, vp, DefaultCADTool.axisReferencesSymbol);
385 356
			}
386 357
			for (int k = 0; k < selectedHandler.size(); k++) {
387 358
				Handler h = (Handler)selectedHandler.get(k);
......
446 417
		}
447 418
		init();
448 419
	}
449
	private int selectAll() {
420
	private long selectAll() {
450 421
		VectorialLayerEdited vle = getVLE();
451 422
		PluginServices.getMDIManager().setWaitCursor();
452 423
		vle.selectAll();
453
		int countSelection=0;
424
		long countSelection=0;
454 425
		try {
455
			countSelection = vle.getFeatureStore().getSelection().size();
426
			countSelection = ((FeatureSelection)vle.getFeatureStore().getSelection()).getSize();
456 427
		} catch (ReadException e) {
457 428
			// TODO Auto-generated catch block
458 429
			e.printStackTrace();
430
		} catch (DataException e) {
431
			// TODO Auto-generated catch block
432
			e.printStackTrace();
459 433
		}
460
//		ArrayList selectedRow = vle.getSelectedRow();
461 434
		PluginServices.getMDIManager().restoreCursor();
462 435
		if (countSelection > 0) {
463 436
			nextState = "Selection.WithSelectedFeatures";
......
520 493
			vle.selectWithPoint(x,y,multipleSelection);
521 494
			PluginServices.getMDIManager().restoreCursor();
522 495
		}
523
		int countSelection=0;
496
		long countSelection=0;
524 497
		try {
525
			countSelection = vle.getFeatureStore().getSelection().size();
498
			countSelection = ((FeatureSelection)vle.getFeatureStore().getSelection()).getSize();
526 499
		} catch (ReadException e) {
527 500
			// TODO Auto-generated catch block
528 501
			e.printStackTrace();
502
		} catch (DataException e) {
503
			// TODO Auto-generated catch block
504
			e.printStackTrace();
529 505
		}
530 506
		if (countSelection > 0) {
531 507
			nextState = "Selection.WithSelectedFeatures";
......
543 519

  
544 520
		VectorialLayerEdited vle = getVLE();
545 521
		ArrayList selectedHandler = vle.getSelectedHandler();
546
//		ArrayList selectedRow = vle.getSelectedRow();
547
//		System.out.println("DENTRO DE selectHandlers. selectedRow.size= "
548
//				+ selectedRow.size());
549 522
		selectedHandler.clear();
550 523

  
551 524
		// Se comprueba si se pincha en una gemometr?a
......
563 536
			// TODO Auto-generated catch block
564 537
			e.printStackTrace();
565 538
		}
566
		Iterator iterator=featureStore.getSelection().iterator();
539
		Iterator iterator=null;
540
		try {
541
			iterator = ((FeatureSelection)featureStore.getSelection()).iterator();
542
		} catch (DataException e1) {
543
			// TODO Auto-generated catch block
544
			e1.printStackTrace();
545
		}
567 546
		while (iterator.hasNext()) {
568 547
			Feature feature = (Feature) iterator.next();
569 548

  
570
//		}
571
//		for (int i = 0; i < selectedRow.size(); i++) {
572
//			IRowEdited rowEd = (IRowEdited) selectedRow.get(i);
573
//
574
//			IFeature fea = (IFeature) rowEd.getLinkedRow();
575 549
			Geometry geom=((Geometry)feature.getDefaultGeometry()).cloneGeometry();
576 550
			handlers = geom.getHandlers(Geometry.SELECTHANDLER);
577 551
			// y miramos los handlers de cada entidad seleccionada
578 552
			double min = tam;
579
			// int hSel = -1;
580 553

  
581 554
			for (int j = 0; j < handlers.length; j++) {
582 555
				Point2D handlerPoint = handlers[j].getPoint();
583 556
				double distance = auxPoint.distance(handlerPoint);
584 557
				if (distance <= min) {
585 558
					min = distance;
586
					// hSel = j;
587 559
					selectedHandler.add(handlers[j]);
588
					Feature f;
560
					EditableFeature eFeature;
589 561
					try {
590
						f = featureStore.createNewFeature(false);
591

  
592
					f.editing();
593
					FeatureType featureType=featureStore.getDefaultFeatureType();
594
					for (int i = 0; i < featureType.size(); i++) {
595
						f.setAttribute(i,feature.get(i));
596
					}
597
					f.setGeometry(featureType.getDefaultGeometryAttributeName(), geom);
562
						eFeature = featureStore.createNewFeature(false);
563
						FeatureType featureType=featureStore.getDefaultFeatureType();
564
						for (int i = 0; i < featureType.size(); i++) {
565
							eFeature.set(i,feature.get(i));
566
						}
567
						eFeature.setGeometry(featureType.getDefaultGeometryAttributeName(), geom);
598 568
					} catch (InitializeException e) {
599 569
						// TODO Auto-generated catch block
600 570
						e.printStackTrace();
branches/v2_0_0_prep/extensions/extCAD/src/com/iver/cit/gvsig/gui/cad/tools/JoinCADTool.java
52 52

  
53 53
import org.gvsig.fmap.data.exceptions.DataException;
54 54
import org.gvsig.fmap.data.exceptions.ReadException;
55
import org.gvsig.fmap.data.feature.EditableFeature;
55 56
import org.gvsig.fmap.data.feature.Feature;
57
import org.gvsig.fmap.data.feature.FeatureSelection;
56 58
import org.gvsig.fmap.data.feature.FeatureStore;
57 59
import org.gvsig.fmap.geom.Geometry;
58 60
import org.gvsig.fmap.geom.GeometryFactory;
......
164 166
    	 VectorialLayerEdited vle=getVLE();
165 167
    	 Iterator iterator=null;
166 168
		try {
167
			iterator = vle.getFeatureStore().getSelection().iterator();
169
			iterator = ((FeatureSelection)vle.getFeatureStore().getSelection()).iterator();
168 170
		} catch (ReadException e1) {
169 171
			// TODO Auto-generated catch block
170 172
			e1.printStackTrace();
173
		} catch (DataException e) {
174
			// TODO Auto-generated catch block
175
			e.printStackTrace();
171 176
		}
172 177
//         ArrayList selectedRows=vle.getSelectedRow();
173 178
         ViewPort vp=CADExtension.getEditionManager().getMapControl().getViewPort();
......
209 214
    	}
210 215
    }
211 216
    private Handler[] getHandlers() throws ReadException {
212
    	Iterator iterator=getVLE().getFeatureStore().getSelection().iterator();
217
    	Iterator iterator = null;
218
		try {
219
			iterator = ((FeatureSelection)getVLE().getFeatureStore().getSelection()).iterator();
220
		} catch (DataException e) {
221
			// TODO Auto-generated catch block
222
			e.printStackTrace();
223
		}
213 224
    	ArrayList handlers=new ArrayList();
214 225
    	while (iterator.hasNext()) {
215 226
			Feature feature = (Feature) iterator.next();
......
287 298
		VectorialLayerEdited vle = getVLE();
288 299
//		VectorialEditableAdapter vea = vle.getVEA();
289 300
		FeatureStore featureStore=vle.getFeatureStore();
290
		featureStore.getCommandsRecord().startComplex();
301
		featureStore.beginEditingGroup(getName());
291 302

  
292 303
//		String newFID = vea.getNewFID();
293 304
		GeneralPathX gpx = new GeneralPathX();
......
295 306
		gpx.lineTo(points[1].getX(), points[1].getY());
296 307

  
297 308
		Geometry geom = geomFactory.createPolyline2D(gpx);
298
		Feature df1=featureStore.createNewFeature(false);
299
		df1.editing();
300
		df1.setGeometry(featureStore.getDefaultFeatureType().getDefaultGeometryAttributeName(), geom);
309
		EditableFeature eFeature=featureStore.createNewFeature();
310
		eFeature.setGeometry(featureStore.getDefaultFeatureType().getDefaultGeometryAttributeName(), geom);
301 311
//		DefaultFeature df1 = new DefaultFeature(geom, null, newFID);
302
		Iterator iterator=featureStore.getSelection().iterator();
312
		Iterator iterator=((FeatureSelection)featureStore.getSelection()).iterator();
303 313
		while (iterator.hasNext()) {
304 314
			Feature feature = (Feature) iterator.next();
305 315

  
......
307 317
//		for (int i = rows.length - 1; i >= 0; i--) {
308 318
			featureStore.delete(feature);
309 319
		}
310
		featureStore.insert(df1);
320
		featureStore.insert(eFeature);
311 321
//		int index1 = vea.addRow(df1, PluginServices.getText(this, "parte1"),
312 322
//				EditionEvent.GRAPHIC);
313 323
		//clearSelection();
314 324
		ArrayList selectedRowAux = new ArrayList();
315
		selectedRowAux.add(df1);
325
		selectedRowAux.add(eFeature);
316 326
//		vle.setSelectionCache(VectorialLayerEdited.NOTSAVEPREVIOUS, selectedRowAux);
317
		featureStore.getCommandsRecord().endComplex(getName());
327
		featureStore.endEditingGroup();
318 328

  
319 329
	}
320 330

  
branches/v2_0_0_prep/extensions/extCAD/src/com/iver/cit/gvsig/gui/cad/DefaultCADTool.java
46 46
import java.awt.event.MouseEvent;
47 47
import java.awt.geom.AffineTransform;
48 48
import java.awt.geom.Point2D;
49
import java.awt.geom.Rectangle2D;
50 49
import java.awt.image.BufferedImage;
51 50
import java.util.ArrayList;
52 51
import java.util.Iterator;
......
54 53
import org.apache.log4j.Logger;
55 54
import org.gvsig.fmap.data.exceptions.DataException;
56 55
import org.gvsig.fmap.data.exceptions.ReadException;
57
import org.gvsig.fmap.data.feature.AbstractFeature;
58 56
import org.gvsig.fmap.data.feature.CommandsRecord;
57
import org.gvsig.fmap.data.feature.EditableFeature;
59 58
import org.gvsig.fmap.data.feature.Feature;
60 59
import org.gvsig.fmap.data.feature.FeatureSet;
61 60
import org.gvsig.fmap.data.feature.FeatureStore;
......
299 298
	 * @param geometry
300 299
	 *            DOCUMENT ME!
301 300
	 */
302
	public void modifyFeature(Feature feature, Feature oldFeature) {
303
		try {
304
			CommandsRecord cr=((FLyrVect)getVLE().getLayer()).getFeatureStore().getCommandsRecord();
305
			cr.update(feature, oldFeature);
306
		} catch (ReadException e) {
307
			NotificationManager.addError(e.getMessage(),e);
308
		}
309
		draw(((Geometry)feature.getDefaultGeometry()).cloneGeometry());
310
	}
301
//	public void modifyFeature(Feature feature, Feature oldFeature) {
302
//		try {
303
//			CommandsRecord cr=((FLyrVect)getVLE().getLayer()).getFeatureStore().getCommandsRecord();
304
//			cr.update(feature, oldFeature);
305
//		} catch (ReadException e) {
306
//			NotificationManager.addError(e.getMessage(),e);
307
//		}
308
//		draw(((Geometry)feature.getDefaultGeometry()).cloneGeometry());
309
//	}
311 310

  
312 311
	/**
313 312
	 * DOCUMENT ME!
......
321 320
//		int index = 0;
322 321
		try {
323 322
		FeatureStore featureStore = ((FLyrVect)getVLE().getLayer()).getFeatureStore();
324
		Feature feature=featureStore.createNewFeature(true);
325
		feature.editing();
326
		feature.setGeometry(featureStore.getDefaultFeatureType().getDefaultGeometryAttributeName(),geometry);
323
		EditableFeature eFeature=featureStore.createNewFeature(true);
324
		eFeature.setGeometry(featureStore.getDefaultFeatureType().getDefaultGeometryAttributeName(),geometry);
327 325
		for (int i = 0; i < values.length; i++) {
328
			feature.setAttribute(i,values[i]);
326
			eFeature.set(i,values[i]);
329 327
		}
330
			featureStore.insert(feature);
331
			return feature;
328
			featureStore.insert(eFeature);
329
			return eFeature;
332 330
		} catch (DataException e) {
333 331
			// TODO Auto-generated catch block
334 332
			e.printStackTrace();
......
393 391
		FeatureSet selection=null;
394 392
		try {
395 393
			selection = (FeatureSet)((FLyrVect)getVLE().getLayer()).getFeatureStore().getSelection();
394

  
395
			Iterator iterator=selection.iterator();
396
			while (iterator.hasNext()) {
397
				Feature feature = (Feature) iterator.next();
398

  
399
//				}
400
//				for (int i = 0; i < selectedRows.size(); i++) {
401
//				IRowEdited edRow = (IRowEdited) selectedRows.get(i);
402
//				IFeature feat = (IFeature) edRow.getLinkedRow();
403
				// IFeature feat = (IFeature) selectedRows.get(i);
404
				Geometry ig = ((Geometry)feature.getDefaultGeometry()).cloneGeometry();
405
				if (ig == null)
406
					continue;
407
				Handler[] handlers = ig.getHandlers(Geometry.SELECTHANDLER);
408
				FGraphicUtilities.DrawHandlers((Graphics2D) g, at, handlers,DefaultCADTool.handlerSymbol);
409
			}
396 410
		} catch (ReadException e) {
397 411
			// TODO Auto-generated catch block
398 412
			e.printStackTrace();
413
		} catch (DataException e) {
414
			// TODO Auto-generated catch block
415
			e.printStackTrace();
399 416
		}
400
		Iterator iterator=selection.iterator();
401
		while (iterator.hasNext()) {
402
			Feature feature = (Feature) iterator.next();
403

  
404
//		}
405
//		for (int i = 0; i < selectedRows.size(); i++) {
406
//			IRowEdited edRow = (IRowEdited) selectedRows.get(i);
407
//			IFeature feat = (IFeature) edRow.getLinkedRow();
408
			// IFeature feat = (IFeature) selectedRows.get(i);
409
			Geometry ig = ((Geometry)feature.getDefaultGeometry()).cloneGeometry();
410
			if (ig == null)
411
				continue;
412
			Handler[] handlers = ig.getHandlers(Geometry.SELECTHANDLER);
413
			FGraphicUtilities.DrawHandlers((Graphics2D) g, at, handlers,DefaultCADTool.handlerSymbol);
414
		}
415 417
	}
416 418

  
417 419
	public void setDescription(String[] currentdescriptions) {
......
455 457

  
456 458
	public void clearSelection() throws ReadException {
457 459
		VectorialLayerEdited vle = getVLE();
458
		FeatureSet selection=(FeatureSet)((FLyrVect)vle.getLayer()).getFeatureStore().getSelection();
460
		FeatureSet selection=null;
461
		try {
462
			selection = (FeatureSet)((FLyrVect)vle.getLayer()).getFeatureStore().getSelection();
463
		} catch (DataException e) {
464
			// TODO Auto-generated catch block
465
			e.printStackTrace();
466
		}
459 467
//		ArrayList selectedRow = vle.getSelectedRow();
460 468
		ArrayList selectedHandlers = vle.getSelectedHandler();
461
		selection.clear();
469
		selection.dispose();
462 470
		selectedHandlers.clear();
463 471
//		VectorialEditableAdapter vea = vle.getVEA();
464 472
//		FBitSet selection = vea.getSelection();

Also available in: Unified diff