<?xml version="1.0" encoding="UTF-8"?>
<!--
The contents of this file are subject to the terms of the Common Development
and Distribution License (the License). You may not use this file except in
compliance with the License.

You can obtain a copy of the License at http://www.netbeans.org/cddl.html
or http://www.netbeans.org/cddl.txt.

When distributing Covered Code, include this CDDL Header Notice in each file
and include the License file at http://www.netbeans.org/cddl.txt.
If applicable, add the following below the CDDL Header, with the fields
enclosed by brackets [] replaced by your own identifying information:
"Portions Copyrighted [year] [name of copyright owner]"

The Original Software is NetBeans. The Initial Developer of the Original
Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
Microsystems, Inc. All Rights Reserved.
--><!DOCTYPE apichanges PUBLIC "-//NetBeans//DTD API changes list 1.0//EN" "../../nbbuild/javadoctools/apichanges.dtd">

<apichanges>
<apidefs>
<apidef name="dialogs">Dialogs API</apidef>
</apidefs>
<changes>
    <change id="WizardDescriptor.AsynchronousInstantiatingIterator">
           <api name="dialogs"/>
           <summary>Interface <code>AsynchronousInstantiatingIterator</code> added</summary>
           <version major="6" minor="5"/>
           <date day="6" month="12" year="2005"/>
           <author login="jrechtacek"/>
           <compatibility addition="yes" binary="compatible" semantic="compatible" source="compatible" deprecation="no" deletion="no" modification="no"/>
           <description>
             The <code>AsynchronousInstantiatingIterator</code> allows to implement
             asynchronous instantating of newly created objects. Wizard's framework
             esures that the method <code>AsynchronousInstantiatingIterator.instantiate()</code>
             will be called ouside of an event queue.
           </description>
           <class package="org.openide" name="WizardDescriptor"/>
           <issue number="62161"/>
    </change>

    <change id="AsynchronousValidatingPanel">
           <api name="dialogs"/>
           <summary>Interface <code>AsynchronousValidationgPanel</code> added</summary>
           <version major="6" minor="2"/>
           <date day="16" month="5" year="2005"/>
           <author login="pkuzel"/>
           <compatibility addition="yes" binary="compatible" semantic="compatible" source="compatible" deprecation="no" deletion="no" modification="no"/>
           <description>
             The <code>AsynchronousValidatingPanel</code> allows to implement
             background validation that does not block UI thread. I.e. UI
             thread can be used to render validation progress.
           </description>
           <class package="org.openide" name="WizardDescriptor"/>
           <issue number="58530"/>
    </change>

    <change id="NotifyDescriptor.getDefaultValue">
       <api name="dialogs"/>
       <summary>Add method <code>NotifyDescriptor.getDefaultValue()</code> </summary>
       <version major="5" minor="9"/>
       <date day="28" month="3" year="2005"/>
       <author login="jrechtacek"/>
       <compatibility addition="yes" binary="compatible" semantic="compatible" source="compatible" deprecation="no" deletion="no" modification="no"/>
       <description>
         The <code>NotifyDescriptor.getDefaultValue()</code> returns object which represents the default value.
         This default value is introduced in the constructor of <code>NotifyDescriptor</code>.
       </description>
       <class package="org.openide" name="NotifyDescriptor"/>
       <issue number="56878"/>
    </change>
<change id="add-leaf-attribute-to-DialogDescriptor">
      <api name="dialogs"/>
      <summary>Added paramater <code>leaf</code> to <code>DialogDescriptor</code>
</summary>
      <version major="5" minor="5"/>
      <date day="8" month="1" year="2005"/>
      <author login="jrechtacek"/>
      <compatibility addition="yes" binary="compatible" source="compatible" semantic="compatible" deprecation="no" deletion="no" modification="no"/>
      <description>
        <p>Added the parameter <code>leaf</code> in constructor of the <code>DialogDescriptor</code>.
        The parameter is not mandatory and can be set manually.
        If this parameter is <code>false</code> (as default), all works as before.
        If the parameter <code>leaf</code> is <code>true</code>, then a dialog which is created by this
        descriptor cannot own any other windows.
        </p>
      </description>
      <class package="org.openide" name="DialogDescriptor"/>
    </change>
<change>
     <api name="dialogs"/>
     <summary>Added WizardDescriptor.getInstantiatedObjects</summary>
     <version major="4" minor="41"/>
     <date day="2" month="7" year="2004"/>
     <author login="jrechtacek"/>
     <compatibility addition="yes" binary="compatible" source="compatible" semantic="compatible" deprecation="no" deletion="no" modification="no"/>
     <description>
        Added the new method <code>Set getInstantiatedObjects</code>. This method
        returns set of newly instantiated objects if the wizard has been correctly finished.
        The empty set is returned as default, if the wizard uses the <code>InstantiatingIterator</code>
        then returns a set of <code>Object</code> as same as <code>InstantiatingIterator.instantiate()</code> does.
        The method throws the exception <code>IllegalStateException</code> if this method
        is called on the unfinished wizard.
     </description>
     <class package="org.openide" name="WizardDescriptor"/>
     <issue number="44513"/>
     </change>
