
// This definition is taken from the xsl/macros.xsl.m4 definition file.

//
// This file contains the JavaScript to be able to add the google Map Navigation Control
//  onto a Google Map displayed on TripAdvisor.
//
//	@author 	mhoule
//  @since     14 March 2007
//

/* ============================================================= */
/*	TA_MapControl Custom Google Map Control                      */
/*  Display the ZoomIn, ZoomOut, pan & Center controls           */
/* ============================================================= */

function TA_MapNavControl()
{
}

TA_MapNavControl.prototype = new GControl();

TA_MapNavControl.prototype.initialize = function(map)
{
  var containerDiv = document.createElement("div");
  containerDiv.style.backgroundColor = "transparent";
  containerDiv.align = "center";

  var image;
	//	Zoom In Button
  image = document.createElement("img");
  image.src = sImgZoomIn;
  image.alt = sZoomInButtonAlt;
  image.title = image.alt;
  image.hspace = "1";
  image.vspace = "1";
  image.style.cursor = "pointer";
  GEvent.addDomListener(image, "click", function() { map.zoomIn(); });
  containerDiv.appendChild(image);
  containerDiv.appendChild(document.createElement("br"));

  // Zoom Out Button
  image = document.createElement("img");
  image.src = sImgZoomOut;
  image.alt = sZoomOutButtonAlt;
  image.hspace = "1";
  image.vspace = "1";
  image.title = image.alt;
  image.style.cursor = "pointer";
  GEvent.addDomListener(image, "click", function() { map.zoomOut(); });
  containerDiv.appendChild(image);
  containerDiv.appendChild(document.createElement("br"));

	// Pan Up Button
  image = document.createElement("img");
  image.src = "http://cdn.tripadvisor.com/img/gmaps/arrowUp.gif";
  image.alt = sPanUpButtonAlt;
  image.hspace = "1";
  image.vspace = "1";
  image.title = image.alt;
  image.style.cursor = "pointer";
  GEvent.addDomListener(image, "click", function() { map.panDirection(0, 1); UpdateMapUI(true); });
  containerDiv.appendChild(image);
  containerDiv.appendChild(document.createElement("br"));

  //	Pan Left
  image = document.createElement("img");
  image.src = "http://cdn.tripadvisor.com/img/gmaps/arrowLeft.gif";
  image.alt = sPanLeftButtonAlt;
  image.hspace = "1";
  image.hspace = "1";
  image.vspace = "1";
  image.title = image.alt;
  image.style.cursor = "pointer";
  GEvent.addDomListener(image, "click", function() { map.panDirection(1, 0); UpdateMapUI(true); });
  containerDiv.appendChild(image);

  //	Re-Center
  image = document.createElement("img");
  image.src = "http://cdn.tripadvisor.com/img/gmaps/center.gif";
  image.alt = sRecenterButtonAlt;
  image.hspace = "1";
  image.vspace = "1";
  image.title = image.alt;
  image.style.cursor = "pointer";
  GEvent.addDomListener(image, "click", function() { map.returnToSavedPosition(); UpdateMapUI(true); });
  containerDiv.appendChild(image);

  //  Pan Right buttons
  image = document.createElement("img");
  image.src = "http://cdn.tripadvisor.com/img/gmaps/arrowRight.gif";
  image.alt = sPanRightButtonAlt;
  image.hspace = "1";
  image.vspace = "1";
  image.title = image.alt;
  image.style.cursor = "pointer";
  GEvent.addDomListener(image, "click", function() { map.panDirection(-1, 0); UpdateMapUI(true); });
  containerDiv.appendChild(image);
  containerDiv.appendChild(document.createElement("br"));

	// Pan Down Button
  image = document.createElement("img");
  image.src = "http://cdn.tripadvisor.com/img/gmaps/arrowDown.gif";
  image.alt = sPanDownButtonAlt;
  image.hspace = "1";
  image.vspace = "1";
  image.title = image.alt;
  image.style.cursor = "pointer";
  GEvent.addDomListener(image, "click", function() { map.panDirection(0, -1); UpdateMapUI(true); });
  containerDiv.appendChild(image);
  containerDiv.appendChild(document.createElement("br"));

	//	Attach container to Map container
  map.getContainer().appendChild(containerDiv);

	return containerDiv;
}

TA_MapNavControl.prototype.getDefaultPosition = function()
{
  return new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(6, 6));
}

TA_MapNavControl.prototype.printable = function()
{
  return false;
}

TA_MapNavControl.prototype.selectable = function()
{
  return false;
}

