Revision 44601 trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.app/org.gvsig.app.mainplugin/src/main/java/org/gvsig/app/extension/ViewSelectionByTheme.java

View differences:

ViewSelectionByTheme.java
22 22
 */
23 23
package org.gvsig.app.extension;
24 24

  
25
import java.util.List;
25 26
import org.gvsig.andami.IconThemeHelper;
26 27
import org.gvsig.andami.plugins.Extension;
27 28
import org.gvsig.app.ApplicationLocator;
......
34 35
import org.gvsig.fmap.dal.feature.FeatureStore;
35 36
import org.gvsig.fmap.dal.feature.FeatureType;
36 37
import org.gvsig.fmap.mapcontext.layers.FLayer;
38
import org.gvsig.fmap.mapcontext.layers.FLayers;
37 39
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
38 40
import org.gvsig.tools.ToolsLocator;
39 41
import org.gvsig.tools.i18n.I18nManager;
......
96 98
        if( document == null ) {
97 99
            return false;
98 100
        }
99
        boolean hasActiveVectorLayers = false;
100
        for (FLayer layer : document.getMapContext().getLayers()) {
101
            if( layer.isActive() && layer.isAvailable() && layer instanceof FLyrVect ) {
102
                try {
103
                    hasActiveVectorLayers = true;
104
                    FeatureStore store = ((FLyrVect)layer).getFeatureStore();
105
                    if( !store.getFeatureSelection().isAvailable() ) {
106
                        return false;
107
                    }
108
                } catch (Exception ex) {
109
                }
110
            }
101
         List<FLayer> layers = document.getMapContext().getLayers().getLayers(
102
                FLayers.LAYER_ACTIVE
103
                        .and(FLayers.LAYER_AVALAIBLE)
104
                        .and(FLayers.LAYER_SELECTION_AVAILABLE)
105
        );
106
        if (layers.size()>=1) {
107
            return true;
111 108
        }
112
        return hasActiveVectorLayers;
109
        return false;
113 110
    }
114 111

  
115 112
    public boolean isVisible() {

Also available in: Unified diff