BottomBar(JmolContainer c) {

		super(new FlowLayout(FlowLayout.LEFT, 0, 1));
		setBorder(BorderFactory.createRaisedBevelBorder());

		container = c;

		int m = System.getProperty("os.name").startsWith("Mac") ? 6 : 2;
		Insets margin = new Insets(m, m, m, m);

		toFirstButton = new JButton(new ImageIcon(getClass().getResource("resources/FirstScene.gif")));
		toFirstButton.setMargin(margin);
		toFirstButton.setToolTipText("Go to the starting scene");
		toFirstButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if (container.getSceneCount() == 0)
					return;
				if (container.getCurrentSceneIndex() == 0)
					return;
				container.moveToScene(0, false);
			}
		});
		// add(toFirstButton);

		toPreviousButton = new JButton(new ImageIcon(getClass().getResource("resources/PreviousScene.gif")));
		toPreviousButton.setMargin(margin);
		toPreviousButton.setToolTipText("Go to the previous scene");
		toPreviousButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				container.moveOneStep(false);
			}
		});
		// add(toPreviousButton);

		toNextButton = new JButton(new ImageIcon(getClass().getResource("resources/NextScene.gif")));
		toNextButton.setMargin(margin);
		toNextButton.setToolTipText("Go to the next scene");
		toNextButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				container.moveOneStep(true);
			}
		});
		// add(toNextButton);

		nonstopButton = new JButton(new ImageIcon(getClass().getResource("resources/Nonstop.gif")));
		nonstopButton.setMargin(margin);
		nonstopButton.setToolTipText("Nonstop tour");
		nonstopButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				container.moveNonstop();
			}
		});
		// add(nonstopButton);

		toLastButton = new JButton(new ImageIcon(getClass().getResource("resources/LastScene.gif")));
		toLastButton.setMargin(margin);
		toLastButton.setToolTipText("Go to the last scene");
		toLastButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				int n = container.getSceneCount();
				if (n > 0 && container.getCurrentSceneIndex() < n - 1) {
					container.moveToScene(n - 1, false);
				}
			}
		});
		// add(toLastButton);

		landButton = new JButton(new ImageIcon(getClass().getResource("resources/Landing.gif")));
		landButton.setMargin(margin);
		landButton.setToolTipText("Request stop at the next scene");
		landButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				container.requestStopMoveTo();
			}
		});
		// add(landButton);

		sceneLabel = new JLabel();
		sceneLabel.setOpaque(true);
		sceneLabel.setBorder(BorderFactory.createLoweredBevelBorder());
		sceneLabel
				.setToolTipText("<html>Current scene index / total number of scenes in itinerary.<br>Click to open the Itinerary Editor.</html>");
		sceneLabel.setFont(SMALL_FONT);
		sceneLabel.addMouseListener(new MouseAdapter() {
			public void mouseReleased(MouseEvent e) {
				if (!container.isMoving())
					container.editItinerary();
			}

			public void mouseEntered(MouseEvent e) {
				if (!container.isMoving())
					sceneLabel.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
			}

			public void mouseExited(MouseEvent e) {
				if (!container.isMoving())
					sceneLabel.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
			}
		});
		// add(sceneLabel);

		infoLabel = new JLabel();
		infoLabel.setToolTipText("File name and number of atoms");
		infoLabel.setOpaque(true);
		infoLabel.setBackground(Color.white);
		infoLabel.setBorder(BorderFactory.createLoweredBevelBorder());
		infoLabel.setFont(SMALL_FONT);
		add(infoLabel);

	}