Statistics
| Revision:

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
}