package net.sf.freecol.client.gui;
import java.awt.GraphicsDevice;
import java.awt.Rectangle;
import javax.swing.JFrame;
import net.sf.freecol.client.FreeColClient;
public abstract class FreeColFrame extends JFrame {
public static final String COPYRIGHT = "Copyright (C) 2003-2012 The FreeCol Team";
public static final String LICENSE = "http://www.gnu.org/licenses/gpl.html";
public static final String REVISION = "$Revision: 2763 $";
private FreeColClient freeColClient;
public static FreeColFrame createFreeColFrame(FreeColClient freeColClient, Canvas canvas,
GraphicsDevice gd, boolean windowed) {
if (windowed)
return new WindowedFrame(freeColClient, canvas);
return new FullScreenFrame(freeColClient, gd);
}
public FreeColFrame(FreeColClient freeColClient, String title) {
super(title);
this.freeColClient = freeColClient;
}
public FreeColFrame(FreeColClient freeColClient, String title, GraphicsDevice gd) {
super(title, gd.getDefaultConfiguration());
this.freeColClient = freeColClient;
}
public void setCanvas(Canvas canvas) {
addWindowListener(new WindowedFrameListener(freeColClient));
getContentPane().add(canvas);
}
public abstract void updateBounds(Rectangle rectangle);
}