<change>
     <api name="dialogs"/>
     <summary>Made instantiating iterator</summary>
     <version major="4" minor="33"/>
     <date day="4" month="5" year="2004"/>
     <author login="jrechtacek"/>
     <compatibility addition="yes" binary="compatible" source="compatible" semantic="compatible" deprecation="no" deletion="no" modification="no"/>
     <description>
     Added a special interface for a wizard that needs to controll instantiating new objects.
     This interface can replace TemplateWizard.Iterator in template's declaration.
     New <code>WizardDescriptor.InstantiatingIterator</code> extends <code>WizardDescriptor.Iterator</code>
     and contains the methods for <code>initialize/uninitialize</code> the iterator and the central method
     <code>instantiate</code> which returns a set on instantiated objects.
     </description>
     <class package="org.openide" name="WizardDescriptor"/>
     <issue number="42192"/>
    </change>
<change>
     <api name="dialogs"/>
     <summary>Allow dynamically enable/disable Finish button</summary>
     <version major="4" minor="28"/>
     <date day="29" month="3" year="2004"/>
     <author login="jrechtacek"/>
     <compatibility addition="yes" binary="compatible" source="compatible" semantic="compatible" deprecation="no" deletion="no" modification="no"/>
     <description>
     Added a special interface for a panel that needs to dynamically enabled
     <code>Finish</code> button. This interface <code>WizardDescriptor.FinishablePanel</code> 
     extends <code>WizardDescriptor.Panel</code> and adds a method <code>isFinishPanel()</code>
     which returns if <code>Finish</code> button could be enabled. <code>WizardDescriptor.FinishPanel</code>
     is now deprecated, the preferred way is using <code>FinishablePanel</code> instead.
     </description>
     <class package="org.openide" name="WizardDescriptor"/>
     <issue number="7706"/>
    </change>
<change>
     <api name="dialogs"/>
     <summary>Allow vetoable Next/Finish validation in wizard</summary>
     <version major="4" minor="28"/>
     <date day="29" month="3" year="2004"/>
     <author login="jrechtacek"/>
     <compatibility addition="yes" binary="compatible" source="compatible" semantic="compatible" deprecation="no" deletion="no" modification="no"/>
     <description>
     Added a special interface for panels that need to do additional
     validation when <code>Next</code> or <code>Finish</code> button is clicked.
     This interface <code>WizardDescriptor.ValidatingPanel</code> extends <code>WizardDescriptor.Panel</code>
     and adds a method <code>validate()</code> which is called when un user clicked <code>Next</code>
     or <code>Finish</code> button. If validation fails  the wizard doesn't move to next panel nor finish, 
     the <code>WizardValidationException</code> is thrown and it returns which component
     fails (in a wizard's panel) and provides a error message to notify the user about.
     </description>
     <class package="org.openide" name="WizardDescriptor"/>
     <class package="org.openide" name="WizardValidationException"/>
     <issue number="23116"/>
    </change>
</changes>
<htmlcontents>
<head>
<title>Change History for the Dialogs API</title>
<link rel="stylesheet" href="prose.css" type="text/css"/>
</head>
<body>
<p class="overviewlink">
<a href="overview-summary.html">Overview</a>
</p>
<h1>Introduction</h1>
<h2>What do the Dates Mean?</h2>
<p>The supplied dates indicate when the API change was made, on the CVS
trunk. From this you can generally tell whether the change should be
present in a given build or not; for trunk builds, simply whether it
was made before or after the change; for builds on a stabilization
branch, whether the branch was made before or after the given date. In
some cases corresponding API changes have been made both in the trunk
and in an in-progress stabilization branch, if they were needed for a
bug fix; this ought to be marked in this list.</p>
<ul>
<li>The <code>release41</code> branch was made on Apr 03 '05 for use in the NetBeans 4.1 release.
Specification versions: 6.0 begins after this point.</li>
<li>The <code>release40</code> branch was made on Nov 01 '04 for use in the NetBeans 4.0 release.
Specification versions: 5.0 begins after this point.</li>
</ul>
<hr/>
<standard-changelists module-code-name="org.openide.dialogs"/>
<hr/>
<p>@FOOTER@</p>
</body>
</htmlcontents>
</apichanges>
