gvsig-3d / 2.0 / trunk / org.gvsig.gvsig3d.app / org.gvsig.gvsig3d.app.extension / src / main / java / org / gvsig / gvsig3d / app / listener / EditionListener.java @ 370
History | View | Annotate | Download (3.23 KB)
1 |
package org.gvsig.gvsig3d.app.listener; |
---|---|
2 |
|
3 |
import java.awt.event.KeyEvent; |
4 |
import java.awt.event.KeyListener; |
5 |
|
6 |
import org.gvsig.andami.PluginServices; |
7 |
import org.gvsig.andami.ui.mdiManager.IWindow; |
8 |
import org.gvsig.app.project.documents.view.ViewDocument; |
9 |
import org.gvsig.fmap.dal.DataStore; |
10 |
import org.gvsig.fmap.mapcontext.MapContext; |
11 |
import org.gvsig.fmap.mapcontext.layers.FLayer; |
12 |
import org.gvsig.fmap.mapcontext.layers.operations.SingleLayer; |
13 |
import org.gvsig.gvsig3d.app.extension.DefaultView3DPanel; |
14 |
import org.gvsig.gvsig3d.map3d.Layer3DProps; |
15 |
import org.gvsig.gvsig3d.map3d.MapContext3D; |
16 |
import org.gvsig.gvsig3d.navigation.NavigationMode; |
17 |
import org.gvsig.osgvp.manipulator.BasicInputHandler; |
18 |
import org.gvsig.osgvp.manipulator.EditionManager; |
19 |
import org.gvsig.osgvp.manipulator.ManipulatorHandler; |
20 |
import org.gvsig.osgvp.terrain.TerrainViewer; |
21 |
import org.gvsig.osgvp.viewer.IViewerContainer; |
22 |
|
23 |
/**
|
24 |
* @author AI2
|
25 |
* @version $Id$
|
26 |
*
|
27 |
*/
|
28 |
public class EditionListener implements KeyListener { |
29 |
|
30 |
private EditionManager _manager;
|
31 |
private IViewerContainer _canvas3d;
|
32 |
private FLayer _selectedLayer;
|
33 |
private BasicInputHandler _handler;
|
34 |
|
35 |
public EditionListener() {
|
36 |
|
37 |
} |
38 |
|
39 |
public void keyPressed(KeyEvent e) { |
40 |
|
41 |
IWindow view = PluginServices.getMDIManager().getActiveWindow(); |
42 |
if ((view instanceof DefaultView3DPanel)) { |
43 |
|
44 |
DefaultView3DPanel vista3D = (DefaultView3DPanel) view; |
45 |
ViewDocument model = vista3D.getModel(); |
46 |
MapContext mapa = model.getMapContext(); |
47 |
FLayer[] activeLayers = mapa.getLayers().getActives();
|
48 |
if (activeLayers.length == 1) { |
49 |
_selectedLayer = activeLayers[0];
|
50 |
MapContext3D m3D = (MapContext3D) _selectedLayer |
51 |
.getMapContext(); |
52 |
Layer3DProps props3D = m3D.getLayer3DProps(_selectedLayer); |
53 |
if (props3D.isEditing()) {
|
54 |
|
55 |
if (e.getKeyCode() == KeyEvent.VK_CONTROL) { |
56 |
|
57 |
System.out.println("Apretado CONTROL"); |
58 |
_manager = m3D.getEditionManager(_selectedLayer); |
59 |
_handler = m3D.getEditionHandler(_selectedLayer); |
60 |
_manager.setEnabledHandlers(false);
|
61 |
_handler.setActive(false);
|
62 |
NavigationMode navMode = vista3D.getNavMode(); |
63 |
navMode.SetDefaultMode(); |
64 |
|
65 |
} |
66 |
} |
67 |
|
68 |
} |
69 |
|
70 |
} |
71 |
|
72 |
} |
73 |
|
74 |
public void keyReleased(KeyEvent e) { |
75 |
|
76 |
IWindow view = PluginServices.getMDIManager().getActiveWindow(); |
77 |
if ((view instanceof DefaultView3DPanel)) { |
78 |
|
79 |
DefaultView3DPanel vista3D = (DefaultView3DPanel) view; |
80 |
ViewDocument model = vista3D.getModel(); |
81 |
MapContext mapa = model.getMapContext(); |
82 |
FLayer[] activeLayers = mapa.getLayers().getActives();
|
83 |
if (activeLayers.length == 1 && _selectedLayer != null) { |
84 |
FLayer layer = activeLayers[0];
|
85 |
MapContext3D m3D = (MapContext3D) _selectedLayer |
86 |
.getMapContext(); |
87 |
Layer3DProps props3D = m3D.getLayer3DProps(_selectedLayer); |
88 |
if (props3D.isEditing() && layer == _selectedLayer) {
|
89 |
|
90 |
if (e.getKeyCode() == KeyEvent.VK_CONTROL) { |
91 |
|
92 |
System.out.println("Soltado CONTROL"); |
93 |
_manager = m3D.getEditionManager(_selectedLayer); |
94 |
_manager.setEnabledHandlers(true);
|
95 |
_handler = m3D.getEditionHandler(_selectedLayer); |
96 |
_handler.setActive(true);
|
97 |
NavigationMode navMode = vista3D.getNavMode(); |
98 |
navMode.removeAllModes(); |
99 |
|
100 |
} |
101 |
} |
102 |
|
103 |
} |
104 |
|
105 |
} |
106 |
} |
107 |
|
108 |
public void keyTyped(KeyEvent e) { |
109 |
// TODO Auto-generated method stub
|
110 |
|
111 |
} |
112 |
|
113 |
} |