Statistics
| Revision:

root / branches / gvSIG_CAD / applications / appgvSIG / src / com / iver / cit / gvsig / gui / cad / CadTool.java @ 3513

History | View | Annotate | Download (2.8 KB)

1
/* Generated by Together */
2
package com.iver.cit.gvsig.gui.cad;
3

    
4
import com.iver.cit.gvsig.fmap.core.v02.FConstant;
5
import com.iver.cit.gvsig.fmap.core.v02.FSymbol;
6
import com.iver.cit.gvsig.fmap.edition.EditableFeatureSource;
7
import com.iver.cit.gvsig.fmap.layers.FBitSet;
8

    
9
import com.iver.fsac.Automaton;
10

    
11
import java.awt.Color;
12
import java.awt.Graphics;
13

    
14

    
15
/**
16
 * DOCUMENT ME!
17
 *
18
 * @author $author$
19
 */
20
public interface CadTool {
21
        public static FSymbol drawingSymbol = new FSymbol(FConstant.SYMBOL_TYPE_POINT,
22
                        Color.RED);
23
        public static FSymbol modifySymbol = new FSymbol(FConstant.SYMBOL_TYPE_POINT,
24
                        Color.GRAY);
25
        public static FSymbol selectSymbol = new FSymbol(FConstant.SYMBOL_TYPE_POINT,
26
                        Color.ORANGE);
27

    
28
        /**
29
         * Indica una transici?n de un estado a otro. En ?ste m?todo se deber?
30
         * comprobar si el estado al que se llega con la transici?n es un estado
31
         * en el que hay que modificar, a?adir o eliminar una geometr?a.
32
         *
33
         * @param text DOCUMENT ME!
34
         * @param editingSource DOCUMENT ME!
35
         * @param selectedGeometries DOCUMENT ME!
36
         * @param ds DOCUMENT ME!
37
         *
38
         * @return El valor de retorno es el mismo que en el caso
39
         *                    com.iver.fsac.Automaton.transition(string)
40
         */
41
        int transition(String text, EditableFeatureSource editingSource,
42
                FBitSet selectedGeometries, double[] ds);
43

    
44
        /**
45
         * Recibe un graphics en el que se encuentra dibujada la
46
         * EditableFeatureSource que se pasa como par?metro. En este m?todo, la
47
         * herramienta ha de implementar el dibujado de la operaci?n que se est?
48
         * realizando dependiendo del estado. Por ejemplo al dibujar un c?rculo
49
         * mediante 3 puntos, cuando la herramienta se encuentre en el estado en
50
         * el que s?lo falta un punto, se dibujar? el c?rculo teniendo en cuenta
51
         * como tercer punto el puntero del rat?n (pasado en los par?metros x e
52
         * y). Este m?todo es invocado tras cada transici?n y cada vez que se
53
         * mueve el rat?n.
54
         *
55
         * @param g DOCUMENT ME!
56
         * @param efs DOCUMENT ME!
57
         * @param selectedGeometries DOCUMENT ME!
58
         * @param x DOCUMENT ME!
59
         * @param y DOCUMENT ME!
60
         */
61
        void drawOperation(Graphics g, EditableFeatureSource efs,
62
                FBitSet selectedGeometries, double x, double y);
63

    
64
        /**
65
         * Obtiene la pregunta que saldr? en la consola relativa al estado en el
66
         * que se encuentra la herramienta
67
         *
68
         * @return DOCUMENT ME!
69
         */
70
        String getQuestion();
71

    
72
        /**
73
         * Inicializa el estado del aut?mata de la herramienta
74
         */
75
        void initializeStatus();
76

    
77
        /**
78
         * DOCUMENT ME!
79
         *
80
         * @param cta DOCUMENT ME!
81
         */
82
        public void setCadToolAdapter(CADToolAdapter cta);
83

    
84
        /**
85
         * DOCUMENT ME!
86
         *
87
         * @return DOCUMENT ME!
88
         */
89
        public CADToolAdapter getCadToolAdapter();
90

    
91
        /**
92
         * DOCUMENT ME!
93
         *
94
         * @return DOCUMENT ME!
95
         */
96
        public Automaton getAutomaton();
97

    
98
        /**
99
         * Devuelve el nombre de la herramienta cad.
100
         *
101
         * @return Nombre de la herramienta.
102
         */
103
        public String getName();
104
}