Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes

de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage Class Reference

aXLang source code editor outline view. one instance for every multipageeditor More...

List of all members.

Public Member Functions

 AXLEditorOutlinePage (ITextEditor theEditor, AXLMultiPageEditor editor)
 Constructor, sets the assoziated text editor.
void collectExpandedElements () throws SWTException
 collects the visible expanded tree paths from the old model.
void createControl (Composite theParent)
 Creates the control that displays the outline.
void dispose ()
void enableOverviewPage (boolean enable)
int getActualPage ()
AXLEditor getAxlEditor ()
AXLOutlineContentProvider getMyContentProvider ()
AXLOutlineLabelProvider getMyLabelProvider ()
AXLMultiPageEditor getMymultipageeditor ()
TreeViewer getTreeViewer ()
void handleError (boolean iserror)
 handles to show the error at the topnode. needed to prevent expensive new draws.
void refreshOutlineViewer ()
void refreshTreeView ()
 refresh the View for the new model (expands the tree). to use this methods, it was necessary to separate the IAXLangElement from the view/tree/outline.
void selectionChanged (SelectionChangedEvent theChangeEvent)
 Reacts on a change of the selection.
void switchPage (int id)
void update ()
 Update the outline.

Static Public Attributes

static final int ID_OUTLINE = 0
static final int ID_OVERVIEW = 1

Protected Member Functions

void configureOutlineViewer ()
void initializeOverview ()
void showPage (int id)

Protected Attributes

AXLMultiPageEditor mymultipageeditor = null

Private Member Functions

void checkTheErrorPath ()
 should mark the whole tree to the node where the error occurs TODO.
void handleCorrectSelection (IAXLangElement axlElement, IDocument theDocument) throws BadLocationException
 corrects the selection, because of the wrong tab calculating.
void handleSelection (IAXLangElement axlElement)
 checks if the element is in this file (include files...).
void hookContextMenu ()
 Prepares the view for a context menu.

Private Attributes

Canvas actualdiagramoverview = null
LightweightSystem lws = null
AXLOutlineContentProvider myContentProvider
AXLEditor myeditor = null
AXLOutlineLabelProvider myLabelProvider
TreePath[] oldtreepath = null
 saves the expanded tree before the update occurs
PageBook pageBook = null
IAction showOutlineAction
IAction showOverviewAction = null
ScrollableThumbnail thumbnail = null

Detailed Description

aXLang source code editor outline view. one instance for every multipageeditor

Author:
ekleinod
skaegebein
Version:
0.8.0
Since:
0.4.2

Constructor & Destructor Documentation

de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.AXLEditorOutlinePage ( ITextEditor  theEditor,
AXLMultiPageEditor  editor 
)

Constructor, sets the assoziated text editor.

Parameters:
theEditor assoziated text editor

Member Function Documentation

void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.checkTheErrorPath (  )  [private]

should mark the whole tree to the node where the error occurs TODO.

void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.collectExpandedElements (  )  throws SWTException

collects the visible expanded tree paths from the old model.

Exceptions:
SWTException 
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.configureOutlineViewer (  )  [protected]
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.createControl ( Composite  theParent  ) 

Creates the control that displays the outline.

Parameters:
theParent parent gui component
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.dispose (  ) 
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.enableOverviewPage ( boolean  enable  ) 
int de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.getActualPage (  ) 
AXLEditor de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.getAxlEditor (  ) 
Returns:
the myeditor
AXLOutlineContentProvider de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.getMyContentProvider (  ) 
AXLOutlineLabelProvider de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.getMyLabelProvider (  ) 
Returns:
the myLabelProvider
AXLMultiPageEditor de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.getMymultipageeditor (  ) 
TreeViewer de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.getTreeViewer (  ) 

Returns this page's tree viewer.

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

Implements de.fraunhofer.isst.axbench.views.IAXLView.

void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.handleCorrectSelection ( IAXLangElement  axlElement,
IDocument  theDocument 
) throws BadLocationException [private]

corrects the selection, because of the wrong tab calculating.

Parameters:
axlElement 
theDocument 
Exceptions:
BadLocationException 
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.handleError ( boolean  iserror  ) 

handles to show the error at the topnode. needed to prevent expensive new draws.

Parameters:
iserror 
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.handleSelection ( IAXLangElement  axlElement  )  [private]

checks if the element is in this file (include files...).

Parameters:
axlElement 
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.hookContextMenu (  )  [private]

Prepares the view for a context menu.

void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.initializeOverview (  )  [protected]
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.refreshOutlineViewer (  ) 
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.refreshTreeView (  ) 

refresh the View for the new model (expands the tree). to use this methods, it was necessary to separate the IAXLangElement from the view/tree/outline.

void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.selectionChanged ( SelectionChangedEvent  theChangeEvent  ) 

Reacts on a change of the selection.

Parameters:
theChangeEvent change event
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.showPage ( int  id  )  [protected]
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.switchPage ( int  id  ) 
void de.fraunhofer.isst.axbench.views.outline.AXLEditorOutlinePage.update (  ) 

Update the outline.


Member Data Documentation

saves the expanded tree before the update occurs