Difference between revisions of "PluginTypes"

From Protege Wiki
Jump to: navigation, search
m
Line 1: Line 1:
 
<div class="orangeBox">
 
<div class="orangeBox">
<span class="orangeBoxTitle">Protege 4 Developer Documentation</span><br /><br />
+
<span class="orangeBoxTitle">Protege 4 Plugin types</span><br /><br />
Plugin types
+
This page summarises the default types of plugin that can be implemented for Protege 4.
 
</div><br /><br />
 
</div><br /><br />
 +
 +
Back to [[Protege4DevDocs]]
 +
  
 
__TOC__
 
__TOC__

Revision as of 10:40, July 17, 2008

Protege 4 Plugin types

This page summarises the default types of plugin that can be implemented for Protege 4.



Back to Protege4DevDocs


Existing Plugin Types

This is a snapshot of the existing types of plugins that can be added to Protege4.0. The current set of plugin types can always be found in the code by looking at the plugin.xml file for the core.application and the owl bundles. Just look for the extension-points in these files - these point to the schemas that are used for describing each type of plugin. Plenty of examples can be found in the plugin.xml files themselves.

Core Plugins

EditorKitFactory

WorkspaceTab

ViewComponent

Implementation of this plugin is demonstrated in the TabbedHierarchyView example.

There are many abstract implementations of this plugin to use as a base, for example each entity type (Class, Property and Individual) has an abstract base.

  • Implement: org.protege.editor.core.ui.view.ViewComponent
  • Example: org.protege.editor.owl.ui.clshierarchy.ToldOWLClassHierarchyViewComponent

ViewAction

menu.window

EditorKitMenuAction

Create an entry in a menu (and supply a mnemonic) and its associated action.

  • Implement: org.protege.editor.core.ui.action.ProtegeAction
  • Example: org.protege.editor.owl.ui.action.CreateSubClassAction

ToolBarAction

preferencespanel

Create a panel that will be loaded into the preferences dialog.

This should be for controlling a particular aspect of Protege4.0 in general or can be used as part of a bundle to control the behaviour of other plugins.

Preferences should be used to persist over sessions.

The applyChanges() method should be used to update the appropriate values in Protege's PreferencesManager.

  • Implement: org.protege.editor.owl.ui.preferences.PreferencesPanel
  • Example: org.protege.editor.owl.ui.tree.OWLTreePreferencesPanel

OWL Plugins

inference.reasonerfactory

ui.renderer.entitycolorprovider

model.libraryfactory