|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2003 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.modules.cvsclient.commands.update; /** * * @author mkleint * @version */ import org.netbeans.lib.cvsclient.command.checkout.*; import org.netbeans.lib.cvsclient.command.*; import org.netbeans.modules.vcscore.util.Debug; import org.netbeans.modules.cvsclient.commands.*; import org.netbeans.modules.cvsclient.FsCommandFactory; import org.netbeans.modules.javacvs.events.*; import org.netbeans.modules.javacvs.commands.*; import org.openide.filesystems.FileUtil; import javax.swing.text.*; import javax.swing.*; import java.net.URL; import java.net.MalformedURLException; import java.io.IOException; import java.io.File; import java.util.*; import org.openide.util.NbBundle; import javax.accessibility.*; import org.openide.filesystems.FileObject; public class UpdateStdOutPanel extends javax.swing.JPanel implements PersistentCommandDisplayer { private Debug E=new Debug("UpdateStdOutPanel", true); // NOI18N private Debug D=E; private FileSystemCommand currentCommand; private ClientProvider provider; private PipedFileInformation currentInfo; /** Creates new form UpdateStdOutPanel */ public UpdateStdOutPanel(FileSystemCommand comm) { initComponents (); initAccessibility(); currentCommand = comm; epFile.setEditable(false); } public void setCommand(FileSystemCommand comm) { currentCommand = comm; } /** 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 FormEditor. */ private void initComponents() {//GEN-BEGIN:initComponents java.awt.GridBagConstraints gridBagConstraints; pnlHeader = new javax.swing.JPanel(); lblFileName = new javax.swing.JLabel(); lblRevNumber = new javax.swing.JLabel(); lblRevFile = new javax.swing.JLabel(); txRevFile = new javax.swing.JTextField(); txFileName = new javax.swing.JTextField(); txRevNumber = new javax.swing.JTextField(); spFile = new javax.swing.JScrollPane(); epFile = new javax.swing.JEditorPane(); setLayout(new java.awt.GridBagLayout()); pnlHeader.setLayout(new java.awt.GridBagLayout()); lblFileName.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/update/Bundle").getString("ACS_lblFileName_mnc").charAt(0)); lblFileName.setLabelFor(txFileName); lblFileName.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/update/Bundle").getString("UpdateStdOutPanel.lblFileName.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; pnlHeader.add(lblFileName, gridBagConstraints); lblRevNumber.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/update/Bundle").getString("ACS_lblRevNumber_mnc").charAt(0)); lblRevNumber.setLabelFor(txRevNumber); lblRevNumber.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/update/Bundle").getString("UpdateStdOutPanel.lblRevNumber.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 1; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(5, 0, 0, 0); pnlHeader.add(lblRevNumber, gridBagConstraints); lblRevFile.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/update/Bundle").getString("ACS_lblRevFile_mnc").charAt(0)); lblRevFile.setLabelFor(txRevFile); lblRevFile.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/update/Bundle").getString("UpdateStdOutPanel.lblRevFile.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 2; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(5, 0, 0, 0); pnlHeader.add(lblRevFile, gridBagConstraints); txRevFile.setEditable(false); txRevFile.setText("jTextField1"); txRevFile.setMinimumSize(new java.awt.Dimension(60, 20)); txRevFile.setPreferredSize(new java.awt.Dimension(400, 20)); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 2; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(5, 12, 0, 0); pnlHeader.add(txRevFile, gridBagConstraints); txFileName.setEditable(false); txFileName.setText("jTextField1"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(5, 12, 0, 0); pnlHeader.add(txFileName, gridBagConstraints); txRevNumber.setEditable(false); txRevNumber.setText("jTextField1"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 1; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.insets = new java.awt.Insets(5, 12, 0, 0); gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.weightx = 1.0; pnlHeader.add(txRevNumber, gridBagConstraints); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.insets = new java.awt.Insets(12, 12, 12, 11); gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.weightx = 1.0; add(pnlHeader, gridBagConstraints); spFile.setViewportView(epFile); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 1; gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; gridBagConstraints.insets = new java.awt.Insets(0, 12, 11, 11); gridBagConstraints.weighty = 1.0; add(spFile, gridBagConstraints); }//GEN-END:initComponents // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JEditorPane epFile; private javax.swing.JLabel lblRevFile; private javax.swing.JPanel pnlHeader; private javax.swing.JTextField txFileName; private javax.swing.JTextField txRevNumber; private javax.swing.JLabel lblRevNumber; private javax.swing.JScrollPane spFile; private javax.swing.JTextField txRevFile; private javax.swing.JLabel lblFileName; // End of variables declaration//GEN-END:variables private static final java.util.ResourceBundle bundle = NbBundle.getBundle(UpdateStdOutPanel.class); // NOI18N private void initAccessibility() { txFileName.selectAll(); txRevNumber.selectAll(); txRevFile.selectAll(); SelectAllListener focusListener = new SelectAllListener(); txFileName.addFocusListener(focusListener); txRevNumber.addFocusListener(focusListener); txRevFile.addFocusListener(focusListener); AccessibleContext context = this.getAccessibleContext(); context.setAccessibleName(bundle.getString("ACSD_UpdateStdOutPanel")); context = epFile.getAccessibleContext(); context.setAccessibleName(bundle.getString("ACSD_UpdateStdOutPanel.epFile")); } class SelectAllListener implements java.awt.event.FocusListener{ public void focusLost(java.awt.event.FocusEvent e){} public void focusGained(java.awt.event.FocusEvent e){ ((javax.swing.JTextField)e.getComponent()).selectAll(); } } public void setData(PipedFileInformation info) { currentInfo = info; txFileName.setText(info.getFile().getAbsolutePath()); txRevNumber.setText(info.getRepositoryRevision()); txRevFile.setText(info.getRepositoryFileName()); //setting up editor kit if (info.getTempFile().exists()) { String mime = getMIMEType(info); epFile.setContentType(mime); EditorKit kit = JEditorPane.createEditorKitForContentType(mime); D.deb("MIME = "+mime+": I have kit = "+kit); // NOI18N if (kit == null) { epFile.setContentType("text/plain"); // NOI18N kit = JEditorPane.createEditorKitForContentType("text/plain"); // NOI18N } epFile.setEditorKit(kit); Document doc = kit.createDefaultDocument(); try { URL flURL = info.getTempFile().toURL(); try { kit.read(flURL.openStream(), doc, 0); kit.install(epFile); epFile.setDocument(doc); } catch (javax.swing.text.BadLocationException e) { E.err("BadLocationException"); // NOI18N return; } catch (IOException ex) { E.err("IOException"); // NOI18N return; } } catch (MalformedURLException exc) { E.err("malformed URL"); // NOI18N } epFile.setDocument(doc); } } private String getMIMEType(PipedFileInformation info) { File file = info.getFile(); if (file == null) return "text/plain"; //NOI18N String mime; FileObject[] fos = FileUtil.fromFile(file); if (fos.length > 0) { mime = FileUtil.getMIMEType(fos[0]); } else { String ext = FileUtil.getExtension(file.getName()); mime = FileUtil.getMIMEType(ext); } if (mime == null) { mime = "text/plain"; //NOI18N } return mime; } /** Does the actual display - docking into the javacvs Mode, * displaying as single Dialog.. whatever. */ public void displayOutputData() { FsCommandFactory.displayOutputPanel(NbBundle.getBundle(UpdateStdOutPanel.class).getString("CvsUpdate.pipedOutDialogTitle") // NOI18N + currentInfo.getFile().getName() + ":" + currentInfo.getRepositoryRevision(), // NOI18N this); } // -------------------------------------------- // persistantDisplayer stuff.. // -------------------------------------------- public boolean equalDisplayedData(File file, Class type, Object comparisonData) { if (!getClass().equals(type)) return false; if (currentInfo == null || currentInfo.getFile() == null || !currentInfo.getFile().equals(file)) { return false; } PipedFileInformation info = (PipedFileInformation)comparisonData; if (info == null) { return false; } if (!currentInfo.getRepositoryRevision().equals(info.getRepositoryRevision())) { return false; } return true; } public File getFileDisplayed() { return currentInfo.getFile(); } public Object getComparisonData() { return currentInfo; } public JComponent getComponent() { return this; } public FileSystemCommand getFileSystemCommand() { return currentCommand; //TODO } public String getCommandSwitches() { return currentCommand.getCVSArguments(); } public void closeNotify() { /** if (currentInfo != null && currentInfo.getTempFile() != null) { currentInfo.getTempFile().deleteOnExit(); } */ } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.