package uk.co.patrickhaston.mars;

import java.awt.Dimension;
import java.awt.Point;
import java.awt.event.MouseEvent;

public class MarsZoomControl
  extends MarsControl
{
  public MarsZoomControl(MPanel parent, MarsFrame frame)
  {
    super(parent, frame);
    try
    {
      jbInit();
    }
    catch (Exception e)
    {
      e.printStackTrace();
    }
  }

  private void jbInit()
    throws Exception
  {
    setImage(theFrame.mars.systemResources.zoomControlImage);
    this.setControlSize(new Dimension(48,24));
  }
  
  public void handleMousePressed(MouseEvent e)
  {
    getDirection(e.getPoint());
    if(direction == NORTH_WEST) myParent.zoomIn();
    if(direction == NORTH_EAST) myParent.zoomOut();
    repaint();
  }

  public void handleMouseReleased(MouseEvent e)
  {
    direction = 5;
    repaint();
  }

  public int getDirection(Point p)
  {
    if(p.x < 24)
    {
      if(p.y < 24)
      {
        direction = NORTH_WEST;
      }
      else
      {
        direction = SOUTH_WEST;
      }
    }
    else
    {
      if(p.y < 24)
      {
        direction = NORTH_EAST;
      }
      else
      {
        direction = SOUTH_EAST;
      }
    }
    return direction;
  }

}

