package usda.weru.gis.gui;

import java.awt.Component;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import java.beans.beancontext.BeanContextSupport;
import javax.swing.JLayeredPane;

/**
 * holds a single MapRendererLayer
 * @author Joseph A. Levin <joelevin@weru.ksu.edu>
 */
public class MapPane extends JLayeredPane {

    private static final long serialVersionUID = 1L;

    private MapRenderLayer c_renderLayer;

    /**
     *
     */
    public MapPane() {
        initComponents();

    }

    private void initComponents() {

        addComponentListener(new ComponentAdapter() {

            @Override
            public void componentResized(ComponentEvent e) {
                resize();
            }

        });

        BeanContextSupport context = new BeanContextSupport();
        if (!context.isDesignTime()) {
            c_renderLayer = new MapRenderLayer();
            add(c_renderLayer, 10);
            //add(new MapPanLayer(c_renderLayer), 0);
            add(new MapNavLayer(c_renderLayer), 0);
        }

        //add(new MapZoomLayer(), 0);
        resize();

    }

    private void resize() {
        for (Component child : getComponents()) {
            child.setSize(getSize());
            child.repaint();
        }
    }

    /**
     *
     * @return
     */
    public MapRenderLayer getMapLayer() {
        return c_renderLayer;
    }
}
