function Zoomin()
{
	this._map_node=document.getElementById(_MAP_ID);
	this._jg=new jsGraphics(_MAP_ID);	
}
Zoomin.prototype = new Evt_Draw_Rectangle;
Zoomin.prototype.do_operation=function()
{
	var minx=(this._curr_x <= this._x_click ) ? this._curr_x : this._x_click;
	var maxx=(minx+this._w);
	var miny=(this._curr_y <= this._y_click ) ? this._curr_y : this._y_click;
	var maxy=(miny+this._h);

    // Remember original max values
    var old_max_x = maxx;
    var old_max_y = maxy;
    var delta_y;
    var factor = _MAP_WRAPPER.get_width() / _MAP_WRAPPER.get_height();
     
    if( (maxx-minx) >= ( maxy-miny ) )
    {
        maxy = miny + (maxx-minx) / factor;
        
        // Center selection
        delta_y = (maxy - old_max_y)/2;  
        miny = miny-delta_y;
        maxy = maxy-delta_y;  
    }
    else 
    {
        maxx = minx+(maxy-miny) * factor;
        
        // Center selection
        delta_x = (maxx - old_max_x)/2;
        minx = minx-delta_x;
        maxx = maxx-delta_x;
    }
        
	var params="type=map&action=zoomin&min_x="+minx+"&min_y="+miny+"&max_x="+maxx+"&max_y="+maxy;
	reload_map(params);
};
