Class AbstractXTextEditor<T extends org.eclipse.emf.ecore.EObject,​R>

  • Type Parameters:
    T - the type of the top-level language element
    All Implemented Interfaces:
    IUpdatableEditor, 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, org.eclipse.xtext.ui.editor.DirtyStateEditorSupport.IDirtyStateEditorSupportClient, org.eclipse.xtext.ui.editor.DirtyStateEditorSupport.IDirtyStateEditorSupportClientExtension
    Direct Known Subclasses:
    XtextEditor, XtextEditor

    public abstract class AbstractXTextEditor<T extends org.eclipse.emf.ecore.EObject,​R>
    extends CommonXtextEditor<T,​R>
    An abstract XText editor providing some capabilities for VIL/VTL. In particular, this class extends the official xText editor in order to hook into the saving mechanism. The afterSave event provided by the xText Editor Callback is not sufficient, as it is also called when a in an editor is changed from outside and pushed back into the editor via the Eclipse refresh mechanism. Update: This class now extends the de.uni_hildesheim.sse.dslcore.ui.editors.CommonXtextEditor which in turn extends the official Xtext editor. This update hooks into the initialization- and dispose-mechanism in order to register an de.uni_hildesheim.sse.dslcore.ui.editors.AbstractModelChangeListener to this editor and receive notifications about changes in the underlying data model.
    Author:
    Holger Eichelberger, kroeher
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.eclipse.xtext.ui.editor.XtextEditor

        org.eclipse.xtext.ui.editor.XtextEditor.DeleteNextSubWordAction, org.eclipse.xtext.ui.editor.XtextEditor.DeletePreviousSubWordAction, org.eclipse.xtext.ui.editor.XtextEditor.NavigateNextSubWordAction, org.eclipse.xtext.ui.editor.XtextEditor.NavigatePreviousSubWordAction, org.eclipse.xtext.ui.editor.XtextEditor.NextSubWordAction, org.eclipse.xtext.ui.editor.XtextEditor.PreviousSubWordAction, org.eclipse.xtext.ui.editor.XtextEditor.SelectNextSubWordAction, org.eclipse.xtext.ui.editor.XtextEditor.SelectPreviousSubWordAction, org.eclipse.xtext.ui.editor.XtextEditor.SmartLineStartAction
      • 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

      Fields 
      Modifier and Type Field Description
      private org.eclipse.emf.common.util.URI resourceUri  
      • Fields inherited from class org.eclipse.xtext.ui.editor.XtextEditor

        DEFAULT_KEY_BINDING_SCOPE, ERROR_ANNOTATION_TYPE, ID, INFO_ANNOTATION_TYPE, KEY_BINDING_SCOPE, WARNING_ANNOTATION_TYPE
      • Fields 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void createPartControl​(org.eclipse.swt.widgets.Composite parent)  
      void dispose()  
      • Methods inherited from class org.eclipse.xtext.ui.editor.XtextEditor

        addVerifyListener, collectContextMenuPreferencePages, configureSourceViewerDecorationSupport, configureToggleCommentAction, createActions, createAnnotationAccess, createDeleteNextSubWordAction, createDeletePreviousSubWordAction, createNavigateNextSubWordAction, createNavigatePreviousSubWordAction, createNavigationActions, createSelectNextSubWordAction, createSelectPreviousSubWordAction, createSmartLineStartAction, createSourceViewer, createWordIterator, doSetInput, editorContextMenuAboutToShow, forceReconcile, getAdapter, getDefaultImage, getDirtyStateEditorSupport, getInternalSourceViewer, getLanguageName, getResource, getShell, getUndoRedoOperationApprover, getXtextEditorCallback, getXtextSourceViewerConfiguration, handlePreferenceStoreChanged, init, initializeDirtyStateSupport, initializeKeyBindingScopes, initializeViewerColors, installFoldingSupport, installProjectionSupport, isContentAssistAvailable, isNavigationTarget, outlinePageClosed, removeDirtyStateSupport, removeVerifyListener, resetProjection, reveal, rulerContextMenuAboutToShow, setKeyBindingScope, setLanguageName, setPreferenceStore, setXtextEditorCallback, uninstallFoldingSupport, updatedTitleImage, updateState, updateStatusLine, validateEditorInputState, validateState
      • Methods inherited from class org.eclipse.ui.editors.text.TextEditor

        getStatusBanner, getStatusHeader, getStatusMessage, initializeEditor, installEncodingSupport, isSaveAsAllowed, updatePropertyDependentActions
      • Methods inherited from class org.eclipse.ui.texteditor.AbstractDecoratedTextEditor

        collectOverviewRulerMenuPreferencePages, collectRulerMenuPreferencePages, createAnnotationRulerColumn, createChangeHover, createChangeRulerColumn, createColumnSupport, createCompositeRuler, createContextMenuListener, createLineNumberRulerColumn, createOverviewRuler, createOverviewRulerContextMenu, createShowInTargetList, createStatusControl, createVerticalRuler, disposeDocumentProvider, getAnnotationAccess, getAnnotationPreferenceLookup, getAnnotationPreferences, getDocumentProvider, getOverviewRuler, getOverviewRulerContextMenuId, getSharedColors, getSourceViewerDecorationSupport, gotoAnnotation, gotoMarker, handleEditorInputChanged, hideOverviewRuler, initializeLineNumberRulerColumn, isChangeInformationShowing, isEditable, isErrorStatus, isLineNumberRulerVisible, isOverviewRulerVisible, isOverwriteModeEnabled, isPrefQuickDiffAlwaysOn, isSpacesAsTabsDeletionEnabled, isTabsToSpacesConversionEnabled, openSaveErrorDialog, overviewRulerContextMenuAboutToShow, performSaveAs, setDocumentProvider, setOverviewRulerContextMenuId, showChangeInformation, showOverviewRuler, showRevisionInformation, updateMarkerViews
      • Methods inherited from class org.eclipse.ui.texteditor.StatusTextEditor

        handleElementContentReplaced, sanityCheckState, setFocus, updatePartControl, updateStatusField
      • Methods inherited from class org.eclipse.ui.texteditor.AbstractTextEditor

        addAction, addAction, addGroup, addRulerContextMenuListener, adjustHighlightRange, affectsTextPresentation, canHandleMove, close, configureInsertMode, containsSavedState, createEmptyNavigationLocation, createNavigationLocation, createUndoRedoActions, doGetSelection, doRestoreState, doSetSelection, 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, 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, setRangeIndicator, setRulerContextMenuId, setSourceViewerConfiguration, setStatusField, setStatusLineErrorMessage, setStatusLineMessage, setWordWrap, showHighlightRangeOnly, showsHighlightRangeOnly, uninstallTabsToSpacesConverter, uninstallTextDragAndDrop, updateContentDependentActions, updateContributedRulerColumns, updateIndentPrefixes, updateSelectionDependentActions, updateStateDependentActions, updateStatusFields, 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, 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.xtext.ui.editor.DirtyStateEditorSupport.IDirtyStateEditorSupportClient

        isDirty
      • 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 Detail

      • resourceUri

        private org.eclipse.emf.common.util.URI resourceUri
    • Constructor Detail

      • AbstractXTextEditor

        public AbstractXTextEditor()
    • Method Detail

      • createPartControl

        public void createPartControl​(org.eclipse.swt.widgets.Composite parent)
        Specified by:
        createPartControl in interface org.eclipse.ui.IWorkbenchPart
        Overrides:
        createPartControl in class org.eclipse.xtext.ui.editor.XtextEditor
      • dispose

        public void dispose()
        Specified by:
        dispose in interface org.eclipse.ui.IWorkbenchPart
        Overrides:
        dispose in class CommonXtextEditor<T extends org.eclipse.emf.ecore.EObject,​R>