java.net: Wiki

The Source for Java Technology Collaboration


 <<O>>  Difference Topic DeveloperDocumentation (27 - 31 May 2007 - Main.katty1980)
Line: 1 to 1
 

This wiki has moved to http://wiki.netbeans.org
















Line: 360 to 360
 

Interested in Contributing

* VersioningAidTeam

Changed:
<
<
>
>
<-- 
    • Set ALLOWTOPICCHANGE = Main.katty1980
    • Set ALLOWTOPICRENAME = Main.katty1980
-->
 

 <<O>>  Difference Topic DeveloperDocumentation (26 - 28 May 2007 - Main.johnkole)
Line: 1 to 1
 

This wiki has moved to http://wiki.netbeans.org
















Line: 361 to 361
  * VersioningAidTeam
Changed:
<
<
Asian Gay Sex Asian Girl Asian Porn Asian Thumb Asian Pussy Nude Asian Asian Teen Asian Lesbian Asian Model Asian Woman Sexy Asian Asian Dating Asian School Girl Asian Shemale Hot Asian Asian Anal Asian Babes Gay Asian Busty Asian Asian Ass Asian Sluts Asian Big Tit Asian Blow Job Mature Asian Asian Babe Cam Asian Tit Asian Porn Star Asian Fuck Free Asian Porn Asian Milf Asian Beauty Asian Hardcore Asian Boob Asian Whore Naked Asian Asian Cam Model Black Asian Asian Girl Hot Asian Fucking Asian Amateur
>
>
Boob Big Boob Huge Boob Baby Boob Got Boob Got Mommy Sexy Boob Lanas Big Boob Boob Teen Boob Nice Beach Boob Small Boob Boob Flash Naked Boob Boob Job Natural Boob Hot Boob Nude Boob Black Boob Boob Girl Flashing Boob Fuck Fuck My Wife Teen Fuck Ass Fuck Fuck Tit College Fuck Fest Hard Fuck Gay Fuck Fuck Machine Pussy Fuck Throat Fuck Face Fuck Teacher Fuck Fuck Young Asian Fuck Fuck Video Anal Fuck Butt Fuck Sex Fuck Fuck Buddy
 

 <<O>>  Difference Topic DeveloperDocumentation (25 - 22 May 2007 - Main.johnkole)
Line: 1 to 1
 

This wiki has moved to http://wiki.netbeans.org
















Line: 360 to 360
 

Interested in Contributing

* VersioningAidTeam

Added:
>
>
 

 <<O>>  Difference Topic DeveloperDocumentation (24 - 15 May 2007 - Main.jglick)
Line: 1 to 1
Changed:
<
<
Quick links:
>
>

This wiki has moved to http://wiki.netbeans.org
















Free Porn Video Free Porn Movie Free Porn Picture Free Porn Clips Free Porn Site Hardcore Anal Fucking Black Anal Sex Fucking Teen Anal Ass Fucking Videos Anal Lesbian Fucking Extreme Anal Fucking Movies Asian School Girls Hot Asian Girls Young Asian Girls Picture Teen Asian Girls Web Cams Video fat pantyhose chubbies fat chick pussy american bbw fatties american bbw outdoors young chubby gothic bbw mature fatty hot fatties plump girl fatty tits teen plump big gals fat maledom breast spanking painful bdsm slaves love collar slut tied dolls bleeding pussy forced to cum tits whipped whipping video teen bondage collar bdsm painful pleasure extreme Big Black Tits Huge Black Tits Black Lorded Tits Fat Black Tits Black Tits Ass Fuck Black Teen Tits Mature Black Tits Small Black Tits Large Black Tits ebony group ebony cum sluts nude ebony babes dirty black sluts thick ebony pussy ebony fuck black hottie black housewives black wives black fuck hot black porn hot black bitch Blow Job Cum Shot Free Movie Blow Job Cum Swallow Blonde Blow Job Cum Teen Blow Job Cum Asian Blow Job Cum Swallowing Facial Blow Job Cum Video MPEG Ebony Lesbian Porn Ebony Lesbian Sex Black Ebony Lesbian Movies Free Ebony Teen Lesbian Video Ebony Lesbian Pussy Sluts Hot Ebony Lesbian Free Mature Movie Porn Free Mature Porn Video Free Mature Porn Clips Free Mature Porn Gallery Free Mature Porn Pictures Shemale Fuck Guys Shemale Fuck Shemale Ass Fuck Man Shemale Fuck Woman Shemale Fuck Female Movies Black Shemale Fuck Male Teen Shemale Fuck Gay Sluts Hot Shemale Fuck Asian Latina Teen Porn Latina Teen Sex Latina Teen Pussy Hot Latina Teen Nude Latina Teen Ass Latina Teen Sexy Latina Teen Anal Latina Teen

http://beaver.phy.uic.edu/twiki/bin/view/Main/WebChanges http://beaver.phy.uic.edu/twiki/bin/view/TWiki/WebChanges

Quick links:
 NetBeansDeveloperFAQ?
Line: 331 to 334
 
Changed:
<
<
>
>
 

Tips and Tricks

Line: 358 to 361
  * VersioningAidTeam
Deleted:
<
<

Versioning

Version
Who
When
What
Notes
1 Geertjan 9 December 2005 Initial content Anyone is welcome to add anything they want! Just make sure you add comments in this table so that we can all see what's changed, by who, when, etc.
2 Geertjan 10 December 2005 Added Refactoring API and Multiview API and JavaHelp APIto the table.
Started the "Templates for API Extensions in NetBeans IDE 5.0" section.
---
3 Geertjan 16 December 2005 Many details added to the Templates table. Began work on "Module Development Lifecycle". ---
4 Geertjan 24 December 2005 Added link to Masoud interview and removed (erroneous) 2nd tip. ---
5 Geertjan 3 January 2006 Added "API" to the left column of the 1st table (i.e., "Actions" now says "Actions API"). ---

 <<O>>  Difference Topic DeveloperDocumentation (23 - 21 Feb 2006 - Main.jglick)
Line: 1 to 1
Added:
>
>
Quick links:

NetBeansDeveloperFAQ?

http://platform.netbeans.org/

 

NetBeans Module & Platform Development Work-in-Progress Page

This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

Line: 348 to 354
 
Deleted:
<
<

NetBeansDeveloperFAQ?

 

Interested in Contributing

* VersioningAidTeam


 <<O>>  Difference Topic DeveloperDocumentation (22 - 15 Feb 2006 - Main.mmetelka)
Line: 1 to 1
 

NetBeans Module & Platform Development Work-in-Progress Page

This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

Line: 342 to 342
 
  • Code folding
  • Multiview editor
  • Identifier hyperlink
Added:
>
>
 

 <<O>>  Difference Topic DeveloperDocumentation (21 - 31 Jan 2006 - Main.pkuzel)
Line: 1 to 1
 

NetBeans Module & Platform Development Work-in-Progress Page

This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

Line: 344 to 344
 
  • Identifier hyperlink
  • Web framework support
  • How to create a wizard
Changed:
<
<
  • NetBeansProjectVersioning?
>
>
 
  • ...

NetBeansDeveloperFAQ?

Added:
>
>

Interested in Contributing

* VersioningAidTeam

 

Versioning


 <<O>>  Difference Topic DeveloperDocumentation (20 - 31 Jan 2006 - Main.pkuzel)
Line: 1 to 1
 

NetBeans Module & Platform Development Work-in-Progress Page

This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

Line: 344 to 344
 
  • Identifier hyperlink
  • Web framework support
  • How to create a wizard
Added:
>
>
  • NetBeansProjectVersioning?
 
  • ...

NetBeansDeveloperFAQ?


 <<O>>  Difference Topic DeveloperDocumentation (19 - 04 Jan 2006 - Main.geertjan)
Line: 1 to 1
 

NetBeans Module & Platform Development Work-in-Progress Page

This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

Line: 45 to 45
 
Related Sample Code and Tutorials
Changed:
<
<
Actions
>
>
Actions API
 
Defines global singleton actions (such as Open, Cut, Paste) which your module may use. NetBeans Google Toolbar Module Tutorial
Changed:
<
<
FileSystems
>
>
File Systems API
 
An API for "virtual files". NetBeans uses this API to access user files on disk, files inside JARs, and configuration data for the IDE. ---
Changed:
<
<
DataSystems
>
>
Loaders API
 

