Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.fmap.control / src / main / java / org / gvsig / fmap / mapcontrol / tools / PointSelectionListenerUniqueSelectPanel.java @ 45680

History | View | Annotate | Download (2.85 KB)

1
package org.gvsig.fmap.mapcontrol.tools;
2

    
3
import java.util.ArrayList;
4
import java.util.List;
5
import javax.swing.JComponent;
6
import org.gvsig.fmap.dal.exception.DataException;
7
import org.gvsig.fmap.dal.feature.Feature;
8
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor;
9
import org.gvsig.fmap.dal.feature.FeatureSet;
10
import org.gvsig.fmap.dal.feature.FeatureStore;
11
import org.gvsig.fmap.dal.feature.FeatureType;
12
import org.gvsig.fmap.dal.swing.DALSwingLocator;
13
import org.gvsig.fmap.dal.swing.featuretable.SimpleFeaturesTableModel;
14
import org.gvsig.tools.ToolsLocator;
15
import org.gvsig.tools.i18n.I18nManager;
16
import org.gvsig.tools.swing.api.Component;
17
import org.gvsig.tools.swing.api.ToolsSwingLocator;
18
import org.gvsig.tools.swing.api.ToolsSwingManager;
19
/**
20
 *
21
 * @author omartinez
22
 */
23
public class PointSelectionListenerUniqueSelectPanel extends PointSelectionListenerUniqueSelect implements Component {
24

    
25
    SimpleFeaturesTableModel simpleTableModel;
26
    
27
    public PointSelectionListenerUniqueSelectPanel() {
28
        this.translate();
29
    }
30
    
31
    protected void translate() {
32
        I18nManager i18m = ToolsLocator.getI18nManager();
33
        this.lblSelect.setText(i18m.getTranslation("_Choose_features_from_selection"));
34
    }
35
    @Override
36
    public JComponent asJComponent() {
37
        return this;
38
    }
39

    
40
    void put(FeatureStore store, FeatureSet posibleSelection) {
41
        FeatureType featureType;
42
        try {
43
            featureType = store.getDefaultFeatureType();
44
        } catch (DataException ex) {
45
            return;
46
        }
47
        FeatureAttributeDescriptor[] descriptors = featureType.getAttributeDescriptors();
48
        List<String> columnNames = new ArrayList<>();
49
        for (FeatureAttributeDescriptor descriptor : descriptors) {
50
            columnNames.add(descriptor.getName());
51
        }
52

    
53
        List<Feature> posibleListSelection = new ArrayList<>();
54
        for (Feature feature : posibleSelection) {
55
            posibleListSelection.add(feature);
56
        }
57
        
58
        this.simpleTableModel = (SimpleFeaturesTableModel) DALSwingLocator.getDataSwingManager().createSimpleFeaturesTableModel(featureType, columnNames, posibleListSelection);
59
        
60
        this.tblSelection.setModel(simpleTableModel);
61
        ToolsSwingManager swingManager = ToolsSwingLocator.getToolsSwingManager();
62
        swingManager.createTableColumnAdjuster(tblSelection);
63
    }
64
    
65
    public List<Feature> getSelectedFeatures() {
66
        if (this.simpleTableModel!=null) {
67
            int[] selectedRows = this.tblSelection.getSelectedRows();
68
            List<Feature> selectedFeatures = new ArrayList<>();
69
            for (int selectedRow : selectedRows) {
70
                Feature feature = this.simpleTableModel.get(selectedRow);
71
                selectedFeatures.add(feature);
72
            }
73
            return selectedFeatures;
74
        }
75
        return null;
76
    }
77
    
78
    
79

    
80
}