auto-sync

This commit is contained in:
rusEfi 2015-03-10 19:04:56 -05:00
parent 8ba727489c
commit 2eb436d060
8 changed files with 112 additions and 106 deletions

View File

@ -66,7 +66,6 @@ import javax.swing.tree.TreePath;
import org.w3c.dom.Document; import org.w3c.dom.Document;
import org.xml.sax.InputSource; import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException; import org.xml.sax.SAXParseException;
import com.romraider.Settings; import com.romraider.Settings;
@ -86,7 +85,7 @@ import com.romraider.xml.DOMRomUnmarshaller;
import com.romraider.xml.RomNotFoundException; import com.romraider.xml.RomNotFoundException;
import com.sun.org.apache.xerces.internal.parsers.DOMParser; import com.sun.org.apache.xerces.internal.parsers.DOMParser;
public class ECUEditor extends AbstractFrame { public class ECUEditor {
private static final long serialVersionUID = -7826850987392016292L; private static final long serialVersionUID = -7826850987392016292L;
private final String titleText = PRODUCT_NAME + " v" + VERSION + " | ECU Editor"; private final String titleText = PRODUCT_NAME + " v" + VERSION + " | ECU Editor";
@ -107,16 +106,56 @@ public class ECUEditor extends AbstractFrame {
private LaunchLoggerWorker launchLoggerWorker; private LaunchLoggerWorker launchLoggerWorker;
private final ImageIcon editorIcon = new ImageIcon(getClass().getResource("/graphics/romraider-ico.gif"), "RomRaider ECU Editor"); private final ImageIcon editorIcon = new ImageIcon(getClass().getResource("/graphics/romraider-ico.gif"), "RomRaider ECU Editor");
AbstractFrame frame = new AbstractFrame() {
@Override
public void windowClosing(WindowEvent e) {
handleExit();
}
@Override
public void windowOpened(WindowEvent e) {
}
@Override
public void windowClosed(WindowEvent e) {
}
@Override
public void windowIconified(WindowEvent e) {
}
@Override
public void windowDeiconified(WindowEvent e) {
}
@Override
public void windowActivated(WindowEvent e) {
}
@Override
public void windowDeactivated(WindowEvent e) {
}
@Override
public void propertyChange(PropertyChangeEvent evt) {
imageList.updateUI();
imageList.repaint();
rightPanel.updateUI();
rightPanel.repaint();
}
};
public ECUEditor() { public ECUEditor() {
Settings settings = SettingsManager.getSettings(); Settings settings = SettingsManager.getSettings();
if (!settings.getRecentVersion().equalsIgnoreCase(VERSION)) { if (!settings.getRecentVersion().equalsIgnoreCase(VERSION)) {
showReleaseNotes(); showReleaseNotes();
} }
setSize(settings.getWindowSize()); frame.setSize(settings.getWindowSize());
setLocation(settings.getWindowLocation()); frame.setLocation(settings.getWindowLocation());
if (settings.isWindowMaximized()) { if (settings.isWindowMaximized()) {
setExtendedState(MAXIMIZED_BOTH); frame.setExtendedState(AbstractFrame.MAXIMIZED_BOTH);
} }
JScrollPane rightScrollPane = new JScrollPane(rightPanel, JScrollPane rightScrollPane = new JScrollPane(rightPanel,
@ -127,23 +166,23 @@ public class ECUEditor extends AbstractFrame {
splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftScrollPane, rightScrollPane); splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftScrollPane, rightScrollPane);
splitPane.setDividerSize(3); splitPane.setDividerSize(3);
splitPane.setDividerLocation(settings.getSplitPaneLocation()); splitPane.setDividerLocation(settings.getSplitPaneLocation());
splitPane.addPropertyChangeListener(this); splitPane.addPropertyChangeListener(frame);
splitPane.setContinuousLayout(true); splitPane.setContinuousLayout(true);
getContentPane().add(splitPane); frame.getContentPane().add(splitPane);
rightPanel.setBackground(Color.BLACK); rightPanel.setBackground(Color.BLACK);
imageList.setScrollsOnExpand(true); imageList.setScrollsOnExpand(true);
this.add(statusPanel, BorderLayout.SOUTH); frame.add(statusPanel, BorderLayout.SOUTH);
//set remaining window properties //set remaining window properties
setIconImage(editorIcon.getImage()); frame.setIconImage(editorIcon.getImage());
setDefaultCloseOperation(EXIT_ON_CLOSE); frame.setDefaultCloseOperation(AbstractFrame.EXIT_ON_CLOSE);
addWindowListener(this); frame.addWindowListener(frame);
setTitle(titleText); frame.setTitle(titleText);
setVisible(true); frame.setVisible(true);
toFront(); frame.toFront();
} }
public static void openImage(byte[] input, File definitionFile, String fileName) throws Exception { public static void openImage(byte[] input, File definitionFile, String fileName) throws Exception {
@ -185,7 +224,7 @@ public class ECUEditor extends AbstractFrame {
public void initializeEditorUI() { public void initializeEditorUI() {
//create menubar //create menubar
menuBar = new ECUEditorMenuBar(); menuBar = new ECUEditorMenuBar();
this.setJMenuBar(menuBar); frame.setJMenuBar(menuBar);
// create toolbars // create toolbars
toolBar = new ECUEditorToolBar("Editor Tools"); toolBar = new ECUEditorToolBar("Editor Tools");
@ -200,8 +239,8 @@ public class ECUEditor extends AbstractFrame {
toolBarPanel.add(tableToolBar); toolBarPanel.add(tableToolBar);
toolBarPanel.setVisible(true); toolBarPanel.setVisible(true);
this.add(toolBarPanel, BorderLayout.NORTH); frame.add(toolBarPanel, BorderLayout.NORTH);
validate(); frame.validate();
} }
public void checkDefinitions() { public void checkDefinitions() {
@ -219,7 +258,7 @@ public class ECUEditor extends AbstractFrame {
if (answer == 0) { if (answer == 0) {
// BrowserControl.displayURL(ECU_DEFS_URL); // BrowserControl.displayURL(ECU_DEFS_URL);
} else { } else {
showMessageDialog(this, showMessageDialog(frame,
"ECU definition files need to be configured before ROM images can be opened.\nMenu: ECU Definitions > ECU Definition Manager...", "ECU definition files need to be configured before ROM images can be opened.\nMenu: ECU Definitions > ECU Definition Manager...",
"Editor Configuration", "Editor Configuration",
INFORMATION_MESSAGE); INFORMATION_MESSAGE);
@ -248,7 +287,7 @@ public class ECUEditor extends AbstractFrame {
JScrollPane scroller = new JScrollPane(releaseNotes, VERTICAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_NEVER); JScrollPane scroller = new JScrollPane(releaseNotes, VERTICAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_NEVER);
scroller.setPreferredSize(new Dimension(600, 500)); scroller.setPreferredSize(new Dimension(600, 500));
showMessageDialog(this, scroller, showMessageDialog(frame, scroller,
PRODUCT_NAME + VERSION + " Release Notes", INFORMATION_MESSAGE); PRODUCT_NAME + VERSION + " Release Notes", INFORMATION_MESSAGE);
} finally { } finally {
br.close(); br.close();
@ -261,43 +300,14 @@ public class ECUEditor extends AbstractFrame {
public void handleExit() { public void handleExit() {
Settings settings = SettingsManager.getSettings(); Settings settings = SettingsManager.getSettings();
settings.setSplitPaneLocation(splitPane.getDividerLocation()); settings.setSplitPaneLocation(splitPane.getDividerLocation());
settings.setWindowMaximized(getExtendedState() == MAXIMIZED_BOTH); settings.setWindowMaximized(frame.getExtendedState() == frame.MAXIMIZED_BOTH);
settings.setWindowSize(getSize()); settings.setWindowSize(frame.getSize());
settings.setWindowLocation(getLocation()); settings.setWindowLocation(frame.getLocation());
// Save when exit to save file settings. // Save when exit to save file settings.
SettingsManager.save(settings, statusPanel); SettingsManager.save(settings, statusPanel);
statusPanel.update("Ready...", 0); statusPanel.update("Ready...", 0);
repaint(); frame.repaint();
}
@Override
public void windowClosing(WindowEvent e) {
handleExit();
}
@Override
public void windowOpened(WindowEvent e) {
}
@Override
public void windowClosed(WindowEvent e) {
}
@Override
public void windowIconified(WindowEvent e) {
}
@Override
public void windowDeiconified(WindowEvent e) {
}
@Override
public void windowActivated(WindowEvent e) {
}
@Override
public void windowDeactivated(WindowEvent e) {
} }
public String getVersion() { public String getVersion() {
@ -346,7 +356,7 @@ public class ECUEditor extends AbstractFrame {
}); });
infoPanel.add(check); infoPanel.add(check);
showMessageDialog(this, infoPanel, "ECU Revision is Obsolete", INFORMATION_MESSAGE); showMessageDialog(frame, infoPanel, "ECU Revision is Obsolete", INFORMATION_MESSAGE);
} }
} }
@ -405,7 +415,7 @@ public class ECUEditor extends AbstractFrame {
} }
public void closeImage() { public void closeImage() {
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); frame.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
closeImageWorker = new CloseImageWorker(getLastSelectedRom()); closeImageWorker = new CloseImageWorker(getLastSelectedRom());
closeImageWorker.addPropertyChangeListener(getStatusPanel()); closeImageWorker.addPropertyChangeListener(getStatusPanel());
closeImageWorker.execute(); closeImageWorker.execute();
@ -429,9 +439,9 @@ public class ECUEditor extends AbstractFrame {
public void setLastSelectedRom(Rom lastSelectedRom) { public void setLastSelectedRom(Rom lastSelectedRom) {
this.lastSelectedRom = lastSelectedRom; this.lastSelectedRom = lastSelectedRom;
if (lastSelectedRom == null) { if (lastSelectedRom == null) {
setTitle(titleText); frame.setTitle(titleText);
} else { } else {
setTitle(titleText + " - " + lastSelectedRom.getFileName()); frame.setTitle(titleText + " - " + lastSelectedRom.getFileName());
} }
} }
@ -456,7 +466,7 @@ public class ECUEditor extends AbstractFrame {
} }
public void setUserLevel(int userLevel) { public void setUserLevel(int userLevel) {
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); frame.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
SettingsManager.getSettings().setUserLevel(userLevel); SettingsManager.getSettings().setUserLevel(userLevel);
setUserLevelWorker = new SetUserLevelWorker(); setUserLevelWorker = new SetUserLevelWorker();
setUserLevelWorker.addPropertyChangeListener(getStatusPanel()); setUserLevelWorker.addPropertyChangeListener(getStatusPanel());
@ -476,14 +486,6 @@ public class ECUEditor extends AbstractFrame {
return images; return images;
} }
@Override
public void propertyChange(PropertyChangeEvent evt) {
imageList.updateUI();
imageList.repaint();
rightPanel.updateUI();
rightPanel.repaint();
}
public void refreshUI() public void refreshUI()
{ {
getToolBar().updateButtons(); getToolBar().updateButtons();
@ -507,7 +509,7 @@ public class ECUEditor extends AbstractFrame {
} }
public void openImage(File inputFile) throws Exception { public void openImage(File inputFile) throws Exception {
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); frame.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
openImageWorker = new OpenImageWorker(inputFile); openImageWorker = new OpenImageWorker(inputFile);
openImageWorker.addPropertyChangeListener(getStatusPanel()); openImageWorker.addPropertyChangeListener(getStatusPanel());
openImageWorker.execute(); openImageWorker.execute();
@ -526,7 +528,7 @@ public class ECUEditor extends AbstractFrame {
} }
public void launchLogger() { public void launchLogger() {
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); frame.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
// launchLoggerWorker = new LaunchLoggerWorker(); // launchLoggerWorker = new LaunchLoggerWorker();
// launchLoggerWorker.addPropertyChangeListener(getStatusPanel()); // launchLoggerWorker.addPropertyChangeListener(getStatusPanel());
// launchLoggerWorker.execute(); // launchLoggerWorker.execute();
@ -547,6 +549,10 @@ public class ECUEditor extends AbstractFrame {
public MDIDesktopPane getRightPanel() { public MDIDesktopPane getRightPanel() {
return this.rightPanel; return this.rightPanel;
} }
public AbstractFrame getFrame() {
return frame;
}
} }
class LaunchLoggerWorker extends SwingWorker<Void, Void> { class LaunchLoggerWorker extends SwingWorker<Void, Void> {
@ -577,7 +583,7 @@ class LaunchLoggerWorker extends SwingWorker<Void, Void> {
ECUEditor editor = ECUEditorManager.getECUEditor(); ECUEditor editor = ECUEditorManager.getECUEditor();
editor.getStatusPanel().setStatus("Ready..."); editor.getStatusPanel().setStatus("Ready...");
setProgress(0); setProgress(0);
editor.setCursor(null); editor.frame.setCursor(null);
editor.refreshUI(); editor.refreshUI();
} }
} }
@ -609,7 +615,7 @@ class SetUserLevelWorker extends SwingWorker<Void, Void> {
ECUEditor editor = ECUEditorManager.getECUEditor(); ECUEditor editor = ECUEditorManager.getECUEditor();
editor.getStatusPanel().setStatus("Ready..."); editor.getStatusPanel().setStatus("Ready...");
setProgress(0); setProgress(0);
editor.setCursor(null); editor.frame.setCursor(null);
editor.refreshUI(); editor.refreshUI();
} }
} }
@ -647,7 +653,7 @@ class CloseImageWorker extends SwingWorker<Void, Void> {
ECUEditor editor = ECUEditorManager.getECUEditor(); ECUEditor editor = ECUEditorManager.getECUEditor();
editor.getStatusPanel().setStatus("Ready..."); editor.getStatusPanel().setStatus("Ready...");
setProgress(0); setProgress(0);
editor.setCursor(null); editor.frame.setCursor(null);
editor.refreshUI(); editor.refreshUI();
System.gc(); System.gc();
} }
@ -690,23 +696,23 @@ class OpenImageWorker extends SwingWorker<Void, Void> {
} }
// if code executes to this point, no ROM was found, report to user // if code executes to this point, no ROM was found, report to user
showMessageDialog(editor, "ECU Definition Not Found", "Error Loading " + inputFile.getName(), ERROR_MESSAGE); showMessageDialog(editor.frame, "ECU Definition Not Found", "Error Loading " + inputFile.getName(), ERROR_MESSAGE);
} catch (SAXParseException spe) { } catch (SAXParseException spe) {
// catch general parsing exception - enough people don't unzip the defs that a better error message is in order // catch general parsing exception - enough people don't unzip the defs that a better error message is in order
showMessageDialog(editor, "Unable to read XML definitions. Please make sure the definition file is correct. If it is in a ZIP archive, unzip the file and try again.", "Error Loading " + inputFile.getName(), ERROR_MESSAGE); showMessageDialog(editor.frame, "Unable to read XML definitions. Please make sure the definition file is correct. If it is in a ZIP archive, unzip the file and try again.", "Error Loading " + inputFile.getName(), ERROR_MESSAGE);
} catch (StackOverflowError ex) { } catch (StackOverflowError ex) {
// handles looped inheritance, which will use up all available memory // handles looped inheritance, which will use up all available memory
showMessageDialog(editor, "Looped \"base\" attribute in XML definitions.", "Error Loading " + inputFile.getName(), ERROR_MESSAGE); showMessageDialog(editor.frame, "Looped \"base\" attribute in XML definitions.", "Error Loading " + inputFile.getName(), ERROR_MESSAGE);
} catch (OutOfMemoryError ome) { } catch (OutOfMemoryError ome) {
// handles Java heap space issues when loading multiple Roms. // handles Java heap space issues when loading multiple Roms.
showMessageDialog(editor, "Error loading Image. Out of memeory.", "Error Loading " + inputFile.getName(), ERROR_MESSAGE); showMessageDialog(editor.frame, "Error loading Image. Out of memeory.", "Error Loading " + inputFile.getName(), ERROR_MESSAGE);
} catch (Exception ex) { } catch (Exception ex) {
ex.printStackTrace(); ex.printStackTrace();
showMessageDialog(editor, "Error Loading. Unknown Exception.", "Error Loading " + inputFile.getName(), ERROR_MESSAGE); showMessageDialog(editor.frame, "Error Loading. Unknown Exception.", "Error Loading " + inputFile.getName(), ERROR_MESSAGE);
} }
return null; return null;
} }
@ -726,7 +732,7 @@ class OpenImageWorker extends SwingWorker<Void, Void> {
ECUEditor editor = ECUEditorManager.getECUEditor(); ECUEditor editor = ECUEditorManager.getECUEditor();
editor.getStatusPanel().setStatus("Ready..."); editor.getStatusPanel().setStatus("Ready...");
setProgress(0); setProgress(0);
editor.setCursor(null); editor.frame.setCursor(null);
editor.refreshUI(); editor.refreshUI();
System.gc(); System.gc();
} }

