X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.app.geo%2Fsrc%2Forg%2Fargeo%2Fapp%2Fol%2FLayer.java;h=feb0700175d7ab67cd9ab1044c11d65570dbcf93;hb=6e13b9416a5fd1f5477eb7233f86d3eacbb88c55;hp=8b8ea921ee5afddc80fcaecef3bf8f6de1bd99b1;hpb=59da7271e876ca8a429beb86b67e7350eef1e1ca;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.app.geo/src/org/argeo/app/ol/Layer.java b/org.argeo.app.geo/src/org/argeo/app/ol/Layer.java index 8b8ea92..feb0700 100644 --- a/org.argeo.app.geo/src/org/argeo/app/ol/Layer.java +++ b/org.argeo.app.geo/src/org/argeo/app/ol/Layer.java @@ -2,7 +2,11 @@ package org.argeo.app.ol; import java.util.Objects; -public abstract class Layer extends AbstractOlObject { +public class Layer extends AbstractOlObject { + public final static String NAME_KEY = "name"; + + // cached + private String name; public Layer(Object... args) { super(args); @@ -11,10 +15,11 @@ public abstract class Layer extends AbstractOlObject { public void setOpacity(double opacity) { if (opacity < 0 || opacity > 1) throw new IllegalArgumentException("Opacity must be between 0 and 1"); - if (isNew()) - getNewOptions().put("opacity", opacity); - else - executeMethod(getMethodName(), opacity); +// if (isNew()) +// getNewOptions().put("opacity", opacity); +// else +// executeMethod(getMethodName(), opacity); + doSetValue(getMethodName(), "opacity", opacity); } public void setSource(Source source) { @@ -25,18 +30,31 @@ public abstract class Layer extends AbstractOlObject { executeMethod(getMethodName(), source); } - public void setMinResolution(long minResolution) { + public Source getSource() { + String reference = getReference() + ".getSource()"; + return new Source(getJsClient(), reference); + } + + public void setMinResolution(double minResolution) { if (isNew()) getNewOptions().put("minResolution", minResolution); else executeMethod(getMethodName(), minResolution); } - public void setMaxResolution(long maxResolution) { + public void setMaxResolution(double maxResolution) { if (isNew()) getNewOptions().put("maxResolution", maxResolution); else executeMethod(getMethodName(), maxResolution); } + public void setName(String name) { + set(NAME_KEY, name); + this.name = name; + } + + public String getName() { + return name; + } }