Revision 4637 trunk/extensions/extCAD/src/com/iver/cit/gvsig/gui/cad/DefaultCADTool.java

View differences:

DefaultCADTool.java
113 113
	public CADToolAdapter getCadToolAdapter() {
114 114
		return cadToolAdapter;
115 115
	}
116
	public VectorialLayerEdited getVLE(){
117
		return (VectorialLayerEdited) CADExtension.getEditionManager().getActiveLayerEdited();
118
	}
116 119

  
117 120
	/**
118 121
	 * DOCUMENT ME!
......
156 159
			}
157 160
			DefaultFeature df = new DefaultFeature(geometry, values);
158 161
			int index = vea.addRow(df, getName());
159
			VectorialLayerEdited vle = (VectorialLayerEdited) CADExtension
160
			.getEditionManager().getActiveLayerEdited();
162

  
163

  
164
			VectorialLayerEdited vle = getVLE();
161 165
			ArrayList selectedHandler = vle.getSelectedHandler();
162 166
			ArrayList selectedRow = vle.getSelectedRow();
163 167
			selectedHandler.clear();
164 168
			selectedRow.clear();
169

  
170
			ViewPort vp=vle.getLayer().getFMap().getViewPort();
171
			BufferedImage selectionImage = new BufferedImage(vp.getImageWidth(), vp.getImageHeight(), BufferedImage.TYPE_INT_ARGB);
172
			Graphics2D gs = selectionImage.createGraphics();
165 173
			selectedRow.add(new DefaultRowEdited(df, IRowEdited.STATUS_ADDED, index));
174
			IGeometry geom=df.getGeometry();
175
			geom.cloneGeometry().draw(gs, vp, CADTool.drawingSymbol);
176
			vle.drawHandlers(geom.cloneGeometry(),gs,vp);
177
			vea.setSelectionImage(selectionImage);
166 178
		} catch (DriverIOException e) {
167 179
			e.printStackTrace();
168 180
		} catch (IOException e) {
......
281 293

  
282 294
	}
283 295
	protected ArrayList getSelectedRows(){
284
		VectorialLayerEdited vle = (VectorialLayerEdited) CADExtension
285
		.getEditionManager().getActiveLayerEdited();
296
		VectorialLayerEdited vle = getVLE();
286 297
    	ArrayList selectedRow = vle.getSelectedRow();
287 298
    	return selectedRow;
288 299
	}
289 300
	protected ArrayList getSelectedHandlers(){
290
		VectorialLayerEdited vle = (VectorialLayerEdited) CADExtension
291
		.getEditionManager().getActiveLayerEdited();
301
		VectorialLayerEdited vle = getVLE();
292 302
    	ArrayList selectedHandlers = vle.getSelectedHandler();
293 303
    	return selectedHandlers;
294 304
	}
295
	protected void clearSelection(){
296
		VectorialLayerEdited vle = (VectorialLayerEdited) CADExtension
297
		.getEditionManager().getActiveLayerEdited();
305
	public void clearSelection(){
306
		VectorialLayerEdited vle = getVLE();
298 307
		ArrayList selectedRow = vle.getSelectedRow();
299 308
    	ArrayList selectedHandlers = vle.getSelectedHandler();
300 309
    	selectedRow.clear();
301 310
    	selectedHandlers.clear();
302
    	FBitSet selection = CADExtension.getCADToolAdapter()
303
  		.getVectorialAdapter().getSelection();
311
    	VectorialEditableAdapter vea=vle.getVEA();
312
    	FBitSet selection = vea.getSelection();
304 313
    	selection.clear();
314
    	vea.setSelectionImage(null);
315
    	vea.setHandlersImage(null);
316

  
305 317
	}
306 318
}

Also available in: Unified diff