Package org.wicketstuff.openlayers3.behavior

Source Code of org.wicketstuff.openlayers3.behavior.ZoomToOverlayExtent

package org.wicketstuff.openlayers3.behavior;

import org.apache.wicket.Component;
import org.apache.wicket.behavior.Behavior;
import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.OnDomReadyHeaderItem;
import org.apache.wicket.util.template.PackageTextTemplate;

import java.util.HashMap;
import java.util.Map;

/**
* Provides a behavior that zooms the map to include all overlays.
*/
public class ZoomToOverlayExtent extends Behavior {

    /**
     * Buffer to place around the zoomed extent.
     */
    private Number buffer;

    /**
     * Creates a new instance.
     */
    public ZoomToOverlayExtent() {
        this(null);
    }

    /**
     * Creates a new instance.
     *
     * @param buffer
     *         Buffer to add around the zoomed extent.
     */
    public ZoomToOverlayExtent(Number buffer) {
        this.buffer = buffer;
    }

    /**
     * Returns the buffer value.
     *
     * @return Buffer value
     */
    public Number getBuffer() {
        return buffer;
    }

    /**
     * Sets the buffer value.
     *
     * @param buffer
     *         New value
     */
    public void setBuffer(Number buffer) {
        this.buffer = buffer;
    }

    /**
     * Sets the buffer value.
     *
     * @param buffer
     *         New value
     * @return This instance
     */
    public ZoomToOverlayExtent buffer(Number buffer) {
        setBuffer(buffer);
        return this;
    }

    @Override
    public void renderHead(Component component, IHeaderResponse response) {
        super.renderHead(component, response);

        final Map<String, CharSequence> params = new HashMap<String, CharSequence>();
        params.put("componentId", component.getMarkupId());
        params.put("buffer", buffer != null ? buffer.toString() : "NULL");

        PackageTextTemplate template = new PackageTextTemplate(ZoomToOverlayExtent.class, "ZoomToOverlayExtent.js");
        response.render(OnDomReadyHeaderItem.forScript(template.asString(params)));
    }
}
TOP

Related Classes of org.wicketstuff.openlayers3.behavior.ZoomToOverlayExtent

TOP
Copyright © 2018 www.massapi.com. 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.