Revision 91 org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.app/org.gvsig.vectorediting.app.mainplugin/src/main/java/org/gvsig/vectorediting/app/mainplugin/extensions/SymmetryExtension.java
SymmetryExtension.java | ||
---|---|---|
8 | 8 |
|
9 | 9 |
import org.gvsig.andami.IconThemeHelper; |
10 | 10 |
import org.gvsig.app.project.documents.view.gui.DefaultViewPanel; |
11 |
import org.gvsig.fmap.dal.exception.ReadException; |
|
12 |
import org.gvsig.fmap.geom.type.GeometryType; |
|
13 | 11 |
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect; |
14 | 12 |
import org.gvsig.vectorediting.app.mainplugin.BaseEditingServiceExtension; |
15 | 13 |
import org.gvsig.vectorediting.lib.api.EditingServiceInfo; |
16 | 14 |
import org.gvsig.vectorediting.lib.api.exceptions.ServiceInformationException; |
17 |
import org.gvsig.vectorediting.lib.prov.circlecr.CircleCREditingProviderFactory; |
|
18 | 15 |
import org.gvsig.vectorediting.lib.prov.symmetry.SymmetryEditingProviderFactory; |
19 | 16 |
import org.gvsig.vectorediting.swing.api.EditingContext; |
20 | 17 |
import org.gvsig.vectorediting.swing.impl.DefaultEditingBehavior; |
... | ... | |
46 | 43 |
} |
47 | 44 |
|
48 | 45 |
public boolean isEnabled() { |
49 |
EditingServiceInfo SymmetryInfo;
|
|
46 |
EditingServiceInfo symmetryInfo;
|
|
50 | 47 |
FLyrVect layer = null; |
51 | 48 |
try { |
52 |
SymmetryInfo = manager
|
|
49 |
symmetryInfo = manager
|
|
53 | 50 |
.getServiceInfo(SymmetryEditingProviderFactory.PROVIDER_NAME); |
54 | 51 |
DefaultViewPanel view = getActiveView(); |
55 | 52 |
layer = getActiveLayer(view); |
56 | 53 |
|
57 |
int[] supportedTypes = SymmetryInfo.getSupportedPrimitiveGeometryTypes(); |
|
58 |
GeometryType[] supportedGeoTypes = loadGeometryTypes(supportedTypes); |
|
54 |
return symmetryInfo.isCompatibleWith(layer.getFeatureStore()); |
|
59 | 55 |
|
60 |
if (isApplicable(supportedGeoTypes, layer.getShapeType())) { |
|
61 |
return true; |
|
62 |
} |
|
63 |
|
|
64 |
return false; |
|
65 |
|
|
66 | 56 |
} |
67 | 57 |
catch (ServiceInformationException e) { |
68 | 58 |
logger.error("Cant' get service information of " |
69 | 59 |
+ SymmetryEditingProviderFactory.PROVIDER_NAME, e); |
60 |
return false; |
|
70 | 61 |
} |
71 |
catch (ReadException e) { |
|
72 |
logger.error("Can't get shape type of " + layer.getName(), e); |
|
73 |
} |
|
74 |
return false; |
|
75 | 62 |
} |
76 | 63 |
|
77 | 64 |
public boolean isVisible() { |
Also available in: Unified diff