The module defines EditorUtilitiesAPI.
The present clients are editor/lib and editor/fold modules.
Added support for adding weak property change listeners to documents
listenerImplementation is not held via
a strong reference, but a weak reference and so can be GCed
independendly of the referencing document.
Added supplementary methods to GapList to accompany the existing methods to add elements.
Presence of property storage depends on the event publisher or document implementation. A client that wants to attach property to the event should be able to check whether the feature is available. In past the check was done by testing the implementation document type, which is not desirable.
to escape text to html.
to check for invalid bounds of compared blocks.
The GapList class is a
java.util.ArrayList but containing a gap in its underlying
array. After a first modification at a particular index
the subsequent modifications around that index are cheap.
The class is suitable for storage of any elements related to editing such as positions, elements, views etc.
The PriorityMutex is a simple mutex implementation
allowing to find out that a priority thread (by default Event Dispatch Thread)
is waiting to enter the mutex.
It's used e.g. in editor's view hierarchy or in editor fold hierarchy.
GapList-based element implementation suitable for line elements and any other branch element types.
The sources for the module are in the Apache Git repositories or in the GitHub repositories.
Read more about the implementation in the answers to architecture questions.