/*
 * @(#)demos.js	May 22, 2005
 *
 * *****[ JFCML 0.9.3 MANUAL/WEBSITE (/demo/demos.js) ]*****
 *
 *	Copyright 2004-2005 Shawn Curry,  http://meta-solutions.com
 *	Licensed under the Academic Free License version 2.1
 *	
 *	For license details see http://meta-solutions.com/jfcml/license
 */

/*****************
 *   THE DEMOS   *
 *****************/

function Classic() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <JMenuBar>" +
		"\n            <JMenu Text=\"'Hello'\" Mnemonic=\"'H'\">" +
		"\n                <JMenuItem Text=\"'World'\"/>" +
		"\n            </JMenu>" +
		"\n        </JMenuBar>" +
		"\n        <ContentPane>" +
		"\n            <JPanel Background=\"new Color(0,0,0)\">" +
		"\n                <JLabel Text=\"'Hello World'\" Foreground=\"new Color(0,255,0)\"/>" +
		"\n            </JPanel>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function ComboBoxDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n           <JPanel Background=\"new Color(255,255,255)\">" +
		"\n                <JComboBox symbol=\"'combo'\">" +
		"\n                    <this addItem=\"new Integer(3)\"/>" +
		"\n                    <this addItem=\"new Integer(2)\"/>" +
		"\n                    <this addItem=\"new Integer(1)\"/>" +
		"\n                </JComboBox>" +
		"\n                <JComboBox>" +
		"\n                    <this addItem=\"'One'\"/>" +
		"\n                    <this addItem=\"'Two'\"/>" +
		"\n                    <this addItem=\"'Three'\"/>" +
		"\n                </JComboBox>" +
		"\n           </JPanel>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function RadioButtonDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n            <JPanel Background=\"new Color(255,255,255)\">" +
		"\n                <ButtonGroup>" +
		"\n                    <JRadioButton Text=\"'First Choice'\" Selected=\"true\"/>" +
		"\n                    <JRadioButton Text=\"'Second Choice'\"/>" +
		"\n                    <JRadioButton Text=\"'Third Choice'\"/>" +
		"\n                    <JRadioButton Text=\"'Fourth Choice'\"/>" +
		"\n                </ButtonGroup>" +
		"\n            </JPanel>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function MenuDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <Import package=\"java.awt.event\"/>" +
		"\n    <JRootPane>" +
		"\n    	<JMenuBar>" +
		"\n    	    <JMenu Text=\"'File'\" Mnemonic=\"'F'\">" +
		"\n                 <JMenu Text=\"'New'\" Mnemonic=\"'N'\">" +
		"\n                      <JMenuItem Text=\"'JFCML Document'\" Mnemonic=\"'J'\"" +
		"\n                           Accelerator=\"KeyStroke.getKeyStroke('N', InputEvent.CTRL_MASK)\"/>" +
		"\n                      <JMenuItem Text=\"'Text Document'\" Mnemonic=\"'T'\"/>" +
		"\n                 </JMenu>" +
		"\n                 <JMenuItem Text=\"'Open'\" Mnemonic=\"'O'\"" +
		"\n                      Accelerator=\"KeyStroke.getKeyStroke('O', InputEvent.CTRL_MASK)\"/>" +
		"\n                 <JSeparator/>" +
		"\n                 <JMenuItem Text=\"'Save'\" Mnemonic=\"'S'\"" +
		"\n                      Accelerator=\"KeyStroke.getKeyStroke('S', InputEvent.CTRL_MASK)\"/>" +
		"\n                 <JSeparator/>" +
		"\n                 <JMenuItem Text=\"'Exit'\" Mnemonic=\"'X'\"" +
		"\n                      Accelerator=\"KeyStroke.getKeyStroke('X', InputEvent.CTRL_MASK)\"/>" +
		"\n    	    </JMenu>" +
		"\n    	</JMenuBar>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function TextFieldDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n            <JPanel Background=\"new Color(255,255,255)\">" +
		"\n                <JTextField Text=\"'A text box'\" Columns=\"10\"/>" +
		"\n                <JPasswordField Text=\"'A password box'\" Columns=\"10\"/>" +
		"\n                <JScrollPane>" +
		"\n                    <this setViewportView=\"new JTextArea('text area',10,10)\"/>" +
		"\n                </JScrollPane>" +
		"\n            </JPanel>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function SliderDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n            <JPanel Background=\"new Color(255,255,255)\">" +
		"\n                <JSlider Orientation=\"JSlider.VERTICAL\" PaintTicks=\"true\" MinorTickSpacing=\"10\"/>" +
		"\n                <JSlider Orientation=\"JSlider.HORIZONTAL\"/>" +
		"\n            </JPanel>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function InternalFrameDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"javax.swing.border\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n            <JDesktopPane Border=\"new EtchedBorder()\">" +
		"\n                <JInternalFrame Title=\"'Internal Frame'\" Size=\"new Dimension(200,200)\"" +
		"\n                    Maximizable=\"true\" Iconifiable=\"true\" Visible=\"true\">" +
		"\n                    <JRootPane>" +
		"\n                        <JMenuBar>" +
		"\n                            <JMenu Text=\"'File'\">" +
		"\n                                <JMenuItem Text=\"'Exit'\"/>" +
		"\n                            </JMenu>" +
		"\n                        </JMenuBar>" +
		"\n                        <ContentPane>" +
		"\n                            <JLabel Text=\"'Using JInternalFrames is easy with JFCML!'\"/>" +
		"\n                        </ContentPane>" +
		"\n                    </JRootPane>" +
		"\n                </JInternalFrame>" +
		"\n            </JDesktopPane>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function OptionPaneDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n            <JPanel Background=\"new Color(255,255,255)\"/>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n    <JOptionPane showInternalConfirmDialog=\"target, 'Confirm'\"/>" +
		"\n    <JOptionPane showConfirmDialog=\"null, 'Confirm'\"/>" +
		"\n</JFCML>"
	);
}

function BoxLayoutDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n            <JPanel setLayout=\"new BoxLayout(this, BoxLayout.Y_AXIS)\">" +
		"\n                <JPanel setLayout=\"new BoxLayout(this, BoxLayout.X_AXIS)\">" +
		"\n                    <JPanel setBackground=\"new Color(0,0,0)\"/>" +
		"\n                    <JPanel setBackground=\"new Color(100,100,100)\"/>" +
		"\n                </JPanel>" +
		"\n                <JPanel setLayout=\"new BoxLayout(this, BoxLayout.X_AXIS)\">" +
		"\n                    <JPanel setBackground=\"new Color(200,200,200)\"/>" +
		"\n                    <JPanel setBackground=\"new Color(240,240,240)\"/>" +
		"\n                </JPanel>" +
		"\n            </JPanel>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function GridLayoutDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n            <JPanel setBackground=\"new Color(255,255,255)\"" +
		"\n                setLayout=\"new GridLayout(2,2,10,10)\">" +
		"\n                <JPanel setBackground=\"new Color(0,0,0)\"/>" +
		"\n                <JPanel setBackground=\"new Color(100,100,100)\"/>" +
		"\n                <JPanel setBackground=\"new Color(200,200,200)\"/>" +
		"\n                <JPanel setBackground=\"new Color(240,240,240)\"/>" +
		"\n            </JPanel>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function BorderLayoutDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n            <JPanel setLayout=\"new BorderLayout()\">" +
		"\n                <JPanel LayoutArg=\"BorderLayout.NORTH\"" +
		"\n                    setBackground=\"new Color(0,0,0)\"/>" +
		"\n                <JPanel LayoutArg=\"BorderLayout.SOUTH\"" +
		"\n                    setBackground=\"new Color(100,100,100)\"/>" +
		"\n                <JPanel LayoutArg=\"BorderLayout.EAST\"" +
		"\n                    setBackground=\"new Color(200,200,200)\"/>" +
		"\n                <JPanel LayoutArg=\"BorderLayout.WEST\"" +
		"\n                    setBackground=\"new Color(240,240,240)\"/>" +
		"\n                <JPanel LayoutArg=\"BorderLayout.CENTER\"" +
		"\n                    setBackground=\"new Color(255,255,255)\"/>" +
		"\n            </JPanel>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}

function GridBagLayoutDemo() {
	return new String(
		"\n<JFCML>" +
		"\n    <Import package=\"javax.swing\"/>" +
		"\n    <Import package=\"java.awt\"/>" +
		"\n    <Header>" +
		"\n        <GridBagConstraints symbol=\"'gbc1'\" weightx=\"0.5\" gridx=\"0\" gridy=\"0\"/>" +
		"\n        <GridBagConstraints symbol=\"'gbc2'\" weightx=\"0.5\" gridx=\"1\" gridy=\"0\"/>" +
		"\n        <GridBagConstraints symbol=\"'gbc3'\" weightx=\"0.5\" gridx=\"2\" gridy=\"0\"/>" +
		"\n        <GridBagConstraints symbol=\"'gbc4'\" weightx=\"0.0\" gridx=\"0\" gridy=\"1\"" +
		"\n            ipady=\"40\" gridwidth=\"3\"/>" +
		"\n        <GridBagConstraints symbol=\"'gbc5'\" weightx=\"0.0\" gridx=\"1\" gridy=\"2\"" +
		"\n            anchor=\"GridBagConstraints.PAGE_END\" gridwidth=\"2\"" +
		"\n            insets=\"new Insets(10,0,0,0)\" weighty=\"1.0\"/>" +
		"\n    </Header>" +
		"\n    <JRootPane>" +
		"\n        <ContentPane>" +
		"\n            <JPanel setBackground=\"new Color(255,255,255)\"" +
		"\n                setLayout=\"new GridBagLayout()\">" +
		"\n                <JButton LayoutArg=\"variable('gbc1')\"" +
		"\n                    setText=\"'Button1'\"/>" +
		"\n                <JButton LayoutArg=\"variable('gbc2')\"" +
		"\n                    setText=\"'Button2'\"/>" +
		"\n                <JButton LayoutArg=\"variable('gbc3')\"" +
		"\n                    setText=\"'Button3'\"/>" +
		"\n                <JButton LayoutArg=\"variable('gbc4')\"" +
		"\n                    setText=\"'Long-named Button1'\"/>" +
		"\n                <JButton LayoutArg=\"variable('gbc5')\"" +
		"\n                    setText=\"'5'\"/>" +
		"\n            </JPanel>" +
		"\n        </ContentPane>" +
		"\n    </JRootPane>" +
		"\n</JFCML>"
	);
}


