Ability to provide a tailored UI for a project.
Helpful UI support classes for general projects.
Support for providing own templates visible in New File... action.
The Project UI API provides some miscellaneous APIs and SPIs relating to the appearance and UI behavior of generic projects. Most importantly, it permits the customizer and logical view of a project to be defined.
Callbacks intended to let the Project UI module plug in implementations of APIs defined here. Uses implementation dependencies.
CommonProjectActions.newProjectAction makes it
so far posible to set the new projects parent folder by a
property. It would be also usefull to preselect the category
and to propagate custom properties to the new project wizard
BuildExecutionSupport makes it so far posible to register a running build/run/debug task.
It would be also usefull to provide the last run item and to be notified about changes of it.
The following classes were moved into the org.netbeans.modules.projectuiapi.base module:
ProjectProblemsProvider.ProjectProblem has so far required a
making all problems resolvable, however a few places emerged where an automated resolution is not at hand and still we want to report the
error/warning. 2 new factory methods introduced.
CustomizerProvider2 has been available so far in
requests have been made to move it to
projectuiapi, where its parent
CustomizerProvider resides, before
CustomizerProvider3 is defined.
For reasoning see Issue 229161.
The main use case is for project type providers to supply logical views and customizers for the project. Also for template providers to create project-aware file templates. Can also get a list of open projects, create different kinds of project-related actions, and select projects on disk.
The sources for the module are in the NetBeans Mercurial repositories.
Read more about the implementation in the answers to architecture questions.