"Parsed files". Provides DataObjects which wrap FileObjects and provide programmatic access to their contents. Each file type NetBeans recognizes (such as Java files or HTML files) has a corresponding DataObject subclass provided by the module that adds support for that file type. NetBeans DataLoader Module Tutorial

NetBeans Component Palette Module Tutorial

Changed:
<
<
Nodes
>
>
Nodes API
 
Generic hierarchy and action context. Nodes are similar to TreeNodes, but can be used in more than trees. Nodes add user-visible things such as popup menu actions, localized display names and icons to DataObjects, but can also be used without DataObjects, by themselves. The Explorer API contains a variety of UI components such as trees, lists and tables which can be used to display a node and its children. Each window system UI component (TopComponent) has one or more "activated nodes" which determine what actions are enabled when that component has focus. NetBeans System Properties Module Tutorial
Changed:
<
<
Windows
>
>
Windows API
 
Allows modules to provide window-like components, mainly through embeddable visual components called topcomponents. NetBeans Anagram Game Module Tutorial

FeedReader Tutorial

Changed:
<
<
Palette
>
>
Palette API
 
Provides a palette topcomponent with drag-and-droppable content. For example, this API is used to provide groups of related tags that can be inserted in HTML file and JSP files in the IDE. NetBeans Component Palette Tutorial

NetBeans Code Snippet Tutorial

Changed:
<
<
Refactoring
>
>
Refactoring API
 
Enables you to extend the IDE's refactoring capabilities by providing facilities for plugging your own refactorings into the IDE. NetBeans Copy Class Refactoring Module Tutorial
Changed:
<
<
MultiView
>
>
MultiView API
 
Lets you display multiple perspectives of the same data. For example, the web.xml multiview editor provides an XML view and a topcomponent view. (coming soon)
Changed:
<
<
JavaHelp Integration
>
>
JavaHelp Integration API
 
Adds helpset to the IDE or an application built on the NetBeans Platform. NetBeans Help System Plug-in Tutorial
Line: 447 to 447
 

Added:
>
>

5 Geertjan 3 January 2006 Added "API" to the left column of the 1st table (i.e., "Actions" now says "Actions API"). ---
 

 <<O>>  Difference Topic DeveloperDocumentation (18 - 24 Dec 2005 - Main.geertjan)
Line: 1 to 1
 

NetBeans Module & Platform Development Work-in-Progress Page

This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

Line: 325 to 325
 
Added:
>
>
 

Tips and Tricks

  • Don't just start typing code. Use the templates in IDE 5.0 as a starting point -- lots of files and sample code gets generated for you. After that, build your module on top of the generated files...
