Revision 1822 branches/gvSIG_CAD_Layout_version/applications/appgvSIG/src/com/iver/cit/gvsig/gui/layout/EventsHandler.java

View differences:

EventsHandler.java
45 45
package com.iver.cit.gvsig.gui.layout;
46 46

  
47 47
import com.iver.andami.PluginServices;
48
import com.iver.cit.gvsig.fmap.edition.EditionException;
48

  
49 49
import com.iver.cit.gvsig.fmap.tools.BehaviorException;
50 50
import com.iver.cit.gvsig.gui.cad.tools.SelectionCadTool;
51
import com.iver.cit.gvsig.gui.layout.fframes.FFrame;
52
import com.iver.cit.gvsig.gui.layout.fframes.FFrameGraphics;
53 51
import com.iver.cit.gvsig.gui.layout.fframes.IFFrame;
54 52

  
55 53
import java.awt.Cursor;
......
62 60
import java.awt.event.MouseListener;
63 61
import java.awt.event.MouseMotionListener;
64 62
import java.awt.geom.Point2D;
65
import java.awt.geom.Rectangle2D;
66 63

  
67 64
import java.util.ArrayList;
68 65

  
......
90 87
		layout = l;
91 88
		events = new FLayoutFunctions(layout);
92 89
		zooms = new FLayoutZooms(layout);
93
	/*	try {
94
			layout.getCadToolAdapter().startEdition();
95
		} catch (EditionException e) {
96
			e.printStackTrace();
97
		}
98
		*/
99 90
	}
100 91

  
101 92
	/**
......
138 129
			layout.setLastPoint(e.getPoint());
139 130
			layout.repaint();
140 131
		}
141
		if (layout.getTool()==Layout.GRAPHICS || 
142
				layout.getTool()==Layout.RECTANGLEGROUP || 
143
				layout.getTool()==Layout.RECTANGLELEGEND || 
144
				layout.getTool()==Layout.RECTANGLEPICTURE || 
145
				layout.getTool()==Layout.RECTANGLESCALEBAR || 
146
				layout.getTool()==Layout.RECTANGLESYMBOL || 
147
				layout.getTool()==Layout.RECTANGLETEXT || 
148
				layout.getTool()==Layout.RECTANGLEVIEW){
132

  
133
		if ((layout.getTool() == Layout.GRAPHICS) ||
134
				(layout.getTool() == Layout.RECTANGLEGROUP) ||
135
				(layout.getTool() == Layout.RECTANGLELEGEND) ||
136
				(layout.getTool() == Layout.RECTANGLEPICTURE) ||
137
				(layout.getTool() == Layout.RECTANGLESCALEBAR) ||
138
				(layout.getTool() == Layout.RECTANGLESYMBOL) ||
139
				(layout.getTool() == Layout.RECTANGLETEXT) ||
140
				(layout.getTool() == Layout.RECTANGLEVIEW)) {
149 141
			try {
150 142
				layout.getCadToolAdapter().mouseDragged(e);
151 143
			} catch (BehaviorException e1) {
......
158 150
	 * @see java.awt.event.MouseMotionListener#mouseMoved(java.awt.event.MouseEvent)
159 151
	 */
