Skip navigation links

Introduction

What do the Dates Mean?

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.


Index of APIs

Incompatible changes by date

Fuller descriptions of all changes can be found below (follow links).

Not all deprecations are listed here, assuming that the deprecated APIs continue to essentially work. For a full deprecation list, please consult the Javadoc.

All changes by date

Changes by version

These API specification versions may be used to indicate that a module requires a certain API feature in order to function. For example, if you see here a feature you need which is labelled 1.20, your manifest should contain in its main attributes the line:

OpenIDE-Module-Module-Dependencies: org.openide.dialogs > 1.20

Changes by affected class

org.openide.DialogDescriptor

org.openide.DialogDisplayer

org.openide.NotificationLineSupport

org.openide.NotifyDescriptor

org.openide.WizardDescriptor

org.openide.WizardValidationException


Details of all changes by API and date


Dialogs API

NotifyDescriptor.ComposedInput added

Jun 7 '22; API spec. version: 7.63; affected top-level classes: NotifyDescriptor; made by: dbalek

Added ComposedInput providing a composed input of multiple chained selection lists and/or input lines.

NotifyDescriptor.QuickPick added

Feb 15 '22; API spec. version: 7.60; affected top-level classes: NotifyDescriptor; made by: dbalek

Added QuickPick providing a selection list allowing multiple selections.

Allow vetoable Next/Finish validation in wizard

Jan 31 '22; API spec. version: 7.59; affected top-level classes: NotifyDescriptor; made by: jhorvath

Added PasswordLine, which is implementation of InputLine intended for password entry.

Allow to specify dialog parent window when using DialogDisplayer.

Apr 18 '14; API spec. version: 7.38; affected top-level classes: DialogDisplayer; made by: saubrecht; issues: #242854

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 WindowManager.getDefault().getMainWindow() as dialog parent window when creating the dialog instance.

Added an option to disable the closing of a dialog with ESC key and title bar close button.

Sep 17 '13; API spec. version: 7.35; affected top-level classes: NotifyDescriptor; made by: saubrecht; issues: #196200

Added method setNoDefaultClose(boolean) to NotifyDescriptor 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).

Added ExtendedAsynchronousValidatingPanel

Apr 10 '13; API spec. version: 7.31; affected top-level classes: WizardDescriptor; made by: saubrecht; issues: #228411

Added a new wizard panel type which introduces finishValidation() method. It is complementary to prepareValidation() method in AsynchronousValidatingPanel and should be used to unlock user interface when the validation is finished.

Added BackgroundInstantiatingIterator

Sep 7 '11; API spec. version: 7.22; affected top-level classes: WizardDescriptor; made by: jglick; issues: #191951

Added a new form of instantiating wizard iterator which can do its work after the wizard has been closed.


Compatibility:

Any code initiating an instantiating iterator using org.openide.loaders.TemplateWizard.instantiate 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.

Public API to move wizard to its next/previous step

Apr 13 '11; API spec. version: 7.19; affected top-level classes: WizardDescriptor; made by: saubrecht; issues: #197697
This change makes four existing methods in WizardDescriptor public: doNextClick(), doPreviousClick(), doFinishClick() and doCancelClick(). In previous version the methods were declared final and package private.
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 .

Simplify handling error/warning/info messages in dialogs

Nov 28 '08; API spec. version: 7.10; affected top-level classes: NotifyDescriptor NotificationLineSupport; made by: jrechtacek; issues: #148730
Two new methods in NotifyDescriptor were added to allow API client to create NotificationLineSupport which allow handling error/warning/info messages in dialogs. If a dialog descriptor creates this support, DialogDisplayer allocates necessary space at the bottom of dialog where API clients can set info/warning/error messages with appropriate icons.

New WizardDescriptor constants introduced for info and warning messages

Jul 3 '08; API spec. version: 7.8; affected top-level classes: WizardDescriptor; made by: mkubec; issues: #137737
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.

Wizard Descriptor properties changed to constants, two new constants introduced

Jul 3 '08; API spec. version: 7.8; affected top-level classes: WizardDescriptor; made by: mkubec; issues: #138128
Freeform property strings are replaced by public constants.

Generics-friendly constructor added for WizardDescriptor.ArrayIterator

Jun 15 '07; API spec. version: 7.5; affected top-level classes: WizardDescriptor; made by: jglick; issues: #106208
A constructor accepting List<Panel<Data>> was added to ArrayIterator to avoid the need for generic array construction by client code.

New WizardDescriptor constructor.

Apr 30 '07; API spec. version: 7.4; affected top-level classes: WizardDescriptor; made by: jtulach; issues: #102261
New WizardDescriptor constructor for subclasses. It allows to eliminate unchecked warnings.

New method getProperties added to WizardDescriptor

