Statistics
| Revision:

root / trunk / libraries / libFMap / src / com / iver / cit / gvsig / fmap / layers / FLayer.java @ 1056

History | View | Annotate | Download (3.76 KB)

1
package com.iver.cit.gvsig.fmap.layers;
2

    
3
import com.iver.cit.gvsig.fmap.DriverException;
4
import com.iver.cit.gvsig.fmap.FMap;
5
import com.iver.cit.gvsig.fmap.ViewPort;
6
import com.iver.cit.gvsig.fmap.drivers.DriverIOException;
7
import com.iver.cit.gvsig.fmap.operations.Cancellable;
8

    
9
import com.iver.utiles.XMLEntity;
10

    
11
import org.cresques.cts.ICoordTrans;
12

    
13
import org.cresques.geo.Projected;
14

    
15
import java.awt.Graphics2D;
16
import java.awt.geom.Rectangle2D;
17
import java.awt.image.BufferedImage;
18

    
19

    
20
/**
21
 * Interfaz que tienen que implementar todas las capas.
22
 */
23
public interface FLayer extends Projected {
24
        /**
25
         * Obtiene una representaci?n de la colecci?n de capas de forma recursiva
26
         *
27
         * @return XMLEntity.
28
         */
29
        XMLEntity getXMLEntity();
30

    
31
        /**
32
         * Inserta las propiedades del XMLEntity al objeto actual.
33
         *
34
         * @param xml XMLEntity
35
         *
36
         * @throws XMLException
37
         */
38
        void setXMLEntity(XMLEntity xml) throws XMLException;
39

    
40
        /**
41
         * Pone la capa actual a activa o inactiva seg?n el boolean que se pasa
42
         * como par?metro.
43
         *
44
         * @param selected activa.
45
         */
46
        void setActive(boolean selected);
47

    
48
        /**
49
         * Devuelve true si la capa esta activa.
50
         *
51
         * @return activa.
52
         */
53
        boolean isActive();
54

    
55
        /**
56
         * Inserta un nombre a la capa.
57
         *
58
         * @param name nombre.
59
         */
60
        void setName(String name);
61

    
62
        /**
63
         * Devuelve el nombre de la capa.
64
         *
65
         * @return nombre de la capa.
66
         */
67
        String getName();
68

    
69
        /**
70
         * Realiza las operaciones de inicializaci?n de la capa. El m?todo es
71
         * invocado una ?nica vez durante la vida de la capa y justo antes de
72
         * visualizar la capa
73
         *
74
         * @throws DriverIOException
75
         */
76
        void load() throws DriverIOException;
77

    
78
        /**
79
         * Pone la capa en modo visible o no visible.
80
         *
81
         * @param visibility visibilidad.
82
         */
83
        void setVisible(boolean visibility);
84

    
85
        /**
86
         * Devuelve true si la capa es visible.
87
         *
88
         * @return visibilidad.
89
         */
90
        boolean isVisible();
91

    
92
        /**
93
         * Devuelve el FLayers padre de la capa.
94
         *
95
         * @return FLayers padre de la capa.
96
         */
97
        public FLayers getParentLayer();
98

    
99
        /**
100
         * Devuelve el FMap al que est? a?adida la capa o null si la capa no ha
101
         * sido a?adida a ning?n FMap
102
         *
103
         * @return FMap
104
         */
105
        public FMap getFMap();
106

    
107
        /**
108
         * Inserta el FLayers padre de la capa.
109
         *
110
         * @param root capa padre.
111
         */
112
        public void setParentLayer(FLayers root);
113

    
114
        /**
115
         * Obtiene la extensi?n completa de la capa
116
         *
117
         * @return FullExtent.
118
         *
119
         * @throws DriverException
120
         */
121
        Rectangle2D getFullExtent() throws DriverException;
122

    
123
        /**
124
         * Dibuja la capa
125
         *
126
         * @param image Imagen utilizada para acelerar el dibujado en pantalla.
127
         * @param g Graphics2D sobre el que dibujar.
128
         * @param viewPort Propiedades de la vista.
129
         * @param cancel PAra poder cancelar el dibujado.
130
         *
131
         * @throws DriverException
132
         */
133
        void draw(BufferedImage image, Graphics2D g, ViewPort viewPort,
134
                Cancellable cancel) throws DriverException;
135

    
136
        /**
137
         * Dibuja la capa
138
         *
139
         * @param g Graphics2D de la impresora sobre el que dibujar.
140
         * @param viewPort Propiedades de la vista.
141
         * @param cancel
142
         *
143
         * @throws DriverException
144
         */
145
        void print(Graphics2D g, ViewPort viewPort, Cancellable cancel)
146
                throws DriverException;
147

    
148
        /**
149
         * Inserta las coordenadas de transformaci?n.
150
         *
151
         * @param ct Coordenadas de transformaci?n.
152
         */
153
        void setCoordTrans(ICoordTrans ct);
154

    
155
        /**
156
         * Devuelve las coordenadas de transformaci?n.
157
         *
158
         * @return Coordenadas de transformaci?n.
159
         */
160
        ICoordTrans getCoordTrans();
161

    
162
        /**
163
         * A?ade un listener LayerListener a la lista de listeners.
164
         *
165
         * @param o Listener.
166
         *
167
         * @return True si es correcta la inserci?n del listener.
168
         */
169
        public boolean addLayerListener(LayerListener o);
170

    
171
        /**
172
         * Borra de la lista el LayerListener que se pasa como par?metro.
173
         *
174
         * @param o Listener.
175
         *
176
         * @return True si es correcto el borrado del listener.
177
         */
178
        public boolean removeLayerListener(LayerListener o);
179
}