Deleted:
<
<
  • If you want to know what a folder or file is called in the layer file, (because it is not the DISPLAY name but the ORIGINAL name that determines the name of the folder or file), just delete it in the "this layer in context node" (nothing scary will happen, there'll just be a _hidden flag in your layer xml) and then, because of the layer.xml's hidden flag, you'll see what the folder or file is really called.
 
Changed:
<
<
  • Tip 3...
>
>
  • Tip 2...
 

Tutorials

Line: 421 to 421
 
Many details added to the Templates table. Began work on "Module Development Lifecycle".
Added:
>
>
 

---
Added:
>
>

4 Geertjan 24 December 2005 Added link to Masoud interview and removed (erroneous) 2nd tip. ---
 
Added:
>
>
 

 <<O>>  Difference Topic DeveloperDocumentation (17 - 16 Dec 2005 - Main.geertjan)
Line: 1 to 1
 

NetBeans Module & Platform Development Work-in-Progress Page

This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

Line: 31 to 31
 
  • "Hello World" for NetBeans module developers: NetBeans IDE 5.0 Plug-in Module Quick Start Guide
  • "Hello World" for rich-client application developers:
  • Changed:
    <
    <
    NetBeans IDE 5.0 Paint App Tutorial
    >
    >
    NetBeans IDE 5.0 Rich-Client Application Quick Start Guide
     

    NetBeans APIs

    Line: 89 to 89
     
    JavaHelp Integration
    Changed:
    <
    <
    Add helpset to the IDE or an application built on the NetBeans Platform.
    >
    >
    Adds helpset to the IDE or an application built on the NetBeans Platform.
     
    NetBeans Help System Plug-in Tutorial
    Line: 150 to 150
     
    New Action wizard NetBeans Actions API
    Changed:
    <
    <
    ... Create menu items, toolbar buttons, and keyboard shortcuts. The menu items can be attached to a variety of items—the main menu, the pop-up menu of one or more of the editors (the Source Editor is made up of an XML editor, a Java editor, a JSP editor, etc), or the pop-up menu of a node in one of the windows (such as the pop-up menu of a JSP node in the Projects/Files/Favorites windows).

    Once an action is assigned to an item (such as the menu bar), it needs to do something. What an action does is defined in its performAction() method.

    >
    >
    Created files:

    Impact on layer.xml (the module's NetBeans configuration file):

    • The action is registered as an instance file in the Actions folder. Shadow files are created in all the folders that you specified in the New Action wizard. For example, if you specified that the action should be registered as a global menu item, it will find itself as a shadow file in the Menu folder in the layer.xml file. If you're extending CookieAction class, a shadow file is created in the Loaders folder. (For details on shadow files, see What are .shadow files?)
    Do something with the action that the IDE created for you. For example, now that the menu item is attached to one or more of a variety of items—the main menu, a toolbar, a keyboard shortcut, the the pop-up menu of one or more of the editors (the Source Editor is made up of an XML editor, a Java editor, a JSP editor, etc), or the pop-up menu of a node in one of the windows (such as the pop-up menu of a JSP node in the Projects/Files/Favorites windows)— you need to provide the code that specifies what you want to have happen when the user invokes the action. What an action does is defined in its performAction() method.
     
    NetBeans Google Toolbar Module Tutorial
    Line: 159 to 164
     
    New File Type wizard NetBeans Loaders API
    Changed:
    <
    <

    Created files:

    >
    >
    Created files:
     
    • DataLoader.java
    Changed:
    <
    <

    A class that extends UniFileLoader
    >
    >

    A class that extends UniFileLoader. (See also: What is a DataLoader?)
     
  • DataBeanInfo.java
  • Changed:
    <
    <

    Display information, such as the related icon.
    >
    >

    A class that extends java.beans.SimplebeanInfo. It is used for displaying information, such as the related icon.
     
  • DataNode.java
  • Changed:
    <
    <

    A class that extends DataNode
    >
    >

    A class that extends DataNode. (See also: What is a Node?)
     
  • DataObject.java
  • Changed:
    <
    <

    A class that extends MultiDataObject
    >
    >

    A class that extends MultiDataObject. (See also: What is a DataObject?)
     
  • resolver.xml
    Declarative resolution of MIME-type.
  • Changed:
    <
    <
    >
    >
     
    Changed:
    <
    <
    Let the IDE (or your application built on top of the NetBeans Platform) recognize your file type as being distinct from all other file types. But this is only a starting point. Once your file type is recognized, you can provide a lot of functionality specifically for the file type—such as menu items, dialog boxes, wizards, syntax highlighting, code completion, multiview editors, code folding, component palettes, etc. etc. etc. For all of these features, the starting point is that the IDE is able to identify a file type as being distinct—and that's why the first step is to run through the File Type wizard so that the basic file type recognition files are generated for you.
    >
    >

    Impact on layer.xml (the module's NetBeans configuration file):

    • A long list of standard actions are listed in the Loaders folder for the specified MIME type, so that the file type has these default actions (such as 'Open' and 'Save') available from the start.
    • The MIME resolver is registered in the Services/MIMEResolver folder.
    • The dummy template is registered in the Templates/Other folder. This means that when the user opens the New File wizard, the dummy template will be in the Other folder. (You can change the position of the template, as well as, of course, its content.)

    Now that the IDE (or your application built on top of the NetBeans Platform) recognizes your file type as being distinct from all other file types, you can provide a lot of functionality specifically for the newly-recognized file type—such as menu items, dialog boxes, wizards, syntax highlighting, code completion, multiview editors, code folding, component palettes, etc. etc. etc. For all of these features, the starting point is that the IDE is able to identify a file type as being distinct—and that's why the first step is to run through the New File Type wizard so that the basic file type recognition files are generated for you.
     
    NetBeans DataLoader Module Tutorial

    NetBeans Component Palette Module Tutorial

    Line: 186 to 198
     
    New Project Template wizard
    Changed:
    <
    <
    ... ...
    >
    >
    WizardDescriptor class Created files:

    • .ZIP file (containing the project that forms the basis of the project template or sample)
    • WizardIterator.java
    • PanelVisual.java
    • WizardPanel.java
    • .HTML file (for the description area in the New File wizard)

    Impact on layer.xml (the module's NetBeans configuration file):

    • The template is registered in the Templates/Project folder, within the subfolder that you indicated in the wizard. This means that when the user opens the New Project wizard, the template will be in the specified folder. (You can change the position of the template after using the wizard.)
     
    Extend the files to finetune a template that users build on when creating their own project. For example, in the IDE a user chooses the 'Web Application' project template in the New Project wizard, then the IDE creates a project consisting of a JSP file, a web.xml file, a server-specific deployment file,
    Line: 204 to 224
     
    New Window Component wizard TopComponent class
    Changed:
    <
    <

    Created files:

    >
    >
    Created files:
     
    • TopComponent.java
      A class that extends the TopComponent class.
      The TopComponent subclass includes the following methods when you use the New Window Component wizard:
    Line: 222 to 242
     

  • TopComponentSettings.xml
  • TopComponentWstcref.xml
    These files dock, instantiate, and load the window. There should be no need
  • Changed:
    <
    <
    to touch these files at all. These files need to be registered in the layer.xml file. The Window Component wizard does this for you automatically.
    >
    >
    to touch these files at all. These files need to be registered in the layer.xml file. The Window Component wizard does this for you automatically.
     
    Changed:
    <
    <

    Extend the TopComponent implementation to create a window (also known as 'view') for a module. For example,

    >
    >

    Impact on layer.xml (the module's NetBeans configuration file):

    • The action is registered in the Actions folder, with a shadow file registered in the Menu/Window folder. For details on shadow files, see What are .shadow files?).
    • TopComponentSettings.xml is registered in the Windows2/Components folder.
    • TopComponentWstcref.xml is registered in the Windows2/Modes/your-selected-position folder.

    Extend the TopComponent implementation to create a window (also known as 'view') for a module. For example,
     the IDE's Projects window is a 'window', just as the Navigator, Output window, Palette, and Debugger. The multiview editor used by the web.xml file is also a topcomponent, so you would use the Window Component wizard to create a basic implementation of this class.
    ...
    New Wizard wizard WizardDescriptor class
    Changed:
    <
    <
    The Wizard wizard's first panel lets you set a 'Registration Type' ('Custom' or 'New File') and a 'Wizard Step Sequence' ('Static' or 'Dynamic'). The consequences of these selections are outlined below:
    >
    >
    Created files:

    The Wizard wizard's first panel lets you set a 'Registration Type' ('Custom' or 'New File') and a 'Wizard Step Sequence' ('Static' or 'Dynamic'). The consequences of these selections are outlined below:

     
    • Registration Type: Custom
      Wizard Step Sequence: Static

    Changed:
    <
    <

    Created files:

    >
    >
    Created files:
     
    • SampleAction.java
    • VisualPanel.java (for each wizard step)
    • WizardPanel.java (for each wizard step)
    Line: 271 to 299
     
    Changed:
    <
    <

    Module Development Lifecycle: From Building to Branding

    >
    >

    Module Development Lifecycle

     
    Changed:
    <
    <
    (coming soon)
    >
    >
    1. Set up the project. If you're building on top of the NetBeans Platform, you'll need to start with a Module Suite project. Only this project type lets you brand an application. If you use the Module Suite project, you can use the IDE to specify a splash screen, and create an executable, ZIP file, and JNLP application. If you're building a NetBeans module, don't use the Module Suite project, except if you need to include JAR files—you put these on your classpath by wrapping them in Library Wrapper Module projects and attaching them to a Module Suite project, along with the NetBeans Module project that provides the module's code.
    2. Let the IDE generate lots of files and code for you. Use the templates listed in the table above to very quickly create the basis of your module's code.
    3. Code the module or application. Here are some ideas on 'what to do when I am stuck':
      • Download the NetBeans sources and learn from them. Alternatively, you can browse the sources on-line, i.e., without having to download them.
      • Use NetBeans API JavaDoc and Source inside the IDE. Download the NetBeans sources and get the JavaDoc from the Update Center. Attach both of them to the NetBeans Platform Manager (available under the Tools menu). Now you can access the JavaDoc while typing. When you hold down the Ctrl key and move your mouse over an identifier (such as TopComponent in a class declaration for classes that subclass TopComponent) a hyperlink appears, which you can click, and when the hyperlink is clicked, the source file opens and you can read the source to understand what you're supposed to be doing with it.
      • Refer to the tutorials and downloadable sample code. The FeedReader sample is included in the New Project wizard in the Samples folder. In addition, many typical scenarios are outlined in tutorials here. Each tutorial contains a link to a ZIP file containing the sample discussed in the tutorial.
      • Join the mailing list. Share your expriences with others, ask questions, and discuss your issues at http://openide.netbeans.org/.
    4. Build and run. Try out the module or application by building and running it. With modules, you can try them out in the IDE that you're currently using or in another instance of the same IDE. The latter means that the IDE starts up again and that your module is loaded in this newly-started IDE. This is safer.
    5. Test, debug, and profile. Use the NetBeans debugger, the NetBeans Profiler, and NetBeans JUnit file templates.
    6. Brand and distribute. Branding is only applicable to Module Suite projects. Right-click the Module Suite Project node and choose Properties. In the Project Properties dialog box, define a splash screen, application title, progress bar, etc. Distribute NetBeans modules in binary form as NBM files. (Use the Create NBM menu item on the module's project node.) Recipients can install your NBM file through the Update Center. Distribute applications as JNLP applications (i.e., web startable) or ZIP distributions (these distributions include an .exe file created by the IDE). (Use Build JNLP or Build ZIP distribution on the Module Suite's project node.)
     

    Layer Files: What Are They For and How Are They Used?

    Line: 381 to 419
      16 December 2005
    Changed:
    <
    <
    Many details added to the Templates table.
    >
    >
    Many details added to the Templates table. Began work on "Module Development Lifecycle".
     
    ---

     <<O>>  Difference Topic DeveloperDocumentation (16 - 16 Dec 2005 - Main.geertjan)
    Line: 1 to 1
     

    NetBeans Module & Platform Development Work-in-Progress Page

    This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

    Line: 27 to 27
     

    Do You Have a "Hello World"?

    Changed:
    <
    <
    >
    >
     
    Changed:
    <
    <

    Netbeans APIs

    >
    >

    NetBeans APIs

     NetBeans provides a rich set of APIs for extending the IDE and for building on top of the NetBeans Platform. The hardest part of understanding the APIs is probably to know what functionality each API provides. Below is a table listing only the most common APIs, with a brief introduction and related tutorials. Each tutorial provides related downloadable sample code.
    Line: 107 to 112
     

    Basic API Terms

    Added:
    >
    >

    The general repository for commonly used API terms is the NetBeansDeveloperFAQ?. Here is a list of entry points to the most common of the commonly used terms:

     
    Line: 130 to 137
      TopComponent class, use the New Window Component wizard to get started. After using the Window Component wizard, you have a bunch of files and sample code that you extend to build your module. Below, where an API is supported by a wizard, the wizard is listed, together with a list of files that is generated, as well as
    Changed:
    <
    <
    a related tutorial (with sample code) that illustrates a typical scenario.
    >
    >
    a related tutorial (with sample code) that illustrates a typical scenario.

    (Note that all tutorials listed below include downloadable source code, which means that you can look at examples of how to extend the files created by the wizards.)

     
    Line: 138 to 145
     
    Which API(s) was the wizard created to support? Which files, sample code, etc, does the wizard give me? Once I have them, what can I do with these files and sample code?
    Changed:
    <
    <
    Which tutorial(s) make use of this wizard? (Note that they all include downloadable source code, which means that you can look at examples of how to extend the files created by the wizards.)
    >
    >
    Which tutorial(s) make use of this wizard?
     
    Changed:
    <
    <
    Action ...
    >
    >
    New Action wizard NetBeans Actions API
     
    ... Create menu items, toolbar buttons, and keyboard shortcuts. The menu items can be attached to a variety of items—the main menu, the pop-up menu of one or more of the editors (the Source Editor is made up of an XML editor, a Java editor, a JSP editor, etc), or the pop-up menu of a node in one of the windows (such as the pop-up menu of a JSP node in the Projects/Files/Favorites windows).

    Once an action is assigned to an item (such as the menu bar), it needs to do something. What an action does is defined in its performAction() method.

    NetBeans Google Toolbar Module Tutorial
    Deleted:
    <
    <
    File Type ...
    File Purpose
     
    Changed:
    <
    <
    xxxDataLoader.java A class that extends UniFileLoader
    xxxDataBeanInfo.java Display information, such as the related icon.
    xxxDataNode.java
    A class that extends DataNode
    xxxDataObject.java A class that extends MultiDataObject
    resolver.xml Declarative resolution of MIME-type.
    >
    >
    New File Type wizard NetBeans Loaders API

    Created files:

    • DataLoader.java
      A class that extends UniFileLoader

    • DataBeanInfo.java
      Display information, such as the related icon.

    • DataNode.java
      A class that extends DataNode

    • DataObject.java
      A class that extends MultiDataObject

    • resolver.xml
      Declarative resolution of MIME-type.
     
    Let the IDE (or your application built on top of the NetBeans Platform) recognize your file type as being distinct from all other file types. But this is only a starting point. Once your file type is recognized, you can provide a lot of functionality specifically for the file type—such as menu items, dialog boxes, wizards, syntax highlighting, code completion, multiview editors, code folding, component palettes, etc. etc. etc. For all of these features, the starting point is that the IDE is able to identify a file type as being distinct—and that's why the first step is to run through the File Type wizard so that the basic file type recognition files are generated for you.
    Added:
    >
    >
     
    NetBeans DataLoader Module Tutorial

    NetBeans Component Palette Module Tutorial

    Line: 183 to 182
     
    NetBeans DataLoader Module Tutorial

    NetBeans Component Palette Module Tutorial

    Added:
    >
    >
     
    Changed:
    <
    <
    Project Template
    >
    >
    New Project Template wizard
     
    ... ... Extend the files to finetune a template that users build on when creating their own project. For example,
    Line: 201 to 202
     
    NetBeans Project Template Module Tutorial

    NetBeans Project Sample Module Tutorial

    Changed:
    <
    <
    Window Component ...

    File Purpose
    xxxAction.java An action that the layer.xml file registers in the Window menu. The IDE creates this Action class to display the component.
    xxxTopComponent.java The class that extends topcomponent.

    The following methods are provided when you use the New Window Component wizard:

    >
    >
    New Window Component wizard TopComponent class

    Created files:

    • TopComponent.java
      A class that extends the TopComponent class.
      The TopComponent subclass includes the following methods when you use the New Window Component wizard:
     
    • getDefault()
    • getPersistenceType()
    • componentOpened()
    Line: 225 to 215
     
  • writeReplace()
  • preferredID()
  • Changed:
    <
    <
    xxxTopComponentSettings.xml
    xxxTopComponentWstcref.xml
    These files dock, instantiate, and load the window. There should be no need to touch these files at all.
    >
    >

  • Action.java
    An action that the layer.xml file registers in the Window menu. The IDE creates this Action class to display the component.

  • TopComponentSettings.xml
  • TopComponentWstcref.xml
    These files dock, instantiate, and load the window. There should be no need to touch these files at all. These files need to be registered in the layer.xml file. The Window Component wizard does this for you automatically.
  •  
    Changed:
    <
    <

    Extend the topcomponent implementation to create a window (also known as 'view') for a module. For example,

    >
    >

    Extend the TopComponent implementation to create a window (also known as 'view') for a module. For example,

     the IDE's Projects window is a 'window', just as the Navigator, Output window, Palette, and Debugger. The multiview editor used by the web.xml file is also a topcomponent, so you would use the Window Component wizard to create a basic implementation of this class.
    ...
    Changed:
    <
    <
    Wizard ...
    >
    >
    New Wizard wizard WizardDescriptor class
     
    The Wizard wizard's first panel lets you set a 'Registration Type' ('Custom' or 'New File') and a 'Wizard Step Sequence' ('Static' or 'Dynamic'). The consequences of these selections are outlined below:
    • Registration Type: Custom
      Wizard Step Sequence: Static

      Created files:

    Line: 318 to 308
     
    • How to create a wizard
    • ...
    Deleted:
    <
    <

    Glossary

    Check the Glossary? for common words used when talking about NetBeans development. (That doc is out of date, but will be updated and extended.)

     

    NetBeansDeveloperFAQ?

    Versioning

    Line: 384 to 370
     

    Added:
    >
    >

    3 Geertjan 16 December 2005 Many details added to the Templates table. ---
     

     <<O>>  Difference Topic DeveloperDocumentation (15 - 13 Dec 2005 - Main.geertjan)
    Line: 1 to 1
     

    NetBeans Module & Platform Development Work-in-Progress Page

    This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.


     <<O>>  Difference Topic DeveloperDocumentation (14 - 12 Dec 2005 - Main.geertjan)
    Line: 1 to 1
     

    NetBeans Module & Platform Development Work-in-Progress Page

    This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

    Line: 74 to 74
     
    Refactoring Enables you to extend the IDE's refactoring capabilities by providing facilities for plugging your own refactorings into the IDE.
    Changed:
    <
    <
    NetBeans Copy Class Refactoring Module Tutorial
    >
    >
    NetBeans Copy Class Refactoring Module Tutorial
     
    MultiView

     <<O>>  Difference Topic DeveloperDocumentation (13 - 10 Dec 2005 - Main.geertjan)
    Line: 1 to 1
     

    NetBeans Module & Platform Development Work-in-Progress Page

    This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

    Line: 302 to 302
     
    • Don't just start typing code. Use the templates in IDE 5.0 as a starting point -- lots of files and sample code gets generated for you. After that, build your module on top of the generated files...
    Changed:
    <
    <
    • Tip 2...
    >
    >
    • If you want to know what a folder or file is called in the layer file, (because it is not the DISPLAY name but the ORIGINAL name that determines the name of the folder or file), just delete it in the "this layer in context node" (nothing scary will happen, there'll just be a _hidden flag in your layer xml) and then, because of the layer.xml's hidden flag, you'll see what the folder or file is really called.
     
    • Tip 3...

     <<O>>  Difference Topic DeveloperDocumentation (12 - 10 Dec 2005 - Main.geertjan)
    Line: 1 to 1
     

    NetBeans Module & Platform Development Work-in-Progress Page

    This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

    Line: 83 to 83
     
    (coming soon)
    Added:
    >
    >
    JavaHelp Integration Add helpset to the IDE or an application built on the NetBeans Platform. NetBeans Help System Plug-in Tutorial
     
    ... ... ...
    Line: 280 to 285
     (coming soon)
    Added:
    >
    >

    Layer Files: What Are They For and How Are They Used?

    (coming soon)

     

    End Products: ZIP, JNLP, NBM, and Other Acronyms

    (coming soon)

    Line: 306 to 315
     
    • Multiview editor
    • Identifier hyperlink
    • Web framework support
    Changed:
    <
    <
    • New File wizard
    >
    >
    • How to create a wizard
     
    • ...

    Glossary

    Line: 366 to 375
      10 December 2005
    Changed:
    <
    <
    Added Refactoring API and Multiview API to the table.
    >
    >
    Added Refactoring API and Multiview API and JavaHelp APIto the table.
     
    Started the "Templates for API Extensions in NetBeans IDE 5.0" section.

     <<O>>  Difference Topic DeveloperDocumentation (11 - 10 Dec 2005 - Main.geertjan)
    Line: 1 to 1
     

    NetBeans Module & Platform Development Work-in-Progress Page

    This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

    Line: 31 to 31
     

    Netbeans APIs

    Changed:
    <
    <
    NetBeans provides a rich set of APIs for extending the IDE and for building on top of the NetBeans Platform. The hardest part of understanding the APIs is probably to know what functionality each API provides. Below is a table listing the most common APIs, with a brief introduction and related tutorials. Each tutorial provides related downloadable sample code.
    >
    >
    NetBeans provides a rich set of APIs for extending the IDE and for building on top of the NetBeans Platform. The hardest part of understanding the APIs is probably to know what functionality each API provides. Below is a table listing only the most common APIs, with a brief introduction and related tutorials. Each tutorial provides related downloadable sample code.
     
    Line: 52 to 52
     
    DataSystems "Parsed files". Provides DataObjects which wrap FileObjects and provide programmatic access to their contents. Each file type NetBeans recognizes (such as Java files or HTML files) has a corresponding DataObject subclass provided by the module that adds support for that file type.
    Changed:
    <
    <
    NetBeans DataLoader Module Tutorial
    >
    >
    NetBeans DataLoader Module Tutorial

     NetBeans Component Palette Module Tutorial
    Changed:
    <
    <
    Nodes Generic hierarchy and action context. Nodes are similar to TreeNodes, but can be used in more than trees. Nodes add user-visible things such as popup menu actions, localized display names and icons to DataObjects, but can also be used without DataObjects, by themselves. The Explorer API contains a variety of UI components such as trees, lists and tables which can be used to display a node and its children. Each window system UI component (TopComponent) has one or more "activated nodes" which determine what actions are enabled when that component has focus. NetBeans System Properties Module Tutorial
    >
    >
     
    Nodes Generic hierarchy and action context. Nodes are similar to TreeNodes, but can be used in more than trees. Nodes add user-visible things such as popup menu actions, localized display names and icons to DataObjects, but can also be used without DataObjects, by themselves. The Explorer API contains a variety of UI components such as trees, lists and tables which can be used to display a node and its children. Each window system UI component (TopComponent) has one or more "activated nodes" which determine what actions are enabled when that component has focus.
    Line: 68 to 64
     
    Windows Allows modules to provide window-like components, mainly through embeddable visual components called topcomponents.
    Changed:
    <
    <
    NetBeans Anagram Game Module Tutorial
    FeedReader Tutorial
    >
    >
    NetBeans Anagram Game Module Tutorial

    FeedReader Tutorial

     
    Palette Provides a palette topcomponent with drag-and-droppable content. For example, this API is used to provide groups of related tags that can be inserted in HTML file and JSP files in the IDE.
    Changed:
    <
    <
    NetBeans Component Palette Tutorial
    NetBeans Code Snippet Tutorial
    >
    >
    NetBeans Component Palette Tutorial

    NetBeans Code Snippet Tutorial

    Refactoring Enables you to extend the IDE's refactoring capabilities by providing facilities for plugging your own refactorings into the IDE. NetBeans Copy Class Refactoring Module Tutorial
    MultiView Lets you display multiple perspectives of the same data. For example, the web.xml multiview editor provides an XML view and a topcomponent view. (coming soon)
     
    ...
    Line: 114 to 121
     

    Templates for API Extensions in NetBeans IDE 5.0

    Added:
    >
    >

    NetBeans IDE 5.0 provides a set of wizards that create the basic files for various APIs. For example, when you want to implement the TopComponent class, use the New Window Component wizard to get started. After using the Window Component wizard, you have a bunch of files and sample code that you extend to build your module. Below, where an API is supported by a wizard, the wizard is listed, together with a list of files that is generated, as well as a related tutorial (with sample code) that illustrates a typical scenario.

    Name of Wizard Which API(s) was the wizard created to support? Which files, sample code, etc, does the wizard give me? Once I have them, what can I do with these files and sample code? Which tutorial(s) make use of this wizard? (Note that they all include downloadable source code, which means that you can look at examples of how to extend the files created by the wizards.)
    Action ... ... Create menu items, toolbar buttons, and keyboard shortcuts. The menu items can be attached to a variety of items—the main menu, the pop-up menu of one or more of the editors (the Source Editor is made up of an XML editor, a Java editor, a JSP editor, etc), or the pop-up menu of a node in one of the windows (such as the pop-up menu of a JSP node in the Projects/Files/Favorites windows).

    Once an action is assigned to an item (such as the menu bar), it needs to do something. What an action does is defined in its performAction() method.

    NetBeans Google Toolbar Module Tutorial
    File Type ...

    File Purpose
    xxxDataLoader.java A class that extends UniFileLoader
    xxxDataBeanInfo.java Display information, such as the related icon.
    xxxDataNode.java
    A class that extends DataNode
    xxxDataObject.java A class that extends MultiDataObject
    resolver.xml Declarative resolution of MIME-type.
    Let the IDE (or your application built on top of the NetBeans Platform) recognize your file type as being distinct from all other file types. But this is only a starting point. Once your file type is recognized, you can provide a lot of functionality specifically for the file type—such as menu items, dialog boxes, wizards, syntax highlighting, code completion, multiview editors, code folding, component palettes, etc. etc. etc. For all of these features, the starting point is that the IDE is able to identify a file type as being distinct—and that's why the first step is to run through the File Type wizard so that the basic file type recognition files are generated for you. NetBeans DataLoader Module Tutorial

    NetBeans Component Palette Module Tutorial

    Project Template ... ... Extend the files to finetune a template that users build on when creating their own project. For example, in the IDE a user chooses the 'Web Application' project template in the New Project wizard, then the IDE creates a project consisting of a JSP file, a web.xml file, a server-specific deployment file, and project metadata within a specific structure that is useful for web application projects.

    Alternatively, extend the files to finetune a sample that illustrate some aspect of project functionality. For example, in the Samples directory within the New Project wizard, an Anagram Game is included to demonstrate J2SE? functionality. Samples are a kind of project template; they have the same behavior as project templates, but they are used for a different purpose.

    NetBeans Project Template Module Tutorial

    NetBeans Project Sample Module Tutorial

    Window Component ...

    File Purpose
    xxxAction.java An action that the layer.xml file registers in the Window menu. The IDE creates this Action class to display the component.
    xxxTopComponent.java The class that extends topcomponent.

    The following methods are provided when you use the New Window Component wizard:

    • getDefault()
    • getPersistenceType()
    • componentOpened()
    • componentClosed()
    • writeReplace()
    • preferredID()
    xxxTopComponentSettings.xml
    xxxTopComponentWstcref.xml
    These files dock, instantiate, and load the window. There should be no need to touch these files at all.

    Extend the topcomponent implementation to create a window (also known as 'view') for a module. For example, the IDE's Projects window is a 'window', just as the Navigator, Output window, Palette, and Debugger. The multiview editor used by the web.xml file is also a topcomponent, so you would use the Window Component wizard to create a basic implementation of this class.

    ...
    Wizard ... The Wizard wizard's first panel lets you set a 'Registration Type' ('Custom' or 'New File') and a 'Wizard Step Sequence' ('Static' or 'Dynamic'). The consequences of these selections are outlined below:
    • Registration Type: Custom
      Wizard Step Sequence: Static

      Created files:

      • SampleAction.java
      • VisualPanel.java (for each wizard step)
      • WizardPanel.java (for each wizard step)

      These files are ideal for uncomplicated wizards that progress sequentially from panel to panel without divergences or reversals. A menu item or toolbar button invokes the wizard and subsequent steps are generally linear and forward-directed. An example of this type of wizard is the Update Center wizard, which does not allow you to skip steps. It does not branch off or change direction based on choices made by the user.

    • Registration Type: Custom
      Wizard Step Sequence: Dynamic

      Created files:

      • WizardIterator.java
      • VisualPanel.java (for each wizard step)
      • WizardPanel.java (for each wizard step)

      These files are for wizards that provide more flexibility to the user. A WizardDescriptor.Iterator class guides progress from one panel to the next. The developer has a lot more freedom in coding the wizard, but has a more complex task since there are many more possibilities to consider. Even though the Custom/Simple wizard type can also be extended to provide support for panel skipping and reversals, the Custom/Dynamic type was made for this purpose. For example, the Add Server Instance wizard offers different panels depending on the type of server that the user wants to register.

    • Registration Type: New File
      Wizard Step Sequence: Not Applicable

      Created files:

      • WizardIterator.java
      • VisualPanel.java (for each wizard step)
      • WizardPanel.java (for each wizard step)
      • .HTML file (for the description area in the New File wizard)

      These files are for wizards that are used to create new files. This wizard is registered in the New File wizard via the layer.xml file. All the necessary entries in the layer.xml file are created for you by the Wizard wizard. In addition, when you make this choice, the Wizard wizard creates a WizardDescriptor.Iterator

    Add user interface components to the visualpanels and wire them to their related wizardpanels so that the information is correctly passed from one to the other. Finetune the wizard's steps, graphics, left side-bar text, and a user panel on the right. For more complex wizards, set the sequences that the user will follow when using the wizard. ...

    Module Development Lifecycle: From Building to Branding

     (coming soon)
    Changed:
    <
    <

    Module Development Lifecycle in NetBeans IDE 5.0

    >
    >

    End Products: ZIP, JNLP, NBM, and Other Acronyms

     (coming soon)
    Line: 140 to 304
     
    • Code completion
    • Code folding
    • Multiview editor
    Changed:
    <
    <
    • ...
    >
    >
    • Identifier hyperlink
    • Web framework support
    • New File wizard
     
    • ...

    Glossary

    Line: 189 to 355
     

    Added:
    >
    >

    2 Geertjan 10 December 2005 Added Refactoring API and Multiview API to the table.
    Started the "Templates for API Extensions in NetBeans IDE 5.0" section.
    ---
     

     <<O>>  Difference Topic DeveloperDocumentation (10 - 09 Dec 2005 - Main.geertjan)
    Line: 1 to 1
     

    NetBeans Module & Platform Development Work-in-Progress Page

    This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

    Changed:
    <
    <

    Understanding NetBeans Module Development

    A NetBeans module is a Java archive (JAR) file which contains Java classes written to interact with the NetBeans APIs. A module identifies itself as a module by an entry in its MANIFEST.MF file. NetBeans modules are packaged as NBM files (.nbm extension) for non-installer distribution, usually via the NetBeans Update Center. NetBeans modules are written with one of two aims in mind:

    >
    >

    A NetBeans module is a Java archive (JAR) file which contains Java classes written to interact with the NetBeans APIs. A module identifies itself as a module by an entry in its MANIFEST.MF file. NetBeans modules are packaged as NBM files (.nbm extension) for non-installer distribution, usually via the NetBeans Update Center. NetBeans modules are written with one of two aims in mind:

     
    • Extending the IDE. You can very easily extend the IDE's functionality with new features. For example, you can write modules that make your favorite cutting-edge technologies available to the IDE. Or, if you miss some functionality in the IDE, you can add it yourself, by writing a module that provides the desired functionality.
    • Building a standalone rich-client application. You can use the core of the IDE as a platform on top of which you develop rich client applications. The core of the IDE is a separate NetBeans product called the NetBeans Platform. You can save a lot of development time by reusing features readily available in the NetBeans Platform.
    Line: 33 to 31
     

    Netbeans APIs

    Changed:
    <
    <
    Nebeans provides a rich set of APIs for extending the IDE and for building on top of the NetBeans Platform. The hardest part of understanding the APIs is probably to know what functionality each API provides. Below is a table listing the most common APIs, with a brief introduction and related tutorials.
    >
    >
    NetBeans provides a rich set of APIs for extending the IDE and for building on top of the NetBeans Platform. The hardest part of understanding the APIs is probably to know what functionality each API provides. Below is a table listing the most common APIs, with a brief introduction and related tutorials. Each tutorial provides related downloadable sample code.
     
    Line: 63 to 61
     
    NetBeans System Properties Module Tutorial
    Added:
    >
    >
    Nodes Generic hierarchy and action context. Nodes are similar to TreeNodes, but can be used in more than trees. Nodes add user-visible things such as popup menu actions, localized display names and icons to DataObjects, but can also be used without DataObjects, by themselves. The Explorer API contains a variety of UI components such as trees, lists and tables which can be used to display a node and its children. Each window system UI component (TopComponent) has one or more "activated nodes" which determine what actions are enabled when that component has focus. NetBeans System Properties Module Tutorial
    Windows Allows modules to provide window-like components, mainly through embeddable visual components called topcomponents. NetBeans Anagram Game Module Tutorial
    FeedReader Tutorial
    Palette Provides a palette topcomponent with drag-and-droppable content. For example, this API is used to provide groups of related tags that can be inserted in HTML file and JSP files in the IDE. NetBeans Component Palette Tutorial
    NetBeans Code Snippet Tutorial
     
    ... ... ...
    Line: 95 to 108
     
  • ...
  • ...
  • Added:
    >
    >

    How Do the APIs Relate to Each Other?

    Templates for API Extensions in NetBeans IDE 5.0

    (coming soon)

    Module Development Lifecycle in NetBeans IDE 5.0

    (coming soon)

    What Problems Have Others Encountered and How Have They Overcome Them?

     

    Tips and Tricks

    Changed:
    <
    <
    • Actions
    >
    >
    • Don't just start typing code. Use the templates in IDE 5.0 as a starting point -- lots of files and sample code gets generated for you. After that, build your module on top of the generated files...

    • Tip 2...
     
    Changed:
    <
    <
    • Data Objects
    >
    >
    • Tip 3...
     

    Tutorials

    All the current tutorials: NetBeans IDE 5.0 Module Development Tutorials

    Changed:
    <
    <

    Ideas for other tutorials:
    >
    >

    Ideas for other tutorials:

     
    • Code completion
    • Code folding
    • Multiview editor
    Line: 113 to 145
     

    Glossary

    Changed:
    <
    <
    Check the glossary ? for common words used when talking about NetBeans? development.
    >
    >
    Check the Glossary? for common words used when talking about NetBeans development. (That doc is out of date, but will be updated and extended.)
     

    NetBeansDeveloperFAQ?


     <<O>>  Difference Topic DeveloperDocumentation (9 - 09 Dec 2005 - Main.geertjan)
    Line: 1 to 1
     

    NetBeans Module & Platform Development Work-in-Progress Page

    This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

    Line: 10 to 10
     
    • Extending the IDE. You can very easily extend the IDE's functionality with new features. For example, you can write modules that make your favorite cutting-edge technologies available to the IDE. Or, if you miss some functionality in the IDE, you can add it yourself, by writing a module that provides the desired functionality.
    • Building a standalone rich-client application. You can use the core of the IDE as a platform on top of which you develop rich client applications. The core of the IDE is a separate NetBeans product called the NetBeans Platform. You can save a lot of development time by reusing features readily available in the NetBeans Platform.
    Changed:
    <
    <

    Basic Terms

    >
    >

    Basic NetBeans Module Development Terms

     
    • NetBeans Platform. This the core of the NetBeans IDE, with all the IDE-specific modules stripped away. The NetBeans Platform provides an application's common requirements—such as menus, document management, and settings—right out-of-the-box. Building an application "on top of NetBeans" means that, instead of writing applications from scratch, you only provide the parts of your application that the NetBeans Platform doesn't already have. At the end of the development cycle, you bundle your application with the NetBeans Platform, saving you time and energy and resulting in a solid, reliable application.
    • NetBeans (Plug-in) Module. A group of Java classes that provides an application with a specific feature. For example, the feature provided by the Java classes in the Google Toolbar Module is a google toolbar. The Java classes use the manifest.mf file to declare the module and the layer.xml configuration file to register their functionality in the System Filesystem. In NetBeans terminology, "plug-in" is an adjective while "module" is a noun. There is no difference in meaning between them.
    • Cluster. A cluster is a group of modules. They are usually closely related as in the example of a loader, editor and viewer for a specific file format, but can also be a group of unrelated modules that together form a complete application which you can distribute to your users. This relieves you from having to distribute the platform to those who already have a copy, which is similar to how applications are often distributed without a copy of the JRE.
    Changed:
    <
    <
  • Module Suite. A group of interdependent modules that are deployed together. The IDE helps you to brand the suite -- for example, you can add a splash screen and you can specify the parts of the NetBeans Platform that you don't want your application to provide.
  • >
    >
  • Module Suite. A group of interdependent modules that are deployed together. The IDE helps you to brand the suite -- for example, you can add a splash screen and you can specify the parts of the NetBeans Platform that you don't want your application to provide. See also What is the difference between a suite and a cluster?
  •  
  • NetBeans System Filesystem. The system filesystem is the general registry for publicly accessible data and objects. It is a virtual filesystem that contains configuration information. NetBeans stores a wide variety of configuration information in the system filesystem. For example, the system filesystem contains a folder called "Menu", which contains subfolders with names such as "File" and "Edit". These subfolders contain files that represent Java classes which implement the actions that appear in the "File" and "Edit" menus.
    When you create a module, you are free to create your own folders in the system filesystem to store data that relate to your module. You can also add objects to existing folders. One of the reasons to use the system filesystem is that it allows objects to be declared, but their classes not actually loaded by the JVM until something needs to use them, thus saving memory.
    One important aspect of a NetBeans virtual filesystem is that it can fire events to notify the rest of the system when something in it changes. NetBeans listens for changes in the system filesystem, and if, for example, something creates a new object in one of the menu folders, that new item will appear in the menu.
  • XML Layer Files. You use a XML layer file (layer.xml) as part of the installation system for your module. The contents of the layer.xml will be automatically included in the system filesystem when your module is installed.
    When you use a module project template, a layer.xml file is automatically created for you. When you use a module file template to create a new action or to have the IDE recognize a new file type, the IDE automatically registers the new items in the layer.xml. You can use the System Filesystem Browser to tweak the layer.xml file, or you can do so manually using code completion in the Source Editor.
  • Changed:
    <
    <
  • NetBeans APIs. The NetBeans APIs are the public interfaces and classes which are available to module writers. They are divided into specific APIs for dealing with different types of functionality. The contents and behavior of the Java source packages and its subpackages, as specified in the API reference documentation, are the APIs. After you access the NetBeans API sources and Javadoc, you can refer to them in the Source Editor, while developing NetBeans modules. For a full list of NetBeans APIs, see the NetBeans API List.
  • >
    >
  • NetBeans APIs. The NetBeans APIs are the public interfaces and classes which are available to module writers. They are divided into specific APIs for dealing with different types of functionality. The contents and behavior of the Java source packages and its subpackages, as specified in the API reference documentation, are the APIs. After you access the NetBeans API sources and Javadoc, you can refer to them in the Source Editor, while developing NetBeans modules. For a full list of NetBeans APIs, see the NetBeans API List.
  •  
    Added:
    >
    >

    What Can I Do with NetBeans Module Development?

     
    Changed:
    <
    <
    >
    >

    Do You Have a "Hello World"?

    Netbeans APIs

    Nebeans provides a rich set of APIs for extending the IDE and for building on top of the NetBeans Platform. The hardest part of understanding the APIs is probably to know what functionality each API provides. Below is a table listing the most common APIs, with a brief introduction and related tutorials.

    API Description Related Sample Code and Tutorials
    Actions Defines global singleton actions (such as Open, Cut, Paste) which your module may use. NetBeans Google Toolbar Module Tutorial
    FileSystems An API for "virtual files". NetBeans uses this API to access user files on disk, files inside JARs, and configuration data for the IDE. ---
    DataSystems "Parsed files". Provides DataObjects which wrap FileObjects and provide programmatic access to their contents. Each file type NetBeans recognizes (such as Java files or HTML files) has a corresponding DataObject subclass provided by the module that adds support for that file type. NetBeans DataLoader Module Tutorial
    NetBeans Component Palette Module Tutorial
    Nodes Generic hierarchy and action context. Nodes are similar to TreeNodes, but can be used in more than trees. Nodes add user-visible things such as popup menu actions, localized display names and icons to DataObjects, but can also be used without DataObjects, by themselves. The Explorer API contains a variety of UI components such as trees, lists and tables which can be used to display a node and its children. Each window system UI component (TopComponent) has one or more "activated nodes" which determine what actions are enabled when that component has focus. NetBeans System Properties Module Tutorial
    ... ... ...
    ... ... ...
    ... ... ...
     
    Added:
    >
    >
     
    Changed:
    <
    <

    Module Development


    Netbeans API

    Nebeans provides a rich set of APIs to extend NetBeans?. The hardest part of understanding the APIs is probably to know what functionality each API provides. Following pages give you overview over each API.

    • API descriptions sorted by functionality (recommented)

    • APIs ordered alphabetically


    You can find the javadoc and more information about the APIs at http://openide.netbeans.org.

    >
    >

    Basic API Terms

     
    Added:
    >
    >
     
    Deleted:
    <
    <

     

    Tips and Tricks

    • Actions

    • Data Objects
    Deleted:
    <
    <

     

    Tutorials

    All the current tutorials: NetBeans IDE 5.0 Module Development Tutorials

    Line: 70 to 111
     
    • ...
    • ...
    Deleted:
    <
    <

     

    Glossary

    Check the glossary ? for common words used when talking about NetBeans? development.

    Added:
    >
    >

    NetBeansDeveloperFAQ?

     
    Changed:
    <
    <

    >
    >

    Versioning

     
    Changed:
    <
    <

    NetBeansDeveloperFAQ?

    >
    >
    Version
    Who
    When
    What
    Notes
    1 Geertjan 9 December 2005 Initial content Anyone is welcome to add anything they want! Just make sure you add comments in this table so that we can all see what's changed, by who, when, etc.
     
    Deleted:
    <
    <

     
    Changed:
    <
    <

    >
    >

     

     <<O>>  Difference Topic DeveloperDocumentation (8 - 09 Dec 2005 - Main.geertjan)
    Line: 1 to 1
    Changed:
    <
    <

    Netbeans Developer Documentation

    >
    >

    NetBeans Module & Platform Development Work-in-Progress Page

     
    Changed:
    <
    <
    This is the main page for documentation about developing modules? for NetBeans? and using the NetBeans Platform?.
    >
    >
    This is the work-in-progress page for documentation about developing modules for NetBeans IDE and for developing standalone rich-client application on top of the NetBeans Platform. Anyone can contribute to this page, though NetBeans developers and writers will regularly maintain, correct, finetune, and update it.

    Understanding NetBeans Module Development

     
    Changed:
    <
    <
    Go to the user documentation? page if you search documentation about using NetBeans?.
    >
    >
    A NetBeans module is a Java archive (JAR) file which contains Java classes written to interact with the NetBeans APIs. A module identifies itself as a module by an entry in its MANIFEST.MF file. NetBeans modules are packaged as NBM files (.nbm extension) for non-installer distribution, usually via the NetBeans Update Center. NetBeans modules are written with one of two aims in mind:
     
    Changed:
    <
    <

    General Documentation

    >
    >
    • Extending the IDE. You can very easily extend the IDE's functionality with new features. For example, you can write modules that make your favorite cutting-edge technologies available to the IDE. Or, if you miss some functionality in the IDE, you can add it yourself, by writing a module that provides the desired functionality.
    • Building a standalone rich-client application. You can use the core of the IDE as a platform on top of which you develop rich client applications. The core of the IDE is a separate NetBeans product called the NetBeans Platform. You can save a lot of development time by reusing features readily available in the NetBeans Platform.
     
    Changed:
    <
    <
    >
    >

    Basic Terms

     
    Changed:
    <
    <
    • Getting the sources using CVS
    >
    >
    • NetBeans Platform. This the core of the NetBeans IDE, with all the IDE-specific modules stripped away. The NetBeans Platform provides an application's common requirements—such as menus, document management, and settings—right out-of-the-box. Building an application "on top of NetBeans" means that, instead of writing applications from scratch, you only provide the parts of your application that the NetBeans Platform doesn't already have. At the end of the development cycle, you bundle your application with the NetBeans Platform, saving you time and energy and resulting in a solid, reliable application.
    • NetBeans (Plug-in) Module. A group of Java classes that provides an application with a specific feature. For example, the feature provided by the Java classes in the Google Toolbar Module is a google toolbar. The Java classes use the manifest.mf file to declare the module and the layer.xml configuration file to register their functionality in the System Filesystem. In NetBeans terminology, "plug-in" is an adjective while "module" is a noun. There is no difference in meaning between them.
    • Cluster. A cluster is a group of modules. They are usually closely related as in the example of a loader, editor and viewer for a specific file format, but can also be a group of unrelated modules that together form a complete application which you can distribute to your users. This relieves you from having to distribute the platform to those who already have a copy, which is similar to how applications are often distributed without a copy of the JRE.
    • Module Suite. A group of interdependent modules that are deployed together. The IDE helps you to brand the suite -- for example, you can add a splash screen and you can specify the parts of the NetBeans Platform that you don't want your application to provide.
    • NetBeans System Filesystem. The system filesystem is the general registry for publicly accessible data and objects. It is a virtual filesystem that contains configuration information. NetBeans stores a wide variety of configuration information in the system filesystem. For example, the system filesystem contains a folder called "Menu", which contains subfolders with names such as "File" and "Edit". These subfolders contain files that represent Java classes which implement the actions that appear in the "File" and "Edit" menus.
      When you create a module, you are free to create your own folders in the system filesystem to store data that relate to your module. You can also add objects to existing folders. One of the reasons to use the system filesystem is that it allows objects to be declared, but their classes not actually loaded by the JVM until something needs to use them, thus saving memory.
      One important aspect of a NetBeans virtual filesystem is that it can fire events to notify the rest of the system when something in it changes. NetBeans listens for changes in the system filesystem, and if, for example, something creates a new object in one of the menu folders, that new item will appear in the menu.
    • XML Layer Files. You use a XML layer file (layer.xml) as part of the installation system for your module. The contents of the layer.xml will be automatically included in the system filesystem when your module is installed.
      When you use a module project template, a layer.xml file is automatically created for you. When you use a module file template to create a new action or to have the IDE recognize a new file type, the IDE automatically registers the new items in the layer.xml. You can use the System Filesystem Browser to tweak the layer.xml file, or you can do so manually using code completion in the Source Editor.
    • NetBeans APIs. The NetBeans APIs are the public interfaces and classes which are available to module writers. They are divided into specific APIs for dealing with different types of functionality. The contents and behavior of the Java source packages and its subpackages, as specified in the API reference documentation, are the APIs. After you access the NetBeans API sources and Javadoc, you can refer to them in the Source Editor, while developing NetBeans modules. For a full list of NetBeans APIs, see the NetBeans API List.
     
    Deleted:
    <
    <
    • Installing Netbeans
     
    Changed:
    <
    <
    • BuildingNetBeans?
    >
    >
     
    Deleted:
    <
    <
    • NetBeansSources?
     

    Module Development


     <<O>>  Difference Topic DeveloperDocumentation (7 - 08 Dec 2005 - Main.geertjan)
    Line: 1 to 1
     

    Netbeans Developer Documentation

    This is the main page for documentation about developing modules? for NetBeans? and using the NetBeans Platform?.

    Line: 8 to 8
     

    General Documentation

    Changed:
    <
    <
    • First steps? (Start here if you don't know anything yet)
    >
    >
     
    • Getting the sources using CVS
    Line: 21 to 21
     

    Module Development

    Changed:
    <
    <
    • for Netbeans 4.0?
    >
    >
     
    Deleted:
    <
    <
    • Upgrade modules from 3.6 to 4.0?
     
    Line: 46 to 46
     


    Added:
    >
    >

    Tips and Tricks

    • Actions

    • Data Objects


     

    Tutorials

    Added:
    >
    >
    All the current tutorials: NetBeans IDE 5.0 Module Development Tutorials
    Ideas for other tutorials:
    • Code completion
    • Code folding
    • Multiview editor
    • ...
    • ...
     

    Glossary

    Line: 57 to 72
     
    Changed:
    <
    <

    DeveloperFAQs?

    >
    >

    NetBeansDeveloperFAQ?

     

     <<O>>  Difference Topic DeveloperDocumentation (6 - 26 Mar 2005 - Main.jglick)
    Line: 1 to 1
     

    Netbeans Developer Documentation

    This is the main page for documentation about developing modules? for NetBeans? and using the NetBeans Platform?.

    Line: 21 to 21
     

    Module Development

    Deleted:
    <
    <
    • for Netbeans 3.6 and earlier
     
    • for Netbeans 4.0?

    • Upgrade modules from 3.6 to 4.0?
    Line: 46 to 44
     
    Deleted:
    <
    <

     

    Tutorials

    Line: 68 to 62
     


    Deleted:
    <
    <
    Comments:

    * Don't forget to change the link to the final 4.0 API documentation once available.


     <<O>>  Difference Topic DeveloperDocumentation (5 - 25 Mar 2005 - Main.jglick)
    Line: 1 to 1
     

    Netbeans Developer Documentation

    This is the main page for documentation about developing modules? for NetBeans? and using the NetBeans Platform?.

    Line: 63 to 63
     
    Deleted:
    <
    <

    Old Wiki content

     

    Developer FAQs

    Deleted:
    <
    <
    These FAQs are more relevant to people developing modules and working on the NetBeans? codebase itself.

    <-- BEGIN Developer BEGIN -->
    • Coding?
    • Filesystems?
    • Getting Started?
    • Menus and Options?
    • Modules?
    • Nodes and Explorer?
    • The Editor?
    • ModuleDevelopmentMiscellaneous?
    • ModuleDevelopment -Miscellaneous? (dupliated topic! delete one!)

    <-- END Developer END -->


     

     <<O>>  Difference Topic DeveloperDocumentation (4 - 10 Dec 2004 - Main.jst)
    Line: 1 to 1
     

    Netbeans Developer Documentation

    This is the main page for documentation about developing modules? for NetBeans? and using the NetBeans Platform?.

    Line: 42 to 42
     
    You can find the javadoc and more information about the APIs at http://openide.netbeans.org.
    Changed:
    <
    <
    >
    >

     

     <<O>>  Difference Topic DeveloperDocumentation (3 - 07 Dec 2004 - Main.richunger)
    Line: 1 to 1
     

    Netbeans Developer Documentation

    This is the main page for documentation about developing modules? for NetBeans? and using the NetBeans Platform?.

    Line: 8 to 8
     

    General Documentation

    Changed:
    <
    <
    • First steps (Start here if you don't know anything yet)
    >
    >
    • First steps? (Start here if you don't know anything yet)
     
    • Getting the sources using CVS

    • Installing Netbeans
    Changed:
    <
    <
    • ???
    >
    >
    • BuildingNetBeans?
     
    Added:
    >
    >
    • NetBeansSources?
     

    Module Development

    • for Netbeans 3.6 and earlier
    Changed:
    <
    <
    • for Netbeans 4.0
    >
    >
    • for Netbeans 4.0?
     
    • Upgrade modules from 3.6 to 4.0?
    Line: 55 to 56
     

    Glossary

    Changed:
    <
    <
    Check the glossary ? for common words used when talking about NetBeans? development.
    >
    >
    Check the glossary ? for common words used when talking about NetBeans? development.
     



     <<O>>  Difference Topic DeveloperDocumentation (2 - 14 Oct 2004 - Main.mruflin)
    Line: 1 to 1
    Changed:
    <
    <
    This is the main page for documentation about developing [[NetbeansModules] [modules for Netbeans] and using the NetbeansPlatform?.
    >
    >

    Netbeans Developer Documentation

    This is the main page for documentation about developing modules? for NetBeans? and using the NetBeans Platform?.

     Go to the user documentation? page if you search documentation about using NetBeans?.
    Added:
    >
    >

    General Documentation

    • First steps (Start here if you don't know anything yet)

    • Getting the sources using CVS

    • Installing Netbeans

    • ???


    Module Development

    • for Netbeans 3.6 and earlier

    • for Netbeans 4.0

    • Upgrade modules from 3.6 to 4.0?


    Netbeans API

    Nebeans provides a rich set of APIs to extend NetBeans?. The hardest part of understanding the APIs is probably to know what functionality each API provides. Following pages give you overview over each API.

    • API descriptions sorted by functionality (recommented)

    • APIs ordered alphabetically


    You can find the javadoc and more information about the APIs at http://openide.netbeans.org.


    Tutorials


    Glossary

    Check the glossary ? for common words used when talking about NetBeans? development.


    Old Wiki content

    Developer FAQs

    These FAQs are more relevant to people developing modules and working on the NetBeans? codebase itself.

    <-- BEGIN Developer BEGIN -->
    • Coding?
    • Filesystems?
    • Getting Started?
    • Menus and Options?
    • Modules?
    • Nodes and Explorer?
    • The Editor?
    • ModuleDevelopmentMiscellaneous?
    • ModuleDevelopment -Miscellaneous? (dupliated topic! delete one!)

    <-- END Developer END -->




    Comments:

    * Don't forget to change the link to the final 4.0 API documentation once available.


     <<O>>  Difference Topic DeveloperDocumentation (1 - 14 Oct 2004 - Main.mruflin)
    Line: 1 to 1
    Added:
    >
    >
    This is the main page for documentation about developing [[NetbeansModules] [modules for Netbeans] and using the NetbeansPlatform?.

    Go to the user documentation? page if you search documentation about using NetBeans?.


    Topic DeveloperDocumentation . { View | Diffs r27 < r26 < r25 < r24 | More }
     XML java.net RSS