Feb 8 '07; API spec. version: 7.3; affected top-level classes: WizardDescriptor; made by: jtulach
New method to get list of all properties of the WizardDescriptor added to the class.

Method notifyLater improved to work before main window is opened

Feb 6 '07; API spec. version: 7.3; affected top-level classes: DialogDisplayer; made by: dsimonek; issues: #92570
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.
Binary-compatible

Generified WizardDescriptor.Panel

Feb 2 '07; API spec. version: 7.2; affected top-level classes: WizardDescriptor; made by: jtulach; issues: #92762
WizardDescriptor.Panel and WizardDescriptor.Iterator has been generified to take generic type for data passed into readSettings and storeSettings objects.

New method to asynchronously show messages

Jun 20 '06; API spec. version: 7.0; affected top-level classes: DialogDisplayer; made by: jtulach; issues: #35067
Now it is simple to display a message box described by NotifyDescriptor asynchronously using DialogDisplayer.notifyLater .

Interface ProgressInstantiatingIterator added

Apr 8 '06; API spec. version: 7.1; affected top-level classes: WizardDescriptor; made by: jrechtacek; issues: #58889
The ProgressInstantiatingIterator 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.

Interface AsynchronousInstantiatingIterator added

Dec 6 '05; API spec. version: 6.5; affected top-level classes: WizardDescriptor; made by: jrechtacek; issues: #62161
The AsynchronousInstantiatingIterator allows to implement asynchronous instantating of newly created objects. Wizard's framework esures that the method AsynchronousInstantiatingIterator.instantiate() will be called ouside of an event queue.

Interface AsynchronousValidationgPanel added

May 16 '05; API spec. version: 6.2; affected top-level classes: WizardDescriptor; made by: pkuzel; issues: #58530
The AsynchronousValidatingPanel allows to implement background validation that does not block UI thread. I.e. UI thread can be used to render validation progress.

Add method NotifyDescriptor.getDefaultValue()

Mar 28 '05; API spec. version: 5.9; affected top-level classes: NotifyDescriptor; made by: jrechtacek; issues: #56878
The NotifyDescriptor.getDefaultValue() returns object which represents the default value. This default value is introduced in the constructor of NotifyDescriptor.

Added paramater leaf to DialogDescriptor

Jan 8 '05; API spec. version: 5.5; affected top-level classes: DialogDescriptor; made by: jrechtacek

Added the parameter leaf in constructor of the DialogDescriptor. The parameter is not mandatory and can be set manually. If this parameter is false (as default), all works as before. If the parameter leaf is true, then a dialog which is created by this descriptor cannot own any other windows.

Added WizardDescriptor.getInstantiatedObjects

Jul 2 '04; API spec. version: 4.41; affected top-level classes: WizardDescriptor; made by: jrechtacek; issues: #44513
Added the new method Set getInstantiatedObjects. 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 InstantiatingIterator then returns a set of Object as same as InstantiatingIterator.instantiate() does. The method throws the exception IllegalStateException if this method is called on the unfinished wizard.

Made instantiating iterator

May 4 '04; API spec. version: 4.33; affected top-level classes: WizardDescriptor; made by: jrechtacek; issues: #42192
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 WizardDescriptor.InstantiatingIterator extends WizardDescriptor.Iterator and contains the methods for initialize/uninitialize the iterator and the central method instantiate which returns a set on instantiated objects.

Allow dynamically enable/disable Finish button

Mar 29 '04; API spec. version: 4.28; affected top-level classes: WizardDescriptor; made by: jrechtacek; issues: #7706
Added a special interface for a panel that needs to dynamically enabled Finish button. This interface WizardDescriptor.FinishablePanel extends WizardDescriptor.Panel and adds a method isFinishPanel() which returns if Finish button could be enabled. WizardDescriptor.FinishPanel is now deprecated, the preferred way is using FinishablePanel instead.

Allow vetoable Next/Finish validation in wizard

Mar 29 '04; API spec. version: 4.28; affected top-level classes: WizardDescriptor WizardValidationException; made by: jrechtacek; issues: #23116
Added a special interface for panels that need to do additional validation when Next or Finish button is clicked. This interface WizardDescriptor.ValidatingPanel extends WizardDescriptor.Panel and adds a method validate() which is called when un user clicked Next or Finish button. If validation fails the wizard doesn't move to next panel nor finish, the WizardValidationException is thrown and it returns which component fails (in a wizard's panel) and provides a error message to notify the user about.

Uncategorized changes

Support for CompletableFutures in Dialog API

Feb 14 '22; API spec. version: 7.61; affected top-level classes: DialogDisplayer; made by: sdedic

DialogDisplayer.notifyFuture now allows to chain processing after user closes the dialog without blocking a thread as with DialogDisplayer.notify.