Ejemplo n.º 1
0
 /** @see com.iver.andami.plugins.IExtension#isEnabled() */
 public boolean isEnabled() {
   DisposableIterator iterator = null;
   try {
     if (EditionUtilities.getEditionStatus()
         == EditionUtilities.EDITION_STATUS_ONE_VECTORIAL_LAYER_ACTIVE_AND_EDITABLE) {
       view = (View) PluginServices.getMDIManager().getActiveWindow();
       mapControl = view.getMapControl();
       EditionManager em = CADExtension.getEditionManager();
       if (em.getActiveLayerEdited() == null) {
         return false;
       }
       VectorialLayerEdited vle = (VectorialLayerEdited) em.getActiveLayerEdited();
       //				FLyrVect lv=(FLyrVect)vle.getLayer();
       if (((FeatureSelection) vle.getFeatureStore().getSelection()).getSize() < 1) {
         return false;
       }
       //				ArrayList selectedRows=vle.getSelectedRow();
       //				if (selectedRows.size()<1) {
       //					return false;
       //				}
       iterator = ((FeatureSelection) vle.getFeatureStore().getSelection()).iterator();
       if (iterator.hasNext()) {
         Feature feature = (Feature) iterator.next();
         if (feature.getDefaultGeometry() != null
             && exploit.isApplicable((feature.getDefaultGeometry()).getType())) {
           return true;
         }
       }
     }
   } catch (DataException e) {
     NotificationManager.addError(e.getMessage(), e);
   } finally {
     if (iterator != null) {
       iterator.dispose();
     }
   }
   return false;
 }