View File

@ -1030,7 +1030,7 @@ public abstract class Table extends JPanel implements Serializable {
ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
} }
ECUEditorManager.getECUEditor().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ECUEditorManager.getECUEditor().getFrame().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
copySelectionWorker = new CopySelectionWorker(this); copySelectionWorker = new CopySelectionWorker(this);
copySelectionWorker.execute(); copySelectionWorker.execute();
@ -1052,7 +1052,7 @@ public abstract class Table extends JPanel implements Serializable {
if(null != ancestorWindow) { if(null != ancestorWindow) {
ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
} }
ECUEditorManager.getECUEditor().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ECUEditorManager.getECUEditor().getFrame().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
copyTableWorker = new CopyTableWorker(this); copyTableWorker = new CopyTableWorker(this);
copyTableWorker.execute(); copyTableWorker.execute();
@ -1446,7 +1446,7 @@ class CopySelectionWorker extends SwingWorker<Void, Void> {
ancestorWindow.setCursor(null); ancestorWindow.setCursor(null);
} }
table.setCursor(null); table.setCursor(null);
ECUEditorManager.getECUEditor().setCursor(null); ECUEditorManager.getECUEditor().getFrame().setCursor(null);
} }
} }
@ -1473,6 +1473,6 @@ class CopyTableWorker extends SwingWorker<Void, Void> {
ancestorWindow.setCursor(null); ancestorWindow.setCursor(null);
} }
table.setCursor(null); table.setCursor(null);
ECUEditorManager.getECUEditor().setCursor(null); ECUEditorManager.getECUEditor().getFrame().setCursor(null);
} }
} }

