Index: /trunk/src/tmcsim/cadsimulator/viewer/CADSimulatorViewer.java
===================================================================
--- /trunk/src/tmcsim/cadsimulator/viewer/CADSimulatorViewer.java	(revision 8)
+++ /trunk/src/tmcsim/cadsimulator/viewer/CADSimulatorViewer.java	(revision 24)
@@ -3,6 +3,7 @@
 import java.awt.AWTEvent;
 import java.awt.Dimension;
+import java.awt.event.ActionEvent;
+import java.awt.event.KeyEvent;
 import java.awt.event.WindowEvent;
-
 import javax.swing.JFrame;
 import javax.swing.JMenu;
@@ -11,5 +12,5 @@
 import javax.swing.JOptionPane;
 import javax.swing.JTabbedPane;
-
+import javax.swing.KeyStroke;
 import tmcsim.cadsimulator.videocontrol.DVDStatusUpdate;
 import tmcsim.cadsimulator.videocontrol.DVDTitleUpdate;
@@ -20,140 +21,166 @@
 
 /**
- * This class provides a GUI to view current status information for the
- * CAD Simulator.
+ * This class provides a GUI to view current status information for the CAD
+ * Simulator.
  *
  * @see SimulationStatusPanel
  * @see MediaStatusPanel
- * @author Matthew Cechini 
+ * @author Matthew Cechini
  * @version $Revision: 1.3 $ $Date: 2006/06/06 20:46:41 $
  */
 @SuppressWarnings("serial")
