/* * Created on Sep 16, 2005 by Nick * */ package jmsltestsuite; import java.awt.BorderLayout; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import com.didkovsky.portview.*; import com.didkovsky.portview.awt.ViewFactoryAWT; import com.didkovsky.portview.swing.ViewFactorySwing; /** * @author Nick Didkovsky, (c) 2005 Nick Didkovsky, didkovn@mail.rockefeller.edu * */ public class PortViewScrollPaneTest { private PVFrame frame; private PVCanvas canvas; private PVScrollPane scrollpane; private ViewFactory viewFactory; private int canvasWidth = 600*2; private int canvasHeight = 600*2; private int frameWidth = 580*2; private int frameHeight = 580*2; public PortViewScrollPaneTest() { viewFactory = PortView.getViewFactory(); buildWindow(); buildScrollPane(); buildCanvas(); frame.add(scrollpane.getComponent()); } private void buildWindow() { String title = "View Factory building components in "; if (viewFactory.getFactoryType() == ViewFactory.SWING) title += "Swing"; else title += "AWT"; frame = viewFactory.createFrame(); frame.setTitle(title); frame.setFrameLayout(new BorderLayout()); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); } private void buildScrollPane() { scrollpane = viewFactory.createScrollPane(); } private void buildCanvas() { canvas = viewFactory.createCanvas(); canvas.setCanvasSize(canvasWidth, canvasHeight); scrollpane.add(canvas.getComponent()); } public void show() { frame.setSize(frameWidth, frameHeight); // Dimension screenDim = Toolkit.getDefaultToolkit().getScreenSize(); // frame.setSize(Math.max(800, (int) Math.min(screenDim.width, canvasWidth + 20)), (int) // Math.min(screenDim.height, // canvasHeight + 175)); // frame.validate(); frame.setVisible(true); } public static void main(String[] args) { boolean useSwing = true; if (useSwing) { PortView.setViewFactory(new ViewFactorySwing()); } else { PortView.setViewFactory(new ViewFactoryAWT()); } PortViewScrollPaneTest test = new PortViewScrollPaneTest(); test.show(); } }