// Copyright 2004-2014 Jim Voris
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
package com.qumasoft.guitools.compare;
import com.qumasoft.guitools.AbstractQVCSCommandDialog;
/**
* Compare properties dialog.
* @author Jim Voris
*/
public class ComparePropertiesDialog extends AbstractQVCSCommandDialog {
private static final long serialVersionUID = 6792924991944348758L;
private final CompareProperties compareProperties;
/**
* Create new compare properties dialog.
* @param parent the parent frame.
* @param compareProps the compare properties.
*/
public ComparePropertiesDialog(java.awt.Frame parent, CompareProperties compareProps) {
super(parent, true);
compareProperties = compareProps;
initComponents();
populateComponents();
center();
}
/** 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.
*/
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
ignoreAllWhiteSpaceCheckBox = new javax.swing.JCheckBox();
ignoreCaseCheckBox = new javax.swing.JCheckBox();
ignoreLeadingWhiteSpaceCheckBox = new javax.swing.JCheckBox();
ignoreEOLChangesCheckBox = new javax.swing.JCheckBox();
okButton = new javax.swing.JButton();
cancelButton = new javax.swing.JButton();
setTitle("Compare Properties");
setResizable(false);
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent evt) {
formWindowClosing(evt);
}
});
ignoreAllWhiteSpaceCheckBox.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
ignoreAllWhiteSpaceCheckBox.setText("Ignore all white space");
ignoreAllWhiteSpaceCheckBox.setToolTipText("Enable to ignore all changes in white space.");
ignoreAllWhiteSpaceCheckBox.setMargin(new java.awt.Insets(0, 0, 0, 0));
ignoreCaseCheckBox.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
ignoreCaseCheckBox.setText("Ignore case");
ignoreCaseCheckBox.setToolTipText("Enable to ignore changes in case.");
ignoreCaseCheckBox.setMargin(new java.awt.Insets(0, 0, 0, 0));
ignoreLeadingWhiteSpaceCheckBox.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
ignoreLeadingWhiteSpaceCheckBox.setText("Ignore leading white space");
ignoreLeadingWhiteSpaceCheckBox.setToolTipText("Enable to ignore any changes in leading white space");
ignoreLeadingWhiteSpaceCheckBox.setMargin(new java.awt.Insets(0, 0, 0, 0));
ignoreEOLChangesCheckBox.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
ignoreEOLChangesCheckBox.setText("Ignore End-Of-Line differences");
ignoreEOLChangesCheckBox.setToolTipText("Enable to ignore any changes in End-Of-Line characters (CR/LF vs. LF).");
ignoreEOLChangesCheckBox.setMargin(new java.awt.Insets(0, 0, 0, 0));
okButton.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
okButton.setText("OK");
okButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
okButtonActionPerformed(evt);
}
});
cancelButton.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
cancelButton.setText("Cancel");
cancelButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cancelButtonActionPerformed(evt);
}
});
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(ignoreAllWhiteSpaceCheckBox)
.add(ignoreCaseCheckBox)
.add(ignoreLeadingWhiteSpaceCheckBox)
.add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
.add(okButton, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 87, Short.MAX_VALUE)
.add(18, 18, 18)
.add(cancelButton, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 93, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(ignoreEOLChangesCheckBox))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(ignoreAllWhiteSpaceCheckBox)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(ignoreCaseCheckBox)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(ignoreLeadingWhiteSpaceCheckBox)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(ignoreEOLChangesCheckBox)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(cancelButton)
.add(okButton))
.addContainerGap())
);
ignoreEOLChangesCheckBox.getAccessibleContext().setAccessibleDescription("Enable to ignore any changes in end-of-line character (CR/LF or LF).");
pack();
}// </editor-fold>//GEN-END:initComponents
private void cancelButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_cancelButtonActionPerformed
{//GEN-HEADEREND:event_cancelButtonActionPerformed
formWindowClosing(null);
}//GEN-LAST:event_cancelButtonActionPerformed
private void okButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_okButtonActionPerformed
{//GEN-HEADEREND:event_okButtonActionPerformed
saveDialogSettings();
formWindowClosing(null);
}//GEN-LAST:event_okButtonActionPerformed
private void formWindowClosing(java.awt.event.WindowEvent evt)//GEN-FIRST:event_formWindowClosing
{//GEN-HEADEREND:event_formWindowClosing
setVisible(false);
}//GEN-LAST:event_formWindowClosing
private void populateComponents() {
if (compareProperties.getIgnoreAllWhitespace()) {
ignoreAllWhiteSpaceCheckBox.setSelected(true);
}
if (compareProperties.getIgnoreCase()) {
ignoreCaseCheckBox.setSelected(true);
}
if (compareProperties.getIgnoreLeadingWhitespace()) {
ignoreLeadingWhiteSpaceCheckBox.setSelected(true);
}
if (compareProperties.getIgnoreEOLChanges()) {
ignoreEOLChangesCheckBox.setSelected(true);
}
}
private void saveDialogSettings() {
if (ignoreAllWhiteSpaceCheckBox.isSelected()) {
compareProperties.setIgnoreAllWhitespace(true);
} else {
compareProperties.setIgnoreAllWhitespace(false);
}
if (ignoreCaseCheckBox.isSelected()) {
compareProperties.setIgnoreCase(true);
} else {
compareProperties.setIgnoreCase(false);
}
if (ignoreLeadingWhiteSpaceCheckBox.isSelected()) {
compareProperties.setIgnoreLeadingWhitespace(true);
} else {
compareProperties.setIgnoreLeadingWhitespace(false);
}
if (ignoreEOLChangesCheckBox.isSelected()) {
compareProperties.setIgnoreEOLChanges(true);
} else {
compareProperties.setIgnoreEOLChanges(false);
}
compareProperties.saveProperties();
}
@Override
public void dismissDialog() {
cancelButtonActionPerformed(null);
}
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton cancelButton;
private javax.swing.JCheckBox ignoreAllWhiteSpaceCheckBox;
private javax.swing.JCheckBox ignoreCaseCheckBox;
private javax.swing.JCheckBox ignoreEOLChangesCheckBox;
private javax.swing.JCheckBox ignoreLeadingWhiteSpaceCheckBox;
private javax.swing.JButton okButton;
// End of variables declaration//GEN-END:variables
}