View File

@ -249,7 +249,7 @@ public class Table2D extends Table {
if(null != ancestorWindow) { if(null != ancestorWindow) {
ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
} }
ECUEditorManager.getECUEditor().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ECUEditorManager.getECUEditor().getFrame().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
super.copySelection(); super.copySelection();
copySelection2DWorker = new CopySelection2DWorker(this); copySelection2DWorker = new CopySelection2DWorker(this);
@ -262,7 +262,7 @@ public class Table2D extends Table {
if(null != ancestorWindow) { if(null != ancestorWindow) {
ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
} }
ECUEditorManager.getECUEditor().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ECUEditorManager.getECUEditor().getFrame().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
copyTable2DWorker = new CopyTable2DWorker(this); copyTable2DWorker = new CopyTable2DWorker(this);
copyTable2DWorker.execute(); copyTable2DWorker.execute();
@ -473,7 +473,7 @@ class CopySelection2DWorker extends SwingWorker<Void, Void> {
ancestorWindow.setCursor(null); ancestorWindow.setCursor(null);
} }
table.setCursor(null); table.setCursor(null);
ECUEditorManager.getECUEditor().setCursor(null); ECUEditorManager.getECUEditor().getFrame().setCursor(null);
} }
} }
@ -504,6 +504,6 @@ class CopyTable2DWorker extends SwingWorker<Void, Void> {
ancestorWindow.setCursor(null); ancestorWindow.setCursor(null);
} }
table.setCursor(null); table.setCursor(null);
ECUEditorManager.getECUEditor().setCursor(null); ECUEditorManager.getECUEditor().getFrame().setCursor(null);
} }
} }

