JDialog getEditor(Component parent) {

		final JTextArea titleArea = new PastableTextArea(title);
		final JTextArea subtitleArea = new PastableTextArea(subtitle);

		String s = JmolContainer.getInternationalText("AnimationTitle");
		final JDialog d = new JDialog(JOptionPane.getFrameForComponent(parent), s != null ? s : "Animation Title", true);
		d.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
		JPanel contentPane = new JPanel(new BorderLayout(5, 5));
		d.setContentPane(contentPane);

		JPanel panel = new JPanel(new SpringLayout());
		contentPane.add(panel, BorderLayout.CENTER);

		s = JmolContainer.getInternationalText("Title");
		panel.add(new JLabel(s != null ? s : "Title:"));
		titleArea.addFocusListener(new FocusAdapter() {
			public void focusLost(FocusEvent e) {
				String s = titleArea.getText();
				if (s == null || s.trim().equals("")) {
					title = null;
				}
				else {
					title = s;
				}
			}
		});
		JScrollPane scroller = new JScrollPane(titleArea);
		scroller.setPreferredSize(new Dimension(300, 50));
		panel.add(scroller);
		s = JmolContainer.getInternationalText("Subtitle");
		panel.add(new JLabel(s != null ? s : "Subtitle:"));
		subtitleArea.addFocusListener(new FocusAdapter() {
			public void focusLost(FocusEvent e) {
				String s = subtitleArea.getText();
				if (s == null || s.trim().equals("")) {
					subtitle = null;
				}
				else {
					subtitle = s;
				}
			}
		});
		scroller = new JScrollPane(subtitleArea);
		scroller.setPreferredSize(new Dimension(300, 100));
		panel.add(scroller);
		ModelerUtilities.makeCompactGrid(panel, 4, 1, 5, 5, 5, 5);

		panel = new JPanel();
		contentPane.add(panel, BorderLayout.SOUTH);
		s = JmolContainer.getInternationalText("Close");
		JButton button = new JButton(s != null ? s : "Close");
		button.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				displayInformation();
				d.dispose();
			}
		});
		panel.add(button);

		d.pack();
		return d;

	}