package de.onyxbits.dummydroid;
import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.FlowLayout;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
public class MainWindow extends JFrame implements Runnable {
/**
*
*/
private static final long serialVersionUID = 1L;
public MainWindow() {
super("Dummy Droid");
setDefaultCloseOperation(EXIT_ON_CLOSE);
JMenuBar mbar = new JMenuBar();
JMenu fileMenu = new JMenu(new FileMenuAction());
fileMenu.add(new JMenuItem(new QuitAction()));
mbar.add(fileMenu);
setJMenuBar(mbar);
FormData formData = new FormData();
JEditorPane description = new HypertextPane("");
description.setBorder(BorderFactory.createEmptyBorder(8, 8, 8, 8));
description.addHyperlinkListener(new BrowseUtil());
JPanel formContainer = new JPanel();
formContainer.setLayout(new CardLayout());
NavigateAction forward = new NavigateAction(description, formContainer, NavigateAction.FORWARD,
formData);
NavigateAction backward = new NavigateAction(description, formContainer, NavigateAction.BACK,
formData);
formContainer.add(new LoadForm(forward, backward), LoadForm.class.getName());
formContainer.add(new HardwareForm(forward, backward), HardwareForm.class.getName());
formContainer.add(new SoftwareForm(forward, backward), SoftwareForm.class.getName());
formContainer.add(new MiscForm(forward, backward), MiscForm.class.getName());
formContainer.add(new NativeForm(forward, backward), NativeForm.class.getName());
formContainer.add(new SharedlibForm(forward, backward), SharedlibForm.class.getName());
formContainer.add(new FeaturesForm(forward, backward), FeaturesForm.class.getName());
formContainer.add(new LocalesForm(forward, backward), LocalesForm.class.getName());
formContainer.add(new CredentialsForm(forward,backward),CredentialsForm.class.getName());
formContainer.add(new CheckinForm(forward, backward), CheckinForm.class.getName());
JButton next = new JButton(forward);
JButton previous = new JButton(backward);
JLabel content = new JLabel("");
JPanel buttonBar = new JPanel(new FlowLayout(FlowLayout.RIGHT));
buttonBar.add(previous);
buttonBar.add(next);
content.setLayout(new BorderLayout());
JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,
new JScrollPane(description), formContainer);
splitPane.setResizeWeight(1);
content.add(splitPane, BorderLayout.CENTER);
content.add(buttonBar, BorderLayout.SOUTH);
setContentPane(content);
forward.toScreen();
}
public void run() {
setSize(800, 600);
setLocationRelativeTo(null);
setVisible(true);
}
}