/* * FileReplacePane.java * * Created on March 3, 2005, 12:18 PM */ package kiyut.swing.shell.util; import java.io.*; import java.util.Date; import java.text.DateFormat; import javax.swing.JOptionPane; import javax.swing.filechooser.FileSystemView; /** * * @author Kiyut */ public class FileReplacePane extends javax.swing.JPanel { /** Creates new FileReplacePane */ public FileReplacePane() { this(null,null,null); } public FileReplacePane(FileSystemView fsv, File file1, File file2) { initComponents(); if (fsv != null && file1 != null && file2 != null) { setInfo(fsv,file1,file2); } } /** 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. */ private void initComponents() {//GEN-BEGIN:initComponents java.awt.GridBagConstraints gridBagConstraints; jLabel2 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); jPanel1 = new javax.swing.JPanel(); icon1Label = new javax.swing.JLabel(); size1Label = new javax.swing.JLabel(); modified1Label = new javax.swing.JLabel(); jPanel2 = new javax.swing.JPanel(); icon2Label = new javax.swing.JLabel(); size2Label = new javax.swing.JLabel(); modified2Label = new javax.swing.JLabel(); jPanel3 = new javax.swing.JPanel(); jLabel1 = new javax.swing.JLabel(); nameLabel = new javax.swing.JLabel(); setLayout(new java.awt.GridBagLayout()); jLabel2.setText("Would you like to replace the existing file"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 1; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(15, 0, 0, 0); add(jLabel2, gridBagConstraints); jLabel3.setText("with this one?"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 3; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; add(jLabel3, gridBagConstraints); jPanel1.setLayout(new java.awt.GridBagLayout()); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 0; gridBagConstraints.gridheight = 2; gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH; gridBagConstraints.insets = new java.awt.Insets(0, 0, 0, 10); jPanel1.add(icon1Label, gridBagConstraints); size1Label.setText("0 KB"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 0; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; jPanel1.add(size1Label, gridBagConstraints); modified1Label.setText("modified on YYYY-MMM-DD, HH:MM:SS AM"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 1; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; jPanel1.add(modified1Label, gridBagConstraints); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 2; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(15, 15, 15, 0); add(jPanel1, gridBagConstraints); jPanel2.setLayout(new java.awt.GridBagLayout()); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 0; gridBagConstraints.gridheight = 2; gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH; gridBagConstraints.insets = new java.awt.Insets(0, 0, 0, 10); jPanel2.add(icon2Label, gridBagConstraints); size2Label.setText("0 KB"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 0; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; jPanel2.add(size2Label, gridBagConstraints); modified2Label.setText("modified on YYYY-MMM-DD, HH:MM:SS AM"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 1; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; jPanel2.add(modified2Label, gridBagConstraints); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 4; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(15, 15, 15, 0); add(jPanel2, gridBagConstraints); jPanel3.setLayout(new java.awt.GridBagLayout()); jLabel1.setText("This folder already contains\n "); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 0; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; jPanel3.add(jLabel1, gridBagConstraints); nameLabel.setText("a file named 'something.ext'."); jPanel3.add(nameLabel, new java.awt.GridBagConstraints()); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 0; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; add(jPanel3, gridBagConstraints); }//GEN-END:initComponents // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JLabel icon1Label; private javax.swing.JLabel icon2Label; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JPanel jPanel1; private javax.swing.JPanel jPanel2; private javax.swing.JPanel jPanel3; private javax.swing.JLabel modified1Label; private javax.swing.JLabel modified2Label; private javax.swing.JLabel nameLabel; private javax.swing.JLabel size1Label; private javax.swing.JLabel size2Label; // End of variables declaration//GEN-END:variables public void setInfo(FileSystemView fsv, File file1, File file2) { String type; if (file1.isDirectory()) { type = "a folder named "; } else { type = "a file named "; } nameLabel.setText(type + "'" + fsv.getSystemDisplayName(file1) + "'."); size1Label.setText(ShellUtilities.sizeToString(file1.length())); size2Label.setText(ShellUtilities.sizeToString(file2.length())); icon1Label.setIcon(fsv.getSystemIcon(file1)); icon2Label.setIcon(fsv.getSystemIcon(file2)); DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG); modified1Label.setText(dateFormat.format(new Date(file1.lastModified()))); modified1Label.setText(dateFormat.format(new Date(file2.lastModified()))); } /** Convenience method to show as Dialog. This method delegates to JOptionPane */ public static int showDialog(java.awt.Component parentComponent, FileSystemView fsv, File file1, File file2) { FileReplacePane optionPane = new FileReplacePane(fsv,file1,file2); int choice = choice = JOptionPane.showConfirmDialog(parentComponent,optionPane,"File Replace",JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE); return choice; } }