Revision 1822 branches/gvSIG_CAD_Layout_version/applications/appgvSIG/src/com/iver/cit/gvsig/gui/layout/EventsHandler.java
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