View File

@ -676,7 +676,7 @@ public class Table3D extends Table {
if(null != ancestorWindow) { if(null != ancestorWindow) {
ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
} }
ECUEditorManager.getECUEditor().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ECUEditorManager.getECUEditor().getFrame().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
copySelection3DWorker = new CopySelection3DWorker(this); copySelection3DWorker = new CopySelection3DWorker(this);
copySelection3DWorker.execute(); copySelection3DWorker.execute();
@ -689,7 +689,7 @@ public class Table3D extends Table {
if(null != ancestorWindow) { if(null != ancestorWindow) {
ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ancestorWindow.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
} }
ECUEditorManager.getECUEditor().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ECUEditorManager.getECUEditor().getFrame().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
copyTable3DWorker = new CopyTable3DWorker(this); copyTable3DWorker = new CopyTable3DWorker(this);
copyTable3DWorker.execute(); copyTable3DWorker.execute();
@ -1109,7 +1109,7 @@ class CopySelection3DWorker extends SwingWorker<Void, Void> {
ancestorWindow.setCursor(null); ancestorWindow.setCursor(null);
} }
table.setCursor(null); table.setCursor(null);
ECUEditorManager.getECUEditor().setCursor(null); ECUEditorManager.getECUEditor().getFrame().setCursor(null);
} }
} }
@ -1137,6 +1137,6 @@ class CopyTable3DWorker extends SwingWorker<Void, Void> {
ancestorWindow.setCursor(null); ancestorWindow.setCursor(null);
} }
table.setCursor(null); table.setCursor(null);
ECUEditorManager.getECUEditor().setCursor(null); ECUEditorManager.getECUEditor().getFrame().setCursor(null);
} }
} }

