added advanced html processing, coupling the output of query to the cvs repository web server. BLD200207080100
authorralphk@netbeans.org
Sun, 07 Jul 2002 19:37:03 +0000
changeset 924ffe16bd43469
parent 923 805a5a105630
child 925 4a92f7e4c1d6
added advanced html processing, coupling the output of query to the cvs repository web server.
2 default server settings - Netbeans.org and sourceforge.
some minor bugs fixed.
increased version number.
javacvs/changelog/manifest.mf
javacvs/changelog/src/org/netbeans/modules/changelog/Bundle.properties
javacvs/changelog/src/org/netbeans/modules/changelog/ChangeLogAction.java
javacvs/changelog/src/org/netbeans/modules/changelog/ChangeLogProcessor.java
javacvs/changelog/src/org/netbeans/modules/changelog/LogPrinter_HTML.java
javacvs/changelog/src/org/netbeans/modules/changelog/html/Bundle.properties
javacvs/changelog/src/org/netbeans/modules/changelog/html/ChangeLogHTMLService.java
javacvs/changelog/src/org/netbeans/modules/changelog/html/ChangeLogHTMLServiceBeanInfo.java
javacvs/changelog/src/org/netbeans/modules/changelog/html/HtmlPanelCustomizer.form
javacvs/changelog/src/org/netbeans/modules/changelog/html/HtmlPanelCustomizer.java
javacvs/changelog/src/org/netbeans/modules/changelog/resources/Netbeans.settings
javacvs/changelog/src/org/netbeans/modules/changelog/resources/Sourceforge.settings
javacvs/changelog/src/org/netbeans/modules/changelog/resources/defaultChangeLogHtmlType.settings
javacvs/changelog/src/org/netbeans/modules/changelog/resources/layer.xml
javacvs/changelog/src/org/netbeans/modules/changelog/wizard/Bundle.properties
javacvs/changelog/src/org/netbeans/modules/changelog/wizard/HtmlPanel.form
javacvs/changelog/src/org/netbeans/modules/changelog/wizard/HtmlPanel.java
javacvs/changelog/src/org/netbeans/modules/changelog/wizard/OutputPanel.java
     1.1 --- a/javacvs/changelog/manifest.mf	Sun Jul 07 14:52:32 2002 +0000
     1.2 +++ b/javacvs/changelog/manifest.mf	Sun Jul 07 19:37:03 2002 +0000
     1.3 @@ -1,8 +1,8 @@
     1.4  OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/changelog/Bundle.properties
     1.5  OpenIDE-Module: org.netbeans.modules.changelog/1
     1.6 -OpenIDE-Module-Specification-Version: 1.1
     1.7 +OpenIDE-Module-Specification-Version: 1.2
     1.8  OpenIDE-Module-Implementation-Version: @BUILD_NUMBER_SUBST@
     1.9 -OpenIDE-Module-Layer: org/netbeans/modules/changelog/layer.xml
    1.10 +OpenIDE-Module-Layer: org/netbeans/modules/changelog/resources/layer.xml
    1.11  OpenIDE-Module-IDE-Dependencies: IDE/1 > 2.5
    1.12  OpenIDE-Module-Module-Dependencies: org.netbeans.modules.vcscore/1,org.netbeans.modules.cvsclient/1
    1.13  Class-Path: ext/cvslib.jar
     2.1 --- a/javacvs/changelog/src/org/netbeans/modules/changelog/Bundle.properties	Sun Jul 07 14:52:32 2002 +0000
     2.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/Bundle.properties	Sun Jul 07 19:37:03 2002 +0000
     2.3 @@ -19,4 +19,8 @@
     2.4  
     2.5  ChangeLogAction.wizard_firstPanel=Set up Filter
     2.6  ChangeLogAction.wizard_secondPanel=Pick Output
     2.7 -ChangeLogAction.wizard_title=CVS Query Wizard
     2.8 \ No newline at end of file
     2.9 +ChangeLogAction.wizard_title=CVS Query Wizard
    2.10 +
    2.11 +Templates/Services/ChangeLogHtmlType=ChangeLog HTML Server Info
    2.12 +Services/ChangeLogHtmlType=ChangeLog HTML Types
    2.13 +UI/Services/SourceCreationAndManagement/ChangeLogHtmlType=ChangeLog HTML Server Info
     3.1 --- a/javacvs/changelog/src/org/netbeans/modules/changelog/ChangeLogAction.java	Sun Jul 07 14:52:32 2002 +0000
     3.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/ChangeLogAction.java	Sun Jul 07 19:37:03 2002 +0000
     3.3 @@ -94,14 +94,17 @@
     3.4       * On this list then performs the action.
     3.5       */
     3.6      protected void performAction(final Node[] nodes) {
     3.7 -        String[] names = new String[2];
     3.8 +        String[] names = new String[3];
     3.9          names[0] = NbBundle.getBundle(ChangeLogAction.class).getString("ChangeLogAction.wizard_firstPanel");
    3.10          names[1] = NbBundle.getBundle(ChangeLogAction.class).getString("ChangeLogAction.wizard_secondPanel");
    3.11 -        WizardDescriptor.Panel[] panels = new WizardDescriptor.Panel[2];
    3.12 +        names[2] = NbBundle.getBundle(ChangeLogAction.class).getString("ChangeLogAction.wizard_secondPanel");
    3.13 +        WizardDescriptor.Panel[] panels = new WizardDescriptor.Panel[3];
    3.14          panels[0] = new FilterPanel();
    3.15          ((FilterPanel)panels[0]).setName(names[0]);
    3.16          panels[1] = new OutputPanel();
    3.17          ((OutputPanel)panels[1]).setName(names[1]);
    3.18 +        panels[2] = new HtmlPanel();
    3.19 +        ((HtmlPanel)panels[2]).setName(names[2]);
    3.20          processor = new ChangeLogProcessor();
    3.21          wd = new WizardDescriptor(panels, processor);
    3.22          wd.setTitle(NbBundle.getBundle(ChangeLogAction.class).getString("ChangeLogAction.wizard_title"));
     4.1 --- a/javacvs/changelog/src/org/netbeans/modules/changelog/ChangeLogProcessor.java	Sun Jul 07 14:52:32 2002 +0000
     4.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/ChangeLogProcessor.java	Sun Jul 07 19:37:03 2002 +0000
     4.3 @@ -29,6 +29,7 @@
     4.4  import org.openide.*;
     4.5  import org.openide.loaders.*;
     4.6  import org.openide.util.*;
     4.7 +import org.netbeans.modules.changelog.html.*;
     4.8  
     4.9  public class ChangeLogProcessor {
    4.10      
    4.11 @@ -95,6 +96,9 @@
    4.12      
    4.13      private boolean viewInBrowser;
    4.14      
    4.15 +    /** Holds value of property htmlSiteProcessor. */
    4.16 +    private ChangeLogHTMLService htmlSiteProcessor;
    4.17 +    
    4.18      /** Creates new ChangeLogDisplayer */
    4.19      public ChangeLogProcessor() {
    4.20          fileObjectMap = new HashMap(10);
    4.21 @@ -425,7 +429,7 @@
    4.22              printerList.add(new LogPrinter_Text(getToTextFile()));
    4.23          }
    4.24          if (getToHtmlFile() != null || isViewInBrowser()) {
    4.25 -            printerList.add(new LogPrinter_HTML(getToHtmlFile(), isViewInBrowser()));
    4.26 +            printerList.add(new LogPrinter_HTML(getToHtmlFile(), isViewInBrowser(), getHtmlSiteProcessor()));
    4.27          }
    4.28          printResults();
    4.29      }
    4.30 @@ -515,4 +519,18 @@
    4.31          this.descendingSort = descendingSort;
    4.32      }
    4.33      
    4.34 +    /** Getter for property htmlSiteProcessor.
    4.35 +     * @return Value of property htmlSiteProcessor.
    4.36 +     */
    4.37 +    public ChangeLogHTMLService getHtmlSiteProcessor() {
    4.38 +        return this.htmlSiteProcessor;
    4.39 +    }
    4.40 +    
    4.41 +    /** Setter for property htmlSiteProcessor.
    4.42 +     * @param htmlSiteProcessor New value of property htmlSiteProcessor.
    4.43 +     */
    4.44 +    public void setHtmlSiteProcessor(ChangeLogHTMLService htmlSiteProcessor) {
    4.45 +        this.htmlSiteProcessor = htmlSiteProcessor;
    4.46 +    }
    4.47 +    
    4.48  }
     5.1 --- a/javacvs/changelog/src/org/netbeans/modules/changelog/LogPrinter_HTML.java	Sun Jul 07 14:52:32 2002 +0000
     5.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/LogPrinter_HTML.java	Sun Jul 07 19:37:03 2002 +0000
     5.3 @@ -17,6 +17,8 @@
     5.4  import org.openide.*;
     5.5  import java.io.*;
     5.6  
     5.7 +import org.netbeans.modules.changelog.html.*;
     5.8 +
     5.9  /**
    5.10   * prints the processed groups to text file..
    5.11   * @author  ralph
    5.12 @@ -29,6 +31,8 @@
    5.13      
    5.14      private boolean view;
    5.15      
    5.16 +    private ChangeLogHTMLService service;
    5.17 +    
    5.18      public LogPrinter_HTML(File fileParam, boolean view) {
    5.19          this.file = fileParam;
    5.20          this.view = view;
    5.21 @@ -36,6 +40,7 @@
    5.22          try {
    5.23              if (this.file == null) {
    5.24                  this.file = File.createTempFile("chlog", ".html");
    5.25 +                file.deleteOnExit();
    5.26              }
    5.27              if (!file.exists()) {
    5.28                  try {
    5.29 @@ -53,7 +58,12 @@
    5.30          } catch (IOException exc) {
    5.31              org.openide.ErrorManager.getDefault().notify(exc);
    5.32              System.out.println("error while opening file..");
    5.33 -}
    5.34 +        }
    5.35 +    }
    5.36 +    
    5.37 +    public LogPrinter_HTML(File file, boolean view, ChangeLogHTMLService service) {
    5.38 +        this(file, view);
    5.39 +        this.service = service;
    5.40      }
    5.41      
    5.42      public void printHeader(ChangeLogProcessor processor) {
    5.43 @@ -75,6 +85,10 @@
    5.44              writer.println("   Revision Filter:" + escapeString(processor.getRevisionRange()));
    5.45              writer.println("<P>");
    5.46          }
    5.47 +        if (processor.getUser() != null) {
    5.48 +            writer.println("    User Filter:" + escapeString(processor.getUser()));    
    5.49 +            writer.println("<P>");
    5.50 +        }
    5.51          if (processor.getMessageFilter() != null) {
    5.52              String messageType = "";
    5.53              if (processor.getMessageFilterType() == ChangeLogProcessor.MESSAGE_FILTER_SUBSTRING) {
    5.54 @@ -121,9 +135,9 @@
    5.55          } 
    5.56          writer.println("<UL>");
    5.57            writer.println("--------------------------------------------------");
    5.58 -          writer.println("<LI>User: <B>" + escapeString(group.getUser()) + "</B>");
    5.59 -          writer.println("<LI>Date: <B>" + escapeString(group.getStartingDate().toString()) + "</B>");
    5.60 -          writer.println("<LI>Message: <I>" + escapeString(group.getMessage()) + "</I>");
    5.61 +          writer.println("<LI>User: <I>" + escapeString(group.getUser()) + "</I>");
    5.62 +          writer.println("<LI>Date: <I>" + escapeString(group.getStartingDate().toString()) + "</I>");
    5.63 +          writer.println("<LI>Message: <B>" + escapeString(group.getMessage()) + "</B>");
    5.64            writer.println("<UL>");
    5.65      }
    5.66      
    5.67 @@ -132,8 +146,97 @@
    5.68              return;
    5.69          }
    5.70          String repoFileName = revision.getLogInfoHeader().getRepositoryFilename();
    5.71 +        // remove the trailing ,v part..
    5.72          repoFileName = repoFileName.substring(0, repoFileName.length() - 2);
    5.73 -        writer.println("<LI>" + revision.getNumber() + "  " + repoFileName);
    5.74 +
    5.75 +        writer.println("<LI>"); //NOI18N
    5.76 +        HashMap replacementMap = computeReplacements(revision);
    5.77 +        if (service != null) {
    5.78 +            String url = replaceArguments(service.getRevisionURL(), replacementMap);
    5.79 +            writer.println("<A href='" +  url +  "'>" +  revision.getNumber() + "</A> "); //NOI18N
    5.80 +        } else {
    5.81 +            writer.println(revision.getNumber());
    5.82 +        }
    5.83 +        writer.println("  " + repoFileName);
    5.84 +        if (!(replacementMap.containsKey("removed") || replacementMap.containsKey("Imported"))  && //NOI18N
    5.85 +               replacementMap.containsKey("previous_revision") && //NOI18N
    5.86 +               service != null) {
    5.87 +            String diffUrl = replaceArguments(service.getDiffURL(), replacementMap);
    5.88 +//            String diffUrl = "http://www.netbeans.org/source/browse/" + reducedRepoFileName 
    5.89 +//                   + ".diff?r1=text&tr1=" + prevRevision + "&r2=text&tr2=" + revision.getNumber() + "&f=h";
    5.90 +            writer.println("[<A href='" + diffUrl + "'> Diff </A>]"); 
    5.91 +        } else {
    5.92 +            // do nothing..
    5.93 +        }
    5.94 +        if (replacementMap.containsKey("removed")) { //NOI18N
    5.95 +            // TODO - handle removed and added files..
    5.96 +            writer.println(" [Removed]");
    5.97 +        }
    5.98 +        if (replacementMap.containsKey("Imported")) {
    5.99 +//            writer.println(" [Imported]");
   5.100 +        }
   5.101 +    }
   5.102 +    
   5.103 +    private HashMap computeReplacements(LogInfoRevision revision) {
   5.104 +        String repoFileName = revision.getLogInfoHeader().getRepositoryFilename();
   5.105 +        // remove the trailing ,v part..
   5.106 +        repoFileName = repoFileName.substring(0, repoFileName.length() - 2);
   5.107 +        HashMap replacementMap = new HashMap();
   5.108 +        if (service != null) {
   5.109 +            String reducedRepoFileName;
   5.110 +            if (repoFileName.startsWith(service.getCvsRootPrefix())) {
   5.111 +                reducedRepoFileName = repoFileName.substring(service.getCvsRootPrefix().length() + 1);
   5.112 +            } else {
   5.113 +                reducedRepoFileName = repoFileName;
   5.114 +            }
   5.115 +            replacementMap.put("file_path", reducedRepoFileName); //NOI18N
   5.116 +        } else {
   5.117 +            replacementMap.put("file_path",  repoFileName);
   5.118 +        }
   5.119 +        replacementMap.put("current_revision", revision.getNumber()); //NOI18N
   5.120 +        String revNumber = revision.getNumber();
   5.121 +        int index = revNumber.lastIndexOf('.');
   5.122 +        String prevRevision = null;
   5.123 +        if (index >= 0) {
   5.124 +            String lastNumber = revNumber.substring(index + 1);
   5.125 +            try {
   5.126 +                int number = Integer.parseInt(lastNumber);
   5.127 +                if (number != 1) {
   5.128 +                    prevRevision = revNumber.substring(0, index + 1) + Integer.toString(number - 1);
   5.129 +                }
   5.130 +            } catch (NumberFormatException exc) {
   5.131 +                System.out.println("parsing exception=" + lastNumber);
   5.132 +            }
   5.133 +        }
   5.134 +        int dotCount = 0;
   5.135 +        int branchIndex = 0;
   5.136 +        boolean found = false;
   5.137 +        while (index >= 0) {
   5.138 +            dotCount = dotCount + 1;
   5.139 +            if (dotCount == 2 && prevRevision == null) {
   5.140 +                prevRevision = revNumber.substring(0, index);
   5.141 +                String branch = revNumber.substring(index + 1, branchIndex);
   5.142 +                try {
   5.143 +                    int parsedNumber = Integer.parseInt(branch);
   5.144 +                    if (parsedNumber % 2 != 0) {
   5.145 +                        replacementMap.put("Imported", "true"); //NOI18N
   5.146 +                    }
   5.147 +                } catch (NumberFormatException exc) {
   5.148 +                    
   5.149 +                }
   5.150 +            }
   5.151 +            if (dotCount == 1) {
   5.152 +                branchIndex = index;
   5.153 +            }
   5.154 +            index = revNumber.lastIndexOf('.', index - 1);
   5.155 +        }
   5.156 +        replacementMap.put("previous_revision", prevRevision); //NOI18N
   5.157 +        if (revision.getState().equals("dead")) { //NOI18N
   5.158 +            replacementMap.put("removed", revision.getState()); //NOI18N
   5.159 +        }
   5.160 +        
   5.161 +        return replacementMap;
   5.162 +        
   5.163      }
   5.164      
   5.165      public void printGroupFooter(RevisionsGroup group) {
   5.166 @@ -199,6 +302,25 @@
   5.167          
   5.168      }
   5.169  
   5.170 +    /**
   5.171 +     * @param replMap - expects patterns as keys and replacement values as values
   5.172 +     *  aka ("filePath", "javacvs/build.xml")
   5.173 +     */
   5.174 +    private String replaceArguments(String original, HashMap replMap) {
   5.175 +        Iterator it = replMap.keySet().iterator();
   5.176 +        while (it.hasNext()) {
   5.177 +            String pattern = (String)it.next();
   5.178 +            String value = (String)replMap.get(pattern);
   5.179 +            pattern = "{" + pattern + "}";
   5.180 +            int index = original.indexOf(pattern);
   5.181 +            if (index >= 0) {
   5.182 +                original = original.substring(0, index) + 
   5.183 +                          value + original.substring(index + pattern.length());
   5.184 +            }
   5.185 +        }
   5.186 +        return original;
   5.187 +    }
   5.188 +    
   5.189      private static final char[] charArray = new char[] {'>', '<', '&'};
   5.190      private static final String[] stringArray = 
   5.191          new String[] { "&gt;", "&lt;", "&amp;"};
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/html/Bundle.properties	Sun Jul 07 19:37:03 2002 +0000
     6.3 @@ -0,0 +1,22 @@
     6.4 +#                 Sun Public License Notice
     6.5 +#
     6.6 +# The contents of this file are subject to the Sun Public License
     6.7 +# Version 1.0 (the "License"). You may not use this file except in
     6.8 +# compliance with the License. A copy of the License is available at
     6.9 +# http://www.sun.com/
    6.10 +#
    6.11 +# The Original Code is NetBeans. The Initial Developer of the Original
    6.12 +# Code is Raplh Krueger. Portions Copyright 2002 Ralph Krueger.
    6.13 +# All Rights Reserved.
    6.14 +#--------------------------------------------------------------------
    6.15 +
    6.16 +
    6.17 +HtmlPanel.lblDiffURL=File Diff URL Pattern\:
    6.18 +HtmlPanel.lblRevisionURL.text=File's Revision URL\:
    6.19 +
    6.20 +HtmlPanel.lblCVSROOT.text=CVS Repository Root Prefix \:
    6.21 +
    6.22 +HtmlPanel.taExplanation.text=Available Replace Arguments:\n{current_revision} - the revision that is part of the commit log.\n{prev_revision} - the revision that was overwritten by the change in the commit.\n{file_path} - the repository filename.\n\ 
    6.23 +
    6.24 +LAB_ChangeLogHTMLService=ChangeLog HTML Server Info
    6.25 +HINT_ChangeLogHTMLService=Server specific information that enables to link the output of Query to the Web-based cvs repository access.
    6.26 \ No newline at end of file
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/html/ChangeLogHTMLService.java	Sun Jul 07 19:37:03 2002 +0000
     7.3 @@ -0,0 +1,108 @@
     7.4 +/*
     7.5 + *                 Sun Public License Notice
     7.6 + *
     7.7 + * The contents of this file are subject to the Sun Public License
     7.8 + * Version 1.0 (the "License"). You may not use this file except in
     7.9 + * compliance with the License. A copy of the License is available at
    7.10 + * http://www.sun.com/
    7.11 + *
    7.12 + * The Original Code is NetBeans. The Initial Developer of the Original
    7.13 + * Code is Ralph Krueger. 
    7.14 + */
    7.15 +
    7.16 +package org.netbeans.modules.changelog.html;
    7.17 +
    7.18 +
    7.19 +import java.util.*;
    7.20 +import org.openide.*;
    7.21 +import org.openide.util.*;
    7.22 +
    7.23 +/**
    7.24 + * Holds server specific information for generating html output links.
    7.25 + *
    7.26 + * @author  ralph
    7.27 + */
    7.28 +public class ChangeLogHTMLService extends ServiceType {
    7.29 +    
    7.30 +    public static final String REVISION = "revisionURL"; //NOI18N
    7.31 +    public static final String DIFF = "diffURL"; //NOI18N
    7.32 +    public static final String PREFIX = "cvsRootPrefix"; //NOI18N
    7.33 +    
    7.34 +    
    7.35 +    /** Holds value of property cvsRootPrefix. */
    7.36 +    private String cvsRootPrefix;
    7.37 +    
    7.38 +    /** Holds value of property diffURL. */
    7.39 +    private String diffURL;
    7.40 +    
    7.41 +    /** Holds value of property revisionURL. */
    7.42 +    private String revisionURL;
    7.43 +    
    7.44 +    public ChangeLogHTMLService() {
    7.45 +    }
    7.46 +    
    7.47 +    /** Get context help for this service type.
    7.48 +     * @return context help
    7.49 +     */
    7.50 +    public HelpCtx getHelpCtx() {
    7.51 +        return new HelpCtx(ChangeLogHTMLService.class);
    7.52 +    }    
    7.53 +    
    7.54 +    /** Getter for property cvsRootPrefix.
    7.55 +     * @return Value of property cvsRootPrefix.
    7.56 +     */
    7.57 +    public String getCvsRootPrefix() {
    7.58 +        return this.cvsRootPrefix;
    7.59 +    }    
    7.60 +    
    7.61 +    /** Setter for property cvsRootPrefix.
    7.62 +     * @param cvsRootPrefix New value of property cvsRootPrefix.
    7.63 +     */
    7.64 +    public void setCvsRootPrefix(String cvsRootPrefix) {
    7.65 +        String old = this.cvsRootPrefix;
    7.66 +        this.cvsRootPrefix = cvsRootPrefix;
    7.67 +        firePropertyChange(PREFIX, old, cvsRootPrefix);
    7.68 +    }
    7.69 +    
    7.70 +    /** Getter for property diffURL.
    7.71 +     * @return Value of property diffURL.
    7.72 +     */
    7.73 +    public String getDiffURL() {
    7.74 +        return this.diffURL;
    7.75 +    }
    7.76 +    
    7.77 +    /** Setter for property diffURL.
    7.78 +     * @param diffURL New value of property diffURL.
    7.79 +     */
    7.80 +    public void setDiffURL(String diffURL) {
    7.81 +        String old = this.diffURL;
    7.82 +        this.diffURL = diffURL;
    7.83 +        firePropertyChange(DIFF, old, diffURL);
    7.84 +    }
    7.85 +    
    7.86 +    /** Getter for property revisionURL.
    7.87 +     * @return Value of property revisionURL.
    7.88 +     */
    7.89 +    public String getRevisionURL() {
    7.90 +        return this.revisionURL;
    7.91 +    }
    7.92 +    
    7.93 +    /** Setter for property revisionURL.
    7.94 +     * @param revisionURL New value of property revisionURL.
    7.95 +     */
    7.96 +    public void setRevisionURL(String revisionURL) {
    7.97 +        String old = this.revisionURL;
    7.98 +        this.revisionURL = revisionURL;
    7.99 +        firePropertyChange(REVISION,  old, revisionURL);
   7.100 +    }
   7.101 +    
   7.102 +    
   7.103 +    public Object clone()  {
   7.104 +        ChangeLogHTMLService changelog = new ChangeLogHTMLService();
   7.105 +        changelog.setCvsRootPrefix(getCvsRootPrefix());
   7.106 +        changelog.setDiffURL(getDiffURL());
   7.107 +        changelog.setRevisionURL(getRevisionURL());
   7.108 +        return changelog;
   7.109 +    }
   7.110 +    
   7.111 +}
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/html/ChangeLogHTMLServiceBeanInfo.java	Sun Jul 07 19:37:03 2002 +0000
     8.3 @@ -0,0 +1,56 @@
     8.4 +/*
     8.5 + *                 Sun Public License Notice
     8.6 + *
     8.7 + * The contents of this file are subject to the Sun Public License
     8.8 + * Version 1.0 (the "License"). You may not use this file except in
     8.9 + * compliance with the License. A copy of the License is available at
    8.10 + * http://www.sun.com/
    8.11 + *
    8.12 + * The Original Code is NetBeans. The Initial Developer of the Original
    8.13 + * Code is Ralph Krueger. 
    8.14 + */
    8.15 +
    8.16 +package org.netbeans.modules.changelog.html;
    8.17 +
    8.18 +import java.awt.Image;
    8.19 +import java.beans.*;
    8.20 +import java.io.File;
    8.21 +import java.util.ResourceBundle;
    8.22 +
    8.23 +import org.openide.util.NbBundle;
    8.24 +
    8.25 +/** Object that provides beaninfo for ChangeLogHTMLService.
    8.26 +*
    8.27 +* @author ralphk
    8.28 +*/
    8.29 +public class ChangeLogHTMLServiceBeanInfo extends SimpleBeanInfo {
    8.30 +    private static Image icon;
    8.31 +    private static Image icon32;
    8.32 +
    8.33 +
    8.34 +    public BeanInfo[] getAdditionalBeanInfo () {
    8.35 +        return null;
    8.36 +    }
    8.37 +
    8.38 +    public BeanDescriptor getBeanDescriptor () {
    8.39 +        BeanDescriptor descr = new BeanDescriptor (ChangeLogHTMLService.class);
    8.40 +        ResourceBundle bundle = NbBundle.getBundle(ChangeLogHTMLServiceBeanInfo.class);
    8.41 +        descr.setDisplayName (bundle.getString ("LAB_ChangeLogHTMLService"));
    8.42 +        descr.setShortDescription (bundle.getString ("HINT_ChangeLogHTMLService"));
    8.43 +        descr.setValue ("helpID", org.netbeans.modules.changelog.html.ChangeLogHTMLService.class.getName ()); // NOI18N
    8.44 +        return descr;
    8.45 +    }
    8.46 +
    8.47 +    /** Provides the Jar's icon */
    8.48 +    public Image getIcon(int type) {
    8.49 +        if (icon == null) {
    8.50 +            icon = loadImage("/org/netbeans/modules/changelog/resources/type.gif"); // NOI18N
    8.51 +            icon32 = loadImage("/org/netbeans/modules/changelog/resources/type.gif"); // NOI18N
    8.52 +        }
    8.53 +
    8.54 +        if ((type == java.beans.BeanInfo.ICON_COLOR_16x16) || (type == java.beans.BeanInfo.ICON_MONO_16x16))
    8.55 +            return icon;
    8.56 +        else
    8.57 +            return icon32;
    8.58 +    }
    8.59 +}
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/html/HtmlPanelCustomizer.form	Sun Jul 07 19:37:03 2002 +0000
     9.3 @@ -0,0 +1,112 @@
     9.4 +<?xml version="1.0" encoding="UTF-8" ?>
     9.5 +
     9.6 +<Form version="1.0" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
     9.7 +  <Properties>
     9.8 +    <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
     9.9 +      <Dimension value="[600, 300]"/>
    9.10 +    </Property>
    9.11 +    <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
    9.12 +      <Dimension value="[400, 200]"/>
    9.13 +    </Property>
    9.14 +  </Properties>
    9.15 +  <AuxValues>
    9.16 +    <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,44,0,0,2,10"/>
    9.17 +  </AuxValues>
    9.18 +
    9.19 +  <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout"/>
    9.20 +  <SubComponents>
    9.21 +    <Component class="javax.swing.JLabel" name="lblDiffURL">
    9.22 +      <Properties>
    9.23 +        <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
    9.24 +          <ResourceString bundle="org/netbeans/modules/changelog/html/Bundle.properties" key="HtmlPanel.lblDiffURL" replaceFormat="org.openide.util.NbBundle.getBundle({sourceFileName}.class).getString(&quot;{key}&quot;)"/>
    9.25 +        </Property>
    9.26 +      </Properties>
    9.27 +      <Constraints>
    9.28 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
    9.29 +          <GridBagConstraints gridX="-1" gridY="-1" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="12" insetsLeft="12" insetsBottom="6" insetsRight="6" anchor="17" weightX="0.0" weightY="0.0"/>
    9.30 +        </Constraint>
    9.31 +      </Constraints>
    9.32 +    </Component>
    9.33 +    <Component class="javax.swing.JTextField" name="txDiffURL">
    9.34 +      <Properties>
    9.35 +        <Property name="text" type="java.lang.String" value="jTextField1"/>
    9.36 +      </Properties>
    9.37 +      <Constraints>
    9.38 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
    9.39 +          <GridBagConstraints gridX="-1" gridY="-1" gridWidth="1" gridHeight="1" fill="2" ipadX="0" ipadY="0" insetsTop="12" insetsLeft="0" insetsBottom="6" insetsRight="12" anchor="17" weightX="0.0" weightY="0.0"/>
    9.40 +        </Constraint>
    9.41 +      </Constraints>
    9.42 +    </Component>
    9.43 +    <Component class="javax.swing.JLabel" name="lblRevisionURL">
    9.44 +      <Properties>
    9.45 +        <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
    9.46 +          <ResourceString bundle="org/netbeans/modules/changelog/html/Bundle.properties" key="HtmlPanel.lblRevisionURL.text" replaceFormat="org.openide.util.NbBundle.getBundle({sourceFileName}.class).getString(&quot;{key}&quot;)"/>
    9.47 +        </Property>
    9.48 +      </Properties>
    9.49 +      <Constraints>
    9.50 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
    9.51 +          <GridBagConstraints gridX="0" gridY="1" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="12" insetsBottom="6" insetsRight="6" anchor="17" weightX="0.0" weightY="0.0"/>
    9.52 +        </Constraint>
    9.53 +      </Constraints>
    9.54 +    </Component>
    9.55 +    <Component class="javax.swing.JTextField" name="txRevisionURL">
    9.56 +      <Properties>
    9.57 +        <Property name="text" type="java.lang.String" value="jTextField2"/>
    9.58 +      </Properties>
    9.59 +      <Constraints>
    9.60 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
    9.61 +          <GridBagConstraints gridX="1" gridY="1" gridWidth="1" gridHeight="1" fill="2" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="6" insetsRight="12" anchor="17" weightX="0.0" weightY="0.0"/>
    9.62 +        </Constraint>
    9.63 +      </Constraints>
    9.64 +    </Component>
    9.65 +    <Container class="javax.swing.JScrollPane" name="spExplanation">
    9.66 +      <Constraints>
    9.67 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
    9.68 +          <GridBagConstraints gridX="0" gridY="2" gridWidth="2" gridHeight="2" fill="1" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="12" insetsBottom="6" insetsRight="12" anchor="18" weightX="0.5" weightY="0.5"/>
    9.69 +        </Constraint>
    9.70 +      </Constraints>
    9.71 +
    9.72 +      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
    9.73 +      <SubComponents>
    9.74 +        <Component class="javax.swing.JTextArea" name="taExplanation">
    9.75 +          <Properties>
    9.76 +            <Property name="editable" type="boolean" value="false"/>
    9.77 +            <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
    9.78 +              <ResourceString bundle="org/netbeans/modules/changelog/html/Bundle.properties" key="HtmlPanel.taExplanation.text" replaceFormat="org.openide.util.NbBundle.getBundle({sourceFileName}.class).getString(&quot;{key}&quot;)"/>
    9.79 +            </Property>
    9.80 +          </Properties>
    9.81 +        </Component>
    9.82 +      </SubComponents>
    9.83 +    </Container>
    9.84 +    <Component class="javax.swing.JLabel" name="lblCVSROOT">
    9.85 +      <Properties>
    9.86 +        <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
    9.87 +          <ComponentRef name="txCVSROOT"/>
    9.88 +        </Property>
    9.89 +        <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
    9.90 +          <ResourceString bundle="org/netbeans/modules/changelog/html/Bundle.properties" key="HtmlPanel.lblCVSROOT.text" replaceFormat="org.openide.util.NbBundle.getBundle({sourceFileName}.class).getString(&quot;{key}&quot;)"/>
    9.91 +        </Property>
    9.92 +      </Properties>
    9.93 +      <Constraints>
    9.94 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
    9.95 +          <GridBagConstraints gridX="0" gridY="4" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="12" insetsBottom="12" insetsRight="6" anchor="17" weightX="0.0" weightY="0.0"/>
    9.96 +        </Constraint>
    9.97 +      </Constraints>
    9.98 +    </Component>
    9.99 +    <Component class="javax.swing.JTextField" name="txCVSROOT">
   9.100 +      <Properties>
   9.101 +        <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
   9.102 +          <Dimension value="[150, 20]"/>
   9.103 +        </Property>
   9.104 +        <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
   9.105 +          <Dimension value="[50, 22]"/>
   9.106 +        </Property>
   9.107 +      </Properties>
   9.108 +      <Constraints>
   9.109 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
   9.110 +          <GridBagConstraints gridX="1" gridY="4" gridWidth="1" gridHeight="1" fill="0" ipadX="45" ipadY="0" insetsTop="6" insetsLeft="6" insetsBottom="12" insetsRight="12" anchor="17" weightX="0.0" weightY="0.0"/>
   9.111 +        </Constraint>
   9.112 +      </Constraints>
   9.113 +    </Component>
   9.114 +  </SubComponents>
   9.115 +</Form>
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/html/HtmlPanelCustomizer.java	Sun Jul 07 19:37:03 2002 +0000
    10.3 @@ -0,0 +1,214 @@
    10.4 +/*
    10.5 + *                 Sun Public License Notice
    10.6 + *
    10.7 + * The contents of this file are subject to the Sun Public License
    10.8 + * Version 1.0 (the "License"). You may not use this file except in
    10.9 + * compliance with the License. A copy of the License is available at
   10.10 + * http://www.sun.com/
   10.11 + *
   10.12 + * The Original Code is NetBeans. The Initial Developer of the Original
   10.13 + * Code is Ralph Krueger. 
   10.14 + */
   10.15 +package org.netbeans.modules.changelog.html;
   10.16 +
   10.17 +/**
   10.18 + *
   10.19 + * @author  ralph
   10.20 + */
   10.21 +
   10.22 +import org.openide.util.*;
   10.23 +import javax.swing.event.*;
   10.24 +import javax.swing.*;
   10.25 +import org.netbeans.modules.changelog.*;
   10.26 +
   10.27 +
   10.28 +public class HtmlPanelCustomizer extends javax.swing.JPanel implements java.beans.Customizer {
   10.29 +    
   10.30 +    ChangeLogHTMLService service;
   10.31 +    private boolean disableFiring = false;
   10.32 +    /** Creates new form FilterPanel */
   10.33 +    public HtmlPanelCustomizer() {
   10.34 +        initComponents();
   10.35 +        java.awt.event.ActionListener actionList = new java.awt.event.ActionListener() {
   10.36 +            public void actionPerformed(java.awt.event.ActionEvent evt) {
   10.37 +                setData();
   10.38 +            }
   10.39 +        };
   10.40 +        txCVSROOT.addActionListener(actionList);
   10.41 +        txDiffURL.addActionListener(actionList);
   10.42 +        txRevisionURL.addActionListener(actionList);
   10.43 +        javax.swing.event.DocumentListener docList = new javax.swing.event.DocumentListener() {
   10.44 +                public void insertUpdate(javax.swing.event.DocumentEvent e) {
   10.45 +                    setData();
   10.46 +                }
   10.47 +                public void removeUpdate(javax.swing.event.DocumentEvent e) {
   10.48 +                    setData();
   10.49 +                }
   10.50 +                public void changedUpdate(javax.swing.event.DocumentEvent e) {
   10.51 +                 //   setData();
   10.52 +                }
   10.53 +        };
   10.54 +        txCVSROOT.getDocument().addDocumentListener(docList);
   10.55 +        txDiffURL.getDocument().addDocumentListener(docList);
   10.56 +        txRevisionURL.getDocument().addDocumentListener(docList);
   10.57 +        // set the same background as the panel has..
   10.58 +        taExplanation.setBackground(this.getBackground());
   10.59 +    }
   10.60 +    
   10.61 +    /** This method is called from within the constructor to
   10.62 +     * initialize the form.
   10.63 +     * WARNING: Do NOT modify this code. The content of this method is
   10.64 +     * always regenerated by the Form Editor.
   10.65 +     */
   10.66 +    private void initComponents() {//GEN-BEGIN:initComponents
   10.67 +        java.awt.GridBagConstraints gridBagConstraints;
   10.68 +
   10.69 +        lblDiffURL = new javax.swing.JLabel();
   10.70 +        txDiffURL = new javax.swing.JTextField();
   10.71 +        lblRevisionURL = new javax.swing.JLabel();
   10.72 +        txRevisionURL = new javax.swing.JTextField();
   10.73 +        spExplanation = new javax.swing.JScrollPane();
   10.74 +        taExplanation = new javax.swing.JTextArea();
   10.75 +        lblCVSROOT = new javax.swing.JLabel();
   10.76 +        txCVSROOT = new javax.swing.JTextField();
   10.77 +
   10.78 +        setLayout(new java.awt.GridBagLayout());
   10.79 +
   10.80 +        setPreferredSize(new java.awt.Dimension(600, 300));
   10.81 +        setMinimumSize(new java.awt.Dimension(400, 200));
   10.82 +        lblDiffURL.setText(org.openide.util.NbBundle.getBundle(HtmlPanelCustomizer.class).getString("HtmlPanel.lblDiffURL"));
   10.83 +        gridBagConstraints = new java.awt.GridBagConstraints();
   10.84 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
   10.85 +        gridBagConstraints.insets = new java.awt.Insets(12, 12, 6, 6);
   10.86 +        add(lblDiffURL, gridBagConstraints);
   10.87 +
   10.88 +        txDiffURL.setText("jTextField1");
   10.89 +        gridBagConstraints = new java.awt.GridBagConstraints();
   10.90 +        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
   10.91 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
   10.92 +        gridBagConstraints.insets = new java.awt.Insets(12, 0, 6, 12);
   10.93 +        add(txDiffURL, gridBagConstraints);
   10.94 +
   10.95 +        lblRevisionURL.setText(org.openide.util.NbBundle.getBundle(HtmlPanelCustomizer.class).getString("HtmlPanel.lblRevisionURL.text"));
   10.96 +        gridBagConstraints = new java.awt.GridBagConstraints();
   10.97 +        gridBagConstraints.gridx = 0;
   10.98 +        gridBagConstraints.gridy = 1;
   10.99 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
  10.100 +        gridBagConstraints.insets = new java.awt.Insets(0, 12, 6, 6);
  10.101 +        add(lblRevisionURL, gridBagConstraints);
  10.102 +
  10.103 +        txRevisionURL.setText("jTextField2");
  10.104 +        gridBagConstraints = new java.awt.GridBagConstraints();
  10.105 +        gridBagConstraints.gridx = 1;
  10.106 +        gridBagConstraints.gridy = 1;
  10.107 +        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
  10.108 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
  10.109 +        gridBagConstraints.insets = new java.awt.Insets(0, 0, 6, 12);
  10.110 +        add(txRevisionURL, gridBagConstraints);
  10.111 +
  10.112 +        taExplanation.setEditable(false);
  10.113 +        taExplanation.setText(org.openide.util.NbBundle.getBundle(HtmlPanelCustomizer.class).getString("HtmlPanel.taExplanation.text"));
  10.114 +        spExplanation.setViewportView(taExplanation);
  10.115 +
  10.116 +        gridBagConstraints = new java.awt.GridBagConstraints();
  10.117 +        gridBagConstraints.gridx = 0;
  10.118 +        gridBagConstraints.gridy = 2;
  10.119 +        gridBagConstraints.gridwidth = 2;
  10.120 +        gridBagConstraints.gridheight = 2;
  10.121 +        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
  10.122 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
  10.123 +        gridBagConstraints.weightx = 0.5;
  10.124 +        gridBagConstraints.weighty = 0.5;
  10.125 +        gridBagConstraints.insets = new java.awt.Insets(0, 12, 6, 12);
  10.126 +        add(spExplanation, gridBagConstraints);
  10.127 +
  10.128 +        lblCVSROOT.setLabelFor(txCVSROOT);
  10.129 +        lblCVSROOT.setText(org.openide.util.NbBundle.getBundle(HtmlPanelCustomizer.class).getString("HtmlPanel.lblCVSROOT.text"));
  10.130 +        gridBagConstraints = new java.awt.GridBagConstraints();
  10.131 +        gridBagConstraints.gridx = 0;
  10.132 +        gridBagConstraints.gridy = 4;
  10.133 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
  10.134 +        gridBagConstraints.insets = new java.awt.Insets(0, 12, 12, 6);
  10.135 +        add(lblCVSROOT, gridBagConstraints);
  10.136 +
  10.137 +        txCVSROOT.setPreferredSize(new java.awt.Dimension(150, 20));
  10.138 +        txCVSROOT.setMinimumSize(new java.awt.Dimension(50, 22));
  10.139 +        gridBagConstraints = new java.awt.GridBagConstraints();
  10.140 +        gridBagConstraints.gridx = 1;
  10.141 +        gridBagConstraints.gridy = 4;
  10.142 +        gridBagConstraints.ipadx = 45;
  10.143 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
  10.144 +        gridBagConstraints.insets = new java.awt.Insets(6, 6, 12, 12);
  10.145 +        add(txCVSROOT, gridBagConstraints);
  10.146 +
  10.147 +    }//GEN-END:initComponents
  10.148 +
  10.149 +    /** Set the object to be customized.  This method should be called only
  10.150 +     * once, before the Customizer has been added to any parent AWT container.
  10.151 +     * @param bean  The object to be customized.
  10.152 +     */
  10.153 +    public void setObject(Object bean) {
  10.154 +        if (bean instanceof ChangeLogHTMLService) {
  10.155 +            service = (ChangeLogHTMLService)bean;
  10.156 +            disableFiring = true;
  10.157 +            if (service.getCvsRootPrefix() != null) {
  10.158 +                txCVSROOT.setText(service.getCvsRootPrefix());
  10.159 +            } else {
  10.160 +                txCVSROOT.setText("");
  10.161 +            }
  10.162 +            if (service.getDiffURL() != null) {
  10.163 +                txDiffURL.setText(service.getDiffURL());
  10.164 +            } else {
  10.165 +                txDiffURL.setText("");
  10.166 +            }
  10.167 +            if (service.getRevisionURL() != null) {
  10.168 +                txRevisionURL.setText(service.getRevisionURL());
  10.169 +            } else {
  10.170 +                txRevisionURL.setText("");
  10.171 +            }
  10.172 +            disableFiring = false;
  10.173 +        }
  10.174 +    }    
  10.175 +
  10.176 +    
  10.177 +    public void setData() {
  10.178 +        if (service != null && !disableFiring) {
  10.179 +            if (txCVSROOT.getText() != null && 
  10.180 +                      txCVSROOT.getText().length() > 0) {
  10.181 +                service.setCvsRootPrefix(txCVSROOT.getText());
  10.182 +            } else {
  10.183 +                service.setCvsRootPrefix(null);
  10.184 +            }
  10.185 +            if (txDiffURL.getText() != null && 
  10.186 +                      txDiffURL.getText().length() > 0) {
  10.187 +                service.setDiffURL(txDiffURL.getText());
  10.188 +            } else {
  10.189 +                service.setDiffURL(null);
  10.190 +            }
  10.191 +            if (txRevisionURL.getText() != null && 
  10.192 +                      txRevisionURL.getText().length() > 0) {
  10.193 +                service.setRevisionURL(txRevisionURL.getText());
  10.194 +            } else {
  10.195 +                service.setRevisionURL(null);
  10.196 +            }
  10.197 +        }
  10.198 +    }
  10.199 +    
  10.200 +    public void disableEditing(boolean disable) {
  10.201 +        txCVSROOT.setEnabled(!disable);
  10.202 +        txDiffURL.setEnabled(!disable);
  10.203 +        txRevisionURL.setEnabled(!disable);
  10.204 +    }
  10.205 +    
  10.206 +    // Variables declaration - do not modify//GEN-BEGIN:variables
  10.207 +    private javax.swing.JTextField txDiffURL;
  10.208 +    private javax.swing.JLabel lblCVSROOT;
  10.209 +    private javax.swing.JTextField txRevisionURL;
  10.210 +    private javax.swing.JLabel lblRevisionURL;
  10.211 +    private javax.swing.JTextField txCVSROOT;
  10.212 +    private javax.swing.JTextArea taExplanation;
  10.213 +    private javax.swing.JScrollPane spExplanation;
  10.214 +    private javax.swing.JLabel lblDiffURL;
  10.215 +    // End of variables declaration//GEN-END:variables
  10.216 +    
  10.217 +}
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/resources/Netbeans.settings	Sun Jul 07 19:37:03 2002 +0000
    11.3 @@ -0,0 +1,20 @@
    11.4 +<?xml version="1.0"?>
    11.5 +<!DOCTYPE settings PUBLIC "-//NetBeans//DTD Session settings 1.0//EN" "http://www.netbeans.org/dtds/sessionsettings-1_0.dtd">
    11.6 +<settings version="1.0">
    11.7 +    <module name="org.netbeans.modules.changelog/1"/>
    11.8 +    <instanceof class="java.lang.Object"/>
    11.9 +    <instanceof class="org.netbeans.modules.changelog.html.ChangeLogHTMLService"/>
   11.10 +    <instanceof class="org.openide.ServiceType"/>
   11.11 +    <serialdata class="org.netbeans.modules.changelog.html.ChangeLogHTMLService">
   11.12 +        ACED0005737200386F72672E6E65746265616E732E6D6F64756C65732E6368616E67656C6F672E68746D6C2E4368616E6765
   11.13 +        4C6F6748544D4C53657276696365E82A3B14586D60BF0200034C000D637673526F6F745072656669787400124C6A6176612F
   11.14 +        6C616E672F537472696E673B4C00076469666655524C71007E00014C000B7265766973696F6E55524C71007E000178720017
   11.15 +        6F72672E6F70656E6964652E536572766963655479706596E52C9645EE60940200014C00046E616D6571007E000178707400
   11.16 +        0C4E65746265616E732E6F72677400042F637673740079687474703A2F2F7777772E6E65746265616E732E6F72672F736F75
   11.17 +        7263652F62726F7773652F7B66696C655F706174687D2E646966663F72313D74657874267472313D7B70726576696F75735F
   11.18 +        7265766973696F6E7D2672323D74657874267472323D7B63757272656E745F7265766973696F6E7D26663D6874006A687474
   11.19 +        703A2F2F7777772E6E65746265616E732E6F72672F736F757263652F62726F7773652F7B66696C655F706174687D3F726576
   11.20 +        3D7B63757272656E745F7265766973696F6E7D26636F6E74656E742D747970653D746578742F782D6376737765622D6D6172
   11.21 +        6B7570
   11.22 +    </serialdata>
   11.23 +</settings>
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/resources/Sourceforge.settings	Sun Jul 07 19:37:03 2002 +0000
    12.3 @@ -0,0 +1,19 @@
    12.4 +<?xml version="1.0"?>
    12.5 +<!DOCTYPE settings PUBLIC "-//NetBeans//DTD Session settings 1.0//EN" "http://www.netbeans.org/dtds/sessionsettings-1_0.dtd">
    12.6 +<settings version="1.0">
    12.7 +    <module name="org.netbeans.modules.changelog/1"/>
    12.8 +    <instanceof class="org.netbeans.modules.changelog.html.ChangeLogHTMLService"/>
    12.9 +    <instanceof class="org.openide.ServiceType"/>
   12.10 +    <serialdata class="org.netbeans.modules.changelog.html.ChangeLogHTMLService">
   12.11 +        ACED0005737200386F72672E6E65746265616E732E6D6F64756C65732E6368616E67656C6F672E68746D6C2E4368616E6765
   12.12 +        4C6F6748544D4C53657276696365E82A3B14586D60BF0200034C000D637673526F6F745072656669787400124C6A6176612F
   12.13 +        6C616E672F537472696E673B4C00076469666655524C71007E00014C000B7265766973696F6E55524C71007E000178720017
   12.14 +        6F72672E6F70656E6964652E536572766963655479706596E52C9645EE60940200014C00046E616D6571007E000178707400
   12.15 +        0B536F75726365466F7267657400082F637673726F6F7474008C687474703A2F2F6376732E736F75726365666F7267652E6E
   12.16 +        65742F6367692D62696E2F766965776376732E6367692F7B66696C655F706174687D2E646966663F72313D74657874267472
   12.17 +        313D7B70726576696F75735F7265766973696F6E7D2672323D74657874267472323D7B63757272656E745F7265766973696F
   12.18 +        6E7D26646966665F666F726D61743D68740076687474703A2F2F6376732E736F75726365666F7267652E6E65742F6367692D
   12.19 +        62696E2F766965776376732E6367692F7B66696C655F706174687D3F7265763D7B63757272656E745F7265766973696F6E7D
   12.20 +        26636F6E74656E742D747970653D746578742F766E642E766965776376732D6D61726B7570
   12.21 +    </serialdata>
   12.22 +</settings>
    13.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/resources/defaultChangeLogHtmlType.settings	Sun Jul 07 19:37:03 2002 +0000
    13.3 @@ -0,0 +1,8 @@
    13.4 +<?xml version="1.0"?>
    13.5 +<!DOCTYPE settings PUBLIC "-//NetBeans//DTD Session settings 1.0//EN" "http://www.netbeans.org/dtds/sessionsettings-1_0.dtd">
    13.6 +<settings version="1.0">
    13.7 +    <module name="org.netbeans.modules.changelog/1"/>
    13.8 +    <instanceof class="org.openide.ServiceType"/>
    13.9 +    <instanceof class="org.netbeans.modules.changelog.html.ChangeLogHTMLService"/>
   13.10 +    <instance class="org.netbeans.modules.changelog.html.ChangeLogHTMLService"/>
   13.11 +</settings>
    14.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/resources/layer.xml	Sun Jul 07 19:37:03 2002 +0000
    14.3 @@ -0,0 +1,89 @@
    14.4 +<?xml version="1.0" encoding="UTF-8"?>
    14.5 +<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.0//EN" "http://www.netbeans.org/dtds/filesystem-1_0.dtd">
    14.6 +<!--
    14.7 +
    14.8 +                 Sun Public License Notice
    14.9 +
   14.10 + The contents of this file are subject to the Sun Public License
   14.11 + Version 1.0 (the "License"). You may not use this file except in
   14.12 + compliance with the License. A copy of the License is available at
   14.13 + http://www.sun.com/
   14.14 +
   14.15 + The Original Code is NetBeans. The Initial Developer of the Original
   14.16 + Code is Ralph Krueger. 
   14.17 +
   14.18 +-->
   14.19 +<filesystem>
   14.20 +  <folder name="Menu">
   14.21 +    <folder name="Versioning">
   14.22 +      <file name="org-netbeans-modules-changelog-ChangeLogAction.instance"/>
   14.23 +    </folder>
   14.24 +  </folder>
   14.25 +
   14.26 +
   14.27 +  <folder name="Actions">
   14.28 +    <folder name="Versioning">
   14.29 +      <folder name="JavaCvs">
   14.30 +        <file name="org-netbeans-modules-changelog-ChangeLogAction.instance"/> 
   14.31 +      </folder>
   14.32 +    </folder>
   14.33 +  </folder>
   14.34 +
   14.35 +  <folder name="vcs">
   14.36 +      <folder name="CvsClient">
   14.37 +          <folder name="PopupMenu">
   14.38 +              <file name="ChangeLogAction.instance">
   14.39 +                <attr name="instanceClass" stringvalue="org.netbeans.modules.changelog.ChangeLogAction"/>
   14.40 +              </file>   
   14.41 +              <attr boolvalue="true" name="ChangeLogAction.instance/Separator2.instance"/>
   14.42 +              <attr boolvalue="true" name="org-netbeans-modules-cvsclient-actions-JAnnotateCommandAction.instance/ChangeLogAction.instance"/>
   14.43 +          </folder>
   14.44 +       </folder>
   14.45 +  </folder> 
   14.46 +    <folder name="Templates">
   14.47 +        <!-- templates for services in Lookup, should have the same subdirectory as objects under the -->
   14.48 +        <folder name="Services">
   14.49 +                
   14.50 +            <folder name="ChangeLogHtmlType">
   14.51 +                <attr name="SystemFileSystem.icon" urlvalue="nbresloc:/org/netbeans/modules/changelog/resources/type.gif" />
   14.52 +                <attr name="SystemFileSystem.localizingBundle" stringvalue="org.netbeans.modules.changelog.Bundle"/>
   14.53 +
   14.54 +                <file name="defaultChangeLogHtmlType.settings" url="defaultChangeLogHtmlType.settings">
   14.55 +		    <attr name="template" boolvalue="true"/>
   14.56 +		    <attr name="SystemFileSystem.localizingBundle" stringvalue="org.netbeans.modules.changelog.Bundle"/>
   14.57 +		    <attr name="SystemFileSystem.icon" urlvalue="nbres:/org/netbeans/modules/changelog/resources/type.gif"/>
   14.58 +		</file>
   14.59 +                
   14.60 +            </folder>
   14.61 +        </folder>
   14.62 +    </folder>
   14.63 +
   14.64 +    <!-- register services with Lookup -->
   14.65 +    <folder name="Services">
   14.66 +        <folder name="ChangeLogHtmlType">
   14.67 +            <attr name="SystemFileSystem.icon" urlvalue="nbresloc:/org/netbeans/modules/changelog/resources/type.gif" />
   14.68 +            <attr name="SystemFileSystem.localizingBundle" stringvalue="org.netbeans.modules.changelog.Bundle"/>
   14.69 +                <file name="Netbeans.settings" url="Netbeans.settings">
   14.70 +		</file>
   14.71 +                <file name="Sourceforge.settings" url="Sourceforge.settings">
   14.72 +		</file>
   14.73 +        </folder>
   14.74 +    </folder>
   14.75 +        
   14.76 +    <folder name="UI">
   14.77 +        <!-- settings categories UI presentation -->
   14.78 +        <folder name="Services">
   14.79 +        
   14.80 +            <folder name="SourceCreationAndManagement">
   14.81 +                <file name="ChangeLogHtmlType.shadow">
   14.82 +<![CDATA[Services/ChangeLogHtmlType
   14.83 +SystemFileSystem
   14.84 +]]>
   14.85 +                </file>
   14.86 +            </folder> <!-- sources -->
   14.87 +      
   14.88 +        </folder> <!-- Services -->
   14.89 +
   14.90 +    </folder> <!-- UI -->
   14.91 +       
   14.92 +</filesystem>
    15.1 --- a/javacvs/changelog/src/org/netbeans/modules/changelog/wizard/Bundle.properties	Sun Jul 07 14:52:32 2002 +0000
    15.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/wizard/Bundle.properties	Sun Jul 07 19:37:03 2002 +0000
    15.3 @@ -26,6 +26,7 @@
    15.4  OutputPanel.cbHtmlFile.title=HTML File
    15.5  OutputPanel.cbTextFile.title=Plain Text File
    15.6  OutputPanel.cbDescending.title=Descending
    15.7 +OutputPanel.cbOutputWindow.title=View in Output Window
    15.8  
    15.9  
   15.10  FilterPanel.lblStatDate.text=Date Range\ :
   15.11 @@ -40,10 +41,18 @@
   15.12  FilterPanel.RegExp=Regular Expression
   15.13  
   15.14  FilterPanel.lblDateFormat.text=Format follows cvs log syntax, eg. date1 < date2; date1<; <date1
   15.15 +FilterPanel.lblRevisionRange.text=Format follows cvs log syntax, eg. rev1 : rev2
   15.16 +FilterPanel.lblFilePattern.text=Contains file matching pattern \:
   15.17  
   15.18 -FilterPanel.lblRevisionRange.text=Format follows cvs log syntax, eg. rev1 : rev2
   15.19 +HtmlPanel.lblDiffURL=File Diff URL Pattern\:
   15.20 +HtmlPanel.lblRevisionURL.text=File's Revision URL\:
   15.21  
   15.22 -OutputPanel.cbOutputWindow.title=View in Output Window
   15.23 +HtmlPanel.lblCVSROOT.text=CVS Repository Root Prefix \:
   15.24  
   15.25 +HtmlPanel.taExplanation.text=Available Replace Arguments:\n{current_revision} - the revision that is part of the commit log.\n{prev_revision} - the revision that was overwritten by the change in the commit.\n{file_path} - the repository filename.\n\ 
   15.26  
   15.27 -FilterPanel.lblFilePattern.text=Contains file matching pattern \:
   15.28 +HtmlPanel.lblServerDef.text=Server-Specific processing pattern \:
   15.29 +
   15.30 +HtmlPanel.btnEdit.text=Edit
   15.31 +
   15.32 +HtmlPanel.btnSave.text=Save As...
    16.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/wizard/HtmlPanel.form	Sun Jul 07 19:37:03 2002 +0000
    16.3 @@ -0,0 +1,72 @@
    16.4 +<?xml version="1.0" encoding="UTF-8" ?>
    16.5 +
    16.6 +<Form version="1.0" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
    16.7 +  <Properties>
    16.8 +    <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
    16.9 +      <Dimension value="[600, 300]"/>
   16.10 +    </Property>
   16.11 +    <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
   16.12 +      <Dimension value="[400, 200]"/>
   16.13 +    </Property>
   16.14 +  </Properties>
   16.15 +  <AuxValues>
   16.16 +    <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,44,0,0,2,10"/>
   16.17 +  </AuxValues>
   16.18 +
   16.19 +  <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout"/>
   16.20 +  <SubComponents>
   16.21 +    <Component class="javax.swing.JLabel" name="lblServerDef">
   16.22 +      <Properties>
   16.23 +        <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
   16.24 +          <ResourceString bundle="org/netbeans/modules/changelog/wizard/Bundle.properties" key="HtmlPanel.lblServerDef.text" replaceFormat="org.openide.util.NbBundle.getBundle({sourceFileName}.class).getString(&quot;{key}&quot;)"/>
   16.25 +        </Property>
   16.26 +      </Properties>
   16.27 +      <Constraints>
   16.28 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
   16.29 +          <GridBagConstraints gridX="-1" gridY="-1" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="12" insetsLeft="12" insetsBottom="0" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
   16.30 +        </Constraint>
   16.31 +      </Constraints>
   16.32 +    </Component>
   16.33 +    <Component class="javax.swing.JComboBox" name="comServerDef">
   16.34 +      <Constraints>
   16.35 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
   16.36 +          <GridBagConstraints gridX="-1" gridY="-1" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="12" insetsLeft="6" insetsBottom="0" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
   16.37 +        </Constraint>
   16.38 +      </Constraints>
   16.39 +    </Component>
   16.40 +    <Component class="javax.swing.JButton" name="btnEdit">
   16.41 +      <Properties>
   16.42 +        <Property name="toolTipText" type="java.lang.String" value="null"/>
   16.43 +        <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
   16.44 +          <ResourceString bundle="org/netbeans/modules/changelog/wizard/Bundle.properties" key="HtmlPanel.btnEdit.text" replaceFormat="org.openide.util.NbBundle.getBundle({sourceFileName}.class).getString(&quot;{key}&quot;)"/>
   16.45 +        </Property>
   16.46 +      </Properties>
   16.47 +      <Constraints>
   16.48 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
   16.49 +          <GridBagConstraints gridX="-1" gridY="-1" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="12" insetsLeft="6" insetsBottom="0" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
   16.50 +        </Constraint>
   16.51 +      </Constraints>
   16.52 +    </Component>
   16.53 +    <Component class="javax.swing.JButton" name="btnSaveAs">
   16.54 +      <Properties>
   16.55 +        <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
   16.56 +          <ResourceString bundle="org/netbeans/modules/changelog/wizard/Bundle.properties" key="HtmlPanel.btnSave.text" replaceFormat="org.openide.util.NbBundle.getBundle({sourceFileName}.class).getString(&quot;{key}&quot;)"/>
   16.57 +        </Property>
   16.58 +      </Properties>
   16.59 +      <Constraints>
   16.60 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
   16.61 +          <GridBagConstraints gridX="-1" gridY="-1" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="12" insetsLeft="6" insetsBottom="0" insetsRight="12" anchor="17" weightX="0.0" weightY="0.0"/>
   16.62 +        </Constraint>
   16.63 +      </Constraints>
   16.64 +    </Component>
   16.65 +    <Container class="javax.swing.JPanel" name="pnlCustom">
   16.66 +      <Constraints>
   16.67 +        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
   16.68 +          <GridBagConstraints gridX="0" gridY="1" gridWidth="4" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="6" insetsLeft="12" insetsBottom="12" insetsRight="12" anchor="18" weightX="0.0" weightY="0.5"/>
   16.69 +        </Constraint>
   16.70 +      </Constraints>
   16.71 +
   16.72 +      <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
   16.73 +    </Container>
   16.74 +  </SubComponents>
   16.75 +</Form>
    17.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    17.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/wizard/HtmlPanel.java	Sun Jul 07 19:37:03 2002 +0000
    17.3 @@ -0,0 +1,216 @@
    17.4 +/*
    17.5 + *                 Sun Public License Notice
    17.6 + *
    17.7 + * The contents of this file are subject to the Sun Public License
    17.8 + * Version 1.0 (the "License"). You may not use this file except in
    17.9 + * compliance with the License. A copy of the License is available at
   17.10 + * http://www.sun.com/
   17.11 + *
   17.12 + * The Original Code is NetBeans. The Initial Developer of the Original
   17.13 + * Code is Ralph Krueger. 
   17.14 + */
   17.15 +package org.netbeans.modules.changelog.wizard;
   17.16 +
   17.17 +/**
   17.18 + *
   17.19 + * @author  ralph
   17.20 + */
   17.21 +
   17.22 +import org.openide.util.*;
   17.23 +import javax.swing.event.*;
   17.24 +import javax.swing.*;
   17.25 +import java.util.*;
   17.26 +import org.netbeans.modules.changelog.*;
   17.27 +import org.netbeans.modules.changelog.html.*;
   17.28 +
   17.29 +
   17.30 +public class HtmlPanel extends javax.swing.JPanel implements org.openide.WizardDescriptor.Panel {
   17.31 +    
   17.32 +    private HtmlPanelCustomizer customizer;
   17.33 +    private ChangeLogHTMLService[] array;
   17.34 +    /** Creates new form FilterPanel */
   17.35 +    public HtmlPanel() {
   17.36 +        initComponents();
   17.37 +        putClientProperty ("WizardPanel_contentSelectedIndex", new Integer (2)); // NOI18N
   17.38 +        customizer = new HtmlPanelCustomizer();
   17.39 +        customizer.disableEditing(true);
   17.40 +        pnlCustom.add(customizer, java.awt.BorderLayout.CENTER);
   17.41 +        //INIT combobox..
   17.42 +        Lookup.Template template = new Lookup.Template(ChangeLogHTMLService.class);
   17.43 +        Lookup.Result result = Lookup.getDefault().lookup(template);
   17.44 +        Collection coll = result.allInstances();
   17.45 +        array = new ChangeLogHTMLService[coll.size() + 1];
   17.46 +        String[] names = new String[coll.size() + 1];
   17.47 +        Iterator it = coll.iterator();
   17.48 +        int count = 1;
   17.49 +        while (it.hasNext()) {
   17.50 +            ChangeLogHTMLService serv = (ChangeLogHTMLService)it.next();
   17.51 +            array[count] = serv;
   17.52 +            names[count] = serv.getName();
   17.53 +            count = count + 1;
   17.54 +        }
   17.55 +        array[0] = new ChangeLogHTMLService();
   17.56 +        names[0] = "No server specific processing";
   17.57 +        comServerDef.setModel(new DefaultComboBoxModel(names));
   17.58 +        comServerDef.setSelectedIndex(0);
   17.59 +        
   17.60 +        
   17.61 +        
   17.62 +        comServerDef.addActionListener(new java.awt.event.ActionListener() {
   17.63 +            public void actionPerformed(java.awt.event.ActionEvent event) {
   17.64 +                changeItem();
   17.65 +            }
   17.66 +        });
   17.67 +        btnEdit.addActionListener(new java.awt.event.ActionListener() {
   17.68 +            public void actionPerformed(java.awt.event.ActionEvent event) {
   17.69 +                doEdit();
   17.70 +            }
   17.71 +        });
   17.72 +    }
   17.73 +    
   17.74 +    /** This method is called from within the constructor to
   17.75 +     * initialize the form.
   17.76 +     * WARNING: Do NOT modify this code. The content of this method is
   17.77 +     * always regenerated by the Form Editor.
   17.78 +     */
   17.79 +    private void initComponents() {//GEN-BEGIN:initComponents
   17.80 +        java.awt.GridBagConstraints gridBagConstraints;
   17.81 +
   17.82 +        lblServerDef = new javax.swing.JLabel();
   17.83 +        comServerDef = new javax.swing.JComboBox();
   17.84 +        btnEdit = new javax.swing.JButton();
   17.85 +        btnSaveAs = new javax.swing.JButton();
   17.86 +        pnlCustom = new javax.swing.JPanel();
   17.87 +
   17.88 +        setLayout(new java.awt.GridBagLayout());
   17.89 +
   17.90 +        setPreferredSize(new java.awt.Dimension(600, 300));
   17.91 +        setMinimumSize(new java.awt.Dimension(400, 200));
   17.92 +        lblServerDef.setText(org.openide.util.NbBundle.getBundle(HtmlPanel.class).getString("HtmlPanel.lblServerDef.text"));
   17.93 +        gridBagConstraints = new java.awt.GridBagConstraints();
   17.94 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
   17.95 +        gridBagConstraints.insets = new java.awt.Insets(12, 12, 0, 0);
   17.96 +        add(lblServerDef, gridBagConstraints);
   17.97 +
   17.98 +        gridBagConstraints = new java.awt.GridBagConstraints();
   17.99 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
  17.100 +        gridBagConstraints.insets = new java.awt.Insets(12, 6, 0, 0);
  17.101 +        add(comServerDef, gridBagConstraints);
  17.102 +
  17.103 +        btnEdit.setToolTipText("null");
  17.104 +        btnEdit.setText(org.openide.util.NbBundle.getBundle(HtmlPanel.class).getString("HtmlPanel.btnEdit.text"));
  17.105 +        gridBagConstraints = new java.awt.GridBagConstraints();
  17.106 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
  17.107 +        gridBagConstraints.insets = new java.awt.Insets(12, 6, 0, 0);
  17.108 +        add(btnEdit, gridBagConstraints);
  17.109 +
  17.110 +        btnSaveAs.setText(org.openide.util.NbBundle.getBundle(HtmlPanel.class).getString("HtmlPanel.btnSave.text"));
  17.111 +        gridBagConstraints = new java.awt.GridBagConstraints();
  17.112 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
  17.113 +        gridBagConstraints.insets = new java.awt.Insets(12, 6, 0, 12);
  17.114 +        add(btnSaveAs, gridBagConstraints);
  17.115 +
  17.116 +        pnlCustom.setLayout(new java.awt.BorderLayout());
  17.117 +
  17.118 +        gridBagConstraints = new java.awt.GridBagConstraints();
  17.119 +        gridBagConstraints.gridx = 0;
  17.120 +        gridBagConstraints.gridy = 1;
  17.121 +        gridBagConstraints.gridwidth = 4;
  17.122 +        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
  17.123 +        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
  17.124 +        gridBagConstraints.weighty = 0.5;
  17.125 +        gridBagConstraints.insets = new java.awt.Insets(6, 12, 12, 12);
  17.126 +        add(pnlCustom, gridBagConstraints);
  17.127 +
  17.128 +    }//GEN-END:initComponents
  17.129 +
  17.130 +    public boolean isValid() {
  17.131 +        return true;
  17.132 +    }
  17.133 +    
  17.134 +    private void changeItem() {
  17.135 +        int index = comServerDef.getSelectedIndex();
  17.136 +        customizer.setObject(array[index].clone());
  17.137 +        customizer.disableEditing(true);
  17.138 +    }
  17.139 +    
  17.140 +    private void doEdit() {
  17.141 +        customizer.disableEditing(false);
  17.142 +    }
  17.143 +    
  17.144 +    private void doSaveAs() {
  17.145 +        
  17.146 +    }
  17.147 +
  17.148 +    /** Provides the wizard panel with the opportunity to update the
  17.149 +     * settings with its current customized state.
  17.150 +     * Rather than updating its settings with every change in the GUI, it should collect them,
  17.151 +     * and then only save them when requested to by this method.
  17.152 +     * Also, the original settings passed to {@link #readSettings} should not be modified (mutated);
  17.153 +     * rather, the (copy) passed in here should be mutated according to the collected changes.
  17.154 +     * This method can be called multiple times on one instance of <code>WizardDescriptor.Panel</code>.
  17.155 +     * @param settings the object representing a settings of the wizard
  17.156 +     */
  17.157 +    public void storeSettings(Object settings) {
  17.158 +        if (settings instanceof ChangeLogProcessor) {
  17.159 +            ChangeLogProcessor proces = (ChangeLogProcessor)settings;
  17.160 +            if (comServerDef.getSelectedIndex() != 0) {
  17.161 +                int index = comServerDef.getSelectedIndex();
  17.162 +                proces.setHtmlSiteProcessor(array[index]);
  17.163 +            } else {
  17.164 +                proces.setHtmlSiteProcessor(null);
  17.165 +            }
  17.166 +        }
  17.167 +    }    
  17.168 +    
  17.169 +    /** Add a listener to changes of the panel's validity.
  17.170 +     * @param l the listener to add
  17.171 +     * @see #isValid
  17.172 +     */
  17.173 +    public void addChangeListener(ChangeListener l) {
  17.174 +    }    
  17.175 +    
  17.176 +    /** Get the component displayed in this panel.
  17.177 +     * @return the component
  17.178 +     */
  17.179 +    public java.awt.Component getComponent() {
  17.180 +        return this;
  17.181 +    }
  17.182 +    
  17.183 +    /** Help for this panel.
  17.184 +     * When the panel is active, this is used as the help for the wizard dialog.
  17.185 +     * @return the help or <code>null</code> if no help is supplied
  17.186 +     */
  17.187 +    public HelpCtx getHelp() {
  17.188 +        return new HelpCtx(this.getClass());
  17.189 +    }
  17.190 +    
  17.191 +    /** Provides the wizard panel with the current data--either
  17.192 +     * the default data or already-modified settings, if the user used the previous and/or next buttons.
  17.193 +     * This method can be called multiple times on one instance of <code>WizardDescriptor.Panel</code>.
  17.194 +     * @param settings the object representing wizard panel state, as originally supplied to {@link WizardDescriptor#WizardDescriptor(WizardDescriptor.Iterator,Object)}
  17.195 +     * @exception IllegalStateException if the the data provided
  17.196 +     * by the wizard are not valid.
  17.197 +     */
  17.198 +    public void readSettings(Object settings) {
  17.199 +        if (settings instanceof ChangeLogProcessor) {
  17.200 +            ChangeLogProcessor proces = (ChangeLogProcessor)settings;
  17.201 +            customizer.setObject(proces.getHtmlSiteProcessor());
  17.202 +        }
  17.203 +    }
  17.204 +    
  17.205 +    /** Remove a listener to changes of the panel's validity.
  17.206 +     * @param l the listener to remove
  17.207 +     */
  17.208 +    public void removeChangeListener(ChangeListener l) {
  17.209 +    }
  17.210 +    
  17.211 +    // Variables declaration - do not modify//GEN-BEGIN:variables
  17.212 +    private javax.swing.JButton btnEdit;
  17.213 +    private javax.swing.JComboBox comServerDef;
  17.214 +    private javax.swing.JPanel pnlCustom;
  17.215 +    private javax.swing.JLabel lblServerDef;
  17.216 +    private javax.swing.JButton btnSaveAs;
  17.217 +    // End of variables declaration//GEN-END:variables
  17.218 +    
  17.219 +}
    18.1 --- a/javacvs/changelog/src/org/netbeans/modules/changelog/wizard/OutputPanel.java	Sun Jul 07 14:52:32 2002 +0000
    18.2 +++ b/javacvs/changelog/src/org/netbeans/modules/changelog/wizard/OutputPanel.java	Sun Jul 07 19:37:03 2002 +0000
    18.3 @@ -26,7 +26,8 @@
    18.4  import java.io.*;
    18.5  
    18.6  public class OutputPanel extends javax.swing.JPanel 
    18.7 -                         implements org.openide.WizardDescriptor.Panel {
    18.8 +                         implements org.openide.WizardDescriptor.Panel,
    18.9 +                                    org.openide.WizardDescriptor.FinishPanel  {
   18.10      
   18.11      /** Creates new form OutputPanel */
   18.12      public OutputPanel() {