Revision 45
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.impl/src/main/java/org/gvsig/vectorediting/lib/impl/DefaultEditingManager.java | ||
---|---|---|
6 | 6 |
*/ |
7 | 7 |
package org.gvsig.vectorediting.lib.impl; |
8 | 8 |
|
9 |
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
|
|
9 |
import org.gvsig.fmap.dal.feature.FeatureStore;
|
|
10 | 10 |
import org.gvsig.tools.dynobject.DynObject; |
11 | 11 |
import org.gvsig.tools.service.AbstractManager; |
12 | 12 |
import org.gvsig.tools.service.Service; |
... | ... | |
44 | 44 |
return EditingProviderLocator.getProviderManager().getServiceInfo(toolName); |
45 | 45 |
} |
46 | 46 |
|
47 |
public EditingService getEditingService(String name, FLyrVect layer) {
|
|
47 |
public EditingService getEditingService(String name, FeatureStore featureStore) {
|
|
48 | 48 |
try { |
49 | 49 |
DynObject params = this.createServiceParameters(name); |
50 |
params.setDynValue(EditingProviderFactory.LAYER_FIELD, layer);
|
|
50 |
params.setDynValue(EditingProviderFactory.FEATURE_STORE_FIELD, featureStore);
|
|
51 | 51 |
return (EditingService) this.getService(params); |
52 | 52 |
} |
53 | 53 |
catch (ServiceException e) { |
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.prov/org.gvsig.vectorediting.lib.prov.insertpoint/src/main/java/org/gvsig/vectorediting/lib/prov/insertpoint/InsertPointEditingProvider.java | ||
---|---|---|
9 | 9 |
import java.util.ArrayList; |
10 | 10 |
import java.util.List; |
11 | 11 |
|
12 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
|
12 | 13 |
import org.gvsig.fmap.geom.Geometry; |
13 | 14 |
import org.gvsig.fmap.geom.primitive.Point; |
14 |
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect; |
|
15 | 15 |
import org.gvsig.tools.dynobject.DynObject; |
16 | 16 |
import org.gvsig.tools.service.spi.ProviderServices; |
17 | 17 |
import org.gvsig.vectorediting.lib.api.EditingServiceParameter; |
... | ... | |
30 | 30 |
|
31 | 31 |
private Point valuePoint; |
32 | 32 |
|
33 |
private FLyrVect layer;
|
|
33 |
private FeatureStore featureStore;
|
|
34 | 34 |
|
35 | 35 |
public InsertPointEditingProvider(ProviderServices services, |
36 | 36 |
DynObject parameters) { |
37 | 37 |
super(services); |
38 |
this.layer = (FLyrVect) parameters
|
|
39 |
.getDynValue(EditingProviderFactory.LAYER_FIELD);
|
|
38 |
this.featureStore = (FeatureStore) parameters
|
|
39 |
.getDynValue(EditingProviderFactory.FEATURE_STORE_FIELD);
|
|
40 | 40 |
} |
41 | 41 |
|
42 | 42 |
public void setProviderServices(ProviderServices services) { |
... | ... | |
78 | 78 |
|
79 | 79 |
public void finish() { |
80 | 80 |
Point geometry = createPoint(valuePoint.getX(), valuePoint.getY(), |
81 |
layer.getFeatureStore());
|
|
81 |
featureStore);
|
|
82 | 82 |
((EditingProviderServices) getProviderServices()) |
83 |
.insertGeometryIntoFeatureStore(geometry, layer.getFeatureStore());
|
|
83 |
.insertGeometryIntoFeatureStore(geometry, featureStore);
|
|
84 | 84 |
} |
85 | 85 |
|
86 | 86 |
public void start() { |
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.prov/org.gvsig.vectorediting.lib.prov.insertpoint/src/main/java/org/gvsig/vectorediting/lib/prov/insertpoint/InsertPointEditingProviderFactory.java | ||
---|---|---|
21 | 21 |
public class InsertPointEditingProviderFactory extends AbstractProviderFactory implements |
22 | 22 |
EditingProviderFactory { |
23 | 23 |
|
24 |
public final static String PROVIDER_NAME = "InsertPoint";
|
|
24 |
public final static String PROVIDER_NAME = "insert-point";
|
|
25 | 25 |
|
26 | 26 |
public final static String PROVIDER_DESCRIPTION = "Inserts points on the view"; |
27 | 27 |
|
... | ... | |
68 | 68 |
PROVIDER_NAME_PARAMS, PROVIDER_NAME_PARAMS_DESCRIPTION); |
69 | 69 |
|
70 | 70 |
dynclass.addDynFieldString(PROVIDER_NAME_FIELD); |
71 |
dynclass.addDynFieldObject(LAYER_FIELD);
|
|
71 |
dynclass.addDynFieldObject(FEATURE_STORE_FIELD);
|
|
72 | 72 |
} |
73 | 73 |
|
74 | 74 |
|
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.prov/org.gvsig.vectorediting.lib.prov.circle2P/src/main/java/org/gvsig/vectorediting/lib/prov/circle2P/Circle2PEditingProviderFactory.java | ||
---|---|---|
21 | 21 |
public class Circle2PEditingProviderFactory extends AbstractProviderFactory |
22 | 22 |
implements EditingProviderFactory { |
23 | 23 |
|
24 |
public static final String PROVIDER_NAME = "Circle2P";
|
|
24 |
public static final String PROVIDER_NAME = "insert-circle-2p";
|
|
25 | 25 |
|
26 | 26 |
private final static String PROVIDER_DESCRIPTION = "Creates circles from the center and radius"; |
27 | 27 |
|
... | ... | |
36 | 36 |
PROVIDER_NAME_PARAMS, PROVIDER_NAME_PARAMS_DESCRIPTION); |
37 | 37 |
|
38 | 38 |
dynclass.addDynFieldString(PROVIDER_NAME_FIELD); |
39 |
dynclass.addDynFieldObject(LAYER_FIELD);
|
|
39 |
dynclass.addDynFieldObject(FEATURE_STORE_FIELD);
|
|
40 | 40 |
|
41 | 41 |
} |
42 | 42 |
|
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.prov/org.gvsig.vectorediting.lib.prov.circle2P/src/main/java/org/gvsig/vectorediting/lib/prov/circle2P/Circle2PEditingProvider.java | ||
---|---|---|
11 | 11 |
import java.util.List; |
12 | 12 |
import java.util.Map; |
13 | 13 |
|
14 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
|
14 | 15 |
import org.gvsig.fmap.geom.Geometry; |
15 | 16 |
import org.gvsig.fmap.geom.primitive.Circle; |
16 | 17 |
import org.gvsig.fmap.geom.primitive.Point; |
... | ... | |
36 | 37 |
|
37 | 38 |
private Map<EditingServiceParameter, Object> values; |
38 | 39 |
|
39 |
private FLyrVect layer;
|
|
40 |
private FeatureStore featureStore;
|
|
40 | 41 |
|
41 | 42 |
public Circle2PEditingProvider(ProviderServices providerServices, |
42 | 43 |
DynObject parameters) { |
43 | 44 |
super(providerServices); |
44 |
this.layer = (FLyrVect) parameters
|
|
45 |
.getDynValue(EditingProviderFactory.LAYER_FIELD);
|
|
45 |
this.featureStore = (FeatureStore) parameters
|
|
46 |
.getDynValue(EditingProviderFactory.FEATURE_STORE_FIELD);
|
|
46 | 47 |
} |
47 | 48 |
|
48 | 49 |
public Geometry draw(Point mousePosition) { |
49 | 50 |
if (values.get(center) != null) { |
50 | 51 |
Point centerPoint = (Point) values.get(center); |
51 |
return createCircle(centerPoint, mousePosition, layer.getFeatureStore());
|
|
52 |
return createCircle(centerPoint, mousePosition, featureStore);
|
|
52 | 53 |
} |
53 | 54 |
|
54 | 55 |
return null; |
... | ... | |
91 | 92 |
Point centerPoint = (Point) values.get(center); |
92 | 93 |
Point radiusPoint = (Point) values.get(radius); |
93 | 94 |
Circle geometry = createCircle(centerPoint, radiusPoint, |
94 |
layer.getFeatureStore());
|
|
95 |
featureStore);
|
|
95 | 96 |
((EditingProviderServices) getProviderServices()) |
96 |
.insertGeometryIntoFeatureStore(geometry, layer.getFeatureStore());
|
|
97 |
.insertGeometryIntoFeatureStore(geometry, featureStore);
|
|
97 | 98 |
|
98 | 99 |
} |
99 | 100 |
|
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.api/src/main/java/org/gvsig/vectorediting/lib/api/EditingManager.java | ||
---|---|---|
6 | 6 |
*/ |
7 | 7 |
package org.gvsig.vectorediting.lib.api; |
8 | 8 |
|
9 |
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
|
|
9 |
import org.gvsig.fmap.dal.feature.FeatureStore;
|
|
10 | 10 |
import org.gvsig.tools.service.Manager; |
11 | 11 |
import org.gvsig.tools.service.ServiceException; |
12 | 12 |
|
... | ... | |
20 | 20 |
|
21 | 21 |
/** |
22 | 22 |
* @param name |
23 |
* @param editableFeatureStore
|
|
23 |
* @param featureStore
|
|
24 | 24 |
* @return |
25 | 25 |
*/ |
26 |
public EditingService getEditingService(String name, FLyrVect layer);
|
|
26 |
public EditingService getEditingService(String name, FeatureStore featureStore);
|
|
27 | 27 |
} |
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.spi/src/main/java/org/gvsig/vectorediting/lib/spi/EditingProviderFactory.java | ||
---|---|---|
13 | 13 |
|
14 | 14 |
public interface EditingProviderFactory extends ProviderFactory { |
15 | 15 |
|
16 |
public static final String LAYER_FIELD = "layer";
|
|
16 |
public static final String FEATURE_STORE_FIELD = "featureStore";
|
|
17 | 17 |
public static final String PROVIDER_NAME_FIELD = "providerName"; |
18 | 18 |
|
19 | 19 |
/** |
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/src/main/java/org/gvsig/vectorediting/swing/impl/DefaultEditingBehavior.java | ||
---|---|---|
148 | 148 |
EditingService service = serviceRegistration.get(currentLayer); |
149 | 149 |
if (service == null) { |
150 | 150 |
service = (EditingService) manager |
151 |
.getEditingService(name, currentLayer); |
|
151 |
.getEditingService(name, currentLayer.getFeatureStore());
|
|
152 | 152 |
serviceRegistration.put(currentLayer, service); |
153 | 153 |
} |
154 | 154 |
if (service != null) { |
Also available in: Unified diff