From 35e4629243c3fe1757012fcceae028cd374c4a9c Mon Sep 17 00:00:00 2001 From: Dale Schultz Date: Fri, 7 Oct 2011 13:51:22 +0000 Subject: [PATCH] Fixed up Logger launch progressbar. Changed ketstroke for Log to file from F1 to Spacebar. git-svn-id: https://svn2.assembla.com/svn/romraider/trunk@359 38686702-15cf-42e4-a595-3071df8bf5ea --- src/com/romraider/editor/ecu/ECUEditor.java | 2 +- src/com/romraider/logger/ecu/EcuLogger.java | 88 +++++++++---------- .../ui/swing/menubar/EcuLoggerMenuBar.java | 2 +- src/com/romraider/swing/ECUEditorMenuBar.java | 2 + 4 files changed, 48 insertions(+), 46 deletions(-) diff --git a/src/com/romraider/editor/ecu/ECUEditor.java b/src/com/romraider/editor/ecu/ECUEditor.java index e83d7d36..387a386b 100644 --- a/src/com/romraider/editor/ecu/ECUEditor.java +++ b/src/com/romraider/editor/ecu/ECUEditor.java @@ -90,7 +90,7 @@ public class ECUEditor extends AbstractFrame { private RomTreeRootNode imageRoot = new RomTreeRootNode("Open Images"); private RomTree imageList = new RomTree(imageRoot); public MDIDesktopPane rightPanel = new MDIDesktopPane(); - private JProgressPane statusPanel = new JProgressPane(); + public JProgressPane statusPanel = new JProgressPane(); private JSplitPane splitPane = new JSplitPane(); private Rom lastSelectedRom = null; private ECUEditorToolBar toolBar; diff --git a/src/com/romraider/logger/ecu/EcuLogger.java b/src/com/romraider/logger/ecu/EcuLogger.java index a9509a4f..9944e80a 100644 --- a/src/com/romraider/logger/ecu/EcuLogger.java +++ b/src/com/romraider/logger/ecu/EcuLogger.java @@ -276,29 +276,47 @@ public final class EcuLogger extends AbstractFrame implements MessageListener { private void construct(Settings settings) { checkNotNull(settings); this.settings = settings; - JProgressBar progressBar = startbar(); Logger.getRootLogger().setLevel((Level) Level.toLevel(settings.getLoggerDebuggingLevel())); - bootstrap(); - progressBar.setValue(20); - startText.setText(" Loading ECU Defs..."); - loadEcuDefs(); - progressBar.setValue(40); - startText.setText(" Loading Plugins..."); - progressBar.setIndeterminate(true); - loadLoggerPlugins(); - progressBar.setIndeterminate(false); - progressBar.setValue(60); - startText.setText(" Loading ECU Parameters..."); - loadLoggerParams(); - progressBar.setValue(80); - startText.setText(" Starting Logger..."); - initControllerListeners(); - progressBar.setValue(100); - initUserInterface(); - startStatus.dispose(); - initDataUpdateHandlers(); - startPortRefresherThread(); - if (!isLogging()) startLogging(); + if (ecuEditor == null) { + JProgressBar progressBar = startbar(); + bootstrap(); + progressBar.setValue(20); + startText.setText(" Loading ECU Defs..."); + loadEcuDefs(); + progressBar.setValue(40); + startText.setText(" Loading Plugins..."); + progressBar.setIndeterminate(true); + loadLoggerPlugins(); + progressBar.setIndeterminate(false); + progressBar.setValue(60); + startText.setText(" Loading ECU Parameters..."); + loadLoggerParams(); + progressBar.setValue(80); + startText.setText(" Starting Logger..."); + initControllerListeners(); + initUserInterface(); + progressBar.setValue(100); + initDataUpdateHandlers(); + startPortRefresherThread(); + if (!isLogging()) startLogging(); + startStatus.dispose(); + } + else { + bootstrap(); + ecuEditor.statusPanel.update("Loading ECU Defs...", 20); + loadEcuDefs(); + ecuEditor.statusPanel.update("Loading Plugins...", 40); + loadLoggerPlugins(); + ecuEditor.statusPanel.update("Loading ECU Parameters...", 60); + loadLoggerParams(); + ecuEditor.statusPanel.update("Starting Logger...", 80); + initControllerListeners(); + initUserInterface(); + ecuEditor.statusPanel.update("Complete...", 100); + initDataUpdateHandlers(); + startPortRefresherThread(); + if (!isLogging()) startLogging(); + } } private void bootstrap() { @@ -1055,7 +1073,7 @@ public final class EcuLogger extends AbstractFrame implements MessageListener { private Component buildLogToFileButton() { logToFileButton = new JToggleButton("Log to file", new ImageIcon("./graphics/logger_log_to_file.png")); - logToFileButton.setToolTipText("Start/stop file logging (F1)"); + logToFileButton.setToolTipText("Start/stop file logging (Spacebar)"); //logToFileButton.setPreferredSize(new Dimension(100, 25)); logToFileButton.setOpaque(true); logToFileButton.setBackground(Color.GREEN); @@ -1070,7 +1088,7 @@ public final class EcuLogger extends AbstractFrame implements MessageListener { } } }); - logToFileButton.getInputMap(WHEN_IN_FOCUSED_WINDOW).put(getKeyStroke("F1"), "toggleFileLogging"); + logToFileButton.getInputMap(WHEN_IN_FOCUSED_WINDOW).put(getKeyStroke(' '), "toggleFileLogging"); logToFileButton.getActionMap().put("toggleFileLogging", new ToggleButtonAction(this, logToFileButton)); return logToFileButton; } @@ -1401,12 +1419,7 @@ public final class EcuLogger extends AbstractFrame implements MessageListener { } private JProgressBar startbar() { - if (ecuEditor != null) { - startStatus = new JDialog(getActiveFrame()); - } - else { - startStatus = new JDialog(); - } + startStatus = new JDialog(); startStatus.setAlwaysOnTop(true); startStatus.setUndecorated(true); startStatus.setLocation((int)(settings.getLoggerWindowSize().getWidth()/2 + settings.getLoggerWindowLocation().getX()), @@ -1424,20 +1437,7 @@ public final class EcuLogger extends AbstractFrame implements MessageListener { return progressBar; } - private static Frame getActiveFrame() { - Frame result = null; - Frame[] frames = Frame.getFrames(); - for (int i = 0; i < frames.length; i++) { - Frame frame = frames[i]; - if (frame.isVisible()) { - result = frame; - break; - } - } - return result; - } - - //********************************************************************** + //********************************************************************** public static void startLogger(int defaultCloseOperation, ECUEditor ecuEditor) { diff --git a/src/com/romraider/logger/ecu/ui/swing/menubar/EcuLoggerMenuBar.java b/src/com/romraider/logger/ecu/ui/swing/menubar/EcuLoggerMenuBar.java index 1369cd49..ea585ece 100644 --- a/src/com/romraider/logger/ecu/ui/swing/menubar/EcuLoggerMenuBar.java +++ b/src/com/romraider/logger/ecu/ui/swing/menubar/EcuLoggerMenuBar.java @@ -90,7 +90,7 @@ public class EcuLoggerMenuBar extends JMenuBar { // settings menu items JMenu settingsMenu = new Menu("Settings", VK_S); - settingsMenu.add(new MenuItem("Logger Definition Location...", new LoggerDefinitionLocationAction(logger), VK_D, getKeyStroke(VK_D, CTRL_MASK))); + settingsMenu.add(new MenuItem("Logger Definition Location...", new LoggerDefinitionLocationAction(logger), VK_F, getKeyStroke(VK_F, CTRL_MASK))); settingsMenu.add(new MenuItem("Log File Output Location...", new LogFileLocationAction(logger), VK_O, getKeyStroke(VK_O, CTRL_MASK))); settingsMenu.add(new JSeparator()); settingsMenu.add(new RadioButtonMenuItem("Control File Logging With Defogger Switch", VK_C, getKeyStroke(VK_C, CTRL_MASK), new LogFileControllerSwitchAction(logger), logger.getSettings().isFileLoggingControllerSwitchActive())); diff --git a/src/com/romraider/swing/ECUEditorMenuBar.java b/src/com/romraider/swing/ECUEditorMenuBar.java index c8954058..252b4fc9 100644 --- a/src/com/romraider/swing/ECUEditorMenuBar.java +++ b/src/com/romraider/swing/ECUEditorMenuBar.java @@ -288,7 +288,9 @@ public class ECUEditorMenuBar extends JMenuBar implements ActionListener { parent.setUserLevel(5); } else if (e.getSource() == openLogger) { + parent.statusPanel.update("Launching Logger...", 10); EcuLogger.startLogger(DISPOSE_ON_CLOSE, parent); + parent.statusPanel.update("Ready...", 0); } else if (e.getSource() == updateDefinition) { BareBonesBrowserLaunch.openURL(ECU_DEFS_URL);