Skip navigation links
org.netbeans.modules.editor.lib/3 4.9.1 23

Editor Library
Under Development

The editor functionality are mainly implementations of the Swing Text package APIs plus extension features such as Syntax Coloring, Code Completion, Word Matching, Abbreviations or Macros.

See: Description

Editor Library 
Package Description
org.netbeans.editor  
org.netbeans.editor.ext
Completion Design View
org.netbeans.editor.view.spi  
org.netbeans.lib.editor.hyperlink.spi  
org.netbeans.lib.editor.view  

The editor functionality are mainly implementations of the Swing Text package APIs plus extension features such as Syntax Coloring, Code Completion, Word Matching, Abbreviations or Macros.

The library part is located under editor/lib/src folder.
It depends on the following classes from openide:

org.openide.DialogDescriptor
org.openide.DialogDisplayer
org.openide.ErrorManager
org.openide.NotifyDescriptor

org.openide.util.Lookup
org.openide.util.LookupListener
org.openide.util.LookupEvent
org.openide.util.NbBundle
org.openide.util.RequestProcessor
org.openide.util.Task

The above classes should remain to be isolated in a sense that they operate without loading other openide classes (if they need an implementation class they get it from Lookup).

Hyperlink SPI

EditorHyperlinkSPI Hyperlink SPI in org.netbeans.lib.editor.hyperlink.spi allows the editors for a particular mime-type to respond to the situation when a user hovers over the text with a Ctrl key pressed.
The Hyperlink SPI resolves whether the text under the mouse is hyperlink-able and defines the span of the hyperlink and the action to be performed when the user clicks on the hyperlink.
The SPI consists of a single HyperlinkProvider class that contains a javadoc with instructions about how to register the implementation in the xml layer for the given mime-type (mentioned in the layer section here as well).

What is New (see all changes)?

Use Cases

No answer

Exported Interfaces

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. Read them all...
Group of java interfaces
Interface NameIn/OutStabilitySpecified in What Document?
EditorHyperlinkSPIExportedUnder Development

Hyperlink SPI in org.netbeans.lib.editor.hyperlink.spi allows the editors for a particular mime-type to respond to the situation when a user hovers over the text with a Ctrl key pressed.

EditorLibraryModuleAPIExportedUnder Development

Editor defines APIs and SPIs both by
  • Providing java classes in public packages for further reuse.
    Most of the classes were created spontaneously (several years ago) without fulfilling of the rules imposed on APIs and SPIs at the present time.
    There is an ongoing work to revisit the existing classes and create stable APIs and SPIs (and possibly extract functionality into a submodule where appropriate). However this is a long-term task spanning several promotions.
  • Being sensitive to content of certain directories in xml layer.

Group of property interfaces
Interface NameIn/OutStabilitySpecified in What Document?
DefaultEditorKit.EndOfLineStringPropertyExportedStable

Document property containing line separator that was used when the document content was loaded from a java.io.Reader by an EditorKit.read().

line-limitExportedPrivate

Document property that determines the number of characters in the longest line determined during the document loading from a reader by the editor kit.

Group of systemproperty interfaces
Interface NameIn/OutStabilitySpecified in What Document?

Implementation Details

Where are the sources for the module?

The sources for the module are in the NetBeans Mercurial repositories.

What do other modules need to do to declare a dependency on this one, in addition to or instead of a plain module dependency?
Nothing.

Read more about the implementation in the answers to architecture questions.

Skip navigation links
org.netbeans.modules.editor.lib/3 4.9.1 23

Built on March 4 2024.  |   Copyright © 2017-2024 Apache Software Foundation. All Rights Reserved.