-public class CADSimulatorViewer extends JFrame {
-
-    /** Panel to display simulation information. */
+public class CADSimulatorViewer extends JFrame
+{
+
+    /**
+     * Panel to display simulation information.
+     */
     private SimulationStatusPanel simulationPanel;
-    
-    /** Panel to display media control information. */
+    /**
+     * Panel to display media control information.
+     */
     private MediaStatusPanel mediaPanel;
-    
-    /** Constructor. */
-    public CADSimulatorViewer() {
+
+    /**
+     * Constructor.
+     */
+    public CADSimulatorViewer()
+    {
         super("CAD Simulator");
-        
+
         initComponents();
-    }    
-    
-    /** 
-     * @see SimulationStatusPanel
-     */
-    public void connectClient() {
+    }
+
+    /**
+     * @see SimulationStatusPanel
+     */
+    public void connectClient()
+    {
         simulationPanel.connectClient();
     }
-    
-    /** 
-     * @see SimulationStatusPanel
-     */
-    public void disconnectClient() {
+
+    /**
+     * @see SimulationStatusPanel
+     */
+    public void disconnectClient()
+    {
         simulationPanel.disconnectClient();
     }
-    
-    /** 
-     * @see SimulationStatusPanel
-     */
-    public void setSimManagerStatus(boolean connection) {
-        simulationPanel.setSimManagerStatus(connection);        
-    }
-    
-    /** 
-     * @see SimulationStatusPanel
-     */
-    public void setTime(long seconds) {
+
+    /**
+     * @see SimulationStatusPanel
+     */
+    public void setSimManagerStatus(boolean connection)
+    {
+        simulationPanel.setSimManagerStatus(connection);
+    }
+
+    /**
+     * @see SimulationStatusPanel
+     */
+    public void setTime(long seconds)
+    {
         simulationPanel.setTime(seconds);
     }
 
-    /** 
-     * @see SimulationStatusPanel
-     */
-    public void setScriptStatus(SCRIPT_STATUS newStatus) {
-        simulationPanel.setScriptStatus(newStatus);         
-    }
-    
-    /** 
-     * @see SimulationStatusPanel
-     */
-    public void setParamicsStatus(PARAMICS_STATUS newStatus) {
-        simulationPanel.setParamicsStatus(newStatus);       
-    }
-    
-    /** 
-     * @see SimulationStatusPanel
-     */
-    public void setParamicsNetworkLoaded(String networkID) {
-        simulationPanel.setParamicsNetworkLoaded(networkID);        
-    }
-
-    /** 
+    /**
+     * @see SimulationStatusPanel
+     */
+    public void setScriptStatus(SCRIPT_STATUS newStatus)
+    {
+        simulationPanel.setScriptStatus(newStatus);
+    }
+
+    /**
+     * @see SimulationStatusPanel
+     */
+    public void setParamicsStatus(PARAMICS_STATUS newStatus)
+    {
+        simulationPanel.setParamicsStatus(newStatus);
+    }
+
+    /**
+     * @see SimulationStatusPanel
+     */
+    public void setParamicsNetworkLoaded(String networkID)
+    {
+        simulationPanel.setParamicsNetworkLoaded(networkID);
+    }
+
+    /**
      * @see MediaStatusPanel
      */
-    public void updateDVDStatus(DVDStatusUpdate update) {
+    public void updateDVDStatus(DVDStatusUpdate update)
+    {
         mediaPanel.updateDVDStatus(update);
     }
 
-    /** 
+    /**
      * @see MediaStatusPanel
      */
-    public void updateDVDTitle(DVDTitleUpdate update) {
+    public void updateDVDTitle(DVDTitleUpdate update)
+    {
         mediaPanel.updateDVDTitle(update);
     }
-    
-    /**
-     * Method calls the processEvent() method with a WINDOW_CLOSING
-     * WindowEvent to start the application closing process.
-     */
-    public void closeViewer() {
+
+    /**
+     * Method calls the processEvent() method with a WINDOW_CLOSING WindowEvent
+     * to start the application closing process.
+     */
+    public void closeViewer()
+    {
         processEvent(new WindowEvent(this, WindowEvent.WINDOW_CLOSING));
     }
 
     /**
-     * Overloads the processEvent method.  If the AWTEvent is a 
-     * WINDOW_CLOSING event, prompt the user to confirm the action.
-     * If confirmed, close the application.
-     */
-    protected void processEvent(AWTEvent evt) {
-        
-        if(evt.getID() == WindowEvent.WINDOW_CLOSING) {
+     * Overloads the processEvent method. If the AWTEvent is a WINDOW_CLOSING
+     * event, prompt the user to confirm the action. If confirmed, close the
+     * application.
+     */
+    protected void processEvent(AWTEvent evt)
+    {
+
+        if (evt.getID() == WindowEvent.WINDOW_CLOSING)
+        {
             int option = JOptionPane.showConfirmDialog(null,
-                    "Closing the CAD Simulator will stop the current " +
-                    "simulation.  Do you wish to continue exiting?",
+                    "Closing the CAD Simulator will stop the current "
+                    + "simulation.  Do you wish to continue exiting?",
                     "Confirm Exit",
                     JOptionPane.YES_NO_OPTION);
-            
-            if(option != JOptionPane.NO_OPTION) {
+
+            if (option != JOptionPane.NO_OPTION)
+            {
                 System.exit(0);
-            }       
+            }
         }
-     }
-    
-    /** Initialize GUI Components */
-    private void initComponents() {
-
-        
+    }
+
+    /**
+     * Initialize GUI Components
+     */
+    private void initComponents()
+    {
+
+
         simulationPanel = new SimulationStatusPanel();
-        mediaPanel      = new MediaStatusPanel();
-        
+        mediaPanel = new MediaStatusPanel();
+
         cadSimTabbedPane = new JTabbedPane();
         cadSimTabbedPane.addTab("Status", simulationPanel);
         cadSimTabbedPane.addTab("Media", mediaPanel);
-        
-        add(cadSimTabbedPane);      
+
+        add(cadSimTabbedPane);
 
         menubar = new JMenuBar();
-        
+
         fileMenu = new JMenu("File");
+        fileMenu.setMnemonic(KeyEvent.VK_F);
         menubar.add(fileMenu);
-        
+
         exitMenuItem = new JMenuItem(new ExitAction(this));
+        exitMenuItem.setAccelerator(KeyStroke.getKeyStroke(
+                KeyEvent.VK_X, ActionEvent.ALT_MASK));
         fileMenu.add(exitMenuItem);
-        
+
         javax.swing.JMenu helpMenu = new javax.swing.JMenu("Help");
         javax.swing.JMenuItem aboutItem = new javax.swing.JMenuItem("About");
@@ -169,20 +196,14 @@
         helpMenu.add(aboutItem);
         menubar.add(helpMenu);
-        
+
         setJMenuBar(menubar);
-        
-        setPreferredSize(new Dimension(500, 575));  
+
+        setPreferredSize(new Dimension(500, 575));
         pack();
         setResizable(false);
     }
-    
-    
     private JTabbedPane cadSimTabbedPane;
-    
     private JMenuBar menubar;
-    
     private JMenu fileMenu;
-    
     private JMenuItem exitMenuItem;
-    
 }
Index: /trunk/src/tmcsim/cadsimulator/viewer/actions/ExitAction.java
===================================================================
--- /trunk/src/tmcsim/cadsimulator/viewer/actions/ExitAction.java	(revision 2)
+++ /trunk/src/tmcsim/cadsimulator/viewer/actions/ExitAction.java	(revision 24)
@@ -2,31 +2,40 @@
 
 import java.awt.event.ActionEvent;
-
 import javax.swing.AbstractAction;
-
 import tmcsim.cadsimulator.viewer.CADSimulatorViewer;
 
 /**
- * Abstract action to exit the CADSimulator. When the action is performed
- * the CADSimulatorView.closeViewer() method is called.
- *  
+ * Abstract action to exit the CADSimulator. When the action is performed the
+ * CADSimulatorView.closeViewer() method is called.
+ *
  * @author Matthew Cechini
- * @version 
+ * @version
  */
 @SuppressWarnings("serial")
-public class ExitAction extends AbstractAction {
+public class ExitAction extends AbstractAction
+{
 
-    /** Reference to the CADSimulatorViewer. */
+    /**
+     * Reference to the CADSimulatorViewer.
+     */
     private CADSimulatorViewer theViewer;
 
-    public ExitAction(CADSimulatorViewer viewer) {
+    public ExitAction(CADSimulatorViewer viewer)
+    {
         super("Exit");
-        
+
         theViewer = viewer;
     }
-    
-    public void actionPerformed(ActionEvent arg0) {     
-        theViewer.closeViewer();
+
+    public void actionPerformed(ActionEvent arg0)
+    {
+        //theViewer.closeViewer();
+        /* closeViewer() will prompt the user for confirmation.
+         * 26 Apr 2016 I'm tired of seeing the confirmation message,
+         * so if the user chooses File>Exit, assume they intend to exit
+         * and don't ask for confirmation.  If they click window close
+         * button, they will still get the confirmation prompt. jdalbey
+         */
+        System.exit(0);
     }
-
 }
