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 / SimplifyLayoutMenuEntry.java @ 5

History | View | Annotate | Download (2.74 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.FFrameLegend;
27
import org.gvsig.app.project.documents.layout.fframes.IFFrame;
28

    
29
/**
30
 * Realiza una simplificaci?n de una leyenda previamente seleccionada en
31
 * s?mbolos y textos.
32
 * 
33
 * @author Vicente Caballero Navarro
34
 */
35
public class SimplifyLayoutMenuEntry extends AbstractLayoutContextMenuAction {
36

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

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

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

    
49
    public String getText() {
50
        return PluginServices.getText(this, "simplificar_leyenda");
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
        for (int i = 0; i < selectedFrames.length; i++) {
61
            if (selectedFrames[i] instanceof FFrameLegend
62
                && !(getLayout().getLayoutControl().getGeometryAdapter()
63
                    .getPoints().length > 0)) {
64
                return true;
65
            }
66
        }
67
        return false;
68
    }
69

    
70
    public void execute(LayoutContext layoutContext, IFFrame[] selectedFrames) {
71
        layoutContext.getFrameCommandsRecord().startComplex(
72
            PluginServices.getText(this, "simplify"));
73
        for (int i = selectedFrames.length - 1; i >= 0; i--) {
74
            IFFrame fframe = selectedFrames[i];
75
            if (fframe instanceof FFrameLegend) {
76
                ((FFrameLegend) fframe).toFFrames(layoutContext);
77
            }
78
        }
79
        layoutContext.getFrameCommandsRecord().endComplex();
80
        layoutContext.notifAllObservers();
81
    }
82
}