Skip navigation links

Introduction

This document lists changes made to the Project UI.


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.netbeans.modules.projectui/1 > 1.20

Changes by affected class

org.netbeans.modules.project.ui.api.ProjectActionUtils

org.netbeans.modules.project.ui.api.ProjectTemplates

org.netbeans.modules.project.ui.api.RecentProjects

org.netbeans.modules.project.ui.spi.TemplateCategorySorter


Details of all changes by API and date


Project UI

Disable loading of projects on startup

Sep 30 '20; API spec. version: 1.69; made by: jtulach

A branding API to disable loading of previously opened projects - LOAD_PROJECTS_ON_START.

Added ProjectActionUtils

Oct 21 '13; API spec. version: 1.49; affected top-level classes: ProjectActionUtils; made by: mkozeny; issues: #232642

Added new API interface ProjectActionUtils providing actions selectAndExpandProject() and makeProjectTabVisible() on project node a project tab

Location Projects/Groups/Customizer recognized in layers

Apr 16 '13; API spec. version: 1.45; made by: mkleint; issues: #197577

@ProjectCustomizer.CompositeCategoryProvider.Registration annotation now accepts "Groups" projectType parameter value which adds a panel to the Project Group customizer. Implementations can expect an instance of org.netbeans.api.project.ui.ProjectGroup in the lookup passed to the provider. NO central storing procedure in place, each panel is expected to set it's own values in Category.setStoreListener

Added TemplateCategorySorter

Dec 11 '12; API spec. version: 1.40; affected top-level classes: TemplateCategorySorter; made by: mkleint; issues: #206126

Added a new SPI interface TemplatesCategorySorter allowing to post process the order of template categories for given project. Implementations of this interface are to be put into project's lookup. If not present, standard layer ordering rules apply.

Added ProjectTemplates

Dec 1 '11; API spec. version: 1.32; affected top-level classes: ProjectTemplates; made by: jglick

Added a new class of constants to use with the New Project action.


Compatibility:

Undocumented tricks like trying to call NewProject.newSample by reflection will no longer work.

Externalize Build related action registration.

Jul 20 '08; API spec. version: 1.15; made by: mkleint; issues: #140731

For certain distributions of NetBeans (PHP or Ruby), actions like "Build project" or "Rebuild project" make no sense in the main menu. Therefore the layer registration for these actions was moved to projectui.buildmenu module which provides token "BuildActions". If a certain distribution requires these actiosn to be present it shall require this token. Java and CND do now.

Don't open project view component in bluej edition.

Feb 1 '07; API spec. version: 1.12; made by: mkleint; issues: #78746

Use system property "project.tab.no.selection" for influencing the behaviour on creation or opening of projects. When this property is set, the opening/creating of projects doesn't trigger opening and focusing of the projects logical view top component. Allows the BlueJ Edition to focus it's own component instead.

Provide a way to get list of information about recent projects.

Mar 20 '06; API spec. version: 1.9; affected top-level classes: RecentProjects; made by: mkubec; issues: #57073

Added RecentProjects class that provides access to list of recently used projects (UnloadedProjectInformation class). Listener can be registered to be notified about change in the list of recent projects. The API is only for friend access.