Class | Description |
---|---|
ProjectManager |
This class takes care of the global project configuration, that is, the list
of configured projects.
|
ProjectPlugin |
A Project Viewer plugin for jEdit.
|
ProjectViewer |
Main GUI for the project viewer plugin.
|
PVActions |
A collection of actions accessible through jEdit's Action mechanism, and
other utility methods that may be interesting for interacting with the
plugin.
|
PVMenuProvider |
Dynamic menu implementation for jEdit 4.2.
|
VFSHelper |
Class with helper functions for dealing with jEdit's VFS.
|
Exception | Description |
---|---|
VFSHelper.SessionErrorException |
External plugins can interact with the Project Viewer plugin in various ways:
This document describes how to easily extend ProjectViewer by using jEdit properties to export your plugin's functionalities to ProjectViewer, much like jEdit 4.2's deferred loading API. Parts of the old API are still available, but it is highly recommended to use the new API. It makes it much easier to extend PV without adding dependencies on the plugin, and without causing ClassNotFoundExceptions when PV is not present. The new API works with versions of jEdit equal or newer to 4.2pre12.
The new API detects when plugins are loaded/unloaded in jEdit and updates the extensions accordingly, so nothing has to be done by other plugin developers aside from providing the service descriptions in the plugin's service.xml file. When a plugin is unloaded, all extensions belonging to that plugin are removed, so there is no risk of having stray objects being held by ProjectViewer. (One exception to this is custom node handlers. See the explanation in the page about custom nodes linked above.)