/* Copyright (c) 2006 MetaCarta, Inc., published under the BSD license.
 * See http://svn.openlayers.org/trunk/openlayers/release-license.txt 
 * for the full text of the license. */


/**
 * @class
 * 
 * @requires OpenLayers/Control.js
 */
OpenLayers.Control.PanZoom.PanZoomControl = OpenLayers.Class.create();
OpenLayers.Control.PanZoom.PanZoomControl.X = 4;
OpenLayers.Control.PanZoom.PanZoomControl.Y = 4;
OpenLayers.Control.PanZoom.PanZoomControl.prototype = 
  OpenLayers.Class.inherit( OpenLayers.Control.PanZoom, {


	imgDirectory: './images/map/',

    /**
     * @constructor
     */
    initialize: function() {
        this.position = new OpenLayers.Pixel(OpenLayers.Control.PanZoom.PanZoomControl.X,
                                             OpenLayers.Control.PanZoom.PanZoomControl.Y);
		OpenLayers.ImgPath = this.imgDirectory;
        OpenLayers.Control.PanZoom.prototype.initialize.apply(this, arguments);
    },

    /**
    * @param {OpenLayers.Pixel} px
    * 
    * @returns A reference to the container div for the PanZoom control
    * @type DOMElement
    */
    draw: function(px) {
        // initialize our internal div
        OpenLayers.Control.prototype.draw.apply(this, arguments);
        px = this.position;

        // place the controls
        this.buttons = new Array();

        var sz = new OpenLayers.Size(16,16);
        var centered = new OpenLayers.Pixel(px.x+sz.w, px.y);

        this._addButton("panup", "north.png", centered, sz);
		
        px.y = centered.y+sz.h;
        this._addButton("panleft", "west.png", px, sz);
		px.x = centered.x;
		
        this._addButton("panright", "east.png", px.add(sz.w, 0), sz);
        this._addButton("pandown", "south.png", 
                        centered.add(0, sz.h*2), sz);
		
		var szNew = new OpenLayers.Size(24,24);
		 			
		this._addButton("zoomin", "zoomin.png", 
                        centered.add(-1*(szNew.w-sz.w)/2, szNew.h*2+15), szNew);
		this._addButton("zoomworld", "world.png", 
                        centered.add(-1*(szNew.w-sz.w)/2, szNew.h*3+15), szNew);
        this._addButton("zoomout", "zoomout.png", 
                        centered.add(-1*(szNew.w-sz.w)/2, szNew.h*4+15), szNew);
		
        return this.div;
    },
    
    /** @final @type String */
    CLASS_NAME: "OpenLayers.Control.PanZoom.PanZoomControl"
});
