NetBeans Architecture Answers for Common Palette module


Interfaces table

Group of java interfaces
Interface NameIn/OutStabilitySpecified in What Document?
PaletteExportedUnder Development .../dev/javadoc/org-netbeans-spi-palette

OpenAPIsImportedOfficial

For acces to Nodes, winsys TopComponent, ActiveEditorDrop, lookups, resource bundles etc.

Group of dtd interfaces
Interface NameIn/OutStabilitySpecified in What Document?
editor-palette-item-1_0.dtdExportedUnder Development .../dtds/editor-palette-item-1_0.dtd

Group of java.io.File interfaces
Interface NameIn/OutStabilitySpecified in What Document?
org-netbeans-modules-palette.jarExportedUnder Development

Group of layer interfaces
Interface NameIn/OutStabilitySpecified in What Document?
user_settingsExportedPrivate

There's a private XML file for user settings for each palette model.

Group of lookup interfaces
Interface NameIn/OutStabilitySpecified in What Document?
activated_nodeExportedUnder Development

Palette listens to system activated node changes. The palette TopComponent opens when an editor TopComponent with a PaletteController instance in its Lookup is opened or activated. Palette window closes when the editor window is closed or deactivated and no other visible editor window supports the palette.
The palette window always shows the content from the last active editor window regardless where the input focus is. The palette content is updated when user activates a different editor window that supports the palette.

node_representionExportedUnder Development

The palette item implementor can either directly provide the item body or her own item class implementing org.openide.text.ActiveEditorDrop interface.
Lookup that holds object(s) representing the selected item then associates custom item class instance with the org.openide.text.ActiveEditorDrop.class key and the body with java.lang.String key.
Editor side implementor can use the Lookup content whenever the Lookup is given, namely in the editor-provided implementations of the PaletteActions, DragAndDropHandler and PropertyChangeListener (registered on the PaletteController) interfaces.


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