Revision 1730

View differences:

org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.app/org.gvsig.raster.georeferencing.app.georeferencingclient/src/main/java/org/gvsig/raster/georeferencing/app/georeferencingclient/listener/PointListListener.java
47 47
		
48 48
		Georeferencing.enableTableEvent = true;	
49 49
	}
50

  
51
	public void selectPoint(GCPEvent event) {
52
		if(!Georeferencing.enableTableEvent)
53
			return;
54
		Georeferencing.enableTableEvent = false;
55
		
56
		tableWrapper.getTable().setSelectedRow(dataModel.getGCPList().getSelectedPoint());
57
		
58
		Georeferencing.enableTableEvent = true;	
59
	}
50 60
}
org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.app/org.gvsig.raster.georeferencing.app.georeferencingclient/src/main/java/org/gvsig/raster/georeferencing/app/georeferencingclient/listener/ApplicationControlsListener.java
144 144
			if(e.getSource() == appMain.getGeorefControlPanel().getMovePointButton()) {
145 145
				if(appMain.getGeorefControlPanel().getMovePointButton().isSelected()) {
146 146
					if(getSyncViews() != null) {
147
						getSyncViews().setActiveLayerPoints(false);
148 147
						getSyncViews().disableAllTools();
149 148
					}
150 149
					getSyncViews().enableTool(GeoreferencingSwingLibrary.SELECT_POINT_TOOL);
......
158 157
			if(e.getSource() == appMain.getGeorefControlPanel().getDragPointButton()) {
159 158
				if(appMain.getGeorefControlPanel().getDragPointButton().isSelected()) {
160 159
					if(getSyncViews() != null) {
161
						getSyncViews().setActiveLayerZoomCursor(false);
162 160
						getSyncViews().disableAllTools();
163 161
					}
164 162
					getSyncViews().enableTool(GeoreferencingSwingLibrary.DRAG_POINT_TOOL);
......
374 372
			if(e.getEvent() == PagedTableEvent.EVENT_SELECTED_ROWS) {
375 373
				if(getDataModel().isCenterView())
376 374
					getSyncViews().centerToPoint(tableWrapper.getTable().getSelectedRows()[0]);
375
				getDataModel().getGCPList().setSelectedPoint(tableWrapper.getTable().getSelectedRows()[0]);
377 376
			}
378 377

  
379 378
		} finally {
org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.app/org.gvsig.raster.georeferencing.app.georeferencingclient/src/main/java/org/gvsig/raster/georeferencing/app/georeferencingclient/listener/ViewDialogListener.java
145 145
			if(ev.getSource() instanceof SelectCoordOnViewTool) {
146 146
				try {
147 147
					//Se obtiene el punto seleccionado, se actualiza la tabla y se redibujan
148
					int nPoint = app.getTableWrapper().getTable().getSelectedRows()[0];
148
					int nPoint = app.getDataModel().getGCPList().getSelectedPoint();//app.getTableWrapper().getTable().getSelectedRows()[0];
149 149
					GeoPoint gp = app.getSyncViews().getPointByNumber(nPoint);
150 150

  
151 151
					if(((SelectCoordOnViewTool)ev.getSource()).getParentView() == app.getViewRaster() || 
......
219 219
	 *  <LI>Tool de selecci?n de zoom rectangulo</LI>
220 220
	 *  <LI>Tool de selecci?n de puntos</LI>
221 221
	 *  </UL>
222
	 *  ZoomCursorGraphicLayer
223
	 *  	Activar (los bordes pillan el foco): 
224
	 *  		Se desactiva la capa de puntos (arrastrar ptos)
225
	 *  		Se duermen todas las tools
226
	 *  	Desactivar (los bordes pierden el foco):
227
	 *  		Se activa la capa de puntos (arrastrar ptos)
228
	 *  		Se vuelven a activar las tools que hab?a
229 222
	 *  
230
	 *  GCPsGraphicLayer
231
	 *  	Activar (bot?n de arrastrar punto activado):
232
	 *  		Se desactivan todas las tools de todas las vistas
233
	 *  		Se desactiva mover punto
234
	 *  	Desactivar (bot?n de arrastrar punto desactivado):
235
	 *  		Se desactiva esa capa
236 223
	 *  
237
	 *  PAN
238
	 *  	Activar:
239
	 *  		Se desactivan todas las tools de esa vista
240
	 *  		Se desactiva mover y arrastrar de todas las vistas
241
	 *  	Desactivar (desclickear el bot?n)
242
	 *  		Se desactiva esa tool
243
	 *  
244
	 *  Zoom area
245
	 *  	Activar:
246
	 *  		Se desactivan todas las tools de esa vista
247
	 *  		Se desactiva mover y arrastrar de todas las vistas
248
	 *  	Desactivar (desclickear el bot?n)
249
	 *  		Se desactiva esa tool
250
	 *  
251
	 *  Mover punto
252
	 *  	Activar:
253
	 *  		Se desactivan todas las tools de todas las vistas
254
	 *  		Se desactiva arrastrar punto
255
	 *  	Desactivar:
256
	 *  		Se desactiva esa tool
257
	 *  
258
	 *  
259 224
	 */
260 225
	public void onTool(ToolEvent ev) {
261 226
		if(!Georeferencing.enableTableEvent)
org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.swing/org.gvsig.raster.georeferencing.swing.impl/src/main/java/org/gvsig/raster/georeferencing/swing/impl/option/GCPListImpl.java
14 14
 * @author Nacho Brodin nachobrodin@gmail.com
15 15
 */
16 16
public class GCPListImpl implements GCPList {
17
	private List<GPGraphic>   pList = new ArrayList<GPGraphic>();
18
	private List<GCPListener> listeners = new ArrayList<GCPListener>();
17
	private List<GPGraphic>   pList         = new ArrayList<GPGraphic>();
18
	private List<GCPListener> listeners     = new ArrayList<GCPListener>();
19
	private int               selectedPoint = -1;
19 20
	
20 21
	class GeoPointListImpl extends ArrayList<GeoPoint> implements GeoPointList {
21 22
		private static final long serialVersionUID = 1L;
......
81 82
			pList.remove(i);
82 83
		}
83 84
	}
85
	
86
	public void setSelectedPoint(int number) {
87
		this.selectedPoint = number;
88
		for (int i = 0; i < listeners.size(); i++) {
89
			listeners.get(i).selectPoint(new GCPEvent(pList, number));
90
		}
91
	}
92
	
93
	public int getSelectedPoint() {
94
		return selectedPoint;
95
	}
84 96
}
org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.swing/org.gvsig.raster.georeferencing.swing.impl/src/main/java/org/gvsig/raster/georeferencing/swing/impl/view/synchronize/SynchronizationViewImpl.java
117 117
			((BaseViewPanel)viewRaster).disableAllTools();
118 118
		if(viewMap != null)
119 119
			((BaseViewPanel)viewMap).disableAllTools();
120
		setActiveLayerPoints(false);
120 121
	}
121 122
	
122 123
	public void disableTool(int tool) {
......
130 131
			((BaseViewPanel)viewMap).disableTool(tool);
131 132
		if(tool == GeoreferencingSwingLibrary.DRAG_POINT_TOOL) {
132 133
			controlPanel.getDragPointButton().setSelected(false);
134
			setActiveLayerPoints(false);
133 135
		}
134 136
		if(tool == GeoreferencingSwingLibrary.MOVE_POINT_TOOL) {
135 137
			controlPanel.getMovePointButton().setSelected(false);
......
185 187
			((BaseViewPanel)viewMap).enableTool(tool);
186 188
		if(tool == GeoreferencingSwingLibrary.DRAG_POINT_TOOL) {
187 189
			controlPanel.getDragPointButton().setSelected(true);
190
			setActiveLayerPoints(true);
188 191
		}
189 192
		if(tool == GeoreferencingSwingLibrary.MOVE_POINT_TOOL) {
190 193
			controlPanel.getMovePointButton().setSelected(true);
org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.swing/org.gvsig.raster.georeferencing.swing.impl/src/main/java/org/gvsig/raster/georeferencing/swing/impl/layer/ZoomCursorGraphicLayer.java
30 30
import java.awt.event.MouseEvent;
31 31
import java.awt.geom.Rectangle2D;
32 32

  
33
import javax.swing.ImageIcon;
34

  
33
import org.gvsig.andami.IconThemeHelper;
35 34
import org.gvsig.raster.georeferencing.swing.impl.view.CanvasZone;
36 35
import org.gvsig.raster.georeferencing.swing.view.GeoreferencingView;
37 36
import org.gvsig.raster.georeferencing.swing.view.IGraphicLayer;
......
98 97
		posY = pY;
99 98
		this.listener = listener;
100 99
		try {
101
			iconHoriz = new ImageIcon(getClass().getClassLoader().getResource("images/FlechaHorizCursor.gif")).getImage(); 
102
			iconVert = new ImageIcon(getClass().getClassLoader().getResource("images/FlechaVertCursor.gif")).getImage();
103
			iconMove = new ImageIcon(getClass().getClassLoader().getResource("images/FlechaMoveCursor.gif")).getImage();
100
			iconHoriz = IconThemeHelper.getImage("arrow_horiz-icon"); 
101
			iconVert = IconThemeHelper.getImage("arrow_vert-icon");
102
			iconMove = IconThemeHelper.getImage("arrow_move-icon");
104 103
		} catch (NullPointerException e) {
105 104
			
106 105
		}
org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.swing/org.gvsig.raster.georeferencing.swing.impl/src/main/java/org/gvsig/raster/georeferencing/swing/impl/layer/GCPsGraphicLayer.java
177 177
	 * @see java.awt.event.MouseListener#mousePressed(java.awt.event.MouseEvent)
178 178
	 */
179 179
	public void mousePressed(MouseEvent e) {
180
	
180
		
181 181
	}
182 182

  
183 183
	/**
......
250 250
			
251 251
			if(e.getX() >= pxLeft && e.getX() <= pxRight && e.getY() >= pyUp && e.getY() <= pyDown) {
252 252
				lastGP = operanteGP = gp;
253
				getPointList().setSelectedPoint(i);
253 254
				setOperation(MOVE);
254 255
			} 			
255 256
			
org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.swing/org.gvsig.raster.georeferencing.swing.api/src/main/java/org/gvsig/raster/georeferencing/swing/model/GCPListener.java
13 13
	public void removePoint(GCPEvent event);
14 14
	
15 15
	public void modifyPoint(GCPEvent event);
16
	
17
	public void selectPoint(GCPEvent event);
16 18
}
org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.swing/org.gvsig.raster.georeferencing.swing.api/src/main/java/org/gvsig/raster/georeferencing/swing/model/GCPList.java
25 25
	public void buildNewList(GeoPointList geoPointList);
26 26
	
27 27
	public void addListener(GCPListener listener);
28
	
29
	public void setSelectedPoint(int number);
30
	
31
	public int getSelectedPoint();
28 32
}

Also available in: Unified diff