NetBeans Architecture Answers for Options Dialog and SPI module


Interfaces table

Group of java interfaces
Interface NameIn/OutStabilitySpecified in What Document?
OptionsDialogSPIExportedOfficial .../spi/options/OptionsCategory.html

ProgressImportedOfficial .../overview-summary.html

The module is needed for compilation. The module is used during runtime.

org.netbeans.libs.formlayoutImportedPrivate

Additional library to simplify Hanz the work and create a nightmare for rest of us. It is needed for compilation and used during runtime.

FilesystemsAPIImportedOfficial .../overview-summary.html

The module is needed for compilation. The module is used during runtime. Specification version 6.2 is required.

UtilitiesAPIImportedOfficial .../org-openide-util/overview-summary.html

The module is needed for compilation. The module is used during runtime. Specification version 6.2 is required.

org.openide.awtImportedOfficial../org-openide-awt/overview-summary.html

The module is needed for compilation. The module is used during runtime. Specification version 6.2 is required.

DialogsAPIImportedOfficial .../overview-summary.html

The module is needed for compilation. The module is used during runtime. Specification version 6.2 is required.

WindowSystemAPIImportedOfficial .../overview-summary.html

The module is needed for compilation. The module is used during runtime. Specification version 6.2 is required.

ActionsAPIImportedOfficial .../overview-summary.html

The module is needed for compilation. The module is used during runtime. Specification version 6.2 is required.

ExplorerAPIImportedOfficial .../overview-summary.html

The module is needed for compilation. The module is used during runtime. Specification version 6.2 is required.

NodesAPIImportedOfficial .../org-openide-nodes/overview-summary.html

The module is needed for compilation. The module is used during runtime. Specification version 6.2 is required.

LoadersAPIImportedOfficial .../overview-summary.html

The module is needed for compilation. The module is used during runtime.

Group of property interfaces
Interface NameIn/OutStabilitySpecified in What Document?
org.netbeans.core.actions.OptionsAction.additionalActionNameImportedPrivate

Crates button with given string in bottom left corner of Advanced Options Dialog.

org.netbeans.core.actions.OptionsAction.additionalActionListenerImportedPrivate

Given ActionListener is notified when custom button is pressed.

Group of layer interfaces
Interface NameIn/OutStabilitySpecified in What Document?
OptionsDialogSPILayersExportedUnder Development .../spi/options/OptionsCategory.html

Use OptionsDialog folder for registration of custom top level options panels. Register your implementation of OptionsCategory there (*.instance file). Standard file systems sorting mechanism is used.

AdvancedPanelSPILayersExportedUnder Development .../netbeans/spi/options/AdvancedOption.html

Use OptionsDialog/Advanced folder for registration of custom panels to Miscellaneous Panel. Register your implementation of AdvancedCategory there (*.instance file). Standard file systems sorting mechanism is used.

OptionsExportLayersExportedUnder Development

Use OptionsExport/<MyCategory> folder for registration of items for export/import of options. Registration in layers looks as follows
 <folder name="OptionsExport">
     <!-- category -->
     <folder name="MyCategory">
         <!-- category display name -->
         <attr name="displayName"
          bundlevalue="org.netbeans.modules.mymodule.options.Bundle#Category_Display_Name"/>
         <!-- item -->
         <file name="MyItem">
             <attr name="displayName" stringvalue="org.netbeans.modules.mymodule.options.Bundle#Item_Display_Name"/>
             <!-- include regex pattern rooted to userdir -->
             <attr name="include" stringvalue="config/Preferences/org/netbeans/modules/mymodule/.*|config/mymodule/.*"/>
             <!-- exclude regex pattern rooted to userdir -->
             <attr name="exclude" stringvalue="config/mymodule/obsolete/.*"/>
         </file>
     </folder>
 </folder>
 


General Information


Project and platform dependencies


Deployment


Compatibility with environment


Access to resources


Lookup of components


Execution Environment


Format of files and protocols


Performance and Scalability


Built on August 26 2009.  |  Portions Copyright 1997-2009 Sun Microsystems, Inc. All rights reserved.