Statistics
| Revision:

root / trunk / libraries / libFMap / src / com / iver / cit / gvsig / fmap / layers / layerOperations / Selectable.java @ 1005

History | View | Annotate | Download (1.71 KB)

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

    
3
import com.iver.cit.gvsig.fmap.layers.FBitSet;
4
import com.iver.cit.gvsig.fmap.layers.SelectionListener;
5

    
6

    
7
/**
8
 * Interfaz que implementan las capas en las cuales se puede realizar una
9
 * selecci?n.
10
 */
11
public interface Selectable {
12
        /**
13
         * Establece la selecci?n de la capa. No lanza nin?n evento, ya que se
14
         * lanzan manualmente mediante el m?todo fireSelectionEvents
15
         *
16
         * @param selection
17
         */
18
        void setSelection(FBitSet selection);
19

    
20
        /**
21
         * Devuelve true si el ?ndice que se pasa como par?metro corresponde a un
22
         * registro seleccionado y false en caso contrario
23
         *
24
         * @param index ?ndice.
25
         *
26
         * @return True si esta seleccionado.
27
         */
28
        boolean isSelected(int index);
29

    
30
        /**
31
         * Elimina la selecci?n de la capa. No lanza nin?n evento, ya que se lanzan
32
         * manualmente mediante el m?todo fireSelectionEvents
33
         */
34
        void clearSelection();
35

    
36
        /**
37
         * Obtiene el bitset que contiene la informaci?n de los registros
38
         * seleccionados de la capa
39
         *
40
         * @return BitSet con los ?ndices de los elementos seleccionados.
41
         */
42
        FBitSet getSelection();
43

    
44
        /**
45
         * Cuando ocurre un evento de cambio en la selecci?n, ?ste puede ser uno de
46
         * una gran cantidad de eventos. Con el fin de no propagar todos estos
47
         * eventos, se realiza la propagaci?n de manera manual al final de la
48
         * "r?faga" de eventos
49
         */
50
        void fireSelectionEvents();
51

    
52
        /**
53
         * A?ade un listener de selecci?n a la capa
54
         *
55
         * @param listener listener que se quiere a?adir
56
         */
57
        public void addSelectionListener(SelectionListener listener);
58

    
59
        /**
60
         * Elimina un listener de selecci?n de la capa
61
         *
62
         * @param listener listener que se quiere eliminar
63
         */
64
        public void removeSelectionListener(SelectionListener listener);
65
}