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 classprotected static classPosition 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.TextEditorSavableNested 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
fEncodingSupportFields inherited from class org.eclipse.ui.texteditor.AbstractDecoratedTextEditor
DEFAULT_OVERVIEW_RULER_CONTEXT_MENU_ID, fAnnotationAccess, fIsUpdatingMarkerViews, fLineNumberRulerColumn, fOverviewRuler, fSourceViewerDecorationSupportFields 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_WIDTHFields inherited from interface org.eclipse.ui.IEditorPart
PROP_DIRTY, PROP_INPUTFields inherited from interface org.eclipse.ui.texteditor.ITextEditorExtension3
INSERT, SMART_INSERTFields inherited from interface org.eclipse.ui.IWorkbenchPart
PROP_TITLE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanaffectsTextPresentation(org.eclipse.jface.util.PropertyChangeEvent event) protected voidconfigureSourceViewerDecorationSupport(org.eclipse.ui.texteditor.SourceViewerDecorationSupport support) protected voidprotected AtlContentOutlinePagevoidcreatePartControl(org.eclipse.swt.widgets.Composite parent) protected org.eclipse.ui.views.properties.PropertySheetPageCreates the property sheet page used with this editorprotected org.eclipse.jface.text.source.ISourceViewercreateSourceViewer(org.eclipse.swt.widgets.Composite parent, org.eclipse.jface.text.source.IVerticalRuler ruler, int styles) voiddispose()voiddoSave(org.eclipse.core.runtime.IProgressMonitor progressMonitor) protected voiddoSelectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent event) protected voiddoSetInput(org.eclipse.ui.IEditorInput input) protected voiddoSetSelection(org.eclipse.jface.viewers.ISelection selection) getAdapter(Class required) static StringgetCurrentLine(org.eclipse.jface.text.IDocument document, int offset) Compute the whole line of the current offset.org.eclipse.emf.ecore.EObjectgetDebugElement(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.IRegiongetSignedSelection(org.eclipse.jface.text.source.ISourceViewer sourceViewer) Returns the signed current selection.org.eclipse.core.resources.IResourceorg.eclipse.jface.text.source.ISourceViewervoidprotected voidhandlePreferenceStoreChanged(org.eclipse.jface.util.PropertyChangeEvent event) voidinit(org.eclipse.ui.IEditorSite site, org.eclipse.ui.IEditorInput input) protected voidprotected voidvoidsetHelp(AtlNbCharFile help) protected voidsetNewPreferenceStore(org.eclipse.jface.preference.IPreferenceStore store) protected voidSets the given message as error message to this editor's status line.protected voidSets the given message as message to this editor's status line.voidSynchronizes the outliner selection with the actual cursor position in the editor.voidtoggleLineBreakpoints(org.eclipse.emf.ecore.EObject element) voidtoggleLineBreakpoints(org.eclipse.jface.viewers.ISelection selection) voidupdateFoldingStructure(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.voidupdateOccurrenceAnnotations(org.eclipse.jface.text.ITextSelection selection) Updates occurrences annotations.voidupdateTitleImage(org.eclipse.swt.graphics.Image image) Methods inherited from class org.eclipse.ui.editors.text.TextEditor
editorContextMenuAboutToShow, getStatusBanner, getStatusHeader, getStatusMessage, installEncodingSupport, isSaveAsAllowed, updatePropertyDependentActionsMethods 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, validateEditorInputStateMethods inherited from class org.eclipse.ui.texteditor.StatusTextEditor
doRevertToSaved, handleElementContentReplaced, sanityCheckState, setFocus, updatePartControl, updateStatusFieldMethods 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, widgetOffset2ModelOffsetMethods inherited from class org.eclipse.ui.part.EditorPart
checkSite, getEditorInput, getEditorSite, getTitleToolTip, isSaveOnCloseNeeded, setContentDescription, setInitializationData, setPartNameMethods 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, showBusyMethods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObjectMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.ui.IEditorPart
getEditorInput, getEditorSiteMethods inherited from interface org.eclipse.ui.ISaveablePart
isSaveOnCloseNeededMethods 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 theAtlUIPlugindefault 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:
affectsTextPresentationin classorg.eclipse.ui.texteditor.AbstractTextEditor- See Also:
-
configureSourceViewerDecorationSupport
protected void configureSourceViewerDecorationSupport(org.eclipse.ui.texteditor.SourceViewerDecorationSupport support) - Overrides:
configureSourceViewerDecorationSupportin classorg.eclipse.ui.texteditor.AbstractDecoratedTextEditor- See Also:
-
createActions
protected void createActions()- Overrides:
createActionsin classorg.eclipse.ui.editors.text.TextEditor- See Also:
-
createOutlinePage
-
createPartControl
public void createPartControl(org.eclipse.swt.widgets.Composite parent) - Specified by:
createPartControlin interfaceorg.eclipse.ui.IWorkbenchPart- Overrides:
createPartControlin 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:
disposein interfaceorg.eclipse.ui.IWorkbenchPart- Overrides:
disposein classorg.eclipse.ui.editors.text.TextEditor- See Also:
-
doSave
public void doSave(org.eclipse.core.runtime.IProgressMonitor progressMonitor) - Specified by:
doSavein interfaceorg.eclipse.ui.ISaveablePart- Overrides:
doSavein classorg.eclipse.ui.texteditor.AbstractTextEditor- See Also:
-
getBracketMatcher
-
doSelectionChanged
protected void doSelectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent event) -
doSetSelection
protected void doSetSelection(org.eclipse.jface.viewers.ISelection selection) - Overrides:
doSetSelectionin classorg.eclipse.ui.texteditor.AbstractTextEditor- See Also:
-
getAdapter
- Specified by:
getAdapterin interfaceorg.eclipse.core.runtime.IAdaptable- Overrides:
getAdapterin classorg.eclipse.ui.editors.text.TextEditor- See Also:
-
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 invalid input: '<' 0
-
getUnderlyingResource
public org.eclipse.core.resources.IResource getUnderlyingResource()- Returns:
- the IResource associated to
AtlEditorornullif 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:
handlePreferenceStoreChangedin classorg.eclipse.ui.editors.text.TextEditor- See Also:
-
init
public void init(org.eclipse.ui.IEditorSite site, org.eclipse.ui.IEditorInput input) throws org.eclipse.ui.PartInitException - Specified by:
initin interfaceorg.eclipse.ui.IEditorPart- Overrides:
initin classorg.eclipse.ui.texteditor.AbstractTextEditor- Throws:
org.eclipse.ui.PartInitException- See Also:
-
initializeEditor
protected void initializeEditor()- Overrides:
initializeEditorin classorg.eclipse.ui.editors.text.TextEditor- See Also:
-
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:
setStatusLineErrorMessagein 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:
setStatusLineMessagein 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:
createSourceViewerin classorg.eclipse.ui.texteditor.AbstractDecoratedTextEditor- See Also:
-
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:
doSetInputin classorg.eclipse.ui.editors.text.TextEditor- Throws:
org.eclipse.core.runtime.CoreException- See Also:
-
initializeKeyBindingScopes
protected void initializeKeyBindingScopes()- Overrides:
initializeKeyBindingScopesin classorg.eclipse.ui.texteditor.AbstractDecoratedTextEditor- See Also:
-
getComparator
-
getSourceViewerConf
-
getSourceManager
-
getModelAnalyser
-