public static JChemPaintPanel showInstance(final IChemModel chemModel, final String title, final boolean debug) { final JFrame f = new JFrame(title + " - JChemPaint"); chemModel.setID(title); f.addWindowListener(new JChemPaintPanel.AppCloser()); f.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); final JChemPaintPanel p = new JChemPaintPanel(chemModel, GUI_APPLICATION, debug, null, new ArrayList<String>()); p.updateStatusBar(); f.setPreferredSize(new Dimension(800, 494)); // 1.618 f.add(p); f.pack(); final Point point = GraphicsEnvironment.getLocalGraphicsEnvironment() .getCenterPoint(); final int w2 = f.getWidth() / 2; final int h2 = f.getHeight() / 2; f.setLocation(point.x - w2, point.y - h2); f.setVisible(true); frameList.add(f); return p; }