View File

@ -40,7 +40,7 @@ public class DefinitionManager extends javax.swing.JFrame implements ActionListe
Vector<String> fileNames; Vector<String> fileNames;
public DefinitionManager() { public DefinitionManager() {
this.setIconImage(ECUEditorManager.getECUEditor().getIconImage()); this.setIconImage(ECUEditorManager.getECUEditor().getFrame().getIconImage());
initComponents(); initComponents();
initSettings(); initSettings();
@ -61,10 +61,10 @@ public class DefinitionManager extends javax.swing.JFrame implements ActionListe
private void initSettings() { private void initSettings() {
// add definitions to list // add definitions to list
Vector<File> definitionFiles = SettingsManager.getSettings().getEcuDefinitionFiles(); Vector<File> definitionFiles = SettingsManager.getSettings().getEcuDefinitionFiles();
fileNames = new Vector<String>(); fileNames = new Vector<>();
for (int i = 0; i < definitionFiles.size(); i++) { for (File definitionFile : definitionFiles) {
fileNames.add(definitionFiles.get(i).getAbsolutePath()); fileNames.add(definitionFile.getAbsolutePath());
} }
updateListModel(); updateListModel();

View File

@ -339,17 +339,17 @@ public class ECUEditorMenuBar extends JMenuBar implements ActionListener {
//} else //} else
if (e.getSource() == romProperties) { if (e.getSource() == romProperties) {
showMessageDialog(parent, new RomPropertyPanel(parent.getLastSelectedRom()), showMessageDialog(parent.getFrame(), new RomPropertyPanel(parent.getLastSelectedRom()),
parent.getLastSelectedRom().getRomIDString() + " Properties", INFORMATION_MESSAGE); parent.getLastSelectedRom().getRomIDString() + " Properties", INFORMATION_MESSAGE);
} else if (e.getSource() == settings) { } else if (e.getSource() == settings) {
SettingsForm form = new SettingsForm(); SettingsForm form = new SettingsForm();
form.setLocationRelativeTo(parent); form.setLocationRelativeTo(parent.getFrame());
form.setVisible(true); form.setVisible(true);
} else if (e.getSource() == compareImages){ } else if (e.getSource() == compareImages){
CompareImagesForm form = new CompareImagesForm(parent.getImages(), parent.getIconImage()); CompareImagesForm form = new CompareImagesForm(parent.getImages(), parent.getFrame().getIconImage());
form.setLocationRelativeTo(parent); form.setLocationRelativeTo(parent.getFrame());
form.setVisible(true); form.setVisible(true);
} else if (e.getSource() == level1) { } else if (e.getSource() == level1) {
@ -382,7 +382,7 @@ public class ECUEditorMenuBar extends JMenuBar implements ActionListener {
+ "Build #: " + BUILDNUMBER + "\n" + "Build #: " + BUILDNUMBER + "\n"
+ SUPPORT_URL; + SUPPORT_URL;
String title = "About " + PRODUCT_NAME; String title = "About " + PRODUCT_NAME;
showMessageDialog(parent, message, title, INFORMATION_MESSAGE, ABOUT_ICON); showMessageDialog(parent.getFrame(), message, title, INFORMATION_MESSAGE, ABOUT_ICON);
} }
} }
@ -401,10 +401,10 @@ public class ECUEditorMenuBar extends JMenuBar implements ActionListener {
ECUEditor parent = ECUEditorManager.getECUEditor(); ECUEditor parent = ECUEditorManager.getECUEditor();
JFileChooser fc = new JFileChooser(SettingsManager.getSettings().getLastImageDir()); JFileChooser fc = new JFileChooser(SettingsManager.getSettings().getLastImageDir());
fc.setFileFilter(new ECUImageFilter()); fc.setFileFilter(new ECUImageFilter());
if (fc.showSaveDialog(parent) == JFileChooser.APPROVE_OPTION) { if (fc.showSaveDialog(parent.getFrame()) == JFileChooser.APPROVE_OPTION) {
File selectedFile = fc.getSelectedFile(); File selectedFile = fc.getSelectedFile();
if (selectedFile.exists()) { if (selectedFile.exists()) {
int option = showConfirmDialog(parent, selectedFile.getName() + " already exists! Overwrite?"); int option = showConfirmDialog(parent.getFrame(), selectedFile.getName() + " already exists! Overwrite?");
// option: 0 = Cancel, 1 = No // option: 0 = Cancel, 1 = No
if (option == CANCEL_OPTION || option == 1) { if (option == CANCEL_OPTION || option == 1) {
@ -438,10 +438,10 @@ public class ECUEditorMenuBar extends JMenuBar implements ActionListener {
// disable the "All files" option // disable the "All files" option
fc.setAcceptAllFileFilterUsed(false); fc.setAcceptAllFileFilterUsed(false);
if (fc.showSaveDialog(ECUEditorManager.getECUEditor()) == JFileChooser.APPROVE_OPTION) { if (fc.showSaveDialog(ECUEditorManager.getECUEditor().getFrame()) == JFileChooser.APPROVE_OPTION) {
File selectedDir = fc.getSelectedFile(); File selectedDir = fc.getSelectedFile();
if (selectedDir.exists()) { if (selectedDir.exists()) {
int option = showConfirmDialog(ECUEditorManager.getECUEditor(), selectedDir.getName() + " already exists! Overwrite?"); int option = showConfirmDialog(ECUEditorManager.getECUEditor().getFrame(), selectedDir.getName() + " already exists! Overwrite?");
// option: 0 = Cancel, 1 = No // option: 0 = Cancel, 1 = No
if (option == CANCEL_OPTION || option == 1) { if (option == CANCEL_OPTION || option == 1) {
@ -498,7 +498,7 @@ public class ECUEditorMenuBar extends JMenuBar implements ActionListener {
if(null != selectedFile){ if(null != selectedFile){
if(lastSelectedRom.getRealFileSize() != Settings.SIXTEENBIT_SMALL_SIZE) if(lastSelectedRom.getRealFileSize() != Settings.SIXTEENBIT_SMALL_SIZE)
{ {
showMessageDialog(ECUEditorManager.getECUEditor(), "Error converting image. Image size is invalid."); showMessageDialog(ECUEditorManager.getECUEditor().getFrame(), "Error converting image. Image size is invalid.");
} else { } else {
byte[] output = lastSelectedRom.saveFile(); byte[] output = lastSelectedRom.saveFile();
byte[] incOutput = new byte[Settings.SIXTEENBIT_LARGE_SIZE]; byte[] incOutput = new byte[Settings.SIXTEENBIT_LARGE_SIZE];
@ -521,7 +521,7 @@ public class ECUEditorMenuBar extends JMenuBar implements ActionListener {
if(null != selectedFile){ if(null != selectedFile){
if(lastSelectedRom.getRealFileSize() != Settings.SIXTEENBIT_LARGE_SIZE) if(lastSelectedRom.getRealFileSize() != Settings.SIXTEENBIT_LARGE_SIZE)
{ {
showMessageDialog(ECUEditorManager.getECUEditor(), "Error converting image. Image size is invalid."); showMessageDialog(ECUEditorManager.getECUEditor().getFrame(), "Error converting image. Image size is invalid.");
} else { } else {
byte[] output =lastSelectedRom.saveFile(); byte[] output =lastSelectedRom.saveFile();
byte[] decOutput = new byte[Settings.SIXTEENBIT_SMALL_SIZE]; byte[] decOutput = new byte[Settings.SIXTEENBIT_SMALL_SIZE];

View File

@ -59,7 +59,7 @@ public class SettingsForm extends JFrame implements MouseListener {
private static final long serialVersionUID = 3910602424260147767L; private static final long serialVersionUID = 3910602424260147767L;
public SettingsForm() { public SettingsForm() {
this.setIconImage(getEditor().getIconImage()); this.setIconImage(getEditor().getFrame().getIconImage());
initComponents(); initComponents();
initSettings(); initSettings();

View File

@ -369,7 +369,7 @@ public final class DOMRomUnmarshaller {
} catch (InvalidTableNameException ex) { // Table name is invalid, do nothing. } catch (InvalidTableNameException ex) { // Table name is invalid, do nothing.
} catch (NullPointerException ex) { } catch (NullPointerException ex) {
JOptionPane.showMessageDialog(ECUEditorManager.getECUEditor(), JOptionPane.showMessageDialog(ECUEditorManager.getECUEditor().getFrame(),
new DebugPanel(ex, SettingsManager.getSettings().getSupportURL()), "Exception", new DebugPanel(ex, SettingsManager.getSettings().getSupportURL()), "Exception",
JOptionPane.ERROR_MESSAGE); JOptionPane.ERROR_MESSAGE);
@ -581,7 +581,7 @@ public final class DOMRomUnmarshaller {
} catch (Exception ex) { } catch (Exception ex) {
JOptionPane.showMessageDialog( JOptionPane.showMessageDialog(
ECUEditorManager.getECUEditor(), ECUEditorManager.getECUEditor().getFrame(),
new DebugPanel(ex, SettingsManager.getSettings() new DebugPanel(ex, SettingsManager.getSettings()
.getSupportURL()), "Exception", .getSupportURL()), "Exception",
JOptionPane.ERROR_MESSAGE); JOptionPane.ERROR_MESSAGE);