| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (1.8.0_181) on Fri Sep 14 11:37:38 BST 2018 --> |
| <title>Overview (Project UI API)</title> |
| <meta name="date" content="2018-09-14"> |
| <link rel="stylesheet" type="text/css" href="javadoc.css" title="Style"> |
| <script type="text/javascript" src="script.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="Overview (Project UI API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a name="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li class="navBarCell1Rev">Overview</li> |
| <li>Package</li> |
| <li>Class</li> |
| <li>Use</li> |
| <li><a href="overview-tree.html">Tree</a></li> |
| <li><a href="deprecated-list.html">Deprecated</a></li> |
| <li><a href="index-files/index-1.html">Index</a></li> |
| <li><a href="help-doc.html">Help</a></li> |
| </ul> |
| <div class="aboutLanguage">org.netbeans.modules.projectuiapi/1 1.90.1 8</div> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li>Prev</li> |
| <li>Next</li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="index.html?overview-summary.html" target="_top">Frames</a></li> |
| <li><a href="overview-summary.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <a name="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <div class="header"> |
| <h1 class="title">Project UI API<br/><span style='font-style:normal; font-size:medium; font-weight:normal; background-color:#ffffff;'><a href='http://wiki.netbeans.org/API_Stability#Official' target='_blank'>Official</a></span></h1> |
| </div> |
| <div class="header"> |
| <div class="subTitle"> |
| <div class="block"> |
| |
| |
| |
| |
| ProjectUIAPI</div> |
| </div> |
| <p>See: <a href="#overview.description">Description</a></p> |
| </div> |
| <div class="contentContainer"> |
| <table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Project UI API table, listing packages, and an explanation"> |
| <caption><span>Project UI API</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Package</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tbody> |
| <tr class="altColor"> |
| <td class="colFirst"><a href="org/netbeans/api/project/ui/package-summary.html">org.netbeans.api.project.ui</a></td> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><a href="org/netbeans/spi/project/ui/package-summary.html">org.netbeans.spi.project.ui</a></td> |
| <td class="colLast"> |
| <div class="block">Ability to provide a tailored UI for a project.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><a href="org/netbeans/spi/project/ui/support/package-summary.html">org.netbeans.spi.project.ui.support</a></td> |
| <td class="colLast"> |
| <div class="block">Helpful UI support classes for general projects.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><a href="org/netbeans/spi/project/ui/templates/support/package-summary.html">org.netbeans.spi.project.ui.templates.support</a></td> |
| <td class="colLast"> |
| <div class="block">Support for providing own templates visible in <b>New File...</b> action.</div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <div class="contentContainer"><a name="overview.description"> |
| <!-- --> |
| </a> |
| <div class="block"><p> |
| |
| <ul> |
| |
| <li> |
| ProjectUIAPI |
| <p> |
| 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. |
| </p> |
| |
| |
| </li> |
| |
| <li> |
| ProjectUIAPI-provider |
| <p> |
| Callbacks intended to let the Project UI module plug in implementations of |
| APIs defined here. Uses implementation dependencies. |
| </p> |
| |
| |
| </li> |
| |
| </ul> |
| |
| </p> |
| <h3>What is New (see <a href="apichanges.html">all changes</a>)?</h3> |
| <ul> |
| |
| |
| <!--Search for dates that are later or equal to 1997-09-01 in |
| .--> |
| <!--Checking date 2015-4-14 with count of newer 0--><!--year ok--> |
| <li>Apr 14 '15 <a href="apichanges.html#newProjectAction.preselectCategory">Provide a method to create an action that invokes the new project wizard, |
| preselects a category and propagates a set of properties to the wizard descriptor.</a> |
| <p> |
| |
| <p> |
| |
| <code>CommonProjectActions.newProjectAction</code> 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 |
| descriptor. |
| </p> |
| |
| </p> |
| </li> |
| <!--Checking date 2014-7-15 with count of newer 1--><!--year ok--> |
| <li>Jul 15 '14 <a href="apichanges.html#BuildExecutionSupport.lastItem">Provide last runing item from BuildExecutionSupport. Listen on changes of it.</a> |
| <p> |
| |
| <p> |
| |
| <code>BuildExecutionSupport</code> 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. |
| </p> |
| |
| </p> |
| </li> |
| <!--Checking date 2014-5-26 with count of newer 2--><!--year ok--> |
| <li>May 26 '14 <a href="apichanges.html#server.is.free">Split the api into a desktop (swing, awt) and NetBeans dependent and independent part.</a> |
| <p> |
| |
| <p> |
| The following classes were moved into the |
| <a href="../org-netbeans-modules-projectuiapi-base/overview-summary.html" shape="rect">org.netbeans.modules.projectuiapi.base</a> module: |
| </p> |
| |
| <ul> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/api/project/ui/OpenProjects.html" shape="rect">OpenProjects</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/api/project/ui/ProjectGroup.html" shape="rect">ProjectGroup</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/api/project/ui/ProjectGroupChangeEvent.html" shape="rect">ProjectGroupChangeEvent</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/api/project/ui/ProjectGroupChangeListener.html" shape="rect">ProjectGroupChangeListener</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/spi/project/ui/PrivilegedTemplates.html" shape="rect">PrivilegedTemplates</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/spi/project/ui/ProjectOpenedHook.html" shape="rect">ProjectOpenedHook</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/spi/project/ui/ProjectProblemResolver.html" shape="rect">ProjectProblemResolver</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/spi/project/ui/ProjectProblemsProvider.html" shape="rect">ProjectProblemsProvider</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/spi/project/ui/RecommendedTemplates.html" shape="rect">RecommendedTemplates</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/spi/project/ui/support/ProjectProblemsProviderSupport.html" shape="rect">ProjectProblemsProviderSupport</a> |
| </li> |
| |
| <li> |
| <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/spi/project/ui/support/UILookupMergerSupport.html" shape="rect">UILookupMergerSupport</a> |
| </li> |
| |
| </ul> |
| |
| </p> |
| </li> |
| <!--Checking date 2013-10-7 with count of newer 3--><!--year ok--> |
| <li>Oct 7 '13 <a href="apichanges.html#ProjectProblemsProvider.unresolvable">Allow creating ProjectProblemsProvider.ProjectProblem without a ProjectProblemResolver </a> |
| <p> |
| |
| <p> |
| |
| <code>ProjectProblemsProvider.ProjectProblem</code> has so far required a <code>ProjectProblemResolver</code> effectively |
| 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. |
| </p> |
| |
| </p> |
| </li> |
| <!--Checking date 2013-5-13 with count of newer 4--><!--year ok--> |
| <li>May 13 '13 <a href="apichanges.html#CustomizerProvider2">Moved CustomizerProvider2 from java.api.common</a> |
| <p> |
| |
| <p> |
| |
| <code>CustomizerProvider2</code> has been available so far in <code>java.api.common</code> but |
| requests have been made to move it to <code>projectuiapi</code>, where its parent |
| <code>CustomizerProvider</code> resides, before <code>CustomizerProvider3</code> is defined. |
| For reasoning see Issue 229161. |
| </p> |
| |
| </p> |
| </li> |
| <!--Checking date 2013-2-27 with count of newer 5--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2013-2-22 with count of newer 6--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2013-1-24 with count of newer 7--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2012-11-10 with count of newer 8--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2012-10-2 with count of newer 9--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2012-8-25 with count of newer 10--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2012-7-24 with count of newer 11--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2012-7-13 with count of newer 12--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2012-3-19 with count of newer 13--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2012-1-13 with count of newer 14--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2011-12-12 with count of newer 15--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2010-4-21 with count of newer 16--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2010-4-13 with count of newer 17--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2010-4-1 with count of newer 18--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2010-3-25 with count of newer 19--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2009-9-10 with count of newer 20--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2009-7-23 with count of newer 21--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2009-5-6 with count of newer 22--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2009-4-7 with count of newer 23--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2008-11-20 with count of newer 24--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2008-10-23 with count of newer 25--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2008-6-9 with count of newer 26--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2008-3-26 with count of newer 27--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2008-3-21 with count of newer 28--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2008-2-6 with count of newer 29--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2008-1-9 with count of newer 30--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2007-5-10 with count of newer 31--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2007-3-26 with count of newer 32--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2007-1-5 with count of newer 33--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2006-10-23 with count of newer 34--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2006-10-16 with count of newer 35--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2006-10-5 with count of newer 36--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2006-9-18 with count of newer 37--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2006-9-8 with count of newer 38--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2006-4-11 with count of newer 39--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2005-8-26 with count of newer 40--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2005-8-22 with count of newer 41--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2005-7-28 with count of newer 42--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2005-7-28 with count of newer 42--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2005-5-17 with count of newer 44--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2005-5-12 with count of newer 45--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2005-5-5 with count of newer 46--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2005-1-16 with count of newer 47--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2004-12-22 with count of newer 48--><!--Skipped as the amount of changes is too big--> |
| <!--Checking date 2004-12-14 with count of newer 49--><!--Skipped as the amount of changes is too big--> |
| </ul> |
| <h3>Use Cases</h3> |
| <answer id="arch-usecases"> |
| |
| <p> |
| 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. |
| </p> |
| |
| </answer> |
| <h3>Exported Interfaces</h3> |
| |
| This table lists all of the module exported APIs |
| with |
| defined stability classifications. It is generated |
| based on answers to questions about the architecture |
| of the module. <a href="architecture-summary.html">Read them all</a>... |
| |
| |
| <a name="group-java"> |
| <h5>Group of java interfaces</h5> |
| </a> |
| <table cellpadding="1" cellspacing="0" border="0" class="tablebg" width="100%"> |
| <tr> |
| <td> |
| <table border="0" cellpadding="3" cellspacing="1" width="100%"> |
| <tr class="tablersh"> |
| <td align="CENTER" width="25%"><span class="titlectable">Interface Name</span></td><td align="CENTER" width="10%"><span class="titlectable">In/Out</span></td><td align="CENTER" width="10%"><span class="titlectable">Stability</span></td><td align="CENTER"><span class="titlectable">Specified in What Document?</span></td> |
| </tr> |
| <tr class="tabler"> |
| <td>ProjectUIAPI</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Official">Official</a></td><td><a name="java-ProjectUIAPI"> |
| <p></p> |
| |
| <p> |
| 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. |
| </p> |
| |
| <p></p> |
| </a></td> |
| </tr> |
| <tr class="tabler"> |
| <td>ProjectUIAPI-provider</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Friend">Friend</a></td><td><a name="java-ProjectUIAPI-provider"> |
| <p></p> |
| |
| <p> |
| Callbacks intended to let the Project UI module plug in implementations of |
| APIs defined here. Uses implementation dependencies. |
| </p> |
| |
| <p></p> |
| </a></td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| <p></p> |
| <a name="group-property"> |
| <h5>Group of property interfaces</h5> |
| </a> |
| <table cellpadding="1" cellspacing="0" border="0" class="tablebg" width="100%"> |
| <tr> |
| <td> |
| <table border="0" cellpadding="3" cellspacing="1" width="100%"> |
| <tr class="tablersh"> |
| <td align="CENTER" width="25%"><span class="titlectable">Interface Name</span></td><td align="CENTER" width="10%"><span class="titlectable">In/Out</span></td><td align="CENTER" width="10%"><span class="titlectable">Stability</span></td><td align="CENTER"><span class="titlectable">Specified in What Document?</span></td> |
| </tr> |
| <tr class="tabler"> |
| <td>willOpenProjects</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Friend">Friend</a></td><td><a name="property-willOpenProjects"> |
| <p></p> |
| Since version 1.55 a special <a href="http://download.oracle.com/javase/8/docs/api/java/beans/PropertyChangeEvent.html" shape="rect"> |
| PropertyChangeEvent</a> is generated for benefit of <code>ide.ergonomics</code> |
| module by <a href="../org-netbeans-modules-projectuiapi-base/org/netbeans/api/project/ui/OpenProjects.html#getDefault--" shape="rect"> |
| OpenProjects.getDefault()</a>. The property name of the event is <code>"willOpenProjects"</code> |
| and its new value contains an array of projects that will be opened (a type |
| <code>Project[]</code>). Ergonomics module uses this information to enable |
| modules that seem to provide support for technologies used in the about |
| to be opened projects. |
| <p></p> |
| </a></td> |
| </tr> |
| <tr class="tabler"> |
| <td>project.license</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Official">Official</a></td><td><a name="property-project.license"> |
| <p></p> |
| |
| <code>project.license</code> attribute contains project license as <code>String</code> for newly created |
| <a href="#lookup-org.openide.loaders.CreateFromTemplateAttributesProvider" shape="rect">templates</a>. |
| It is used to import license templates. |
| The <code>default</code> is used if the attribute was not found in any |
| project lookup. |
| <p></p> |
| </a></td> |
| </tr> |
| <tr class="tabler"> |
| <td>project.encoding</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Official">Official</a></td><td><a name="property-project.encoding"> |
| <p></p> |
| |
| <code>project.encoding</code> attribute contains the project encoding as <code>String</code> for newly created |
| <a href="#lookup-org.openide.loaders.CreateFromTemplateAttributesProvider" shape="rect">templates</a>. |
| The encoding of the parent folder of the new file is used if the attribute was not found in any |
| project lookup. |
| <p></p> |
| </a></td> |
| </tr> |
| <tr class="tabler"> |
| <td>project.licensePath</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Stable">Stable</a></td><td><a name="property-project.licensePath"> |
| <p></p> contains <code>String</code> path to the license header include file, by default as path to <code>Templates/Licenses/license-${project.license}.txt</code> system filesystem location, but a local filesystem (file:) url is also supported. <p></p> |
| </a></td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| <p></p> |
| <a name="group-lookup"> |
| <h5>Group of lookup interfaces</h5> |
| </a> |
| <table cellpadding="1" cellspacing="0" border="0" class="tablebg" width="100%"> |
| <tr> |
| <td> |
| <table border="0" cellpadding="3" cellspacing="1" width="100%"> |
| <tr class="tablersh"> |
| <td align="CENTER" width="25%"><span class="titlectable">Interface Name</span></td><td align="CENTER" width="10%"><span class="titlectable">In/Out</span></td><td align="CENTER" width="10%"><span class="titlectable">Stability</span></td><td align="CENTER"><span class="titlectable">Specified in What Document?</span></td> |
| </tr> |
| <tr class="tabler"> |
| <td>org.openide.loaders.CreateFromTemplateAttributesProvider</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Official">Official</a></td><td><a name="lookup-org.openide.loaders.CreateFromTemplateAttributesProvider"> |
| <p></p> |
| The attributes provider is registered in <code>META-INF/services</code>. It collects |
| attributes from |
| <code>org.openide.loaders.CreateFromTemplateAttributesProvider</code>s |
| registered in project lookups. |
| It provides the |
| <a href="#property-project.license" shape="rect">project.license</a> and |
| <a href="#property-project.encoding" shape="rect">project.encoding</a> |
| attributes for file templates using scripting support. |
| <p></p> |
| </a></td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| <p></p> |
| <a name="group-layer"> |
| <h5>Group of layer interfaces</h5> |
| </a> |
| <table cellpadding="1" cellspacing="0" border="0" class="tablebg" width="100%"> |
| <tr> |
| <td> |
| <table border="0" cellpadding="3" cellspacing="1" width="100%"> |
| <tr class="tablersh"> |
| <td align="CENTER" width="25%"><span class="titlectable">Interface Name</span></td><td align="CENTER" width="10%"><span class="titlectable">In/Out</span></td><td align="CENTER" width="10%"><span class="titlectable">Stability</span></td><td align="CENTER"><span class="titlectable">Specified in What Document?</span></td> |
| </tr> |
| <tr class="tabler"> |
| <td>RegisteredActions</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Devel">Under Development</a></td><td><a name="layer-RegisteredActions"> |
| <p></p> |
| |
| <p> |
| Several project related actions are registered in the Actions folder in the layer. |
| Product branding is intended to use those actions to build main menu, toolbars and shortcuts. |
| </p> |
| |
| <ul> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-BuildMainProject.instance</li> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-CleanMainProject.instance</li> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-RebuildMainProject.instance</li> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-RunMainProject.instance</li> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-DebugMainProject.instance</li> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-TestProject.instance</li> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-BuildProject.instance</li> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-CleanProject.instance</li> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-RebuildProject.instance</li> |
| |
| <li>Actions/Project/org-netbeans-modules-project-ui-RunProject.instance</li> |
| |
| </ul> |
| |
| <p></p> |
| </a></td> |
| </tr> |
| <tr class="tabler"> |
| <td>ProjectTemplates</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Official">Official</a></td><td><a name="layer-ProjectTemplates"> |
| <p></p> |
| |
| <p> |
| New (or import) project wizards can be registered in a special folder |
| <code>Templates/Projects/</code>. |
| </p> |
| |
| <p></p> |
| </a></td> |
| </tr> |
| <tr class="tabler"> |
| <td>ProjectActions</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Official">Official</a></td><td><a name="layer-ProjectActions"> |
| <p></p> |
| |
| <p> |
| Providers of generic project actions can register <code>Action</code> and <code>JSeparator</code> |
| instances in a special folder <code>Projects/Actions/</code>. So if any module wishes |
| to extend, hide or reorder some of them it can just register its actions there. Example: |
| </p> |
| |
| <pre xml:space="preserve"> |
| <folder name="Projects" > |
| <folder name="Actions" > |
| <file name="org-mymodule-MyAction.instance" > |
| <attr name="instanceCreate" stringvalue="org.mymodule.MyAction" /> |
| </file> |
| </folder> |
| </folder> |
| </pre> |
| |
| <p></p> |
| </a></td> |
| </tr> |
| <tr class="tabler"> |
| <td>Templates</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Official">Official</a></td><td><a name="layer-Templates"> |
| <p></p> |
| |
| <p> |
| File templates can be registered with various attributes, some specific to |
| the project system. |
| </p> |
| |
| <p></p> |
| </a></td> |
| </tr> |
| <tr class="tabler"> |
| <td>TemplatesLicenses</td><td>Exported</td><td><a href="http://wiki.netbeans.org/API_Stability#Official">Official</a></td><td><a name="layer-TemplatesLicenses"> |
| <p></p> |
| |
| <p> |
| Under <code>Templates/Licenses</code> folder should be registered various license headers |
| that can be imported by templates using scripting. The recommended format of filename is |
| <code>license-[licensename].txt</code> e.g. <code>license-cddl.txt</code>. |
| </p> |
| |
| <p></p> |
| </a></td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| <p></p> |
| <h3>Implementation Details</h3> |
| <h5>Where are the sources for the module?</h5> |
| |
| <p> |
| <p> |
| The sources for the module are in the |
| <a href="http://hg.netbeans.org/" shape="rect">NetBeans Mercurial repositories</a>. |
| </p> |
| </p> |
| |
| <h5>What do other modules need to do to declare a dependency on this one, in addition to or instead of a plain module dependency?</h5> |
| Nothing. |
| <p> |
| Read more about the implementation in the <a href="architecture-summary.html">answers to |
| architecture questions</a>. |
| </p></div> |
| </div> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a name="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li class="navBarCell1Rev">Overview</li> |
| <li>Package</li> |
| <li>Class</li> |
| <li>Use</li> |
| <li><a href="overview-tree.html">Tree</a></li> |
| <li><a href="deprecated-list.html">Deprecated</a></li> |
| <li><a href="index-files/index-1.html">Index</a></li> |
| <li><a href="help-doc.html">Help</a></li> |
| </ul> |
| <div class="aboutLanguage">org.netbeans.modules.projectuiapi/1 1.90.1 8</div> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li>Prev</li> |
| <li>Next</li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="index.html?overview-summary.html" target="_top">Frames</a></li> |
| <li><a href="overview-summary.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| <p class="legalCopy"><small><span class="footnote">Built on September 14 2018. | Copyright © 2017-2018 Apache Software Foundation. All Rights Reserved.</span></small></p> |
| </body> |
| </html> |