org.eclipse.palamedes.ui.views.knowledgebase
Class KnowledgeBasePage

java.lang.Object
  extended by org.eclipse.ui.part.Page
      extended by org.eclipse.palamedes.ui.views.knowledgebase.KnowledgeBasePage
All Implemented Interfaces:
org.eclipse.jface.viewers.ISelectionChangedListener, org.eclipse.jface.viewers.ISelectionProvider, IKnowledgeBasePage, org.eclipse.ui.part.IPage, org.eclipse.ui.part.IPageBookViewPage
Direct Known Subclasses:
KBPage

public abstract class KnowledgeBasePage
extends org.eclipse.ui.part.Page
implements IKnowledgeBasePage, org.eclipse.jface.viewers.ISelectionChangedListener

An abstract base class for knowledge base pages.

Clients who are defining an editor may elect to provide a corresponding knowledge base page. This knowledge base page will be presented to the user via the standard Knowledge Base View (the user decides whether their workbench window contains this view) whenever that editor is active. This class should be subclassed.

Internally, each knowledge base page consists of a standard tree viewer; selections made in the tree viewer are reported as selection change events by the page (which is a selection provider). The tree viewer is not created until createPage is called; consequently, subclasses must extend createControl to configure the tree viewer with a proper content provider, label provider, and input element.

Note that those wanting to use a control other than internally created TreeViewer will need to implement IContentOutlinePage directly rather than subclassing this class.


Constructor Summary
protected KnowledgeBasePage()
          Create a new content outline page.
 
Method Summary
 void addSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener listener)
           
 void createControl(org.eclipse.swt.widgets.Composite parent)
          The KnowledgeBasePage implementation of this IKnowledgeBasePage method creates a tree viewer.
protected  void fireSelectionChanged(org.eclipse.jface.viewers.ISelection selection)
          Fires a selection changed event.
 org.eclipse.swt.widgets.Control getControl()
           
 org.eclipse.jface.viewers.ISelection getSelection()
           
protected  org.eclipse.jface.viewers.TreeViewer getTreeViewer()
          Returns this page's tree viewer.
 void init(org.eclipse.ui.part.IPageSite pageSite)
           
 void removeSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener listener)
           
 void selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent event)
           
 void setFocus()
          Sets focus to a part in the page.
 void setSelection(org.eclipse.jface.viewers.ISelection selection)
           
 
Methods inherited from class org.eclipse.ui.part.Page
dispose, getSite, makeContributions, setActionBars
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.ui.part.IPage
dispose, setActionBars
 

Constructor Detail

KnowledgeBasePage

protected KnowledgeBasePage()
Create a new content outline page.

Method Detail

addSelectionChangedListener

public void addSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener listener)
Specified by:
addSelectionChangedListener in interface org.eclipse.jface.viewers.ISelectionProvider

createControl

public void createControl(org.eclipse.swt.widgets.Composite parent)
The KnowledgeBasePage implementation of this IKnowledgeBasePage method creates a tree viewer. Subclasses must extend this method configure the tree viewer with a proper content provider, label provider, and input element.

Specified by:
createControl in interface org.eclipse.ui.part.IPage
Specified by:
createControl in class org.eclipse.ui.part.Page
Parameters:
parent -

fireSelectionChanged

protected void fireSelectionChanged(org.eclipse.jface.viewers.ISelection selection)
Fires a selection changed event.

Parameters:
selection - the new selection

getControl

public org.eclipse.swt.widgets.Control getControl()
Specified by:
getControl in interface org.eclipse.ui.part.IPage
Specified by:
getControl in class org.eclipse.ui.part.Page

getSelection

public org.eclipse.jface.viewers.ISelection getSelection()
Specified by:
getSelection in interface org.eclipse.jface.viewers.ISelectionProvider

getTreeViewer

protected org.eclipse.jface.viewers.TreeViewer getTreeViewer()
Returns this page's tree viewer.

Returns:
this page's tree viewer, or null if createControl has not been called yet

init

public void init(org.eclipse.ui.part.IPageSite pageSite)
Specified by:
init in interface org.eclipse.ui.part.IPageBookViewPage
Overrides:
init in class org.eclipse.ui.part.Page

removeSelectionChangedListener

public void removeSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener listener)
Specified by:
removeSelectionChangedListener in interface org.eclipse.jface.viewers.ISelectionProvider

selectionChanged

public void selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent event)
Specified by:
selectionChanged in interface org.eclipse.jface.viewers.ISelectionChangedListener

setFocus

public void setFocus()
Sets focus to a part in the page.

Specified by:
setFocus in interface org.eclipse.ui.part.IPage
Specified by:
setFocus in class org.eclipse.ui.part.Page

setSelection

public void setSelection(org.eclipse.jface.viewers.ISelection selection)
Specified by:
setSelection in interface org.eclipse.jface.viewers.ISelectionProvider