Statistics
| Revision:

root / trunk / libraries / libFMap / src / com / iver / cit / gvsig / fmap / AtomicEvent.java @ 1034

History | View | Annotate | Download (3.47 KB)

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

    
3
import com.iver.cit.gvsig.fmap.layers.LayerCollectionEvent;
4
import com.iver.cit.gvsig.fmap.layers.LayerEvent;
5
import com.iver.cit.gvsig.fmap.layers.LegendEvent;
6
import com.iver.cit.gvsig.fmap.layers.SelectionEvent;
7

    
8
import java.util.ArrayList;
9
import java.util.Iterator;
10

    
11

    
12
/**
13
 * Evento.
14
 */
15
public class AtomicEvent extends FMapEvent {
16
        private ArrayList events;
17

    
18
        /**
19
         * Crea un nuevo AtomicEvent.
20
         *
21
         * @param fmapEvents ArrayList de FMapEvent.
22
         */
23
        public AtomicEvent(ArrayList fmapEvents) {
24
                this.events = (ArrayList) fmapEvents.clone();
25
        }
26

    
27
        /**
28
         * Devuelve el FMapEvent a partir de un ?ndice.
29
         *
30
         * @param index ?ndice.
31
         *
32
         * @return FMapEvent.
33
         */
34
        public FMapEvent getEvent(int index) {
35
                return (FMapEvent) events.get(index);
36
        }
37

    
38
        /**
39
         * Devuelve el n?mero de eventos.
40
         *
41
         * @return N?mero de eventos.
42
         */
43
        public int getEventCount() {
44
                return events.size();
45
        }
46

    
47
        /**
48
         * Devuelve un vector con los eventos de leyenda.
49
         *
50
         * @return Vector de eventos de leyenda.
51
         */
52
        public LegendEvent[] getLegendEvents() {
53
                ArrayList ret = new ArrayList();
54

    
55
                for (Iterator iter = events.iterator(); iter.hasNext();) {
56
                        FMapEvent event = (FMapEvent) iter.next();
57

    
58
                        if (event instanceof LegendEvent) {
59
                                ret.add(event);
60
                        }
61
                }
62

    
63
                return (LegendEvent[]) ret.toArray(new LegendEvent[0]);
64
        }
65

    
66
        /**
67
         * Devuelve un vector con los eventos de colecciones de capas.
68
         *
69
         * @return vector con los eventos de colecciones de capas.
70
         */
71
        public LayerCollectionEvent[] getLayerCollectionEvents() {
72
                ArrayList ret = new ArrayList();
73

    
74
                for (Iterator iter = events.iterator(); iter.hasNext();) {
75
                        FMapEvent event = (FMapEvent) iter.next();
76

    
77
                        if (event instanceof LayerCollectionEvent) {
78
                                ret.add(event);
79
                        }
80
                }
81

    
82
                return (LayerCollectionEvent[]) ret.toArray(new LayerCollectionEvent[0]);
83
        }
84

    
85
        /**
86
         * Devuelve un vector con los eventos de selecci?n.
87
         *
88
         * @return vector de eventos de selecci?n.
89
         */
90
        public SelectionEvent[] getSelectionEvents() {
91
                ArrayList ret = new ArrayList();
92

    
93
                for (Iterator iter = events.iterator(); iter.hasNext();) {
94
                        FMapEvent event = (FMapEvent) iter.next();
95

    
96
                        if (event instanceof SelectionEvent) {
97
                                ret.add(event);
98
                        }
99
                }
100

    
101
                return (SelectionEvent[]) ret.toArray(new SelectionEvent[0]);
102
        }
103

    
104
        /**
105
         * Devuelve un vector con los eventos de extent.
106
         *
107
         * @return vector con los eventos de extent.
108
         */
109
        public ExtentEvent[] getExtentEvents() {
110
                ArrayList ret = new ArrayList();
111

    
112
                for (Iterator iter = events.iterator(); iter.hasNext();) {
113
                        FMapEvent event = (FMapEvent) iter.next();
114

    
115
                        if (event instanceof ExtentEvent) {
116
                                ret.add(event);
117
                        }
118
                }
119

    
120
                return (ExtentEvent[]) ret.toArray(new ExtentEvent[0]);
121
        }
122

    
123
        /**
124
         * Devuelve un vector con los eventos de capa.
125
         *
126
         * @return vector con los eventos de capa.
127
         */
128
        public LayerEvent[] getLayerEvents() {
129
                ArrayList ret = new ArrayList();
130

    
131
                for (Iterator iter = events.iterator(); iter.hasNext();) {
132
                        FMapEvent event = (FMapEvent) iter.next();
133

    
134
                        if (event instanceof LayerEvent) {
135
                                ret.add(event);
136
                        }
137
                }
138

    
139
                return (LayerEvent[]) ret.toArray(new LayerEvent[0]);
140
        }
141

    
142
        /**
143
         * Devuelve un vector con los eventos de color.
144
         *
145
         * @return vector con los eventos de color.
146
         */
147
        public ColorEvent[] getColorEvents() {
148
                ArrayList ret = new ArrayList();
149

    
150
                for (Iterator iter = events.iterator(); iter.hasNext();) {
151
                        FMapEvent event = (FMapEvent) iter.next();
152

    
153
                        if (event instanceof ColorEvent) {
154
                                ret.add(event);
155
                        }
156
                }
157

    
158
                return (ColorEvent[]) ret.toArray(new ColorEvent[0]);
159
        }
160
}