Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.expressionevaluator / org.gvsig.expressionevaluator.swing / org.gvsig.expressionevaluator.swing.impl / src / main / java / org / gvsig / expressionevaluator / swing / impl / DefaultGroupElement.java @ 43970

History | View | Annotate | Download (1.94 KB)

1
/*
2
 * To change this license header, choose License Headers in Project Properties.
3
 * To change this template file, choose Tools | Templates
4
 * and open the template in the editor.
5
 */
6
package org.gvsig.expressionevaluator.swing.impl;
7

    
8
import java.util.ArrayList;
9
import java.util.Iterator;
10
import java.util.List;
11
import org.gvsig.expressionevaluator.Function;
12
import org.gvsig.expressionevaluator.swing.ExpressionEvaluatorSwingManager;
13
import org.gvsig.expressionevaluator.swing.JExpressionBuilder;
14

    
15
/**
16
 *
17
 * @author jjdelcerro
18
 */
19
class DefaultGroupElement implements JExpressionBuilder.GroupElement {
20
    
21
    private final String name;
22
    private final List<JExpressionBuilder.Element> elements;
23
    private ExpressionEvaluatorSwingManager manager;
24

    
25
    public DefaultGroupElement(ExpressionEvaluatorSwingManager manager, String name, List<JExpressionBuilder.Element> elements) {
26
        this.manager = manager;
27
        this.name = name;
28
        this.elements = elements;
29
    }
30

    
31
    public DefaultGroupElement(String name) {
32
        this.name = name;
33
        this.elements = new ArrayList<>();
34
    }
35

    
36
    public List<JExpressionBuilder.Element> getElements() {
37
        return this.elements;
38
    }
39

    
40
    @Override
41
    public JExpressionBuilder.Element get(int index) {
42
        return this.elements.get(index);
43
    }
44

    
45
    @Override
46
    public int size() {
47
        return this.elements.size();
48
    }
49

    
50
    @Override
51
    public Iterator<JExpressionBuilder.Element> iterator() {
52
        return this.elements.iterator();
53
    }
54

    
55
    @Override
56
    public void addElement(JExpressionBuilder.Element element) {
57
        this.elements.add(element);
58
    }
59

    
60
    @Override
61
    public String getName() {
62
        return this.name;
63
    }
64

    
65
    @Override
66
    public String getDescription() {
67
        return null;
68
    }
69

    
70
    @Override
71
    public void addElement(Function function) {
72
        JExpressionBuilder.Element item = this.manager.createElement(function);
73
        this.addElement(item);
74
    }
75
    
76
}