package vooga.towerdefense.view.introscreens;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Point;
import javax.swing.JPanel;
import vooga.towerdefense.view.TDView;
/**
* An abstract that aids in selection of maps and levels when the game is being
* loaded by the player.
*
* @author Leonard K. Ng'eno
*
*/
public abstract class SelectScreen extends JPanel {
private static final long serialVersionUID = 1L;
private static final int XCOORD = 0;
private static final int YCOORD = 0;
private Color myBackgroundColor = Color.WHITE;
private TDView myView;
public SelectScreen (Dimension size, TDView view) {
setPreferredSize(size);
myView = view;
setVisible(true);
}
@Override
public void paintComponent (Graphics pen) {
super.paintComponent(pen);
pen.setColor(myBackgroundColor);
pen.fillRect(XCOORD, YCOORD, getSize().width, getSize().height);
}
/**
*
* @return parent view container
*/
public TDView getView () {
return myView;
}
/**
* Show the pixmap images representing the level/map
*
* @param pen
*/
public abstract void displayImages (Graphics2D pen);
/**
* Check whether the mouse click position represent's an actual map/level
* image position
*
* @param point mouse click position
*/
public abstract void checkPositionClicked (Point point);
}