This document lists changes made to the Project UI API.
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.
projectOpened and projectClosed methods are called on
all ProjectOpenedHook instances in the lookup.
LookupMergerimplementation for ProjectOpenedHook
project.license
CommonProjectActions.setProjectConfigurationAction
projectOpened and projectClosed methods are called on
all ProjectOpenedHook instances in the lookup.
OpenProjects class
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.netbeans.modules.projectuiapi/1 > 1.20
LookupMergerimplementation for ProjectOpenedHook
project.license
CommonProjectActions.setProjectConfigurationAction
projectOpened and projectClosed methods are called on
all ProjectOpenedHook instances in the lookup.
OpenProjects class
org.netbeans.spi.project.ui.support.CommonProjectActions
CommonProjectActions.setProjectConfigurationAction
org.netbeans.spi.project.ui.support.NodeFactory
org.netbeans.spi.project.ui.support.NodeFactorySupport
org.netbeans.spi.project.ui.support.NodeList
org.netbeans.api.project.ui.OpenProjects
OpenProjects class
org.netbeans.spi.project.ui.support.ProjectCustomizer
org.netbeans.spi.project.ui.templates.support.Templates
org.netbeans.spi.project.ui.support.UILookupMergerSupport
LookupMergerimplementation for ProjectOpenedHook
LookupMergerimplementation for ProjectOpenedHook
UILookupMergerSupport; made by: mkleint; issues:
#103106
UILookupMergerSupport.createProjectOpenHookMerger(ProjectOpenedHook) creates an instance of
LookupMerger that ensures that from the ProjectOpenedHook instances in project's lookup, the
project's own is always called first.
project.license
project.license for templates using scripting language.
ProjectCustomizer; made by: mkubec; issues:
#91276
ProjectCustomizer; made by: mkleint; issues:
#85405
ProjectCustomizer.Category that will notify the Category
and it's panel that the changes ought to be applied. This is generally useful as a fallback, general
solution for 3rd party plugging into the project customizer in case the given project type doesn't provide
model-driven project updating mechanism.
OpenProjects; made by: mkleint; issues:
#64491
OpenProjects.PROPERTY_MAIN_PROJECT property and firing changes in main project property value
to listeners attached to OpenProjects.
UILookupMergerSupport; made by: mkleint; issues:
#83343
Related to 1.12 change in Project API.
LookupMerger implementation for PrivilegedTemplates and
RecommendedTemplates added.
NodeFactory NodeList NodeFactorySupport; made by: mkleint; issues:
#72441
CommonProjectActions.setProjectConfigurationAction
CommonProjectActions; made by: jglick; issues:
#49652
Added method CommonProjectActions.setProjectConfigurationAction()
to permit projects supporting configurations to include a context menu
item in their logical view to change the active configuration.
ProjectCustomizer; made by: mkleint; issues:
#74373
createCustomizerDialog(String, Lookup, String, ActionListener, HelpCtx) method to ProjectCustomizer.
That allows to construct project customizer from a layer folder content. It assumes to find instances of
ProjectCustomizer.CompositeCategoryProviderin the layer and constructs the UI from them.
The context is passed into the panel via a Lookup instance. What is in the lookup, is up to the individual project
implementations.
getMainProject and setMainProject methods to OpenProjects.
CommonProjectActions.deleteProjectAction, CommonProjectActions.copyProjectAction,
CommonProjectActions.moveProjectAction, CommonProjectActions.removeProjectAction methods.DefaultProjectOperations support to simplify implementation of project delete/copy/rename/move for simple projects.ProjectCustomizer; made by: mkrauskopf; issues:
#61036
Added ProjectCustomizer.Category.setErrorMessage and
ProjectCustomizer.Category.getErrorMessage
methods. With those methods client can set an error message
for individual categories.
Also the default implementation of a customizer dialog uses
these methods for showing a message on the bottom of
category views and to mark category nodes for invalid
categories (similar to the error message in wizards).
ProjectCustomizer; made by: mkrauskopf; issues:
#58457
Added ProjectCustomizer.Category.setValid and
ProjectCustomizer.Category.isValid methods.
With those methods client can affect whether the OK button
of the Customizer dialog is enabled.
CommonProjectActions Templates; made by: pkuzel; issues:
#58489
CommonProjectActions.newProjectAction methodCommonProjectActions.EXISTING_SOURCES_FOLDER propertyTemplates.getExistingSourcesFolder methodprojectOpened and projectClosed methods are called on
all ProjectOpenedHook instances in the lookup.
The projectOpened and projectClosed methods are called on
all ProjectOpenedHook instances found in a project's lookup.
This change is incompatible because a project type can return a lookup with several
ProjectOpenedHooks and depend on only first one being notified on open/close.
Such a code should be rewritten using org.openide.util.lookup.Lookups.exclude.
Projects/Actions/ which may hold
actions to be added to the context menu of any project type.
Existing project types need to add support for the new folder in order to comply with the guideline.
ProjectCustomizer; made by: phrebejk; issues:
#49647
Added org.netbeans.spi.project.ui.support.ProjectCustomizer
containing support methods for creating standard looking project customizer
dialogs.
To indicate that this is now considered a stable API, the major release version was incremented to 1 from 0.
Clients should begin requesting the new version to avoid a warning at startup.
OpenProjects class
OpenProjects; made by: tzezula
Added open and close methods to org.netbeans.api.project.ui.OpenProjects. The open method
opens the specified projects. The close method closes the specified projects.
Built on May 28 2007. | Portions Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.