Class AtlEditor
java.lang.Object
org.eclipse.core.commands.common.EventManager
org.eclipse.ui.part.WorkbenchPart
org.eclipse.ui.part.EditorPart
org.eclipse.ui.texteditor.AbstractTextEditor
org.eclipse.ui.texteditor.StatusTextEditor
org.eclipse.ui.texteditor.AbstractDecoratedTextEditor
org.eclipse.ui.editors.text.TextEditor
org.eclipse.m2m.atl.adt.ui.editor.AtlEditor
- All Implemented Interfaces:
org.eclipse.core.runtime.IAdaptable
,org.eclipse.core.runtime.IExecutableExtension
,org.eclipse.ui.IEditorPart
,org.eclipse.ui.INavigationLocationProvider
,org.eclipse.ui.IPersistable
,org.eclipse.ui.IPersistableEditor
,org.eclipse.ui.IReusableEditor
,org.eclipse.ui.ISaveablePart
,org.eclipse.ui.ISaveablesSource
,org.eclipse.ui.IWorkbenchPart
,org.eclipse.ui.IWorkbenchPart2
,org.eclipse.ui.IWorkbenchPart3
,org.eclipse.ui.part.IWorkbenchPartOrientation
,org.eclipse.ui.texteditor.ITextEditor
,org.eclipse.ui.texteditor.ITextEditorExtension
,org.eclipse.ui.texteditor.ITextEditorExtension2
,org.eclipse.ui.texteditor.ITextEditorExtension3
,org.eclipse.ui.texteditor.ITextEditorExtension4
,org.eclipse.ui.texteditor.ITextEditorExtension5
,org.eclipse.ui.texteditor.ITextEditorExtension6
public class AtlEditor
extends org.eclipse.ui.editors.text.TextEditor
The AtlEditor class is the main class that allows editing atl code. All editor's specifications are
declared here.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class
protected static class
Position updater that takes any changes at the borders of a position to not belong to the position.Nested classes/interfaces inherited from class org.eclipse.ui.texteditor.AbstractTextEditor
org.eclipse.ui.texteditor.AbstractTextEditor.AbstractSelectionChangedListener, org.eclipse.ui.texteditor.AbstractTextEditor.ColumnSupport, org.eclipse.ui.texteditor.AbstractTextEditor.IdMapEntry, org.eclipse.ui.texteditor.AbstractTextEditor.LineEndAction, org.eclipse.ui.texteditor.AbstractTextEditor.LineStartAction, org.eclipse.ui.texteditor.AbstractTextEditor.SelectionProvider, org.eclipse.ui.texteditor.AbstractTextEditor.TextEditorSavable
Nested classes/interfaces inherited from interface org.eclipse.ui.texteditor.ITextEditorExtension3
org.eclipse.ui.texteditor.ITextEditorExtension3.InsertMode
-
Field Summary
FieldsFields inherited from class org.eclipse.ui.editors.text.TextEditor
fEncodingSupport
Fields inherited from class org.eclipse.ui.texteditor.AbstractDecoratedTextEditor
DEFAULT_OVERVIEW_RULER_CONTEXT_MENU_ID, fAnnotationAccess, fIsUpdatingMarkerViews, fLineNumberRulerColumn, fOverviewRuler, fSourceViewerDecorationSupport
Fields inherited from class org.eclipse.ui.texteditor.AbstractTextEditor
ACTION_MAP, COMMON_EDITOR_CONTEXT_MENU_ID, COMMON_RULER_CONTEXT_MENU_ID, DEFAULT_EDITOR_CONTEXT_MENU_ID, DEFAULT_RULER_CONTEXT_MENU_ID, fErrorLabel, PREFERENCE_COLOR_BACKGROUND, PREFERENCE_COLOR_BACKGROUND_SYSTEM_DEFAULT, PREFERENCE_COLOR_FIND_SCOPE, PREFERENCE_COLOR_FOREGROUND, PREFERENCE_COLOR_FOREGROUND_SYSTEM_DEFAULT, PREFERENCE_COLOR_SELECTION_BACKGROUND, PREFERENCE_COLOR_SELECTION_BACKGROUND_SYSTEM_DEFAULT, PREFERENCE_COLOR_SELECTION_FOREGROUND, PREFERENCE_COLOR_SELECTION_FOREGROUND_SYSTEM_DEFAULT, PREFERENCE_FONT, PREFERENCE_HOVER_ENRICH_MODE, PREFERENCE_HYPERLINK_KEY_MODIFIER, PREFERENCE_HYPERLINK_KEY_MODIFIER_MASK, PREFERENCE_HYPERLINKS_ENABLED, PREFERENCE_NAVIGATION_SMART_HOME_END, PREFERENCE_RULER_CONTRIBUTIONS, PREFERENCE_SHOW_CARET_OFFSET, PREFERENCE_SHOW_CARRIAGE_RETURN, PREFERENCE_SHOW_ENCLOSED_IDEOGRAPHIC_SPACES, PREFERENCE_SHOW_ENCLOSED_SPACES, PREFERENCE_SHOW_ENCLOSED_TABS, PREFERENCE_SHOW_LEADING_IDEOGRAPHIC_SPACES, PREFERENCE_SHOW_LEADING_SPACES, PREFERENCE_SHOW_LEADING_TABS, PREFERENCE_SHOW_LINE_FEED, PREFERENCE_SHOW_SELECTION_SIZE, PREFERENCE_SHOW_TRAILING_IDEOGRAPHIC_SPACES, PREFERENCE_SHOW_TRAILING_SPACES, PREFERENCE_SHOW_TRAILING_TABS, PREFERENCE_SHOW_WHITESPACE_CHARACTERS, PREFERENCE_TEXT_DRAG_AND_DROP_ENABLED, PREFERENCE_USE_CUSTOM_CARETS, PREFERENCE_WHITESPACE_CHARACTER_ALPHA_VALUE, PREFERENCE_WIDE_CARET, PREFERENCE_WORD_WRAP_ENABLED, TAG_SELECTION_HORIZONTAL_PIXEL, TAG_SELECTION_LENGTH, TAG_SELECTION_OFFSET, TAG_SELECTION_TOP_PIXEL, VERTICAL_RULER_WIDTH
Fields inherited from interface org.eclipse.ui.IEditorPart
PROP_DIRTY, PROP_INPUT
Fields inherited from interface org.eclipse.ui.texteditor.ITextEditorExtension3
INSERT, SMART_INSERT
Fields inherited from interface org.eclipse.ui.IWorkbenchPart
PROP_TITLE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
affectsTextPresentation
(org.eclipse.jface.util.PropertyChangeEvent event) protected void
configureSourceViewerDecorationSupport
(org.eclipse.ui.texteditor.SourceViewerDecorationSupport support) protected void
protected AtlContentOutlinePage
void
createPartControl
(org.eclipse.swt.widgets.Composite parent) protected org.eclipse.ui.views.properties.PropertySheetPage
Creates the property sheet page used with this editorprotected org.eclipse.jface.text.source.ISourceViewer
createSourceViewer
(org.eclipse.swt.widgets.Composite parent, org.eclipse.jface.text.source.IVerticalRuler ruler, int styles) void
dispose()
void
doSave
(org.eclipse.core.runtime.IProgressMonitor progressMonitor) protected void
doSelectionChanged
(org.eclipse.jface.viewers.SelectionChangedEvent event) protected void
doSetInput
(org.eclipse.ui.IEditorInput input) protected void
doSetSelection
(org.eclipse.jface.viewers.ISelection selection) getAdapter
(Class required) static String
getCurrentLine
(org.eclipse.jface.text.IDocument document, int offset) Compute the whole line of the current offset.org.eclipse.emf.ecore.EObject
getDebugElement
(int lineNumber) return the content of the editor, i.e what currently displayed on the screenreturn the content of the file associated to the active editor.protected org.eclipse.jface.text.IRegion
getSignedSelection
(org.eclipse.jface.text.source.ISourceViewer sourceViewer) Returns the signed current selection.org.eclipse.core.resources.IResource
org.eclipse.jface.text.source.ISourceViewer
void
protected void
handlePreferenceStoreChanged
(org.eclipse.jface.util.PropertyChangeEvent event) void
init
(org.eclipse.ui.IEditorSite site, org.eclipse.ui.IEditorInput input) protected void
protected void
void
setHelp
(AtlNbCharFile help) protected void
setNewPreferenceStore
(org.eclipse.jface.preference.IPreferenceStore store) protected void
Sets the given message as error message to this editor's status line.protected void
Sets the given message as message to this editor's status line.void
Synchronizes the outliner selection with the actual cursor position in the editor.void
toggleLineBreakpoints
(org.eclipse.emf.ecore.EObject element) void
toggleLineBreakpoints
(org.eclipse.jface.viewers.ISelection selection) void
updateFoldingStructure
(Map<org.eclipse.jface.text.source.Annotation, org.eclipse.jface.text.Position> addedAnnotations, List<org.eclipse.jface.text.source.Annotation> deletedAnnotations, Map<org.eclipse.jface.text.source.Annotation, org.eclipse.jface.text.Position> modifiedAnnotations) Updates the folding structure of the template.void
updateOccurrenceAnnotations
(org.eclipse.jface.text.ITextSelection selection) Updates occurrences annotations.void
updateTitleImage
(org.eclipse.swt.graphics.Image image) Methods inherited from class org.eclipse.ui.editors.text.TextEditor
editorContextMenuAboutToShow, getStatusBanner, getStatusHeader, getStatusMessage, installEncodingSupport, isSaveAsAllowed, updatePropertyDependentActions
Methods inherited from class org.eclipse.ui.texteditor.AbstractDecoratedTextEditor
collectContextMenuPreferencePages, collectOverviewRulerMenuPreferencePages, collectRulerMenuPreferencePages, createAnnotationAccess, createAnnotationRulerColumn, createChangeHover, createChangeRulerColumn, createColumnSupport, createCompositeRuler, createContextMenuListener, createLineNumberRulerColumn, createOverviewRuler, createOverviewRulerContextMenu, createShowInTargetList, createStatusControl, createVerticalRuler, disposeDocumentProvider, getAnnotationAccess, getAnnotationPreferenceLookup, getAnnotationPreferences, getDocumentProvider, getOverviewRuler, getOverviewRulerContextMenuId, getSharedColors, getSourceViewerDecorationSupport, getUndoRedoOperationApprover, gotoAnnotation, gotoMarker, handleEditorInputChanged, hideOverviewRuler, initializeLineNumberRulerColumn, isChangeInformationShowing, isEditable, isErrorStatus, isLineNumberRulerVisible, isNavigationTarget, isOverviewRulerVisible, isOverwriteModeEnabled, isPrefQuickDiffAlwaysOn, isSpacesAsTabsDeletionEnabled, isTabsToSpacesConversionEnabled, openSaveErrorDialog, overviewRulerContextMenuAboutToShow, performSaveAs, rulerContextMenuAboutToShow, setDocumentProvider, setOverviewRulerContextMenuId, showChangeInformation, showOverviewRuler, showRevisionInformation, updateMarkerViews, validateEditorInputState
Methods inherited from class org.eclipse.ui.texteditor.StatusTextEditor
doRevertToSaved, handleElementContentReplaced, sanityCheckState, setFocus, updatePartControl, updateStatusField
Methods inherited from class org.eclipse.ui.texteditor.AbstractTextEditor
addAction, addAction, addGroup, addRulerContextMenuListener, adjustHighlightRange, canHandleMove, close, configureInsertMode, containsSavedState, createEmptyNavigationLocation, createNavigationActions, createNavigationLocation, createUndoRedoActions, doGetSelection, doRestoreState, doSaveAs, editorSaved, enableOverwriteMode, enableSanityChecking, enableStateValidation, findAnnotation, firePropertyChange, getAction, getActiveSaveables, getContextMenuListener, getCoverage, getCursorListener, getCursorPosition, getEditorContextMenuId, getFontPropertyPreferenceKey, getHelpContextId, getHighlightRange, getInitialWordWrapStatus, getInsertMode, getLegalInsertModes, getPreferenceStore, getProgressMonitor, getRangeIndicator, getRulerContextMenuId, getRulerMouseListener, getSaveables, getSelectionChangedListener, getSelectionProvider, getSourceViewer, getSourceViewerConfiguration, getStatusField, getStatusLineManager, getVerticalRuler, handleCursorPositionChanged, handleExceptionOnSave, handleInsertModeChanged, initializeDragAndDrop, initializeViewerColors, installCodeMiningProviders, installTabsToSpacesConverter, installTextDragAndDrop, internalInit, isBlockSelectionModeEnabled, isBlockSelectionModeSupported, isDirty, isEditorInputIncludedInContextMenu, isEditorInputModifiable, isEditorInputReadOnly, isInInsertMode, isVisible, isWordWrapEnabled, isWordWrapSupported, markAsContentDependentAction, markAsPropertyDependentAction, markAsSelectionDependentAction, markAsStateDependentAction, markInNavigationHistory, modelOffset2WidgetOffset, performRevert, performSave, rememberSelection, removeActionActivationCode, removeRulerContextMenuListener, resetHighlightRange, restoreSelection, restoreState, safelySanityCheckState, saveState, selectAndReveal, selectAndReveal, setAction, setActionActivationCode, setBlockSelectionMode, setCompatibilityMode, setDocumentProvider, setEditorContextMenuId, setHelpContextId, setHighlightRange, setInput, setInputWithNotify, setInsertMode, setKeyBindingScopes, setPreferenceStore, setRangeIndicator, setRulerContextMenuId, setSourceViewerConfiguration, setStatusField, setWordWrap, showHighlightRangeOnly, showsHighlightRangeOnly, uninstallTabsToSpacesConverter, uninstallTextDragAndDrop, updateContentDependentActions, updateContributedRulerColumns, updateIndentPrefixes, updateSelectionDependentActions, updateState, updateStateDependentActions, updateStatusFields, validateState, widgetOffset2ModelOffset
Methods inherited from class org.eclipse.ui.part.EditorPart
checkSite, getEditorInput, getEditorSite, getTitleToolTip, isSaveOnCloseNeeded, setContentDescription, setInitializationData, setPartName
Methods inherited from class org.eclipse.ui.part.WorkbenchPart
addPartPropertyListener, addPropertyListener, firePartPropertyChanged, getConfigurationElement, getContentDescription, getDefaultImage, getOrientation, getPartName, getPartProperties, getPartProperty, getSite, getTitle, getTitleImage, removePartPropertyListener, removePropertyListener, setPartProperty, setSite, setTitle, setTitleImage, setTitleToolTip, showBusy
Methods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
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.IEditorPart
getEditorInput, getEditorSite
Methods inherited from interface org.eclipse.ui.ISaveablePart
isSaveOnCloseNeeded
Methods inherited from interface org.eclipse.ui.IWorkbenchPart
addPropertyListener, getSite, getTitle, getTitleImage, getTitleToolTip, removePropertyListener
-
Field Details
-
bracketMatcher
The editor's bracket matcher.
-
-
Constructor Details
-
AtlEditor
public AtlEditor()Creates a new ATL editor. Initialize his values from theAtlUIPlugin
default instance.
-
-
Method Details
-
getCurrentLine
Compute the whole line of the current offset.- Parameters:
document
- the current documentoffset
- the current offset- Returns:
- the line containing the offset, ended with the offset
-
updateOccurrenceAnnotations
public void updateOccurrenceAnnotations(org.eclipse.jface.text.ITextSelection selection) Updates occurrences annotations.- Parameters:
selection
- the text selection
-
affectsTextPresentation
protected boolean affectsTextPresentation(org.eclipse.jface.util.PropertyChangeEvent event) - Overrides:
affectsTextPresentation
in classorg.eclipse.ui.texteditor.AbstractTextEditor
- See Also:
-
AbstractTextEditor.affectsTextPresentation(org.eclipse.jface.util.PropertyChangeEvent)
-
configureSourceViewerDecorationSupport
protected void configureSourceViewerDecorationSupport(org.eclipse.ui.texteditor.SourceViewerDecorationSupport support) - Overrides:
configureSourceViewerDecorationSupport
in classorg.eclipse.ui.texteditor.AbstractDecoratedTextEditor
- See Also:
-
AbstractDecoratedTextEditor.configureSourceViewerDecorationSupport(org.eclipse.ui.texteditor.SourceViewerDecorationSupport)
-
createActions
protected void createActions()- Overrides:
createActions
in classorg.eclipse.ui.editors.text.TextEditor
- See Also:
-
TextEditor.createActions()
-
createOutlinePage
-
createPartControl
public void createPartControl(org.eclipse.swt.widgets.Composite parent) - Specified by:
createPartControl
in interfaceorg.eclipse.ui.IWorkbenchPart
- Overrides:
createPartControl
in classorg.eclipse.ui.texteditor.AbstractDecoratedTextEditor
-
updateFoldingStructure
public void updateFoldingStructure(Map<org.eclipse.jface.text.source.Annotation, org.eclipse.jface.text.Position> addedAnnotations, List<org.eclipse.jface.text.source.Annotation> deletedAnnotations, Map<org.eclipse.jface.text.source.Annotation, org.eclipse.jface.text.Position> modifiedAnnotations) Updates the folding structure of the template. This will be called from the Atl template reconciler in order to allow the folding of blocks to the user.- Parameters:
addedAnnotations
- These annotations have been added since the last reconciling operation.deletedAnnotations
- This list represents the annotations that were deleted since we last reconciled.modifiedAnnotations
- These annotations have seen their positions updated.
-
createPropertySheetPage
protected org.eclipse.ui.views.properties.PropertySheetPage createPropertySheetPage()Creates the property sheet page used with this editor -
dispose
public void dispose()- Specified by:
dispose
in interfaceorg.eclipse.ui.IWorkbenchPart
- Overrides:
dispose
in classorg.eclipse.ui.editors.text.TextEditor
- See Also:
-
TextEditor.dispose()
-
doSave
public void doSave(org.eclipse.core.runtime.IProgressMonitor progressMonitor) - Specified by:
doSave
in interfaceorg.eclipse.ui.ISaveablePart
- Overrides:
doSave
in classorg.eclipse.ui.texteditor.AbstractTextEditor
- See Also:
-
AbstractTextEditor.doSave(org.eclipse.core.runtime.IProgressMonitor)
-
getBracketMatcher
-
doSelectionChanged
protected void doSelectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent event) -
doSetSelection
protected void doSetSelection(org.eclipse.jface.viewers.ISelection selection) - Overrides:
doSetSelection
in classorg.eclipse.ui.texteditor.AbstractTextEditor
- See Also:
-
AbstractTextEditor.doSetSelection(org.eclipse.jface.viewers.ISelection)
-
getAdapter
- Specified by:
getAdapter
in interfaceorg.eclipse.core.runtime.IAdaptable
- Overrides:
getAdapter
in classorg.eclipse.ui.editors.text.TextEditor
- See Also:
-
TextEditor.getAdapter(java.lang.Class)
-
getDocumentProviderContent
return the content of the editor, i.e what currently displayed on the screen
- Returns:
- the content of the document provider associated with this AtlEditor
-
getEditorInputContent
return the content of the file associated to the active editor.
When the current editor is dirty, i.e when changes have not been saved yet, the content of the active editor differs from the content of the file associated to this editor.
- Returns:
- the content of the editor input associated with this AtlEditor
-
getSignedSelection
protected org.eclipse.jface.text.IRegion getSignedSelection(org.eclipse.jface.text.source.ISourceViewer sourceViewer) Returns the signed current selection. The length will be negative if the resulting selection is right-to-left(RtoL).The selection offset is model based.
- Parameters:
sourceViewer
- the source viewer- Returns:
- a region denoting the current signed selection, for a resulting RtoL selections length is < 0
-
getUnderlyingResource
public org.eclipse.core.resources.IResource getUnderlyingResource()- Returns:
- the IResource associated to
AtlEditor
ornull
if none
-
getViewer
public org.eclipse.jface.text.source.ISourceViewer getViewer() -
gotoMatchingBracket
public void gotoMatchingBracket() -
handlePreferenceStoreChanged
protected void handlePreferenceStoreChanged(org.eclipse.jface.util.PropertyChangeEvent event) - Overrides:
handlePreferenceStoreChanged
in classorg.eclipse.ui.editors.text.TextEditor
- See Also:
-
TextEditor.handlePreferenceStoreChanged(org.eclipse.jface.util.PropertyChangeEvent)
-
init
public void init(org.eclipse.ui.IEditorSite site, org.eclipse.ui.IEditorInput input) throws org.eclipse.ui.PartInitException - Specified by:
init
in interfaceorg.eclipse.ui.IEditorPart
- Overrides:
init
in classorg.eclipse.ui.texteditor.AbstractTextEditor
- Throws:
org.eclipse.ui.PartInitException
- See Also:
-
AbstractTextEditor.init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput)
-
initializeEditor
protected void initializeEditor()- Overrides:
initializeEditor
in classorg.eclipse.ui.editors.text.TextEditor
- See Also:
-
TextEditor.initializeEditor()
-
setHelp
-
setNewPreferenceStore
protected void setNewPreferenceStore(org.eclipse.jface.preference.IPreferenceStore store) -
setStatusLineErrorMessage
Sets the given message as error message to this editor's status line.- Overrides:
setStatusLineErrorMessage
in classorg.eclipse.ui.texteditor.AbstractTextEditor
- Parameters:
msg
- message to be set
-
setStatusLineMessage
Sets the given message as message to this editor's status line.- Overrides:
setStatusLineMessage
in classorg.eclipse.ui.texteditor.AbstractTextEditor
- Parameters:
msg
- message to be set
-
synchronizeOutlinePageSelection
public void synchronizeOutlinePageSelection()Synchronizes the outliner selection with the actual cursor position in the editor. -
updateTitleImage
public void updateTitleImage(org.eclipse.swt.graphics.Image image) -
getOutlinePage
-
createSourceViewer
protected org.eclipse.jface.text.source.ISourceViewer createSourceViewer(org.eclipse.swt.widgets.Composite parent, org.eclipse.jface.text.source.IVerticalRuler ruler, int styles) - Overrides:
createSourceViewer
in classorg.eclipse.ui.texteditor.AbstractDecoratedTextEditor
- See Also:
-
AbstractDecoratedTextEditor.createSourceViewer(org.eclipse.swt.widgets.Composite, org.eclipse.jface.text.source.IVerticalRuler, int)
-
toggleLineBreakpoints
public void toggleLineBreakpoints(org.eclipse.jface.viewers.ISelection selection) throws org.eclipse.core.runtime.CoreException - Throws:
org.eclipse.core.runtime.CoreException
-
toggleLineBreakpoints
public void toggleLineBreakpoints(org.eclipse.emf.ecore.EObject element) throws org.eclipse.core.runtime.CoreException - Throws:
org.eclipse.core.runtime.CoreException
-
getDebugElement
public org.eclipse.emf.ecore.EObject getDebugElement(int lineNumber) -
doSetInput
protected void doSetInput(org.eclipse.ui.IEditorInput input) throws org.eclipse.core.runtime.CoreException - Overrides:
doSetInput
in classorg.eclipse.ui.editors.text.TextEditor
- Throws:
org.eclipse.core.runtime.CoreException
- See Also:
-
TextEditor.doSetInput(org.eclipse.ui.IEditorInput)
-
initializeKeyBindingScopes
protected void initializeKeyBindingScopes()- Overrides:
initializeKeyBindingScopes
in classorg.eclipse.ui.texteditor.AbstractDecoratedTextEditor
- See Also:
-
AbstractDecoratedTextEditor.initializeKeyBindingScopes()
-
getComparator
-
getSourceViewerConf
-
getSourceManager
-
getModelAnalyser
-