mirror of https://github.com/rusefi/RomRaider.git
Updated popup windows to now use the top level RomRaider icon instead of the default Java icon.
This commit is contained in:
parent
74a3a49f5f
commit
05b825395e
|
@ -22,46 +22,46 @@ package com.romraider.swing;
|
|||
import java.awt.Color;
|
||||
import java.awt.Component;
|
||||
import java.awt.Cursor;
|
||||
import java.awt.Image;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.util.Vector;
|
||||
|
||||
import javax.swing.DefaultListModel;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JComboBox;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JList;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.ListCellRenderer;
|
||||
import javax.swing.ListSelectionModel;
|
||||
import javax.swing.border.EmptyBorder;
|
||||
import javax.swing.border.EtchedBorder;
|
||||
|
||||
import com.romraider.maps.Rom;
|
||||
import com.romraider.maps.Table;
|
||||
|
||||
import javax.swing.border.EtchedBorder;
|
||||
import javax.swing.DefaultListModel;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JList;
|
||||
import javax.swing.JComboBox;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.ListCellRenderer;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.ListSelectionModel;
|
||||
|
||||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.ActionEvent;
|
||||
|
||||
public class CompareImagesForm extends JFrame implements ActionListener {
|
||||
|
||||
private static final long serialVersionUID = -8937472127815934398L;
|
||||
private Vector<Rom> roms;
|
||||
private JPanel contentPane;
|
||||
private JComboBox comboBoxImageLeft;
|
||||
private JComboBox comboBoxImageRight;
|
||||
private JButton btnCompare;
|
||||
private JList listChanges;
|
||||
private DefaultListModel listModelChanges = new DefaultListModel();
|
||||
private ChangeListCellRenderer changeRenderer = new ChangeListCellRenderer();
|
||||
private JScrollPane scrollPaneResults;
|
||||
private JLabel lblImageResultString;
|
||||
private final Vector<Rom> roms;
|
||||
private final JPanel contentPane;
|
||||
private final JComboBox comboBoxImageLeft;
|
||||
private final JComboBox comboBoxImageRight;
|
||||
private final JButton btnCompare;
|
||||
private final JList listChanges;
|
||||
private final DefaultListModel listModelChanges = new DefaultListModel();
|
||||
private final ChangeListCellRenderer changeRenderer = new ChangeListCellRenderer();
|
||||
private final JScrollPane scrollPaneResults;
|
||||
private final JLabel lblImageResultString;
|
||||
public static Color equal = new Color(52,114,53);
|
||||
public static Color different = new Color(193, 27, 23);
|
||||
public static Color missing = new Color(251,185,23);
|
||||
|
||||
public CompareImagesForm(Vector<Rom> roms) {
|
||||
|
||||
public CompareImagesForm(Vector<Rom> roms, Image parentImage) {
|
||||
this.setIconImage(parentImage);
|
||||
setResizable(false);
|
||||
this.roms = roms;
|
||||
|
||||
|
@ -71,63 +71,63 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
this.contentPane = new JPanel();
|
||||
this.contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
|
||||
setContentPane(this.contentPane);
|
||||
|
||||
|
||||
JLabel lblSelectImages = new JLabel("Selected Images");
|
||||
lblSelectImages.setBounds(10, 11, 79, 14);
|
||||
|
||||
|
||||
contentPane.setLayout(null);
|
||||
|
||||
|
||||
JPanel panelImageSelector = new JPanel();
|
||||
panelImageSelector.setBounds(10, 36, 574, 94);
|
||||
panelImageSelector.setBorder(new EtchedBorder(EtchedBorder.LOWERED, null, null));
|
||||
panelImageSelector.setLayout(null);
|
||||
|
||||
|
||||
JLabel lblImageLeft = new JLabel("Image (Left):");
|
||||
lblImageLeft.setBounds(10, 10, 70, 14);
|
||||
panelImageSelector.add(lblImageLeft);
|
||||
|
||||
|
||||
this.comboBoxImageLeft = new JComboBox();
|
||||
this.comboBoxImageLeft.setBounds(89, 7, 475, 20);
|
||||
this.comboBoxImageLeft.setToolTipText("Select an image to compare.");
|
||||
this.comboBoxImageLeft.setRenderer( new ComboBoxRenderer() );
|
||||
panelImageSelector.add(this.comboBoxImageLeft);
|
||||
|
||||
|
||||
JLabel lblImageRight = new JLabel("Image (Right):");
|
||||
lblImageRight.setBounds(10, 35, 70, 14);
|
||||
panelImageSelector.add(lblImageRight);
|
||||
|
||||
|
||||
this.comboBoxImageRight = new JComboBox();
|
||||
this.comboBoxImageRight.setBounds(89, 32, 475, 20);
|
||||
this.comboBoxImageRight.setToolTipText("Select an image to compare.");
|
||||
this.comboBoxImageRight.setRenderer( new ComboBoxRenderer() );
|
||||
panelImageSelector.add(this.comboBoxImageRight);
|
||||
|
||||
|
||||
this.btnCompare = new JButton("Compare");
|
||||
this.btnCompare.addActionListener(this);
|
||||
this.btnCompare.setBounds(10, 64, 89, 23);
|
||||
panelImageSelector.add(this.btnCompare);
|
||||
this.contentPane.add(panelImageSelector);
|
||||
this.contentPane.add(lblSelectImages);
|
||||
|
||||
|
||||
JLabel lblResults = new JLabel("Results:");
|
||||
lblResults.setBounds(10, 141, 46, 14);
|
||||
contentPane.add(lblResults);
|
||||
|
||||
|
||||
lblImageResultString = new JLabel("Compare images...");
|
||||
lblImageResultString.setBounds(66, 141, 518, 14);
|
||||
contentPane.add(lblImageResultString);
|
||||
scrollPaneResults = new JScrollPane();
|
||||
scrollPaneResults.setBounds(10, 166, 574, 245);
|
||||
contentPane.add(scrollPaneResults);
|
||||
|
||||
|
||||
this.listChanges = new JList(this.listModelChanges);
|
||||
scrollPaneResults.setViewportView(this.listChanges);
|
||||
listChanges.setCellRenderer(changeRenderer);
|
||||
listChanges.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
|
||||
|
||||
|
||||
populateComboBoxes();
|
||||
}
|
||||
|
||||
|
||||
public void populateComboBoxes()
|
||||
{
|
||||
for(int i=0; i<roms.size(); i++) {
|
||||
|
@ -139,25 +139,25 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
comboBoxImageRight.setSelectedIndex(1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void compareTables(Rom left, Rom right)
|
||||
{
|
||||
listModelChanges.clear();
|
||||
|
||||
Vector<Table> leftTables = left.getTables();
|
||||
Vector<Table> rightTables = right.getTables();
|
||||
|
||||
|
||||
int equal = 0;
|
||||
int different = 0;
|
||||
int missing = 0;
|
||||
|
||||
|
||||
String leftTableName;
|
||||
String rightTableName;
|
||||
String leftTableAsString;
|
||||
String rightTableAsString;
|
||||
Boolean found = false;
|
||||
|
||||
// Compare the tables.
|
||||
|
||||
// Compare the tables.
|
||||
for(int x=0;x<leftTables.size();x++) {
|
||||
found = false;
|
||||
leftTableName = leftTables.get(x).getName().trim().toLowerCase();
|
||||
|
@ -185,7 +185,7 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
listModelChanges.addElement(new ListItem(3, leftTables.get(x).getName()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Check if rightTables has tables that do not exist in left table.
|
||||
for(int x=0;x<rightTables.size();x++) {
|
||||
found = false;
|
||||
|
@ -199,10 +199,10 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
}
|
||||
if(!found) {
|
||||
missing++;
|
||||
listModelChanges.addElement(new ListItem(3, rightTables.get(x).getName()));
|
||||
listModelChanges.addElement(new ListItem(3, rightTables.get(x).getName()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Fill out the result string.
|
||||
if(equal > 0 && different == 0 && missing == 0) {
|
||||
lblImageResultString.setText("Images are equal.");
|
||||
|
@ -213,8 +213,8 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
} else {
|
||||
lblImageResultString.setText("Images are NOT equal. Equal Tables: "+equal+", Changed Tables: "+different+", Missing Tables: "+missing);
|
||||
lblImageResultString.setForeground(CompareImagesForm.missing);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Check if the list has items.
|
||||
if(listModelChanges.size() < 1)
|
||||
{
|
||||
|
@ -223,25 +223,25 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
lblImageResultString.setForeground(Color.RED);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
// Add list items for 0 counts.
|
||||
if(equal == 0)
|
||||
{
|
||||
listModelChanges.addElement(new ListItem(1, "No Equal Tables."));
|
||||
listModelChanges.addElement(new ListItem(1, "No Equal Tables."));
|
||||
}
|
||||
|
||||
|
||||
if(different == 0)
|
||||
{
|
||||
listModelChanges.addElement(new ListItem(2, "No Changed Tables."));
|
||||
}
|
||||
|
||||
|
||||
if(missing == 0)
|
||||
{
|
||||
listModelChanges.addElement(new ListItem(3, "No Missing Tables."));
|
||||
listModelChanges.addElement(new ListItem(3, "No Missing Tables."));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
this.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
|
||||
|
@ -258,7 +258,7 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
}
|
||||
this.setCursor(Cursor.getDefaultCursor());
|
||||
}
|
||||
|
||||
|
||||
class ComboBoxRenderer extends JLabel implements ListCellRenderer
|
||||
{
|
||||
|
||||
|
@ -273,7 +273,7 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
@Override
|
||||
public Component getListCellRendererComponent(JList list, Object value,
|
||||
int index, boolean isSelected, boolean cellHasFocus) {
|
||||
|
||||
|
||||
if(isSelected) {
|
||||
setBackground(list.getSelectionBackground());
|
||||
setForeground(list.getSelectionForeground());
|
||||
|
@ -281,7 +281,7 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
setBackground(list.getBackground());
|
||||
setForeground(list.getForeground());
|
||||
}
|
||||
|
||||
|
||||
if(value != null)
|
||||
{
|
||||
// Set the text to the rom file name.
|
||||
|
@ -290,20 +290,20 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
setFont(list.getFont());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
class ChangeListCellRenderer extends JLabel implements ListCellRenderer {
|
||||
|
||||
private static final long serialVersionUID = -3645192077787635239L;
|
||||
|
||||
|
||||
public ChangeListCellRenderer()
|
||||
{
|
||||
setOpaque(true);
|
||||
setHorizontalAlignment(LEFT);
|
||||
setVerticalAlignment(CENTER);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Component getListCellRendererComponent(JList paramList, Object value,
|
||||
int index, boolean isSelected, boolean cellHasFocus) {
|
||||
|
@ -314,56 +314,56 @@ public class CompareImagesForm extends JFrame implements ActionListener {
|
|||
} else {
|
||||
setBackground(paramList.getBackground());
|
||||
}
|
||||
|
||||
|
||||
// Set the foreground color based on the item type.
|
||||
ListItem item = (ListItem)value;
|
||||
switch(item.getType()) {
|
||||
case 1:
|
||||
// equal - default green
|
||||
setForeground(CompareImagesForm.equal);
|
||||
break;
|
||||
case 2:
|
||||
// different - default red
|
||||
setForeground(CompareImagesForm.different);
|
||||
break;
|
||||
case 3:
|
||||
// missing - default yellow
|
||||
setForeground(CompareImagesForm.missing);
|
||||
break;
|
||||
default:
|
||||
setForeground(paramList.getForeground());
|
||||
break;
|
||||
case 1:
|
||||
// equal - default green
|
||||
setForeground(CompareImagesForm.equal);
|
||||
break;
|
||||
case 2:
|
||||
// different - default red
|
||||
setForeground(CompareImagesForm.different);
|
||||
break;
|
||||
case 3:
|
||||
// missing - default yellow
|
||||
setForeground(CompareImagesForm.missing);
|
||||
break;
|
||||
default:
|
||||
setForeground(paramList.getForeground());
|
||||
break;
|
||||
}
|
||||
setText(item.getValue());
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
class ListItem {
|
||||
|
||||
|
||||
private int type;
|
||||
private String value;
|
||||
|
||||
|
||||
public ListItem(int type, String value) {
|
||||
this.type = type;
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
|
||||
public int getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
|
||||
public void setType(int type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,15 +19,17 @@
|
|||
|
||||
package com.romraider.swing;
|
||||
|
||||
import com.romraider.editor.ecu.ECUEditor;
|
||||
import javax.swing.JFileChooser;
|
||||
import javax.swing.ListSelectionModel;
|
||||
import java.awt.Font;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.io.File;
|
||||
import java.util.Vector;
|
||||
|
||||
import javax.swing.JFileChooser;
|
||||
import javax.swing.ListSelectionModel;
|
||||
|
||||
import com.romraider.editor.ecu.ECUEditor;
|
||||
|
||||
public class DefinitionManager extends javax.swing.JFrame implements ActionListener {
|
||||
|
||||
private static final long serialVersionUID = -3920843496218196737L;
|
||||
|
@ -38,6 +40,7 @@ public class DefinitionManager extends javax.swing.JFrame implements ActionListe
|
|||
Vector<String> fileNames;
|
||||
|
||||
public DefinitionManager(ECUEditor parent) {
|
||||
this.setIconImage(parent.getIconImage());
|
||||
initComponents();
|
||||
this.parent = parent;
|
||||
initSettings();
|
||||
|
@ -108,39 +111,39 @@ public class DefinitionManager extends javax.swing.JFrame implements ActionListe
|
|||
getContentPane().setLayout(layout);
|
||||
layout.setHorizontalGroup(
|
||||
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
|
||||
.add(layout.createSequentialGroup()
|
||||
.add(layout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
|
||||
.add(jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 448, Short.MAX_VALUE)
|
||||
.add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
|
||||
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
|
||||
.add(layout.createSequentialGroup()
|
||||
.add(btnSave)
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnApply)
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnUndo)
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnCancel))
|
||||
.add(layout.createSequentialGroup()
|
||||
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
|
||||
.add(defLabel)
|
||||
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
|
||||
.add(layout.createSequentialGroup()
|
||||
.add(btnMoveDown)
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnMoveUp)))
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 80, Short.MAX_VALUE)
|
||||
.add(btnAddDefinition)))
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnRemoveDefinition)))
|
||||
.addContainerGap())
|
||||
);
|
||||
.add(btnSave)
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnApply)
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnUndo)
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnCancel))
|
||||
.add(layout.createSequentialGroup()
|
||||
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
|
||||
.add(defLabel)
|
||||
.add(layout.createSequentialGroup()
|
||||
.add(btnMoveDown)
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnMoveUp)))
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 80, Short.MAX_VALUE)
|
||||
.add(btnAddDefinition)))
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(btnRemoveDefinition)))
|
||||
.addContainerGap())
|
||||
);
|
||||
|
||||
layout.linkSize(new java.awt.Component[]{btnAddDefinition, btnMoveDown, btnMoveUp, btnRemoveDefinition}, org.jdesktop.layout.GroupLayout.HORIZONTAL);
|
||||
|
||||
layout.setVerticalGroup(
|
||||
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
|
||||
.add(layout.createSequentialGroup()
|
||||
.add(layout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.add(defLabel)
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
|
@ -151,17 +154,18 @@ public class DefinitionManager extends javax.swing.JFrame implements ActionListe
|
|||
.add(btnMoveDown)
|
||||
.add(btnRemoveDefinition, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 23, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
|
||||
.add(btnAddDefinition))
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
|
||||
.add(btnSave)
|
||||
.add(btnApply)
|
||||
.add(btnUndo)
|
||||
.add(btnCancel))
|
||||
.addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
|
||||
);
|
||||
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
|
||||
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
|
||||
.add(btnSave)
|
||||
.add(btnApply)
|
||||
.add(btnUndo)
|
||||
.add(btnCancel))
|
||||
.addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
|
||||
);
|
||||
pack();
|
||||
}// </editor-fold>//GEN-END:initComponents
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
if (e.getSource() == btnCancel) {
|
||||
dispose();
|
||||
|
|
|
@ -307,7 +307,7 @@ public class ECUEditorMenuBar extends JMenuBar implements ActionListener {
|
|||
form.setVisible(true);
|
||||
|
||||
} else if (e.getSource() == compareImages){
|
||||
CompareImagesForm form = new CompareImagesForm(parent.getImages());
|
||||
CompareImagesForm form = new CompareImagesForm(parent.getImages(), parent.getIconImage());
|
||||
form.setLocationRelativeTo(parent);
|
||||
form.setVisible(true);
|
||||
|
||||
|
|
|
@ -54,6 +54,7 @@ public class SettingsForm extends JFrame implements MouseListener {
|
|||
ECUEditor parent;
|
||||
|
||||
public SettingsForm(ECUEditor parent) {
|
||||
this.setIconImage(parent.getIconImage());
|
||||
this.parent = parent;
|
||||
settings = parent.getSettings();
|
||||
initComponents();
|
||||
|
|
Loading…
Reference in New Issue