Revision 800 org.gvsig.lrs/trunk/org.gvsig.lrs/org.gvsig.lrs.swing/org.gvsig.lrs.swing.impl/src/main/java/org/gvsig/lrs/swing/impl/JLrsShowMeasuresParamsController.java

View differences:

JLrsShowMeasuresParamsController.java
8 8

  
9 9
import java.awt.event.ActionEvent;
10 10
import java.awt.event.ActionListener;
11
import java.awt.event.ItemEvent;
12
import java.awt.event.ItemListener;
13
import java.io.File;
14
import java.text.ParseException;
15
import java.util.Iterator;
16 11
import java.util.Locale;
17

  
18
import javax.swing.ComboBoxModel;
19
import javax.swing.DefaultComboBoxModel;
20 12
import javax.swing.JComponent;
21
import javax.swing.JFormattedTextField;
22
import javax.swing.JOptionPane;
23
import javax.swing.ListCellRenderer;
24
import javax.swing.text.MaskFormatter;
25

  
26
import org.apache.commons.io.FileUtils;
27
import org.apache.commons.lang3.StringUtils;
28
import org.cresques.cts.IProjection;
29
import org.gvsig.fmap.dal.DALLocator;
30
import org.gvsig.fmap.dal.DataManager;
31
import org.gvsig.fmap.dal.DataStoreParameters;
32
import org.gvsig.fmap.dal.exception.DataException;
33
import org.gvsig.fmap.dal.exception.ReadException;
34
import org.gvsig.fmap.dal.feature.EditableFeatureAttributeDescriptor;
35
import org.gvsig.fmap.dal.feature.EditableFeatureType;
36
import org.gvsig.fmap.dal.feature.Feature;
37
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor;
38
import org.gvsig.fmap.dal.feature.FeatureSelection;
39
import org.gvsig.fmap.dal.feature.FeatureStore;
40
import org.gvsig.fmap.dal.feature.FeatureType;
41
import org.gvsig.fmap.dal.feature.NewFeatureStoreParameters;
42
import org.gvsig.fmap.dal.store.shp.SHPNewStoreParameters;
43
import org.gvsig.fmap.geom.DataTypes;
44
import org.gvsig.fmap.geom.Geometry;
45
import org.gvsig.fmap.geom.Geometry.SUBTYPES;
46
import org.gvsig.fmap.geom.Geometry.TYPES;
47
import org.gvsig.fmap.geom.GeometryException;
48
import org.gvsig.fmap.geom.GeometryLocator;
49 13
import org.gvsig.fmap.mapcontext.layers.FLayer;
50
import org.gvsig.fmap.mapcontext.layers.operations.LayerCollection;
51
import org.gvsig.fmap.mapcontext.layers.operations.LayersVisitor;
52
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
53
import org.gvsig.lrs.lib.api.DistanceUnits;
54 14
import org.gvsig.lrs.lib.api.LrsAlgorithmParams;
55 15
import org.gvsig.lrs.lib.api.LrsAlgorithmsLocator;
56 16
import org.gvsig.lrs.lib.api.LrsAlgorithmsManager;
57
import org.gvsig.lrs.lib.api.LrsCalibrateRouteAlgorithmParams;
58
import org.gvsig.lrs.lib.api.LrsMeasureCalculationMethods;
59 17
import org.gvsig.lrs.lib.api.LrsShowMeasuresAlgorithmParams;
18
import static org.gvsig.lrs.lib.api.LrsShowMeasuresAlgorithmParams.LRS_SHOWMEASURES_KILOMETER;
19
import static org.gvsig.lrs.lib.api.LrsShowMeasuresAlgorithmParams.LRS_SHOWMEASURES_KILOMETER_LABEL;
20
import static org.gvsig.lrs.lib.api.LrsShowMeasuresAlgorithmParams.LRS_SHOWMEASURES_METER;
21
import static org.gvsig.lrs.lib.api.LrsShowMeasuresAlgorithmParams.LRS_SHOWMEASURES_METER_LABEL;
22
import static org.gvsig.lrs.lib.api.LrsShowMeasuresAlgorithmParams.LRS_SHOWMEASURES_UNKNOWN_OTHER;
23
import static org.gvsig.lrs.lib.api.LrsShowMeasuresAlgorithmParams.LRS_SHOWMEASURES_UNKNOWN_OTHER_LABEL;
60 24
import org.gvsig.lrs.lib.api.exceptions.LrsGettingParametersException;
61 25
import org.gvsig.lrs.lib.api.exceptions.LrsNeededParameterException;
62 26
import org.gvsig.lrs.swing.api.JLrsAlgorithmParams;
63 27
import org.gvsig.tools.ToolsLocator;
64
import org.gvsig.tools.exception.BaseException;
65 28
import org.gvsig.tools.i18n.I18nManager;
66
import org.gvsig.tools.locator.LocatorException;
67 29
import org.gvsig.tools.swing.api.ActionListenerSupport;
68 30
import org.gvsig.tools.swing.api.ToolsSwingLocator;
69
import org.gvsig.tools.swing.api.threadsafedialogs.ThreadSafeDialogsManager;
70
import org.gvsig.tools.visitor.VisitCanceledException;
31
import org.gvsig.tools.swing.api.ToolsSwingManager;
32
import org.gvsig.tools.swing.api.ToolsSwingUtils;
33
import org.gvsig.tools.util.LabeledValue;
34
import org.gvsig.tools.util.LabeledValueImpl;
71 35
import org.slf4j.Logger;
72 36
import org.slf4j.LoggerFactory;
73 37

  
74
public class JLrsShowMeasuresParamsController extends JLrsShowMeasuresParamsView  implements JLrsAlgorithmParams{
38
public final class JLrsShowMeasuresParamsController extends JLrsShowMeasuresParamsView  implements JLrsAlgorithmParams{
75 39

  
76 40
    /**
77 41
     *
......
79 43
    private static final Logger logger = LoggerFactory.getLogger(JLrsShowMeasuresParamsController.class);
80 44

  
81 45
    private boolean canceled;
82
    private ActionListenerSupport listeners = ToolsSwingLocator.getToolsSwingManager().createActionListenerSupport();
46
    private final ActionListenerSupport listeners = ToolsSwingLocator.getToolsSwingManager().createActionListenerSupport();
83 47

  
84
    private FLayer layer;
48
    private final FLayer layer;
85 49

  
86 50
    /**
51
     * @param layer
52
     * @param params
87 53
     * @param layers
88 54
     * @throws LrsNeededParameterException
89 55
     *
......
96 62
        setParams(params);
97 63
    }
98 64

  
65
    @Override
99 66
    public void addActionListener(ActionListener listener) {
100 67
        listeners.addActionListener(listener);
101 68
    }
102 69

  
70
    @Override
103 71
    public void removeActionListener(ActionListener listener) {
104 72
        listeners.removeActionListener(listener);
105 73
    }
106 74

  
107 75
    private void translate() {
108
        I18nManager i18nManager = ToolsLocator.getI18nManager();
76
        ToolsSwingManager toolsSwingManager = ToolsSwingLocator.getToolsSwingManager();
77
        toolsSwingManager.translate(lblDistance);
78
        toolsSwingManager.translate(txtDistance);
79
        toolsSwingManager.translate(lblUnits);
80
        toolsSwingManager.translate(cboUnits);
109 81

  
110
        lblDistance.setText(i18nManager.getTranslation(lblDistance.getText()));
111

  
112
        btnAccept.setText(i18nManager.getTranslation(btnAccept.getText()));
113
        btnCancel.setText(i18nManager.getTranslation(btnCancel.getText()));
114

  
82
        toolsSwingManager.translate(btnAccept);
83
        toolsSwingManager.translate(btnCancel);
115 84
    }
116 85

  
117 86
    /**
118 87
     *
88
     * @param locale
119 89
     */
120 90
    public void setLocate(Locale locale) {
121 91
        Locale l = super.getLocale();
......
128 98
    /**
129 99
     *  Validates one curve M-layer with selected features
130 100
     *  if it is not correct throws an exception
101
     * @param layer
131 102
     * @throws LrsNeededParameterException
132 103
     */
133 104
    public static void validateLayer(FLayer layer)throws LrsNeededParameterException {
......
152 123

  
153 124
        validateLayer(layer);
154 125

  
155
        txtDistance.setText(new Double(0).toString());
126
        txtDistance.setText(Double.toString(0d));
156 127

  
157
        this.btnAccept.addActionListener(new ActionListener() {
158

  
159
            public void actionPerformed(ActionEvent e) {
160
                canceled = false;
161
                doClose();
162
                listeners.fireActionEvent(new ActionEvent(JLrsShowMeasuresParamsController.this, 0, "accept"));
163

  
164
            }
128
        this.btnAccept.addActionListener((ActionEvent e) -> {
129
            canceled = false;
130
            doClose();
131
            listeners.fireActionEvent(new ActionEvent(JLrsShowMeasuresParamsController.this, 0, "accept"));
165 132
        });
133
        
134
        I18nManager i18n = ToolsLocator.getI18nManager();
166 135

  
167
        this.btnCancel.addActionListener(new ActionListener() {
136
        this.cboUnits.addItem(new LabeledValueImpl<>(i18n.getTranslation(LRS_SHOWMEASURES_UNKNOWN_OTHER_LABEL), LRS_SHOWMEASURES_UNKNOWN_OTHER));
137
        this.cboUnits.addItem(new LabeledValueImpl<>(i18n.getTranslation(LRS_SHOWMEASURES_METER_LABEL), LRS_SHOWMEASURES_METER));
138
        this.cboUnits.addItem(new LabeledValueImpl<>(i18n.getTranslation(LRS_SHOWMEASURES_KILOMETER_LABEL), LRS_SHOWMEASURES_KILOMETER));
168 139

  
169
            public void actionPerformed(ActionEvent e) {
170
                canceled = true;
171
                doClose();
172
                listeners.fireActionEvent(new ActionEvent(JLrsShowMeasuresParamsController.this, 0, "cancel"));
173
            }
140
        this.btnCancel.addActionListener((ActionEvent e) -> {
141
            canceled = true;
142
            doClose();
143
            listeners.fireActionEvent(new ActionEvent(JLrsShowMeasuresParamsController.this, 0, "cancel"));
174 144
        });
175 145

  
176 146
        setVisibleAceptCancel(false);
177 147
        canceled = false;
148
        
149
        ToolsSwingUtils.ensureRowsCols(this, 8, 50);
150

  
178 151
    }
179 152

  
180 153

  
......
183 156
        this.setVisible(false);
184 157
    }
185 158

  
159
    @Override
186 160
    public boolean isCanceled() {
187 161
        return this.canceled;
188 162
    }
189 163

  
164
    @Override
190 165
    public void setVisibleAceptCancel(boolean visible) {
191 166
        this.btnAccept.setVisible(visible);
192 167
        this.btnCancel.setVisible(visible);
193 168
    }
194 169

  
170
    @Override
195 171
    public boolean getVisibleAceptCancel() {
196 172
        return this.btnAccept.isVisible();
197 173
    }
198 174

  
175
    @Override
199 176
    public JComponent asJComponent() {
200 177
        return this;
201 178
    }
202 179

  
180
    @Override
203 181
    public LrsAlgorithmParams getParams() throws LrsGettingParametersException, LrsNeededParameterException {
204 182
        LrsAlgorithmsManager manager = LrsAlgorithmsLocator.getLrsAlgorithmsManager();
205 183
        LrsShowMeasuresAlgorithmParams params = manager.createLrsShowMeasuresAlgorithmParams();
......
207 185

  
208 186
        try {
209 187
            Double distance = Double.valueOf(this.txtDistance.getText());
210
            params.setDistance((Double)distance);
188
            params.setDistance(distance);
189

  
190
            Object item = this.cboUnits.getSelectedItem();
191
            if(item instanceof LabeledValue){
192
                Integer units = (Integer) ((LabeledValue)item).getValue();
193
                params.setUnits(units);
194
            }
195
            
211 196
        } catch (Exception e) {
212 197
            params.setDistance(1);
213 198
        }

Also available in: Unified diff