Package org.locationtech.udig.project.internal

Examples of org.locationtech.udig.project.internal.Layer


        super();
        setSize(new Point(500, 450));
    }

    public void createPageContent( Composite parent ) {
        Layer layer = getSelectedLayer();
        IGeoResource resource = layer.getGeoResource();

        if (resource.canResolve(JGrassMapGeoResource.class)) {
            try {
                JGrassMapGeoResource grassMapGeoResource = resource.resolve(
                        JGrassMapGeoResource.class, null);
View Full Code Here


    public void rollback( IProgressMonitor monitor ) throws Exception {
        if( layers.isEmpty() ){
            return;
        }
        for( int i=0; i<layers.size();i++){
            Layer layer = (Layer)layers.get(i);
            layer.setVisible( oldvalues.get(i));
        }
        oldvalues = null;
    }
View Full Code Here

            selection = (Layer) map.getEditManager().getSelectedLayer();

            for( Object o : resources ) {
                try {
                    Layer layer = null;
   
                    if (o instanceof IGeoResource) {
                        // ensure that the service is part of the Catalog so that the find method in
                        // layer turn into layer
                        IGeoResource resource = (IGeoResource) o;
View Full Code Here

        if (layer.getInteraction(Interaction.BACKGROUND)) {
            // layer is intended as a background layer
           
            // We can clear the background setting using a custom command
            IMap map = layer.getMap();
            final Layer modifyLayer = (Layer) layer;
            map.sendCommandASync( new AbstractCommand(){
                public void run(IProgressMonitor monitor) throws Exception {
                    modifyLayer.setInteraction( Interaction.BACKGROUND, false );
                }
                public String getName() {
                    return "Clear Interaction";
                }
            });
View Full Code Here

    /**
     * Go on a little walk and find the edit layer that we will be submitting this feature to.
     */
    private Layer findEditLayer() {
        Layer layer = null;
        if (map.getEditManagerInternal().getEditLayerInternal() != null) {
            return map.getEditManagerInternal().getEditLayerInternal();
        }
        for( Iterator<Layer> iter = map.getLayersInternal().iterator(); iter.hasNext(); ) {
            layer = iter.next();
            if (layer.hasResource(FeatureStore.class) && layer.isSelectable() && layer.isVisible()) {
                break;
            }
        }
        return layer;
    }
View Full Code Here

     * @return true if the selected layer has been changed
     */
    static boolean selectNewLayer( Map map, Collection<? extends ILayer> toRemove) {
        EditManager editManager = map.getEditManagerInternal();
        List<Layer> layers = map.getLayersInternal();
        Layer selectedLayer = editManager.getSelectedLayer();
        if( !toRemove.contains(selectedLayer ) )
            // nothing to be done since it is not going to be removed
            return false;
       
        // try to select bottom layer above the selected layer that is not being deleted.  If
        // not possible then select top layer below the selected layer
        for( int i=layers.indexOf(selectedLayer)+1; i<layers.size() ; i++ ){
            Layer layer=layers.get(i);
            if( !toRemove.contains(layer) ){
                editManager.setSelectedLayer(layer);
                return true;
            }
        }
        for( int i=layers.indexOf(selectedLayer)-1; i>=0 ; i-- ){
            Layer layer=layers.get(i);
            if( !toRemove.contains(layer) ){
                editManager.setSelectedLayer(layer);
                return true;
            }
        }
View Full Code Here

        if( !(getDestination() instanceof Layer) ){
            if( !(getData() instanceof Layer) && layers.isEmpty()){
                return false;
            }
        }
        Layer destination2 = (Layer)getDestination();

        for( Layer layer : layers ) {
            if( layer==destination2 && getViewerLocation()!=ViewerDropLocation.NONE )
                return false;
            if( destination2.getMap()!=layer.getMap())
                return false;
        }
           
        return true;
View Full Code Here

    }

    @Override
    public void perform( IProgressMonitor monitor ) {
        Layer target = (Layer) getDestination();
        Collection<Layer> layers = toCollection(getData());

        for( Layer layer : layers ) {

            ViewerDropLocation location = getViewerLocation();

            if (location == ViewerDropLocation.NONE) {
                layer.setZorder(0);
                continue;
            }
            if (Math.abs(layer.getZorder() - target.getZorder()) == 1) {
                int tmp = layer.getZorder();
                layer.setZorder(target.getZorder());
                target.setZorder(tmp);
                continue;
            }

            // Moving something AFTER a layer is the same as moving something BEFORE a layer.
            // So we will use BEFORE as much as possible to prevent duplication here.
            // This code will retrieve the layer before. Or the first one, if we are at the
            // beginning of the list.
            if (location == ViewerDropLocation.BEFORE) {
                int i = target.getZorder();

                if (layer.getZorder() > target.getZorder()) {
                    i++;
                }

                if (i > layer.getMap().getMapLayers().size()) {
                    layer.setZorder(layer.getMap().getMapLayers().size());
                    continue;
                }
                if (layer.equals(target)) {
                    continue;
                }
                layer.setZorder(i);

            } else if (location == ViewerDropLocation.ON) {
                int i = target.getZorder();

                // if( layer.getZorder()>target.getZorder()){
                // i--;
                // }

                if (layer.equals(target)) {
                    continue;
                }
                layer.setZorder(i);

            } else {
                int i = target.getZorder();

                if (layer.getZorder() < target.getZorder()) {
                    i--;
                }
                if (i < 0)
                    i = 0;
                layer.setZorder(i);
View Full Code Here

            final Object obj = structSelection.getFirstElement();
            final IStatusLineManager statusLineManager = getViewSite().getActionBars().getStatusLineManager();
           
            if (obj instanceof LayerLegendItem) {
                final LayerLegendItem layerItem = ((LayerLegendItem) obj);
                final Layer layer = layerItem.getLayer();
                if (layer.getStatus() == ILayer.ERROR) {
                    statusLineManager.setErrorMessage(layer.getStatusMessage());
                } else {
                    statusLineManager.setErrorMessage(null);
                    statusLineManager.setMessage(layer.getStatusMessage());
                }
            } else {
                statusLineManager.setMessage(null);
                statusLineManager.setErrorMessage(null);
            }
View Full Code Here

    }

    private void addResourcesToMap( List<IGeoResource> resources, int layerpos,IMap map2 ) {
        IMap map=map2;
        if( getDestination() instanceof Layer){
            Layer layer=(Layer) getDestination();
            map=layer.getMap();
        } else if( getDestination() instanceof IMap ){
            map = (IMap) getDestination();
        }
        if (map==null )
            map = ApplicationGIS.getActiveMap();
View Full Code Here

TOP

Related Classes of org.locationtech.udig.project.internal.Layer

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.