Statistics
| Revision:

svn-document-layout / trunk / org.gvsig.app.document.layout.app / org.gvsig.app.document.layout.app.mainplugin / src / main / java / org / gvsig / app / project / documents / layout / contextmenu / gui / CancelLayoutMenuEntry.java @ 5

History | View | Annotate | Download (2.93 KB)

1
/* gvSIG. Geographic Information System of the Valencian Government
2
 *
3
 * Copyright (C) 2007-2008 Infrastructures and Transports Department
4
 * of the Valencian Government (CIT)
5
 *
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 2
9
 * of the License, or (at your option) any later version.
10
 *
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
 * MA  02110-1301, USA.
20
 *
21
 */
22
package org.gvsig.app.project.documents.layout.contextmenu.gui;
23

    
24
import org.gvsig.andami.PluginServices;
25
import org.gvsig.app.project.documents.layout.LayoutContext;
26
import org.gvsig.app.project.documents.layout.fframes.IFFrame;
27
import org.gvsig.app.project.documents.layout.geometryadapters.GeometryAdapter;
28
import org.gvsig.app.project.documents.layout.tools.listener.ILayoutGraphicListener;
29

    
30
/**
31
 * Cancela los graficos que se esten insertando sobre el Layout.
32
 * 
33
 * @author Vicente Caballero Navarro
34
 */
35
public class CancelLayoutMenuEntry extends AbstractLayoutContextMenuAction {
36

    
37
    public String getGroup() {
38
        return "geometries";
39
    }
40

    
41
    public int getGroupOrder() {
42
        return 3;
43
    }
44

    
45
    public int getOrder() {
46
        return 2;
47
    }
48

    
49
    public String getText() {
50
        return PluginServices.getText(this, "cancel");
51
    }
52

    
53
    public boolean isEnabled(LayoutContext layoutContext,
54
        IFFrame[] selectedFrames) {
55
        return true;
56
    }
57

    
58
    public boolean isVisible(LayoutContext layoutContext,
59
        IFFrame[] selectedFrames) {
60
        String currentLayout = getLayout().getLayoutControl().getCurrentTool();
61
        if ((currentLayout.equals("layoutaddpolyline")
62
            || currentLayout.equals("layoutaddpolygon")
63
            || currentLayout.equals("layoutaddcircle")
64
            || currentLayout.equals("layoutaddline") || currentLayout
65
                .equals("layoutaddrectangle"))
66
            && getLayout().getLayoutControl().getGeometryAdapter().getPoints().length > 0) {
67
            return true;
68
        }
69
        return false;
70
    }
71

    
72
    public void execute(LayoutContext layoutContext, IFFrame[] selectedFrames) {
73
        if (getLayout().getLayoutControl().getCurrentLayoutTool().getListener() instanceof ILayoutGraphicListener) {
74
            GeometryAdapter ga =
75
                ((ILayoutGraphicListener) getLayout().getLayoutControl()
76
                    .getCurrentLayoutTool().getListener())
77
                    .createGeometryAdapter();
78
            getLayout().getLayoutControl().setGeometryAdapter(ga);
79
        }
80
    }
81
}