Statistics
| Revision:

root / trunk / extensions / extCAD / src / com / iver / cit / gvsig / ViewCommandStackExtension.java @ 12739

History | View | Annotate | Download (2.7 KB)

1
package com.iver.cit.gvsig;
2

    
3
import com.hardcode.gdbms.driver.exceptions.ReadDriverException;
4
import com.iver.andami.PluginServices;
5
import com.iver.andami.messages.NotificationManager;
6
import com.iver.andami.plugins.Extension;
7
import com.iver.cit.gvsig.fmap.MapContext;
8
import com.iver.cit.gvsig.fmap.edition.IEditableSource;
9
import com.iver.cit.gvsig.fmap.edition.VectorialEditableAdapter;
10
import com.iver.cit.gvsig.fmap.edition.commands.CommandListener;
11
import com.iver.cit.gvsig.fmap.layers.FLayers;
12
import com.iver.cit.gvsig.fmap.layers.FLyrVect;
13
import com.iver.cit.gvsig.gui.command.CommandStackDialog;
14
import com.iver.cit.gvsig.project.documents.view.IProjectView;
15
import com.iver.cit.gvsig.project.documents.view.gui.View;
16

    
17
/**
18
 * DOCUMENT ME!
19
 *
20
 * @author Vicente Caballero Navarro
21
 */
22
public class ViewCommandStackExtension extends Extension implements CommandListener{
23
        public static CommandStackDialog csd=null;
24
        /**
25
         * @see com.iver.andami.plugins.IExtension#initialize()
26
         */
27
        public void initialize() {
28
        }
29

    
30
        /**
31
         * @see com.iver.andami.plugins.IExtension#execute(java.lang.String)
32
         */
33
        public void execute(String s) {
34
                com.iver.andami.ui.mdiManager.IWindow f = PluginServices.getMDIManager()
35
                                .getActiveWindow();
36

    
37
                View vista = (View) f;
38
                IProjectView model = vista.getModel();
39
                MapContext mapa = model.getMapContext();
40
                FLayers layers = mapa.getLayers();
41
                if (s.equals("COMMANDSTACK")) {
42
                        for (int i =0;i<layers.getLayersCount();i++){
43
                                if (layers.getLayer(i) instanceof FLyrVect){
44
                                        FLyrVect lyrVect=(FLyrVect)layers.getLayer(i);
45
                                        if (lyrVect.isEditing() && lyrVect.isActive()){
46
                                                VectorialEditableAdapter vea = (VectorialEditableAdapter) lyrVect
47
                                                .getSource();
48
                                                vea.getCommandRecord().addCommandListener(this);
49
                                                csd=new CommandStackDialog();
50
                                                csd.setModel(((IEditableSource)lyrVect.getSource()).getCommandRecord());
51
                                                PluginServices.getMDIManager().addWindow(csd);
52
                                                return;
53
                                        }
54
                                }
55
                        }
56
                }
57

    
58
                //PluginServices.getMainFrame().enableControls();
59

    
60
        }
61

    
62
        /**
63
         * @see com.iver.andami.plugins.IExtension#isEnabled()
64
         */
65
        public boolean isEnabled() {
66

    
67
                return true;
68
        }
69

    
70
        /**
71
         * @see com.iver.andami.plugins.IExtension#isVisible()
72
         */
73
        public boolean isVisible() {
74
                if (EditionUtilities.getEditionStatus() == EditionUtilities.EDITION_STATUS_ONE_VECTORIAL_LAYER_ACTIVE_AND_EDITABLE)
75
                        return true;
76
                return false;
77

    
78
        }
79

    
80
        public void commandRepaint() {
81
                try {
82
                        CADExtension.getCADTool().clearSelection();
83
                } catch (ReadDriverException e) {
84
                        NotificationManager.addError(e.getMessage(),e);
85
                }
86

    
87
        }
88

    
89
        public void commandRefresh() {
90
                try {
91
                        CADExtension.getCADTool().clearSelection();
92
                } catch (ReadDriverException e) {
93
                        NotificationManager.addError(e.getMessage(),e);
94
                }
95
        }
96
}