package org.freehep.swing.images.test; import java.awt.BorderLayout; import java.awt.Container; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JCheckBoxMenuItem; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JPanel; import javax.swing.JToolBar; import org.freehep.swing.images.FreeHepImage; public class ImageTest extends JFrame { String cursors[] = { "ParallelogramCursor", "PointCursor", "RectangularCursor", "RotatedRectangleCursor", "SquareCursor", "XSkewCursor", "YSkewCursor", "RotationCursor", "NotFoundCursor" }; String selections[] = { "Parallelogram", "Point", "Rectangular", "RotatedRectangle", "Square", "XSkew", "YSkew", "Rotation", "NotFound" }; public ImageTest() { super("Image, Cursor and Icon Test"); Container content = getContentPane(); content.setLayout(new BorderLayout()); // create button panel JPanel buttonPanel = new JPanel(); content.add(buttonPanel, "Center"); buttonPanel.setLayout(new GridLayout(4,2)); for (int i=0; i<cursors.length; i++) { JButton button = new JButton(cursors[i]); final int buttonNo = i; buttonPanel.add(button); button.setCursor(FreeHepImage.getCursor(cursors[i])); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { ImageTest.this.setIconImage(FreeHepImage.getImage(selections[buttonNo])); } }); } // create toolbar and menubar JToolBar toolBar = new JToolBar(); JMenuBar menuBar = new JMenuBar(); getRootPane().setJMenuBar(menuBar); content.add(toolBar, "North"); JMenu selectionMenu = new JMenu("Selection"); menuBar.add(selectionMenu); ButtonGroup selectionGroup = new ButtonGroup(); for (int i=0; i<selections.length; i++) { JCheckBoxMenuItem item = new JCheckBoxMenuItem(selections[i], FreeHepImage.getIcon(selections[i])); selectionMenu.add(item); selectionGroup.add(item); toolBar.add(new JButton(FreeHepImage.getIcon(selections[i]))); } // addMouseMotionListener(this); } public static void main(String[] args) { JFrame frame = new ImageTest(); frame.pack(); frame.setSize(640, 480); frame.setVisible(true); } }