FileDocCategorySizeDatePackage
LNFSwitcher.javaAPI DocExample2986Sat Jan 13 18:09:56 GMT 2001None

LNFSwitcher

public class LNFSwitcher extends Object
A Look-and-feel switcher.
author
Ian Darwin, ian@darwinsys.com
version
$Id: LNFSwitcher.java,v 1.2 2001/01/13 23:09:57 ian Exp $

Fields Summary
protected JFrame
theFrame
The frame.
protected Container
cp
Its content pane
static final String
PREFERREDLOOKANDFEELNAME
Start with the Java look-and-feel, if possible
protected String
curLF
protected JRadioButton
previousButton
Constructors Summary
public LNFSwitcher()
Construct a program...


	    
	  
		super();
		theFrame = new JFrame("LNF Switcher");
		theFrame.addWindowListener(new WindowCloser(theFrame, true));
		cp = theFrame.getContentPane();
		cp.setLayout(new FlowLayout());

		ButtonGroup bg = new ButtonGroup();

		JRadioButton bJava = new JRadioButton("Java");
		bJava.addActionListener(new LNFSetter(
			"javax.swing.plaf.metal.MetalLookAndFeel", bJava));
		bg.add(bJava);
		cp.add(bJava);

		JRadioButton bMSW  = new JRadioButton("MS-Windows");
		bMSW.addActionListener(new LNFSetter(
			"com.sun.java.swing.plaf.windows.WindowsLookAndFeel", bMSW));
		bg.add(bMSW);
		cp.add(bMSW);

		JRadioButton bMotif = new JRadioButton("Motif");
		bMotif.addActionListener(new LNFSetter(
			"com.sun.java.swing.plaf.motif.MotifLookAndFeel", bMotif));
		bg.add(bMotif);
		cp.add(bMotif);

		JRadioButton bMac = new JRadioButton("MacOS");
		bMac.addActionListener(new LNFSetter(
			"com.sun.java.swing.plaf.mac.MacLookAndFeel", bMac));
		bg.add(bMac);
		cp.add(bMac);

		// Following is a **hypothetical** addition!
		JRadioButton bOL = new JRadioButton("OPEN LOOK");
		bOL.addActionListener(new LNFSetter(
			 "com.darwinsys.openlook.OpenLookAndFeel", bOL));
		bOL.setEnabled(false);	// since it IS hypothetical
		bg.add(bOL);
		cp.add(bOL);

		// We "know" that the Java Look-and-feel is the default.
		previousButton = bJava;
		bJava.setSelected(true);

		theFrame.pack();
		theFrame.setVisible(true);
	
Methods Summary
public static voidmain(java.lang.String[] argv)

		new LNFSwitcher();