Revision 2616 org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.prov/org.gvsig.vectorediting.lib.prov.line/src/main/java/org/gvsig/vectorediting/lib/prov/line/LineEditingProvider.java
LineEditingProvider.java | ||
---|---|---|
50 | 50 |
import java.util.HashMap; |
51 | 51 |
import java.util.List; |
52 | 52 |
import java.util.Map; |
53 |
|
|
54 | 53 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
55 | 54 |
import org.gvsig.fmap.geom.Geometry; |
56 | 55 |
import org.gvsig.fmap.geom.GeometryLocator; |
... | ... | |
85 | 84 |
public class LineEditingProvider extends AbstractEditingProvider implements |
86 | 85 |
EditingProvider { |
87 | 86 |
|
88 |
private EditingServiceParameter firstPoint; |
|
87 |
private final EditingServiceParameter firstPoint;
|
|
89 | 88 |
|
90 |
private EditingServiceParameter secondPoint; |
|
89 |
private final EditingServiceParameter secondPoint;
|
|
91 | 90 |
|
92 | 91 |
private Map<EditingServiceParameter, Object> values; |
93 | 92 |
|
94 |
private FeatureStore featureStore; |
|
93 |
private final FeatureStore featureStore;
|
|
95 | 94 |
|
96 | 95 |
/** |
97 | 96 |
* Default constructor. |
... | ... | |
118 | 117 |
|
119 | 118 |
} |
120 | 119 |
|
120 |
@Override |
|
121 | 121 |
public EditingServiceParameter next() { |
122 | 122 |
if (values.get(firstPoint) == null) { |
123 | 123 |
return this.firstPoint; |
... | ... | |
127 | 127 |
return null; |
128 | 128 |
} |
129 | 129 |
|
130 |
@Override |
|
130 | 131 |
public DrawingStatus getDrawingStatus(Point mousePosition) |
131 | 132 |
throws DrawServiceException { |
132 | 133 |
DefaultDrawingStatus geometries = new DefaultDrawingStatus(); |
... | ... | |
135 | 136 |
ISymbol lineSymbolEditing = editingProviderManager.getSymbol("line-symbol-editing"); |
136 | 137 |
ISymbol auxiliaryPointSymbolEditing = editingProviderManager.getSymbol("auxiliary-point-symbol-editing"); |
137 | 138 |
|
139 |
ISymbol previewSymbol = this.getPreviewSymbol(); |
|
140 |
|
|
138 | 141 |
if ((values != null) && (values.get(firstPoint) != null)) { |
139 | 142 |
Point point = (Point) values.get(firstPoint); |
140 | 143 |
try { |
... | ... | |
145 | 148 |
editingProviderServices.createLine(point, mousePosition, |
146 | 149 |
subtype); |
147 | 150 |
geometries.addStatus(line, lineSymbolEditing, ""); |
151 |
geometries.addStatus(line, previewSymbol, ""); |
|
148 | 152 |
geometries.addStatus(point, auxiliaryPointSymbolEditing, ""); |
149 | 153 |
geometries.addStatus(mousePosition, auxiliaryPointSymbolEditing, ""); |
150 | 154 |
|
... | ... | |
159 | 163 |
|
160 | 164 |
} |
161 | 165 |
|
166 |
@Override |
|
162 | 167 |
public void stop() throws StopServiceException { |
163 | 168 |
values.clear(); |
164 | 169 |
} |
165 | 170 |
|
171 |
@Override |
|
166 | 172 |
public List<EditingServiceParameter> getParameters() { |
167 | 173 |
List<EditingServiceParameter> parameters = |
168 |
new ArrayList<EditingServiceParameter>();
|
|
174 |
new ArrayList<>(); |
|
169 | 175 |
parameters.add(firstPoint); |
170 | 176 |
parameters.add(secondPoint); |
171 | 177 |
return parameters; |
... | ... | |
176 | 182 |
validateAndInsertValue(parameter, value); |
177 | 183 |
} |
178 | 184 |
|
185 |
@Override |
|
179 | 186 |
public void setValue(Object value) throws InvalidEntryException { |
180 | 187 |
EditingServiceParameter param = next(); |
181 | 188 |
validateAndInsertValue(param, value); |
... | ... | |
197 | 204 |
throw new InvalidEntryException(null); |
198 | 205 |
} |
199 | 206 |
|
207 |
@Override |
|
200 | 208 |
public Geometry finish() throws FinishServiceException { |
201 | 209 |
Point secondPointValue = (Point) values.get(secondPoint); |
202 | 210 |
EditingProviderServices editingProviderServices = |
... | ... | |
226 | 234 |
} |
227 | 235 |
} |
228 | 236 |
|
237 |
@Override |
|
229 | 238 |
public void finishAndStore() throws FinishServiceException { |
230 | 239 |
Geometry geometry = this.finish(); |
231 | 240 |
EditingProviderServices editingProviderServices = |
... | ... | |
234 | 243 |
featureStore); |
235 | 244 |
} |
236 | 245 |
|
246 |
@Override |
|
237 | 247 |
public void start() throws StartServiceException { |
238 |
values = new HashMap<EditingServiceParameter, Object>();
|
|
248 |
values = new HashMap<>(); |
|
239 | 249 |
} |
240 | 250 |
|
251 |
@Override |
|
241 | 252 |
public String getName() { |
242 | 253 |
return LineEditingProviderFactory.PROVIDER_NAME; |
243 | 254 |
} |
Also available in: Unified diff