|
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.status; import javax.swing.JPanel; import javax.swing.JComponent; import org.netbeans.modules.cvsclient.NbJavaCvsStatusManager; import org.netbeans.modules.cvsclient.FsCommandFactory; import org.netbeans.modules.cvsclient.commands.status.StatusInfoPanel.ExtendedRevisionComparator; import org.netbeans.modules.vcscore.util.table.*; import org.netbeans.modules.javacvs.commands.FileSystemCommand; import org.netbeans.modules.javacvs.events.*; import java.io.File; import org.netbeans.modules.vcscore.util.Debug; import org.netbeans.modules.cvsclient.commands.*; import java.lang.reflect.Method; import org.openide.util.NbBundle; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.Color; import org.netbeans.modules.javacvs.*; import org.netbeans.modules.javacvs.commands.*; import org.netbeans.lib.cvsclient.command.status.StatusInformation; import org.netbeans.lib.cvsclient.command.FileInfoContainer; import javax.accessibility.*; import java.util.ResourceBundle; import org.netbeans.lib.cvsclient.file.FileStatus; import org.netbeans.modules.cvsclient.commands.diff.*; import org.netbeans.modules.cvsclient.NbJavaCvsFileSystem; import org.netbeans.modules.cvsclient.IndependantClient; import org.netbeans.modules.cvsclient.NbJavaCvsStatusManager; /** * * @author mkleint * @version */ public class StatusInfoPanel extends JPanel implements PersistentCommandDisplayer { Color oldColor; private StatusInformation statusInfo; private CvsStatus defaultCommand; private GridBagConstraints spExistingTagsConstraints; private GridBagConstraints lblExistingTagsConstraints; private GridBagLayout gridBag; private TableInfoModel model; /** Creates new form StatusInfoPanel */ public StatusInfoPanel(CvsStatus currentCommand) { initComponents (); initAccessibility(); lblRepFile.setLabelFor (txRepFile); btnDiff.setMnemonic (NbBundle.getBundle(StatusInfoPanel.class).getString("StatusInfoPanel.btnDiff.mnemonic").charAt(0)); // NOI18N btnAdvanced.setMnemonic (NbBundle.getBundle(StatusInfoPanel.class).getString("StatusInfoPanel.btnAdvanced.mnemonic").charAt(0)); // NOI18N lblExistingTags.setLabelFor (tblExistingTags); oldColor = txRepRev.getForeground(); defaultCommand = currentCommand; // after setting the components unvisible, the layout gets forgotten :( gridBag = (GridBagLayout)getLayout(); spExistingTagsConstraints = gridBag.getConstraints(spExistingTags); lblExistingTagsConstraints = gridBag.getConstraints(lblExistingTags); javax.swing.table.JTableHeader head = tblExistingTags.getTableHeader(); head.setUpdateTableInRealTime(true); ColumnSortListener listen = new ColumnSortListener(tblExistingTags); head.addMouseListener(listen); setPreferredSize(new java.awt.Dimension(700, 450)); setMinimumSize(new java.awt.Dimension(700, 450)); model = new TableInfoModel(); Class classa = StatusInformation.SymName.class; String column1 = NbBundle.getBundle(StatusInfoPanel.class).getString("StatusInfoPanel.SymNamesColumn"); // NOI18N String column2 = NbBundle.getBundle(StatusInfoPanel.class).getString("StatusInfoPanel.Rev2Column"); // NOI18N try { Method method1 = classa.getMethod("getTag", null); // NOI18N Method method2 = classa.getMethod("getRevision", null); // NOI18N model.setColumnDefinition(0, column1, method1, true, null); model.setColumnDefinition(1, column2, method2, true, new ExtendedRevisionComparator()); } catch (NoSuchMethodException exc) { Thread.dumpStack(); } catch (SecurityException exc2) { Thread.dumpStack(); } tblExistingTags.setModel(model); } /** 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; lblFileName = new javax.swing.JLabel(); lblStatus = new javax.swing.JLabel(); lblRepFile = new javax.swing.JLabel(); txRepFile = new javax.swing.JTextField(); lblWorkRev = new javax.swing.JLabel(); lblRepRev = new javax.swing.JLabel(); btnDiff = new javax.swing.JButton(); lblTag = new javax.swing.JLabel(); lblOptions = new javax.swing.JLabel(); lblDate = new javax.swing.JLabel(); spExistingTags = new javax.swing.JScrollPane(); tblExistingTags = new javax.swing.JTable(); lblExistingTags = new javax.swing.JLabel(); btnAdvanced = new javax.swing.JButton(); txFileName = new javax.swing.JTextField(); txStatus = new javax.swing.JTextField(); txWorkRev = new javax.swing.JTextField(); txRepRev = new javax.swing.JTextField(); txTag = new javax.swing.JTextField(); txOptions = new javax.swing.JTextField(); txDate = new javax.swing.JTextField(); setLayout(new java.awt.GridBagLayout()); setMaximumSize(new java.awt.Dimension(354, 203)); lblFileName.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACS_lblFileName_mnc").charAt(0)); lblFileName.setLabelFor(txFileName); lblFileName.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.lblFileName.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(12, 12, 0, 0); add(lblFileName, gridBagConstraints); lblStatus.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACS_lblStatus_mnc").charAt(0)); lblStatus.setLabelFor(txStatus); lblStatus.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.lblStatus.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 0; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(12, 17, 0, 0); add(lblStatus, gridBagConstraints); lblRepFile.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACS_lblRepFile_mnc").charAt(0)); lblRepFile.setLabelFor(txRepFile); lblRepFile.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.lblRepFile.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, 12, 0, 0); add(lblRepFile, gridBagConstraints); txRepFile.setEditable(false); txRepFile.setForeground(new java.awt.Color(102, 102, 158)); txRepFile.setText("repFile"); txRepFile.setDisabledTextColor(new java.awt.Color(102, 102, 153)); txRepFile.setMinimumSize(new java.awt.Dimension(100, 20)); txRepFile.setPreferredSize(new java.awt.Dimension(300, 20)); txRepFile.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { txRepFileActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 1; gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.weightx = 1.0; gridBagConstraints.insets = new java.awt.Insets(2, 12, 0, 11); add(txRepFile, gridBagConstraints); txRepFile.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACSD_txRepFile")); lblWorkRev.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACS_lblWorkRev_mnc").charAt(0)); lblWorkRev.setLabelFor(txWorkRev); lblWorkRev.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.lblWorkRev.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, 12, 0, 0); add(lblWorkRev, gridBagConstraints); lblRepRev.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACS_lblRevRep_mnc").charAt(0)); lblRepRev.setLabelFor(txRepRev); lblRepRev.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.lblRepRev.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 2; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(5, 17, 0, 0); add(lblRepRev, gridBagConstraints); btnDiff.setMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("CVS_btnDiff_mnc").charAt(0)); btnDiff.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.btnDiff.text")); btnDiff.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnDiffActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 4; gridBagConstraints.gridy = 2; gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; gridBagConstraints.ipadx = 1; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(4, 12, 0, 11); add(btnDiff, gridBagConstraints); lblTag.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACS_lblTag_mnc").charAt(0)); lblTag.setLabelFor(txTag); lblTag.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.lblTag.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 3; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(12, 12, 0, 0); add(lblTag, gridBagConstraints); lblOptions.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACS_lblOptions_mnc").charAt(0)); lblOptions.setLabelFor(txOptions); lblOptions.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.lblOptions.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 3; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(12, 17, 0, 0); add(lblOptions, gridBagConstraints); lblDate.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACS_lblDate_mnc").charAt(0)); lblDate.setLabelFor(txDate); lblDate.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.lblDate.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 4; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(5, 12, 0, 0); add(lblDate, gridBagConstraints); spExistingTags.setMinimumSize(new java.awt.Dimension(100, 100)); spExistingTags.setPreferredSize(new java.awt.Dimension(200, 200)); spExistingTags.setViewportView(tblExistingTags); tblExistingTags.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACSD_tblExistingTags")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 6; gridBagConstraints.gridwidth = 4; gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; gridBagConstraints.weightx = 1.0; gridBagConstraints.weighty = 1.0; gridBagConstraints.insets = new java.awt.Insets(2, 12, 11, 0); add(spExistingTags, gridBagConstraints); lblExistingTags.setDisplayedMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACS_lblExistingTags_mnc").charAt(0)); lblExistingTags.setLabelFor(tblExistingTags); lblExistingTags.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.lblExistingTags.text")); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 5; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(12, 12, 0, 0); add(lblExistingTags, gridBagConstraints); btnAdvanced.setMnemonic(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("CVS_btnAdvanced_mnc").charAt(0)); btnAdvanced.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("StatusInfoPanel.btnAdvanced.text")); btnAdvanced.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnAdvancedActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 4; gridBagConstraints.gridy = 6; gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; gridBagConstraints.insets = new java.awt.Insets(2, 12, 11, 11); add(btnAdvanced, gridBagConstraints); txFileName.setEditable(false); txFileName.setText("jTextField1"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 0; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.weightx = 1.0; gridBagConstraints.insets = new java.awt.Insets(12, 12, 0, 0); add(txFileName, gridBagConstraints); txFileName.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACSD_txFileName")); txStatus.setEditable(false); txStatus.setFont(txStatus.getFont().deriveFont(java.awt.Font.BOLD)); txStatus.setForeground(java.awt.Color.blue); txStatus.setText("jTextField1"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 3; gridBagConstraints.gridy = 0; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.weightx = 1.0; gridBagConstraints.insets = new java.awt.Insets(12, 12, 0, 0); add(txStatus, gridBagConstraints); txStatus.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACSD_txStatus")); txWorkRev.setEditable(false); txWorkRev.setText("jTextField1"); 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); add(txWorkRev, gridBagConstraints); txWorkRev.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACSD_txWorkRev")); txRepRev.setEditable(false); txRepRev.setText("jTextField1"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 3; 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); add(txRepRev, gridBagConstraints); txRepRev.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACSD_txRepRev")); txTag.setEditable(false); txTag.setText("jTextField1"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 3; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(12, 12, 0, 0); add(txTag, gridBagConstraints); txTag.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACSD_txTag")); txOptions.setEditable(false); txOptions.setText("jTextField1"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 3; gridBagConstraints.gridy = 3; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(12, 12, 0, 0); add(txOptions, gridBagConstraints); txOptions.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACSD_txOptions")); txDate.setEditable(false); txDate.setText("jTextField1"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 4; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.insets = new java.awt.Insets(5, 12, 0, 0); add(txDate, gridBagConstraints); txDate.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/cvsclient/commands/status/Bundle").getString("ACSD_txDate")); }//GEN-END:initComponents private void txRepFileActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txRepFileActionPerformed // Add your handling code here: }//GEN-LAST:event_txRepFileActionPerformed private void btnAdvancedActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAdvancedActionPerformed // Add your handling code here: // if (!(provider.isFileSystemClient()) || provider.isOffLine()) return; // if (!defaultCommand.getClientProvider() instanceof IndependantClient) return; IndependantClient provider = (IndependantClient)defaultCommand.getClientProvider(); if (provider.isOffLine()) return; File[] files = new File[1]; files[0] = statusInfo.getFile(); if (files[0].exists() == false) return; FsCommandFactory fact = (FsCommandFactory)FsCommandFactory.getInstance(); CvsStatus myStat = (CvsStatus)fact.createCommand(CvsStatus.class, false, files, defaultCommand.getClientProvider()); fact.addIndependantRuntime(myStat); myStat.setIncludeTags(true); myStat.addDisplayerListener(new CommandDisplayerAdapter() { public void showFileInfoGenerated(FileInfoContainer info) { StatusInformation sInfo = (StatusInformation)info; // we need to copy the information to the old statusInfo // because of preseving info when looking at the status tree.. // we'll copy everything just for the sake of it.. in case something changes over time statusInfo.setFile(sInfo.getFile()); statusInfo.setRepositoryFileName(sInfo.getRepositoryFileName()); statusInfo.setRepositoryRevision(sInfo.getRepositoryRevision()); statusInfo.setStatus(sInfo.getStatus()); statusInfo.setStickyDate(sInfo.getStickyDate()); statusInfo.setStickyOptions(sInfo.getStickyOptions()); statusInfo.setStickyTag(sInfo.getStickyTag()); statusInfo.setWorkingRevision(sInfo.getWorkingRevision()); statusInfo.setAllExistingTags(sInfo.getAllExistingTags()); setData(statusInfo); } }); myStat.addDisplayerListener(new ErrorLogPanel(myStat)); //TODO myStat.setOutputDisplayer(new TagsDisplayer(null)); myStat.startCommand(); }//GEN-LAST:event_btnAdvancedActionPerformed private void btnDiffActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnDiffActionPerformed // Add your handling code here: File[] files = new File[1]; files[0] = statusInfo.getFile(); FsCommandFactory fact = (FsCommandFactory)FsCommandFactory.getInstance(); CvsDiff myStat = (CvsDiff)fact.createCommand(CvsDiff.class, false, files, defaultCommand.getClientProvider()); fact.addIndependantRuntime(myStat); myStat.setRevision1(statusInfo.getRepositoryRevision()); myStat.addDisplayerListener(new DiffCommandDisplayer(myStat)); myStat.addDisplayerListener(new ErrorLogPanel(myStat)); myStat.startCommand(); }//GEN-LAST:event_btnDiffActionPerformed // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton btnAdvanced; private javax.swing.JButton btnDiff; private javax.swing.JLabel lblDate; private javax.swing.JLabel lblExistingTags; private javax.swing.JLabel lblFileName; private javax.swing.JLabel lblOptions; private javax.swing.JLabel lblRepFile; private javax.swing.JLabel lblRepRev; private javax.swing.JLabel lblStatus; private javax.swing.JLabel lblTag; private javax.swing.JLabel lblWorkRev; private javax.swing.JScrollPane spExistingTags; private javax.swing.JTable tblExistingTags; private javax.swing.JTextField txDate; private javax.swing.JTextField txFileName; private javax.swing.JTextField txOptions; private javax.swing.JTextField txRepFile; private javax.swing.JTextField txRepRev; private javax.swing.JTextField txStatus; private javax.swing.JTextField txTag; private javax.swing.JTextField txWorkRev; // End of variables declaration//GEN-END:variables private static final ResourceBundle bundle = NbBundle.getBundle(StatusInfoPanel.class); // NOI18N private void initAccessibility() { /* txRepRev.selectAll(); txRepFile.selectAll(); txTag.selectAll(); txStatus.selectAll(); txWorkRev.selectAll(); txOptions.selectAll(); txFileName.selectAll(); txDate.selectAll();*/ SelectAllListener focusListener = new SelectAllListener(); txRepRev.addFocusListener(focusListener); txRepFile.addFocusListener(focusListener); txTag.addFocusListener(focusListener); txStatus.addFocusListener(focusListener); txWorkRev.addFocusListener(focusListener); txOptions.addFocusListener(focusListener); txFileName.addFocusListener(focusListener); txDate.addFocusListener(focusListener); AccessibleContext context = this.getAccessibleContext(); context.setAccessibleDescription(bundle.getString("ACSD_StatusInfoPanel")); context = btnDiff.getAccessibleContext(); context.setAccessibleDescription(bundle.getString("ACSD_StatusInfoPanel.btnDiff")); context = btnAdvanced.getAccessibleContext(); context.setAccessibleDescription(bundle.getString("ACSD_StatusInfoPanel.btnAdvanced")); context = txRepFile.getAccessibleContext(); context.setAccessibleDescription(bundle.getString("ACSD_StatusInfoPanel.txRepFile")); } 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(StatusInformation info) { statusInfo = info; txFileName.setText(info.getFile().getName()); JavaCvsStatusManager manager = NbJavaCvsStatusManager.getInstance(); txStatus.setText(manager.getStatus(manager.convertStatus(info.getStatus()))); String work = info.getWorkingRevision(); txWorkRev.setText(work); String repo = info.getRepositoryRevision(); txRepFile.setText(info.getRepositoryFileName()); txRepRev.setText(repo); if (work != null && repo != null) { if (!repo.equals(work)) { //possible stuff that can be done with the display txRepRev.setForeground(java.awt.Color.red); txWorkRev.setForeground(java.awt.Color.red); } else { txRepRev.setForeground(oldColor); txWorkRev.setForeground(oldColor); } } boolean uptodate = (info.getStatus() == FileStatus.UP_TO_DATE || info.getStatus() == FileStatus.UNKNOWN); btnDiff.setEnabled(!uptodate); txDate.setText(info.getStickyDate()); txTag.setText(info.getStickyTag()); txOptions.setText(info.getStickyOptions()); model.clear(); java.util.Iterator it = info.getAllExistingTags().iterator(); while (it.hasNext()) { model.addElement(it.next()); } TableInfoModel model = (TableInfoModel)tblExistingTags.getModel(); java.util.Collections.sort(model.getList(), model); // find the previsously selected row. tblExistingTags.tableChanged(new javax.swing.event.TableModelEvent(model)); tblExistingTags.repaint(); } public void setCommand(CvsStatus comm) { defaultCommand = comm; } /** in this method the displayer should use the data returned by the command to * produce it's own data structures/ fill in UI components * @param resultList - the data from the command. It is assumed the Displayer * knows what command the data comes from and most important in what format. * (which FileInfoContainer class is used). */ public void setDataToDisplay(StatusInformation info) { setData(info); } /** Does the actual display - docking into the javacvs Mode, * displaying as single Dialog.. whatever. */ public void displayOutputData() { // in case the paraminput dialog won't trigger.. not nessesary to have this condition -> always disable spExistingTags.setEnabled(defaultCommand.isIncludeTags()); lblExistingTags.setEnabled(defaultCommand.isIncludeTags()); String title = NbBundle.getMessage(CvsStatus.class, "CvsStatus.dialogTitle", // NOI18N statusInfo.getFile().getName()); FsCommandFactory.displayOutputPanel(title, this); } // -------------------------------------------- // persistantDisplayer stuff.. // -------------------------------------------- public boolean equalDisplayedData(File file, Class type, Object comparisonData) { if (!getClass().equals(type)) return false; if (statusInfo == null || statusInfo.getFile() == null || !statusInfo.getFile().equals(file)) { return false; } return true; } public File getFileDisplayed() { return statusInfo.getFile(); } public Object getComparisonData() { return statusInfo; } public JComponent getComponent() { return this; } public FileSystemCommand getFileSystemCommand() { return defaultCommand; } public String getCommandSwitches() { return defaultCommand.getCVSArguments(); } public void closeNotify() { } class ExtendedRevisionComparator extends RevisionComparator { public int compare(java.lang.Object obj, java.lang.Object obj1) { int result = 0; String revStr1 = obj.toString(); String revStr2 = obj1.toString(); String substr1 = revStr1.substring(0, revStr1.indexOf(':')); String substr2 = revStr2.substring(0, revStr2.indexOf(':')); result = substr1.compareTo(substr2); if (result == 0) { result = super.compare(revStr1.substring(substr1.length() + 1), revStr2.substring(substr2.length() + 1)); } return result; } } } |
... 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.