/*
* The MIT License
*
* Copyright 2013 Andreas Giemza.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
package de.andreasgiemza.jgeagle.panels;
import de.andreasgiemza.jgeagle.options.Options;
import de.andreasgiemza.jgeagle.repo.rcs.JGit;
import java.awt.Color;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import javax.swing.JColorChooser;
import javax.swing.JDialog;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.SpinnerNumberModel;
import org.eclipse.jgit.api.errors.GitAPIException;
/**
*
* @author Andreas Giemza
*/
public class PreferencesPanel extends javax.swing.JPanel {
private final JDialog jDialog;
private final Options options;
/**
* Creates new form OptionsPanel
*
* @param jDialog
* @param options
*/
public PreferencesPanel(JDialog jDialog, Options options) {
initComponents();
this.jDialog = jDialog;
this.options = options;
loadOptions();
}
private void loadOptions() {
eagleBinaryTextField.setText(options.getPropEagleBinary());
eagleSchematicBackgroundTextField.setText(options.getPropSchematicBackground());
eagleSchematicBackgroundPanel.setBackground(Color.decode(options.getPropSchematicBackground()));
eagleBoardBackgroundTextField.setText(options.getPropBoardBackground());
eagleBoardBackgroundPanel.setBackground(Color.decode(options.getPropBoardBackground()));
diffImageSchematicDpiSpinner.setModel(new SpinnerNumberModel(options.getPropSchematicDpiAsInt(), 50, 600, 50));
diffImageUnchangedSchematicAlphaSpinner.setModel(new SpinnerNumberModel(options.getPropUnchangedSchematicAlphaAsDouble(), 0, 1, 0.01));
diffImageBoardDpiSpinner.setModel(new SpinnerNumberModel(options.getPropBoardDpiAsInt(), 50, 600, 50));
diffImageUnchangedBoardAlphaSpinner.setModel(new SpinnerNumberModel(options.getPropUnchangedBoardAlphaAsDouble(), 0, 1, 0.01));
diffImageAddedElementTextField.setText(options.getPropAddedElementColor());
diffImageAddedElementPanel.setBackground(Color.decode(options.getPropAddedElementColor()));
diffImageRemovedElementTextField.setText(options.getPropRemovedElementColor());
diffImageRemovedElementPanel.setBackground(Color.decode(options.getPropRemovedElementColor()));
diffImageUndefinedTextField.setText(options.getPropUndefinedColor());
diffImageUndefinedPanel.setBackground(Color.decode(options.getPropUndefinedColor()));
layersTopTextField.setText(options.getPropLayersTop());
layersOtherTextField.setText(options.getPropLayersOther());
layersBottomTextField.setText(options.getPropLayersBottom());
presetRepoTextField.setText(options.getPropPresetRepo());
gitFollowCheckBox.setSelected(options.getPropFollowGitAsBoolean());
}
private void close() {
jDialog.dispose();
jDialog.setVisible(false);
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
eagleBinaryFileChooser = new javax.swing.JFileChooser();
repositoryFileChooser = new javax.swing.JFileChooser();
eaglePanel = new javax.swing.JPanel();
eagleBinaryLabel = new javax.swing.JLabel();
eagleBinaryTextField = new javax.swing.JTextField();
eagleBinaryButton = new javax.swing.JButton();
eagleSchematicBackgroundLabel = new javax.swing.JLabel();
eagleSchematicBackgroundTextField = new javax.swing.JTextField();
eagleSchematicBackgroundPanel = new javax.swing.JPanel();
eagleSchematicBackgroundButton = new javax.swing.JButton();
eagleBoardBackgroundLabel = new javax.swing.JLabel();
eagleBoardBackgroundTextField = new javax.swing.JTextField();
eagleBoardBackgroundPanel = new javax.swing.JPanel();
eagleBoardBackgroundButton = new javax.swing.JButton();
diffImagePanel = new javax.swing.JPanel();
diffImageSchematicDpiLabel = new javax.swing.JLabel();
diffImageSchematicDpiSpinner = new javax.swing.JSpinner();
diffImageUnchangedSchematicAlphaLabel = new javax.swing.JLabel();
diffImageUnchangedSchematicAlphaSpinner = new javax.swing.JSpinner();
diffImageBoardDpiLabel = new javax.swing.JLabel();
diffImageBoardDpiSpinner = new javax.swing.JSpinner();
diffImageUnchangedBoardAlphaLabel = new javax.swing.JLabel();
diffImageUnchangedBoardAlphaSpinner = new javax.swing.JSpinner();
diffImageAddedElementLabel = new javax.swing.JLabel();
diffImageAddedElementTextField = new javax.swing.JTextField();
diffImageAddedElementPanel = new javax.swing.JPanel();
diffImageAddedElementButton = new javax.swing.JButton();
diffImageRemovedElementLabel = new javax.swing.JLabel();
diffImageRemovedElementTextField = new javax.swing.JTextField();
diffImageRemovedElementPanel = new javax.swing.JPanel();
diffImageRemovedElementButton = new javax.swing.JButton();
diffImageUndefinedLabel = new javax.swing.JLabel();
diffImageUndefinedTextField = new javax.swing.JTextField();
diffImageUndefinedPanel = new javax.swing.JPanel();
diffImageUndefinedButton = new javax.swing.JButton();
layersPanel = new javax.swing.JPanel();
layersTopLabel = new javax.swing.JLabel();
layersTopTextField = new javax.swing.JTextField();
layersOtherLabel = new javax.swing.JLabel();
layersOtherTextField = new javax.swing.JTextField();
layersBottomLabel = new javax.swing.JLabel();
layersBottomTextField = new javax.swing.JTextField();
presetRepoPanel = new javax.swing.JPanel();
presetRepoTextField = new javax.swing.JTextField();
presetRepoButton = new javax.swing.JButton();
gitPanel = new javax.swing.JPanel();
gitFollowCheckBox = new javax.swing.JCheckBox();
saveButton = new javax.swing.JButton();
cancelButton = new javax.swing.JButton();
eagleBinaryFileChooser.setDialogTitle("Select eagle binary ...");
repositoryFileChooser.setFileSelectionMode(javax.swing.JFileChooser.DIRECTORIES_ONLY);
eaglePanel.setBorder(javax.swing.BorderFactory.createTitledBorder("Eagle"));
eagleBinaryLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
eagleBinaryLabel.setText("Binary");
eagleBinaryTextField.setEditable(false);
eagleBinaryButton.setText("Select");
eagleBinaryButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
eagleBinaryButtonActionPerformed(evt);
}
});
eagleSchematicBackgroundLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
eagleSchematicBackgroundLabel.setText("Schematic background");
eagleSchematicBackgroundTextField.setEditable(false);
eagleSchematicBackgroundPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
javax.swing.GroupLayout eagleSchematicBackgroundPanelLayout = new javax.swing.GroupLayout(eagleSchematicBackgroundPanel);
eagleSchematicBackgroundPanel.setLayout(eagleSchematicBackgroundPanelLayout);
eagleSchematicBackgroundPanelLayout.setHorizontalGroup(
eagleSchematicBackgroundPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
eagleSchematicBackgroundPanelLayout.setVerticalGroup(
eagleSchematicBackgroundPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
eagleSchematicBackgroundButton.setText("Choose");
eagleSchematicBackgroundButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
eagleSchematicBackgroundButtonActionPerformed(evt);
}
});
eagleBoardBackgroundLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
eagleBoardBackgroundLabel.setText("Board background");
eagleBoardBackgroundTextField.setEditable(false);
eagleBoardBackgroundPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
javax.swing.GroupLayout eagleBoardBackgroundPanelLayout = new javax.swing.GroupLayout(eagleBoardBackgroundPanel);
eagleBoardBackgroundPanel.setLayout(eagleBoardBackgroundPanelLayout);
eagleBoardBackgroundPanelLayout.setHorizontalGroup(
eagleBoardBackgroundPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
eagleBoardBackgroundPanelLayout.setVerticalGroup(
eagleBoardBackgroundPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
eagleBoardBackgroundButton.setText("Choose");
eagleBoardBackgroundButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
eagleBoardBackgroundButtonActionPerformed(evt);
}
});
javax.swing.GroupLayout eaglePanelLayout = new javax.swing.GroupLayout(eaglePanel);
eaglePanel.setLayout(eaglePanelLayout);
eaglePanelLayout.setHorizontalGroup(
eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, eaglePanelLayout.createSequentialGroup()
.addGap(0, 0, 0)
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(eagleBinaryLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 133, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(eagleSchematicBackgroundLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE)
.addComponent(eagleBoardBackgroundLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(eagleBinaryTextField)
.addGroup(eaglePanelLayout.createSequentialGroup()
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(eagleSchematicBackgroundTextField)
.addComponent(eagleBoardBackgroundTextField))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(eagleBoardBackgroundPanel, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(eagleSchematicBackgroundPanel, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(eagleBoardBackgroundButton, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(eagleSchematicBackgroundButton, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(eagleBinaryButton, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 100, Short.MAX_VALUE)))
);
eaglePanelLayout.setVerticalGroup(
eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(eaglePanelLayout.createSequentialGroup()
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(eagleBinaryButton)
.addComponent(eagleBinaryTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(eagleBinaryLabel))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(eagleSchematicBackgroundButton)
.addComponent(eagleSchematicBackgroundPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(eagleSchematicBackgroundTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(eagleSchematicBackgroundLabel)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(eagleBoardBackgroundButton)
.addComponent(eagleBoardBackgroundPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(eaglePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(eagleBoardBackgroundTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(eagleBoardBackgroundLabel))))
);
diffImagePanel.setBorder(javax.swing.BorderFactory.createTitledBorder("Diff image"));
diffImageSchematicDpiLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
diffImageSchematicDpiLabel.setText("Schematic DPI");
diffImageUnchangedSchematicAlphaLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
diffImageUnchangedSchematicAlphaLabel.setText("Unchanged schematic alpha");
diffImageBoardDpiLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
diffImageBoardDpiLabel.setText("Board DPI");
diffImageUnchangedBoardAlphaLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
diffImageUnchangedBoardAlphaLabel.setText("Unchanged board alpha");
diffImageAddedElementLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
diffImageAddedElementLabel.setText("Added elements");
diffImageAddedElementTextField.setEditable(false);
diffImageAddedElementPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
javax.swing.GroupLayout diffImageAddedElementPanelLayout = new javax.swing.GroupLayout(diffImageAddedElementPanel);
diffImageAddedElementPanel.setLayout(diffImageAddedElementPanelLayout);
diffImageAddedElementPanelLayout.setHorizontalGroup(
diffImageAddedElementPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
diffImageAddedElementPanelLayout.setVerticalGroup(
diffImageAddedElementPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
diffImageAddedElementButton.setText("Choose");
diffImageAddedElementButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
diffImageAddedElementButtonActionPerformed(evt);
}
});
diffImageRemovedElementLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
diffImageRemovedElementLabel.setText("Removed elements");
diffImageRemovedElementTextField.setEditable(false);
diffImageRemovedElementPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
javax.swing.GroupLayout diffImageRemovedElementPanelLayout = new javax.swing.GroupLayout(diffImageRemovedElementPanel);
diffImageRemovedElementPanel.setLayout(diffImageRemovedElementPanelLayout);
diffImageRemovedElementPanelLayout.setHorizontalGroup(
diffImageRemovedElementPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
diffImageRemovedElementPanelLayout.setVerticalGroup(
diffImageRemovedElementPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
diffImageRemovedElementButton.setText("Choose");
diffImageRemovedElementButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
diffImageRemovedElementButtonActionPerformed(evt);
}
});
diffImageUndefinedLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
diffImageUndefinedLabel.setText("Undefined");
diffImageUndefinedTextField.setEditable(false);
diffImageUndefinedPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
javax.swing.GroupLayout diffImageUndefinedPanelLayout = new javax.swing.GroupLayout(diffImageUndefinedPanel);
diffImageUndefinedPanel.setLayout(diffImageUndefinedPanelLayout);
diffImageUndefinedPanelLayout.setHorizontalGroup(
diffImageUndefinedPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
diffImageUndefinedPanelLayout.setVerticalGroup(
diffImageUndefinedPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 18, Short.MAX_VALUE)
);
diffImageUndefinedButton.setText("Choose");
diffImageUndefinedButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
diffImageUndefinedButtonActionPerformed(evt);
}
});
javax.swing.GroupLayout diffImagePanelLayout = new javax.swing.GroupLayout(diffImagePanel);
diffImagePanel.setLayout(diffImagePanelLayout);
diffImagePanelLayout.setHorizontalGroup(
diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(diffImagePanelLayout.createSequentialGroup()
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(diffImageRemovedElementLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(diffImageAddedElementLabel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(diffImageUnchangedBoardAlphaLabel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE)
.addComponent(diffImageBoardDpiLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(diffImageUndefinedLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGap(4, 4, 4)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(diffImagePanelLayout.createSequentialGroup()
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(diffImageRemovedElementTextField, javax.swing.GroupLayout.DEFAULT_SIZE, 339, Short.MAX_VALUE)
.addComponent(diffImageUndefinedTextField, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(diffImageAddedElementTextField, javax.swing.GroupLayout.Alignment.TRAILING))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(diffImageRemovedElementPanel, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(diffImageAddedElementPanel, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(diffImageUndefinedPanel, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(diffImageAddedElementButton, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 100, Short.MAX_VALUE)
.addComponent(diffImageRemovedElementButton, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(diffImageUndefinedButton, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addComponent(diffImageUnchangedBoardAlphaSpinner)
.addComponent(diffImageBoardDpiSpinner, javax.swing.GroupLayout.Alignment.LEADING)))
.addGroup(diffImagePanelLayout.createSequentialGroup()
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(diffImageUnchangedSchematicAlphaLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(diffImageSchematicDpiLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(diffImageSchematicDpiSpinner)
.addComponent(diffImageUnchangedSchematicAlphaSpinner)))
);
diffImagePanelLayout.setVerticalGroup(
diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(diffImagePanelLayout.createSequentialGroup()
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(diffImageSchematicDpiSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(diffImageSchematicDpiLabel))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(diffImageUnchangedSchematicAlphaSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(diffImageUnchangedSchematicAlphaLabel))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(diffImageBoardDpiSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(diffImageBoardDpiLabel))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(diffImageUnchangedBoardAlphaSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(diffImageUnchangedBoardAlphaLabel))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(diffImageAddedElementTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(diffImageAddedElementLabel))
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(diffImageAddedElementButton, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(diffImageAddedElementPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(diffImageRemovedElementPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(diffImageRemovedElementButton)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(diffImageRemovedElementLabel)
.addComponent(diffImageRemovedElementTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(diffImageUndefinedPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(diffImagePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(diffImageUndefinedLabel)
.addComponent(diffImageUndefinedTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(diffImageUndefinedButton)))
);
layersPanel.setBorder(javax.swing.BorderFactory.createTitledBorder("Layers"));
layersTopLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
layersTopLabel.setText("Top");
layersTopTextField.setText("17 18 19 20 21 23 25 51");
layersOtherLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
layersOtherLabel.setText("Other");
layersOtherTextField.setText("17 18 19 20");
layersBottomLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
layersBottomLabel.setText("Bottom");
layersBottomTextField.setText("17 18 19 20 22 24 26 52");
javax.swing.GroupLayout layersPanelLayout = new javax.swing.GroupLayout(layersPanel);
layersPanel.setLayout(layersPanelLayout);
layersPanelLayout.setHorizontalGroup(
layersPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layersPanelLayout.createSequentialGroup()
.addGroup(layersPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(layersTopLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE)
.addComponent(layersBottomLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(layersOtherLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layersPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(layersBottomTextField)
.addComponent(layersOtherTextField)
.addComponent(layersTopTextField)))
);
layersPanelLayout.setVerticalGroup(
layersPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layersPanelLayout.createSequentialGroup()
.addGroup(layersPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(layersTopTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(layersTopLabel))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layersPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(layersOtherLabel)
.addComponent(layersOtherTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layersPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(layersBottomLabel)
.addComponent(layersBottomTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
);
presetRepoPanel.setBorder(javax.swing.BorderFactory.createTitledBorder("Preset repository"));
presetRepoTextField.setEditable(false);
presetRepoButton.setText("Select");
presetRepoButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
presetRepoButtonActionPerformed(evt);
}
});
javax.swing.GroupLayout presetRepoPanelLayout = new javax.swing.GroupLayout(presetRepoPanel);
presetRepoPanel.setLayout(presetRepoPanelLayout);
presetRepoPanelLayout.setHorizontalGroup(
presetRepoPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, presetRepoPanelLayout.createSequentialGroup()
.addComponent(presetRepoTextField)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(presetRepoButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE))
);
presetRepoPanelLayout.setVerticalGroup(
presetRepoPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(presetRepoPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(presetRepoButton)
.addComponent(presetRepoTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
);
gitPanel.setBorder(javax.swing.BorderFactory.createTitledBorder("Git"));
gitFollowCheckBox.setText("Continue listing the history of a file beyond renames.");
javax.swing.GroupLayout gitPanelLayout = new javax.swing.GroupLayout(gitPanel);
gitPanel.setLayout(gitPanelLayout);
gitPanelLayout.setHorizontalGroup(
gitPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(gitFollowCheckBox, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
gitPanelLayout.setVerticalGroup(
gitPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(gitFollowCheckBox)
);
saveButton.setText("Save");
saveButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
saveButtonActionPerformed(evt);
}
});
cancelButton.setText("Cancel");
cancelButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cancelButtonActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(layersPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(eaglePanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(diffImagePanel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(saveButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(cancelButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(gitPanel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(presetRepoPanel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(eaglePanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(diffImagePanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(layersPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(presetRepoPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(gitPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(cancelButton)
.addComponent(saveButton))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
}// </editor-fold>//GEN-END:initComponents
private void eagleBinaryButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_eagleBinaryButtonActionPerformed
int returnVal = eagleBinaryFileChooser.showOpenDialog(this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File eagleBinary = eagleBinaryFileChooser.getSelectedFile();
if (eagleBinary.exists()) {
eagleBinaryTextField.setText(eagleBinaryFileChooser.getSelectedFile().toString());
} else {
JOptionPane.showMessageDialog(this,
"Please select a valid eagle binary!",
"Eagle binary doesn't exist!",
JOptionPane.ERROR_MESSAGE);
}
}
}//GEN-LAST:event_eagleBinaryButtonActionPerformed
private void diffImageAddedElementButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_diffImageAddedElementButtonActionPerformed
Color color
= JColorChooser.showDialog(this,
"Choose color for added elements ...",
Color.decode(diffImageAddedElementTextField.getText()));
if (color != null) {
diffImageAddedElementTextField.setText("#" + Integer.toHexString(color.getRGB()).substring(2, 8));
diffImageAddedElementPanel.setBackground(color);
}
}//GEN-LAST:event_diffImageAddedElementButtonActionPerformed
private void diffImageUndefinedButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_diffImageUndefinedButtonActionPerformed
Color color = JColorChooser.showDialog(
this,
"Choose color for undedined ...",
Color.decode(diffImageUndefinedTextField.getText()));
if (color != null) {
diffImageUndefinedTextField.setText("#" + Integer.toHexString(color.getRGB()).substring(2, 8));
diffImageUndefinedPanel.setBackground(color);
}
}//GEN-LAST:event_diffImageUndefinedButtonActionPerformed
private void diffImageRemovedElementButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_diffImageRemovedElementButtonActionPerformed
Color color = JColorChooser.showDialog(
this,
"Choose color for removed elements ...",
Color.decode(diffImageRemovedElementTextField.getText()));
if (color != null) {
diffImageRemovedElementTextField.setText("#" + Integer.toHexString(color.getRGB()).substring(2, 8));
diffImageRemovedElementPanel.setBackground(color);
}
}//GEN-LAST:event_diffImageRemovedElementButtonActionPerformed
private void saveButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_saveButtonActionPerformed
options.save(
eagleBinaryTextField.getText(),
eagleSchematicBackgroundTextField.getText(),
eagleBoardBackgroundTextField.getText(),
diffImageSchematicDpiSpinner.getValue().toString(),
diffImageUnchangedSchematicAlphaSpinner.getValue().toString(),
diffImageBoardDpiSpinner.getValue().toString(),
diffImageUnchangedBoardAlphaSpinner.getValue().toString(),
diffImageAddedElementTextField.getText(),
diffImageRemovedElementTextField.getText(),
diffImageUndefinedTextField.getText(),
layersTopTextField.getText(),
layersOtherTextField.getText(),
layersBottomTextField.getText(),
presetRepoTextField.getText(),
gitFollowCheckBox.isSelected());
close();
}//GEN-LAST:event_saveButtonActionPerformed
private void cancelButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cancelButtonActionPerformed
close();
}//GEN-LAST:event_cancelButtonActionPerformed
private void eagleSchematicBackgroundButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_eagleSchematicBackgroundButtonActionPerformed
Color color
= JColorChooser.showDialog(this,
"Choose color for schematic background ...",
Color.decode(eagleSchematicBackgroundTextField.getText()));
if (color != null) {
eagleSchematicBackgroundTextField.setText("#" + Integer.toHexString(color.getRGB()).substring(2, 8));
eagleSchematicBackgroundPanel.setBackground(color);
}
}//GEN-LAST:event_eagleSchematicBackgroundButtonActionPerformed
private void eagleBoardBackgroundButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_eagleBoardBackgroundButtonActionPerformed
Color color
= JColorChooser.showDialog(this,
"Choose color for board background ...",
Color.decode(eagleBoardBackgroundTextField.getText()));
if (color != null) {
eagleBoardBackgroundTextField.setText("#" + Integer.toHexString(color.getRGB()).substring(2, 8));
eagleBoardBackgroundPanel.setBackground(color);
}
}//GEN-LAST:event_eagleBoardBackgroundButtonActionPerformed
private void presetRepoButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_presetRepoButtonActionPerformed
int returnVal = repositoryFileChooser.showOpenDialog(this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
try {
Path repoDirectory = repositoryFileChooser.getSelectedFile().toPath().resolve(".git");
if (Files.exists(repoDirectory)) {
JGit jGit = new JGit(repoDirectory);
} else {
throw new IOException();
}
} catch (IOException | GitAPIException ex) {
JOptionPane.showMessageDialog(this,
"Please select a valid git repository!",
"Not a valid git repository!",
JOptionPane.ERROR_MESSAGE);
return;
}
presetRepoTextField.setText(repositoryFileChooser.getSelectedFile().toString());
}
}//GEN-LAST:event_presetRepoButtonActionPerformed
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton cancelButton;
private javax.swing.JButton diffImageAddedElementButton;
private javax.swing.JLabel diffImageAddedElementLabel;
private javax.swing.JPanel diffImageAddedElementPanel;
private javax.swing.JTextField diffImageAddedElementTextField;
private javax.swing.JLabel diffImageBoardDpiLabel;
private javax.swing.JSpinner diffImageBoardDpiSpinner;
private javax.swing.JPanel diffImagePanel;
private javax.swing.JButton diffImageRemovedElementButton;
private javax.swing.JLabel diffImageRemovedElementLabel;
private javax.swing.JPanel diffImageRemovedElementPanel;
private javax.swing.JTextField diffImageRemovedElementTextField;
private javax.swing.JLabel diffImageSchematicDpiLabel;
private javax.swing.JSpinner diffImageSchematicDpiSpinner;
private javax.swing.JLabel diffImageUnchangedBoardAlphaLabel;
private javax.swing.JSpinner diffImageUnchangedBoardAlphaSpinner;
private javax.swing.JLabel diffImageUnchangedSchematicAlphaLabel;
private javax.swing.JSpinner diffImageUnchangedSchematicAlphaSpinner;
private javax.swing.JButton diffImageUndefinedButton;
private javax.swing.JLabel diffImageUndefinedLabel;
private javax.swing.JPanel diffImageUndefinedPanel;
private javax.swing.JTextField diffImageUndefinedTextField;
private javax.swing.JButton eagleBinaryButton;
private javax.swing.JFileChooser eagleBinaryFileChooser;
private javax.swing.JLabel eagleBinaryLabel;
private javax.swing.JTextField eagleBinaryTextField;
private javax.swing.JButton eagleBoardBackgroundButton;
private javax.swing.JLabel eagleBoardBackgroundLabel;
private javax.swing.JPanel eagleBoardBackgroundPanel;
private javax.swing.JTextField eagleBoardBackgroundTextField;
private javax.swing.JPanel eaglePanel;
private javax.swing.JButton eagleSchematicBackgroundButton;
private javax.swing.JLabel eagleSchematicBackgroundLabel;
private javax.swing.JPanel eagleSchematicBackgroundPanel;
private javax.swing.JTextField eagleSchematicBackgroundTextField;
private javax.swing.JCheckBox gitFollowCheckBox;
private javax.swing.JPanel gitPanel;
private javax.swing.JLabel layersBottomLabel;
private javax.swing.JTextField layersBottomTextField;
private javax.swing.JLabel layersOtherLabel;
private javax.swing.JTextField layersOtherTextField;
private javax.swing.JPanel layersPanel;
private javax.swing.JLabel layersTopLabel;
private javax.swing.JTextField layersTopTextField;
private javax.swing.JButton presetRepoButton;
private javax.swing.JPanel presetRepoPanel;
private javax.swing.JTextField presetRepoTextField;
private javax.swing.JFileChooser repositoryFileChooser;
private javax.swing.JButton saveButton;
// End of variables declaration//GEN-END:variables
}