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
This commit is contained in:
Dale Schultz 2011-10-07 13:51:22 +00:00
parent 540e93d8e6
commit 35e4629243
4 changed files with 48 additions and 46 deletions

View File

@ -90,7 +90,7 @@ public class ECUEditor extends AbstractFrame {
private RomTreeRootNode imageRoot = new RomTreeRootNode("Open Images"); private RomTreeRootNode imageRoot = new RomTreeRootNode("Open Images");
private RomTree imageList = new RomTree(imageRoot); private RomTree imageList = new RomTree(imageRoot);
public MDIDesktopPane rightPanel = new MDIDesktopPane(); public MDIDesktopPane rightPanel = new MDIDesktopPane();
private JProgressPane statusPanel = new JProgressPane(); public JProgressPane statusPanel = new JProgressPane();
private JSplitPane splitPane = new JSplitPane(); private JSplitPane splitPane = new JSplitPane();
private Rom lastSelectedRom = null; private Rom lastSelectedRom = null;
private ECUEditorToolBar toolBar; private ECUEditorToolBar toolBar;

View File

@ -276,29 +276,47 @@ public final class EcuLogger extends AbstractFrame implements MessageListener {
private void construct(Settings settings) { private void construct(Settings settings) {
checkNotNull(settings); checkNotNull(settings);
this.settings = settings; this.settings = settings;
JProgressBar progressBar = startbar();
Logger.getRootLogger().setLevel((Level) Level.toLevel(settings.getLoggerDebuggingLevel())); Logger.getRootLogger().setLevel((Level) Level.toLevel(settings.getLoggerDebuggingLevel()));
bootstrap(); if (ecuEditor == null) {
progressBar.setValue(20); JProgressBar progressBar = startbar();
startText.setText(" Loading ECU Defs..."); bootstrap();
loadEcuDefs(); progressBar.setValue(20);
progressBar.setValue(40); startText.setText(" Loading ECU Defs...");
startText.setText(" Loading Plugins..."); loadEcuDefs();
progressBar.setIndeterminate(true); progressBar.setValue(40);
loadLoggerPlugins(); startText.setText(" Loading Plugins...");
progressBar.setIndeterminate(false); progressBar.setIndeterminate(true);
progressBar.setValue(60); loadLoggerPlugins();
startText.setText(" Loading ECU Parameters..."); progressBar.setIndeterminate(false);
loadLoggerParams(); progressBar.setValue(60);
progressBar.setValue(80); startText.setText(" Loading ECU Parameters...");
startText.setText(" Starting Logger..."); loadLoggerParams();
initControllerListeners(); progressBar.setValue(80);
progressBar.setValue(100); startText.setText(" Starting Logger...");
initUserInterface(); initControllerListeners();
startStatus.dispose(); initUserInterface();
initDataUpdateHandlers(); progressBar.setValue(100);
startPortRefresherThread(); initDataUpdateHandlers();
if (!isLogging()) startLogging(); 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() { private void bootstrap() {
@ -1055,7 +1073,7 @@ public final class EcuLogger extends AbstractFrame implements MessageListener {
private Component buildLogToFileButton() { private Component buildLogToFileButton() {
logToFileButton = new JToggleButton("Log to file", new ImageIcon("./graphics/logger_log_to_file.png")); 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.setPreferredSize(new Dimension(100, 25));
logToFileButton.setOpaque(true); logToFileButton.setOpaque(true);
logToFileButton.setBackground(Color.GREEN); 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)); logToFileButton.getActionMap().put("toggleFileLogging", new ToggleButtonAction(this, logToFileButton));
return logToFileButton; return logToFileButton;
} }
@ -1401,12 +1419,7 @@ public final class EcuLogger extends AbstractFrame implements MessageListener {
} }
private JProgressBar startbar() { private JProgressBar startbar() {
if (ecuEditor != null) { startStatus = new JDialog();
startStatus = new JDialog(getActiveFrame());
}
else {
startStatus = new JDialog();
}
startStatus.setAlwaysOnTop(true); startStatus.setAlwaysOnTop(true);
startStatus.setUndecorated(true); startStatus.setUndecorated(true);
startStatus.setLocation((int)(settings.getLoggerWindowSize().getWidth()/2 + settings.getLoggerWindowLocation().getX()), startStatus.setLocation((int)(settings.getLoggerWindowSize().getWidth()/2 + settings.getLoggerWindowLocation().getX()),
@ -1424,20 +1437,7 @@ public final class EcuLogger extends AbstractFrame implements MessageListener {
return progressBar; 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) { public static void startLogger(int defaultCloseOperation, ECUEditor ecuEditor) {

View File

@ -90,7 +90,7 @@ public class EcuLoggerMenuBar extends JMenuBar {
// settings menu items // settings menu items
JMenu settingsMenu = new Menu("Settings", VK_S); 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 MenuItem("Log File Output Location...", new LogFileLocationAction(logger), VK_O, getKeyStroke(VK_O, CTRL_MASK)));
settingsMenu.add(new JSeparator()); 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())); settingsMenu.add(new RadioButtonMenuItem("Control File Logging With Defogger Switch", VK_C, getKeyStroke(VK_C, CTRL_MASK), new LogFileControllerSwitchAction(logger), logger.getSettings().isFileLoggingControllerSwitchActive()));

View File

@ -288,7 +288,9 @@ public class ECUEditorMenuBar extends JMenuBar implements ActionListener {
parent.setUserLevel(5); parent.setUserLevel(5);
} else if (e.getSource() == openLogger) { } else if (e.getSource() == openLogger) {
parent.statusPanel.update("Launching Logger...", 10);
EcuLogger.startLogger(DISPOSE_ON_CLOSE, parent); EcuLogger.startLogger(DISPOSE_ON_CLOSE, parent);
parent.statusPanel.update("Ready...", 0);
} else if (e.getSource() == updateDefinition) { } else if (e.getSource() == updateDefinition) {
BareBonesBrowserLaunch.openURL(ECU_DEFS_URL); BareBonesBrowserLaunch.openURL(ECU_DEFS_URL);