package xl.gui; import static java.awt.BorderLayout.CENTER; import static java.awt.BorderLayout.NORTH; import static java.awt.BorderLayout.SOUTH; import javax.swing.JFrame; import javax.swing.JPanel; import xl.gui.menu.XLMenuBar; public class XL extends JFrame { private static final int ROWS = 10, COLUMNS = 8; private XLCounter counter; private StatusLabel statusLabel = new StatusLabel(); private XLList xlList; public XL(XL oldXL) { this(oldXL.xlList, oldXL.counter); } public XL(XLList xlList, XLCounter counter) { super("Untitled-" + counter); this.xlList = xlList; this.counter = counter; xlList.add(this); counter.increment(); JPanel statusPanel = new StatusPanel(statusLabel); JPanel sheetPanel = new SheetPanel(ROWS, COLUMNS); Editor editor = new Editor(); add(NORTH, statusPanel); add(CENTER, editor); add(SOUTH, sheetPanel); setJMenuBar(new XLMenuBar(this, xlList, statusLabel)); pack(); setDefaultCloseOperation(EXIT_ON_CLOSE); setResizable(false); setVisible(true); } public void rename(String title) { setTitle(title); xlList.setChanged(); } public static void main(String[] args) { new XL(new XLList(), new XLCounter()); } }