160 152
	public void mouseMoved(MouseEvent E) {
161
		if (layout.getTool()==Layout.GRAPHICS){
153
		IFFrame[] frames = layout.getFFrames1();
154

  
155
		if (layout.getTool() == Layout.GRAPHICS) {
162 156
			layout.setLastPoint(E.getPoint());
163 157
			layout.setStatus(Layout.ACTUALIZADO);
164 158
			layout.repaint();
159

  
165 160
			try {
166 161
				layout.getCadToolAdapter().mouseMoved(E);
167 162
			} catch (BehaviorException e) {
168 163
				e.printStackTrace();
169 164
			}
170
		}else if (layout.getTool() == Layout.SELECT) {
171
			
165
		} else if (layout.getTool() == Layout.SELECT) {
172 166
			Cursor cursor = null;
173 167
			Point2D.Double p = new Point2D.Double(E.getX(), E.getY());
174 168

  
175
			for (int i = 0; i < layout.getFFrames().size(); i++) {
176
				IFFrame auxfframe = (IFFrame) layout.getFFrames().get(i);
169
			for (int i = 0; i < frames.length; i++) {
170
				IFFrame auxfframe = frames[i]; //(IFFrame) layout.getFFrames().get(i);
177 171

  
178
				if ((auxfframe.getSelected() != FFrame.NOSELECT)) {
172
				if ((auxfframe.getSelected() != IFFrame.NOSELECT)) {
179 173
					cursor = auxfframe.getMapCursor(p);
180 174
				}
181 175

  
......
192 186
	 * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
193 187
	 */
194 188
	public void mouseClicked(MouseEvent E) {
189
		IFFrame[] frames = layout.getFFrames1();
190

  
195 191
		if (E.getButton() == MouseEvent.BUTTON1) {
196 192
			if (layout.getTool() == Layout.SELECT) {
197 193
				m_pointSelected = new Point2D.Double(E.getX(), E.getY());
198 194

  
199
				int i = layout.getFFrames().size() - 1;
195
				int i = frames.length - 1;
200 196
				boolean isSelect = false;
201 197

  
202
				if (layout.getFFrames().size() > 0) {
198
				if (frames.length > 0) {
203 199
					ArrayList listSelect = new ArrayList();
204 200

  
205
					for (int j = 0; j < layout.getFFrames().size(); j++) {
206
						if (((IFFrame) layout.getFFrames().get(j)).getContains(
207
									m_pointSelected) != FFrame.NOSELECT) {
208
							listSelect.add((IFFrame) layout.getFFrames().get(j));
201
					for (int j = 0; j < frames.length; j++) {
202
						if (frames[j].getContains(m_pointSelected) != IFFrame.NOSELECT) {
203
							listSelect.add(frames[j]);
209 204
						}
210
					
211 205
					}
206

  
212 207
					if (listSelect.size() > 0) {
213 208
						for (int k = 0; k < listSelect.size(); k++) {
214
							if (((IFFrame) listSelect.get(k)).getSelected() != FFrame.NOSELECT) {
209
							if (((IFFrame) listSelect.get(k)).getSelected() != IFFrame.NOSELECT) {
215 210
								index = listSelect.size() - k;
216 211

  
217 212
								break;
......
223 218
							index = 0;
224 219
						}
225 220

  
226
						for (int j = 0; j < layout.getFFrames().size(); j++) {
227
							IFFrame fframe = (IFFrame) layout.getFFrames().get(j);
221
						for (int j = 0; j < frames.length; j++) {
222
							IFFrame fframe = frames[j]; //(IFFrame) layout.getFFrames().get(j);
228 223

  
229 224
							if (!E.isShiftDown()) {
230 225
								fframe.setSelected(false);
231 226
							} else {
232
								if (fframe.getSelected() != FFrame.NOSELECT) {
233
									if (fframe.getContains(m_pointSelected) != FFrame.NOSELECT) {
227
								if (fframe.getSelected() != IFFrame.NOSELECT) {
228
									if (fframe.getContains(m_pointSelected) != IFFrame.NOSELECT) {
234 229
										fframe.setSelected(false);
235 230
									}
236 231
								}
......
293 288
	 * @see java.awt.event.MouseListener#mousePressed(java.awt.event.MouseEvent)
294 289
	 */
295 290
	public void mousePressed(MouseEvent E) {
291
		IFFrame[] frames = layout.getFFrames1();
292

  
296 293
		if (E.getButton() == MouseEvent.BUTTON1) {
297 294
			Point pScreen = new Point(E.getX(), E.getY());
298 295
			layout.setPointAnt(pScreen);
......
307 304
					(layout.getTool() == Layout.RECTANGLELEGEND) ||
308 305
					(layout.getTool() == Layout.RECTANGLETEXT)) {
309 306
				layout.setStatus(Layout.RECTANGLE);
310
			} else if (layout.getTool()== Layout.GRAPHICS){
307
			} else if (layout.getTool() == Layout.GRAPHICS) {
311 308
				try {
312
						layout.getCadToolAdapter().mousePressed(E);	
313
					} catch (BehaviorException e) {
314
						e.printStackTrace();
315
					}
316
				//}
309
					layout.getCadToolAdapter().mousePressed(E);
310
				} catch (BehaviorException e) {
311
					e.printStackTrace();
312
				}
317 313
			} else if (layout.getTool() == Layout.PAN) {
318 314
				layout.getRectOrigin().setLocation(layout.getRect().x,
319 315
					layout.getRect().y);
320 316
				layout.setStatus(Layout.PAN);
321 317
			} else if (layout.getTool() == Layout.VIEW_PAN) {
322
				/*        layout.getRectOrigin().setLocation(layout.getRect().x,
323
				   layout.getRect().y);
324
				 */
325 318
				layout.setStatus(Layout.VIEW_PAN);
326 319
			} else if (layout.getTool() == Layout.ZOOM_MENOS) {
327 320
				layout.setCancelDrawing(true);
......
330 323
				layout.setCancelDrawing(true);
331 324
			} else if (layout.getTool() == Layout.SELECT) {
332 325
				m_pointSelected = new Point2D.Double(E.getX(), E.getY());
326
				layout.setFirstPoint(E.getPoint());
333 327

  
334
				for (int i = 0; i < layout.getFFrames().size(); i++) {
335
					IFFrame fframe = ((IFFrame) layout.getFFrames().get(i));
328
				for (int i = 0; i < frames.length; i++) {
329
					IFFrame fframe = frames[i]; // ((IFFrame) layout.getFFrames().get(i));
336 330

  
337 331
					if (m_pointSelected != null) {
338 332
						if (!E.isShiftDown()) {
339
							if ((fframe.getSelected() != FFrame.NOSELECT)) {
333
							if ((fframe.getSelected() != IFFrame.NOSELECT)) {
340 334
								fframe.setSelected(m_pointSelected);
341 335
							}
342 336
						}
343 337
					}
344 338

  
345
					if (fframe.getSelected() != FFrame.NOSELECT) {
339
					if (fframe.getSelected() != IFFrame.NOSELECT) {
346 340
						layout.setIsReSel(false);
347 341
					}
348 342
				}
......
356 350
					layout.setStatus(Layout.SELECT);
357 351
					layout.repaint();
358 352
				}
359
			} /*else if (layout.getTool() == Layout.POINT) {
360
				FFrameGraphics fframepoint = new FFrameGraphics();
361
				fframepoint.setBoundBox(FLayoutUtilities.toSheetRect(
362
						new Rectangle2D.Double(E.getX(), E.getY(), 20, 20),
363
						layout.getAT()));
364
				fframepoint.update(Layout.POINT, layout.getAT());
365
				layout.addFFrame(fframepoint, true);
366
			}*/ else if (layout.getTool() == Layout.SET_TAG) {
353
			} else if (layout.getTool() == Layout.SET_TAG) {
367 354
				m_pointSelected = new Point2D.Double(E.getX(), E.getY());
368 355

  
369
				for (int i = 0; i < layout.getFFrames().size(); i++) {
370
					IFFrame fframe = ((IFFrame) layout.getFFrames().get(i));
356
				for (int i = 0; i < frames.length; i++) {
357
					IFFrame fframe = frames[i]; //((IFFrame) layout.getFFrames().get(i));
371 358

  
372 359
					if (m_pointSelected != null) {
373 360
						if (fframe.contains(m_pointSelected)) {
......
377 364
				}
378 365
			}
379 366
		} else if (E.getButton() == MouseEvent.BUTTON3) {
380
			if (!(layout.getCadToolAdapter().getCadTool() instanceof SelectionCadTool)){
381
				 //if (E.isPopupTrigger()) {
382
		            layout.getPopup().show(E.getComponent(),
383
		                       E.getX(), E.getY());
384
		            //layout.repaint();
385
		        //}
386
			}else{
367
			layout.getCadToolAdapter().configureMenu();
368

  
369
			if ((layout.getTool() == Layout.GRAPHICS) &&
370
					!(layout.getCadToolAdapter().getCadTool() instanceof SelectionCadTool)) {
371
				layout.getPopup().show(E.getComponent(), E.getX(), E.getY());
372
			} else {
387 373
				Popupmenu popupmenu = new Popupmenu(layout, E.getPoint());
388 374
			}
389 375
		}
......
414 400
					(layout.getTool() == Layout.RECTANGLELEGEND) ||
415 401
					(layout.getTool() == Layout.RECTANGLETEXT)) {
416 402
				events.setFFrame();
417
				
418 403
			} else if (layout.getTool() == Layout.VIEW_ZOOMIN) {
419 404
				zooms.setViewZoomIn(p1, p2);
420 405
			} else if (layout.getTool() == Layout.VIEW_ZOOMOUT) {
......
426 411
			layout.setCancelDrawing(false);
427 412
		} else if (E.getButton() == MouseEvent.BUTTON3) {
428 413
		}
429
		/*if (layout.getTool()==Layout.GRAPHICS){
430
			layout.setStatus(Layout.GRAPHICS);
431
		}*/
414

  
415
		layout.setLastPoint(E.getPoint());
432 416
		layout.repaint();
433 417
		PluginServices.getMainFrame().enableControls();
434 418
	}

Also available in: Unified diff