blob: dba1223725941f83fbed780941265f7bcb8701a6 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!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="DialogParent">
<api name="dialogs"/>
<summary>Allow to specify dialog parent window when using DialogDisplayer.</summary>
<version major="7" minor="38"/>
<date day="18" month="4" year="2014"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
<p>
When a document window is floated (decoupled from the main IDE window)
and has focus then a new dialog window will use it as a parent window by default.
That means such non-modal dialogs will close when that document window is closed.
To avoid such situation pass <code>WindowManager.getDefault().getMainWindow()</code> as
dialog parent window when creating the dialog instance.
</p>
</description>
<class package="org.openide" name="DialogDisplayer"/>
<issue number="242854"/>
</change>
<change id="NoDefaultClose">
<api name="dialogs"/>
<summary>Added an option to disable the closing of a dialog with ESC key
and title bar close button.</summary>
<version major="7" minor="35"/>
<date day="17" month="9" year="2013"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
<p>
Added method <code>setNoDefaultClose(boolean)</code> to
<code>NotifyDescriptor</code> class which disables ESC key closing
of dialog window and also disables close button in dialogs title
bar. When the method is invoked with true parameter then the dialog
window can be closed only by pressing one of its Ok/Yes/No/Cancel buttons
(depending on the specified closing options).
</p>
</description>
<class package="org.openide" name="NotifyDescriptor"/>
<issue number="196200"/>
</change>
<change id="ExtendedAsynchronousValidatingPanel">
<api name="dialogs"/>
<summary>Added <code>ExtendedAsynchronousValidatingPanel</code></summary>
<version major="7" minor="31"/>
<date day="10" month="4" year="2013"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
<p>
Added a new wizard panel type which introduces <code>finishValidation()</code>
method. It is complementary to <code>prepareValidation()</code>
method in <code>AsynchronousValidatingPanel</code> and should be
used to unlock user interface when the validation is finished.
</p>
</description>
<class package="org.openide" name="WizardDescriptor"/>
<issue number="228411"/>
</change>
<change id="BackgroundInstantiatingIterator">
<api name="dialogs"/>
<summary>Added <code>BackgroundInstantiatingIterator</code></summary>
<version major="7" minor="22"/>
<date day="7" month="9" year="2011"/>
<author login="jglick"/>
<compatibility addition="yes">
<p>
Any code <em>initiating</em> an instantiating iterator using
<code>org.openide.loaders.TemplateWizard.instantiate</code> should
not do so from the event dispatch thread if a background iterator
might have been selected. Normally such initiating code is part
of infrastructure, such as the project system UI.
</p>
</compatibility>
<description>
<p>
Added a new form of instantiating wizard iterator which can do
its work after the wizard has been closed.
</p>
</description>
<class package="org.openide" name="WizardDescriptor"/>
<issue number="191951"/>
</change>
<change id="WizardMove_Next_Previous">
<api name="dialogs"/>
<summary>Public API to move wizard to its next/previous step</summary>
<version major="7" minor="19"/>
<date day="13" month="4" year="2011"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
This change makes four existing methods in
<a href="@TOP@/org/openide/WizardDescriptor.html">WizardDescriptor</a>
public: doNextClick(), doPreviousClick(), doFinishClick() and doCancelClick().
In previous version the methods were declared final and package
private.<br/>
Using these methods it will be possible to move to wizard's next step
without clicking the Next button for example when user double-clicks
some selected item in wizard's panel .
</description>
<class package="org.openide" name="WizardDescriptor"/>
<issue number="197697"/>
</change>
<change id="Dialogs_NotificationLineSupport">
<api name="dialogs"/>
<summary>Simplify handling error/warning/info messages in dialogs</summary>
<version major="7" minor="10"/>
<date day="28" month="11" year="2008"/>
<author login="jrechtacek"/>
<compatibility addition="yes"/>
<description>
Two new methods in <a href="@TOP@/org/openide/NotifyDescriptor.html">NotifyDescriptor</a> were added to allow API client to
create <a href="@TOP@/org/openide/NotificationLineSupport.html">NotificationLineSupport</a> which allow handling
error/warning/info messages in dialogs. If a dialog descriptor creates
this support, <a href="@TOP@/org/openide/DialogDisplayer.html">DialogDisplayer</a>
allocates necessary space at the bottom of dialog where API clients
can set info/warning/error messages with appropriate icons.
</description>
<class package="org.openide" name="NotifyDescriptor"/>
<class package="org.openide" name="NotificationLineSupport"/>
<issue number="148730"/>
</change>
<change id="WizardDescriptor_new_constants">
<api name="dialogs"/>
<summary>New WizardDescriptor constants introduced for info and warning messages</summary>
<version major="7" minor="8"/>
<date day="3" month="7" year="2008"/>
<author login="mkubec"/>
<compatibility addition="yes"/>
<description>
Two new constants for warning and info messages were introduced. Info message is annotated by blue info icon
and warning message is annotated by orange warning icon with exclamation mark. Message foreground color is set to
Label foreground standard color.
</description>
<class package="org.openide" name="WizardDescriptor"/>
<issue number="137737"/>
</change>
<change id="WizardDescriptor_constants">
<api name="dialogs"/>
<summary>Wizard Descriptor properties changed to constants, two new constants introduced</summary>
<version major="7" minor="8"/>
<date day="3" month="7" year="2008"/>
<author login="mkubec"/>
<compatibility addition="yes"/>
<description>
Freeform property strings are replaced by public constants.
</description>
<class package="org.openide" name="WizardDescriptor"/>
<issue number="138128"/>
</change>
<change id="WizardDescriptor.ArrayIterator-generic-constructor">
<api name="dialogs"/>
<summary>Generics-friendly constructor added for <code>WizardDescriptor.ArrayIterator</code></summary>
<version major="7" minor="5"/>
<date day="15" month="6" year="2007"/>
<author login="jglick"/>
<compatibility addition="yes"/>
<description>
A constructor accepting <code>List&lt;Panel&lt;Data>></code> was added
to <code>ArrayIterator</code> to avoid the need for generic array construction
by client code.
</description>
<class package="org.openide" name="WizardDescriptor"/>
<issue number="106208"/>
</change>
<change id="default-constructor-for-wizarddescriptor">
<api name="dialogs"/>
<summary>New <code>WizardDescriptor</code> constructor.</summary>
<version major="7" minor="4"/>
<date day="30" month="4" year="2007"/>
<author login="jtulach"/>
<compatibility addition="yes" binary="compatible" semantic="compatible" source="compatible" deprecation="no" deletion="no" modification="no"/>
<description>
New <code>WizardDescriptor</code> constructor for subclasses.
It allows to eliminate unchecked warnings.
</description>
<class package="org.openide" name="WizardDescriptor"/>
<issue number="102261"/>
</change>
<change id="notifyLater_improved">
<api name="dialogs"/>
<summary>Method notifyLater improved to work before main window is opened</summary>
<version major="7" minor="3"/>
<date day="6" month="2" year="2007"/>
<author login="dsimonek"/>
<compatibility addition="no" binary="compatible" semantic="compatible" source="incompatible" deprecation="no" deletion="no" modification="no"/>
<description>
Implementation of method notifyLater improved to work before
main window is opened. For example: When method is called from
ModuleInstall.restored, then modal dialog is opened and blocks main
window until dialog is closed. Typical use case is login dialog.
</description>
<class package="org.openide" name="DialogDisplayer"/>
<issue number="92570"/>
</change>
<change id="WizardDescriptor.getProperties">
<api name="dialogs"/>
<summary>New method <code>getProperties</code> added to <code>WizardDescriptor</code></summary>
<version major="7" minor="3"/>
<date day="8" month="2" year="2007"/>
<author login="jtulach"/>
<compatibility addition="yes" binary="compatible" semantic="compatible" source="compatible" deprecation="no" deletion="no" modification="no"/>
<description>
New method to get list of all properties of the <code>WizardDescriptor</code>
added to the class.
</description>
<class package="org.openide" name="WizardDescriptor"/>
</change>
<change id="generified.wizarddescriptor.panel">
<api name="dialogs"/>
<summary>Generified <code>WizardDescriptor.Panel</code></summary>
<version major="7" minor="2"/>
<date day="2" month="2" year="2007"/>
<author login="jtulach"/>
<compatibility addition="yes" binary="compatible" semantic="compatible" source="compatible" deprecation="no" deletion="no" modification="no"/>
<description>
<code>WizardDescriptor.Panel</code> and <code>WizardDescriptor.Iterator</code>
has been generified to take generic type for data passed
into <code>readSettings</code> and <code>storeSettings</code>
objects.
</description>
<class package="org.openide" name="WizardDescriptor"/>
<issue number="92762"/>
</change>
<change id="WizardDescriptor.ProgressInstantiatingIterator">
<api name="dialogs"/>
<summary>Interface <code>ProgressInstantiatingIterator</code> added</summary>
<version major="7" minor="1"/>
<date day="8" month="4" year="2006"/>
<author login="jrechtacek"/>
<compatibility addition="yes" binary="compatible" semantic="compatible" source="compatible" deprecation="no" deletion="no" modification="no"/>
<description>
The <code>ProgressInstantiatingIterator</code> notifies users while instantiate
is running by a progress bar, this progress bar is integrated into wizard panel.
Instantiating of newly created objects is invoked asynchronously.
</description>
<class package="org.openide" name="WizardDescriptor"/>
<issue number="58889"/>
</change>
<change id="notifyLater">
<api name="dialogs"/>
<summary>New method to asynchronously show messages</summary>
<version major="7" minor="0"/>
<date day="20" month="6" year="2006"/>
<author login="jtulach"/>
<compatibility addition="yes" binary="compatible" semantic="compatible" source="compatible" deprecation="no" deletion="no" modification="no"/>
<description>
Now it is simple to display a message box described by
<a href="@TOP@/org/openide/NotifyDescriptor.html">NotifyDescriptor</a>
asynchronously using
<a href="@TOP@/org/openide/DialogDisplayer.html#notifyLater-org.openide.NotifyDescriptor-">
DialogDisplayer.notifyLater
</a>.
</description>
<class package="org.openide" name="DialogDisplayer"/>
<issue number="35067"/>
</change>
<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>