package usda.weru.gis.gui;

import org.locationtech.jts.geom.Coordinate;
import java.awt.Cursor;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

/**
 *
 * @author Joseph A. Levin <joelevin@weru.ksu.edu>
 */
public interface MapController {
    static int zoomFactorMin = 0;
    static int zoomFactorMax = 0;
    static int zoomMin = 0;
    static int zoomMax = 0;
    static int zoomAdj = 0;
    
//    public int getZoom();
    public void setZoom(int zoomIdx);
    public void setZoomMax(int max);
    public double getZoomFactor();
    public Coordinate getCenter();
    public void setCenter(Coordinate center);
//    public void zoomIn(double adjustment);
//    public void zoomOut(double adjustment);
    public void zoomIn();
    public void zoomOut();
    public void pan(int x, int y);
    public void setPanning(boolean panning);
    public boolean isPanning();
    public void setCursor(Cursor cursor);
    public void addMouseListener(MouseListener l);
    public void addMouseMotionListener(MouseMotionListener l);
    public void setRenderEnabled(boolean enabled);
    public void setViewer(MapViewer v);
    public int getZoomMin ();
    public int getZoomMax ();
    public void setZoomValues (double zoomValues[]);
    public void updateDataSources ();
}
