Search in sources :

Example 1 with IQuickAssistAssistant

use of org.eclipse.jface.text.quickassist.IQuickAssistAssistant in project bndtools by bndtools.

the class BndSourceViewerConfiguration method getQuickAssistAssistant.

@Override
public IQuickAssistAssistant getQuickAssistAssistant(ISourceViewer sourceViewer) {
    QuickAssistAssistant assistant = new QuickAssistAssistant();
    assistant.setQuickAssistProcessor(new BndMarkerQuickAssistProcessor());
    return assistant;
}
Also used : IQuickAssistAssistant(org.eclipse.jface.text.quickassist.IQuickAssistAssistant) QuickAssistAssistant(org.eclipse.jface.text.quickassist.QuickAssistAssistant) BndMarkerQuickAssistProcessor(org.bndtools.core.editors.BndMarkerQuickAssistProcessor)

Example 2 with IQuickAssistAssistant

use of org.eclipse.jface.text.quickassist.IQuickAssistAssistant in project bndtools by bndtools.

the class PackageInfoSourceViewerConfiguration method getQuickAssistAssistant.

@Override
public IQuickAssistAssistant getQuickAssistAssistant(ISourceViewer sourceViewer) {
    QuickAssistAssistant assistant = new QuickAssistAssistant();
    assistant.setQuickAssistProcessor(new BndMarkerQuickAssistProcessor());
    return assistant;
}
Also used : IQuickAssistAssistant(org.eclipse.jface.text.quickassist.IQuickAssistAssistant) QuickAssistAssistant(org.eclipse.jface.text.quickassist.QuickAssistAssistant) BndMarkerQuickAssistProcessor(org.bndtools.core.editors.BndMarkerQuickAssistProcessor)

Example 3 with IQuickAssistAssistant

use of org.eclipse.jface.text.quickassist.IQuickAssistAssistant in project eclipse.platform.text by eclipse.

the class AbstractTextEditor method createPartControl.

/**
 * The <code>AbstractTextEditor</code> implementation of this
 * <code>IWorkbenchPart</code> method creates the vertical ruler and
 * source viewer.
 * <p>
 * Subclasses may extend this method. Besides extending this method, the
 * behavior of <code>createPartControl</code> may be customized by
 * calling, extending or replacing the following methods: <br>
 * Subclasses may supply customized implementations for some members using
 * the following methods before <code>createPartControl</code> is invoked:
 * <ul>
 * <li>
 * {@linkplain #setSourceViewerConfiguration(SourceViewerConfiguration) setSourceViewerConfiguration}
 * to supply a custom source viewer configuration,</li>
 * <li>{@linkplain #setRangeIndicator(Annotation) setRangeIndicator} to
 * provide a range indicator,</li>
 * <li>{@linkplain #setHelpContextId(String) setHelpContextId} to provide a
 * help context id,</li>
 * <li>{@linkplain #setEditorContextMenuId(String) setEditorContextMenuId}
 * to set a custom context menu id,</li>
 * <li>{@linkplain #setRulerContextMenuId(String) setRulerContextMenuId} to
 * set a custom ruler context menu id.</li>
 * </ul>
 * <br>
 * Subclasses may replace the following methods called from within
 * <code>createPartControl</code>:
 * <ul>
 * <li>{@linkplain #createVerticalRuler() createVerticalRuler} to supply a
 * custom vertical ruler,</li>
 * <li>{@linkplain #createSourceViewer(Composite, IVerticalRuler, int) createSourceViewer}
 * to supply a custom source viewer,</li>
 * <li>{@linkplain #getSelectionProvider() getSelectionProvider} to supply
 * a custom selection provider.</li>
 * </ul>
 * <br>
 * Subclasses may extend the following methods called from within
 * <code>createPartControl</code>:
 * <ul>
 * <li>
 * {@linkplain #initializeViewerColors(ISourceViewer) initializeViewerColors}
 * to customize the viewer color scheme (may also be replaced),</li>
 * <li>
 * {@linkplain #initializeDragAndDrop(ISourceViewer) initializeDragAndDrop}
 * to customize drag and drop (may also be replaced),</li>
 * <li>{@linkplain #createNavigationActions() createNavigationActions} to
 * add navigation actions,</li>
 * <li>{@linkplain #createActions() createActions} to add text editor
 * actions.</li>
 * </ul>
 * </p>
 *
 * @param parent the parent composite
 */
@Override
public void createPartControl(Composite parent) {
    fVerticalRuler = createVerticalRuler();
    int styles = SWT.V_SCROLL | SWT.H_SCROLL | SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION;
    fSourceViewer = createSourceViewer(parent, fVerticalRuler, styles);
    if (fConfiguration == null)
        fConfiguration = new SourceViewerConfiguration();
    fSourceViewer.configure(fConfiguration);
    if (fSourceViewer instanceof ISourceViewerExtension4)
        fKeyBindingSupportForContentAssistant = new KeyBindingSupportForAssistant(((ISourceViewerExtension4) fSourceViewer));
    if (fSourceViewer instanceof ISourceViewerExtension3) {
        IQuickAssistAssistant assistant = ((ISourceViewerExtension3) fSourceViewer).getQuickAssistAssistant();
        if (assistant != null)
            fKeyBindingSupportForQuickAssistant = new KeyBindingSupportForAssistant(assistant);
    }
    if (fRangeIndicator != null)
        fSourceViewer.setRangeIndicator(fRangeIndicator);
    fSourceViewer.addTextListener(fTextListener);
    fSourceViewer.addTextInputListener(fTextListener);
    getSelectionProvider().addSelectionChangedListener(getSelectionChangedListener());
    initializeViewerFont(fSourceViewer);
    initializeViewerColors(fSourceViewer);
    initializeFindScopeColor(fSourceViewer);
    initializeDragAndDrop(fSourceViewer);
    StyledText styledText = fSourceViewer.getTextWidget();
    styledText.addMouseListener(getCursorListener());
    styledText.addKeyListener(getCursorListener());
    // Disable orientation switching until we fully support it.
    styledText.addListener(SWT.OrientationChange, new Listener() {

        @Override
        public void handleEvent(Event event) {
            event.doit = false;
        }
    });
    if (getHelpContextId() != null)
        PlatformUI.getWorkbench().getHelpSystem().setHelp(styledText, getHelpContextId());
    String id = fEditorContextMenuId != null ? fEditorContextMenuId : DEFAULT_EDITOR_CONTEXT_MENU_ID;
    MenuManager manager = new MenuManager(id, id);
    manager.setRemoveAllWhenShown(true);
    manager.addMenuListener(getContextMenuListener());
    fTextContextMenu = manager.createContextMenu(styledText);
    styledText.setMenu(fTextContextMenu);
    if (fEditorContextMenuId != null)
        getEditorSite().registerContextMenu(fEditorContextMenuId, manager, getSelectionProvider(), isEditorInputIncludedInContextMenu());
    else if (fCompatibilityMode)
        getEditorSite().registerContextMenu(DEFAULT_EDITOR_CONTEXT_MENU_ID, manager, getSelectionProvider(), isEditorInputIncludedInContextMenu());
    if ((fEditorContextMenuId != null && fCompatibilityMode) || fEditorContextMenuId == null) {
        String partId = getEditorSite().getId();
        if (partId != null)
            // $NON-NLS-1$
            getEditorSite().registerContextMenu(partId + ".EditorContext", manager, getSelectionProvider(), isEditorInputIncludedInContextMenu());
    }
    getEditorSite().registerContextMenu(COMMON_EDITOR_CONTEXT_MENU_ID, manager, getSelectionProvider(), false);
    if (fEditorContextMenuId == null)
        fEditorContextMenuId = DEFAULT_EDITOR_CONTEXT_MENU_ID;
    id = fRulerContextMenuId != null ? fRulerContextMenuId : DEFAULT_RULER_CONTEXT_MENU_ID;
    manager = new MenuManager(id, id);
    manager.setRemoveAllWhenShown(true);
    manager.addMenuListener(getContextMenuListener());
    Control rulerControl = fVerticalRuler.getControl();
    fRulerContextMenu = manager.createContextMenu(rulerControl);
    rulerControl.setMenu(fRulerContextMenu);
    rulerControl.addMouseListener(getRulerMouseListener());
    if (fRulerContextMenuId != null)
        getEditorSite().registerContextMenu(fRulerContextMenuId, manager, getSelectionProvider(), false);
    else if (fCompatibilityMode)
        getEditorSite().registerContextMenu(DEFAULT_RULER_CONTEXT_MENU_ID, manager, getSelectionProvider(), false);
    if ((fRulerContextMenuId != null && fCompatibilityMode) || fRulerContextMenuId == null) {
        String partId = getSite().getId();
        if (partId != null)
            // $NON-NLS-1$
            getEditorSite().registerContextMenu(partId + ".RulerContext", manager, getSelectionProvider(), false);
    }
    getEditorSite().registerContextMenu(COMMON_RULER_CONTEXT_MENU_ID, manager, getSelectionProvider(), false);
    if (fRulerContextMenuId == null)
        fRulerContextMenuId = DEFAULT_RULER_CONTEXT_MENU_ID;
    initializeZoomGestures(rulerControl, fSourceViewer);
    getSite().setSelectionProvider(getSelectionProvider());
    fSelectionListener = new SelectionListener();
    fSelectionListener.install(getSelectionProvider());
    fSelectionListener.setDocument(getDocumentProvider().getDocument(getEditorInput()));
    initializeActivationCodeTrigger();
    createNavigationActions();
    createAccessibilityActions();
    createActions();
    initializeSourceViewer(getEditorInput());
    /* since 3.2 - undo redo actions should be created after
		 * the source viewer is initialized, so that the undo manager
		 * can obtain its undo context from its document.
		 */
    createUndoRedoActions();
    JFaceResources.getFontRegistry().addListener(fFontPropertyChangeListener);
    IVerticalRuler ruler = getVerticalRuler();
    if (ruler instanceof CompositeRuler)
        updateContributedRulerColumns((CompositeRuler) ruler);
    if (isWordWrapSupported()) {
        setWordWrap(getInitialWordWrapStatus());
    }
}
Also used : StyledText(org.eclipse.swt.custom.StyledText) ITextListener(org.eclipse.jface.text.ITextListener) IPropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener) ISaveablesLifecycleListener(org.eclipse.ui.ISaveablesLifecycleListener) IPartListener(org.eclipse.ui.IPartListener) KeyListener(org.eclipse.swt.events.KeyListener) GestureListener(org.eclipse.swt.events.GestureListener) IDocumentListener(org.eclipse.jface.text.IDocumentListener) Listener(org.eclipse.swt.widgets.Listener) ITextInputListener(org.eclipse.jface.text.ITextInputListener) VerifyKeyListener(org.eclipse.swt.custom.VerifyKeyListener) VerifyListener(org.eclipse.swt.events.VerifyListener) MouseListener(org.eclipse.swt.events.MouseListener) IWindowListener(org.eclipse.ui.IWindowListener) IMenuListener(org.eclipse.jface.action.IMenuListener) ISelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener) DropTargetListener(org.eclipse.swt.dnd.DropTargetListener) IVerticalRuler(org.eclipse.jface.text.source.IVerticalRuler) CompositeRuler(org.eclipse.jface.text.source.CompositeRuler) ISourceViewerExtension3(org.eclipse.jface.text.source.ISourceViewerExtension3) ISourceViewerExtension4(org.eclipse.jface.text.source.ISourceViewerExtension4) Point(org.eclipse.swt.graphics.Point) SourceViewerConfiguration(org.eclipse.jface.text.source.SourceViewerConfiguration) Control(org.eclipse.swt.widgets.Control) MenuManager(org.eclipse.jface.action.MenuManager) IMenuManager(org.eclipse.jface.action.IMenuManager) DropTargetEvent(org.eclipse.swt.dnd.DropTargetEvent) PropertyChangeEvent(org.eclipse.jface.util.PropertyChangeEvent) SelectionChangedEvent(org.eclipse.jface.viewers.SelectionChangedEvent) SaveablesLifecycleEvent(org.eclipse.ui.SaveablesLifecycleEvent) DragSourceEvent(org.eclipse.swt.dnd.DragSourceEvent) TextEvent(org.eclipse.jface.text.TextEvent) KeyEvent(org.eclipse.swt.events.KeyEvent) MouseEvent(org.eclipse.swt.events.MouseEvent) GestureEvent(org.eclipse.swt.events.GestureEvent) DocumentEvent(org.eclipse.jface.text.DocumentEvent) Event(org.eclipse.swt.widgets.Event) VerifyEvent(org.eclipse.swt.events.VerifyEvent) IQuickAssistAssistant(org.eclipse.jface.text.quickassist.IQuickAssistAssistant)

Example 4 with IQuickAssistAssistant

use of org.eclipse.jface.text.quickassist.IQuickAssistAssistant in project eclipse.platform.text by eclipse.

the class ExtensionBasedTextViewerConfiguration method getQuickAssistAssistant.

@Override
public IQuickAssistAssistant getQuickAssistAssistant(ISourceViewer sourceViewer) {
    QuickAssistAssistant quickAssistAssistant = new QuickAssistAssistant();
    CompositeQuickAssistProcessor processor = new CompositeQuickAssistProcessor(Arrays.asList(new MarkerResoltionQuickAssistProcessor(), new SpellingCorrectionProcessor()));
    quickAssistAssistant.setQuickAssistProcessor(processor);
    // $NON-NLS-1$
    quickAssistAssistant.setRestoreCompletionProposalSize(EditorsPlugin.getDefault().getDialogSettingsSection("quick_assist_proposal_size"));
    quickAssistAssistant.setInformationControlCreator(parent -> new DefaultInformationControl(parent, EditorsPlugin.getAdditionalInfoAffordanceString()));
    return quickAssistAssistant;
}
Also used : MarkerResoltionQuickAssistProcessor(org.eclipse.ui.internal.genericeditor.markers.MarkerResoltionQuickAssistProcessor) DefaultInformationControl(org.eclipse.jface.text.DefaultInformationControl) SpellingCorrectionProcessor(org.eclipse.ui.texteditor.spelling.SpellingCorrectionProcessor) QuickAssistAssistant(org.eclipse.jface.text.quickassist.QuickAssistAssistant) IQuickAssistAssistant(org.eclipse.jface.text.quickassist.IQuickAssistAssistant)

Example 5 with IQuickAssistAssistant

use of org.eclipse.jface.text.quickassist.IQuickAssistAssistant in project KaiZen-OpenAPI-Editor by RepreZen.

the class JsonSourceViewerConfiguration method getQuickAssistAssistant.

@Override
public IQuickAssistAssistant getQuickAssistAssistant(ISourceViewer sourceViewer) {
    QuickAssistAssistant assistant = new QuickAssistAssistant();
    assistant.setQuickAssistProcessor(new JsonQuickAssistProcessor(new QuickFixer()));
    assistant.setInformationControlCreator(getInformationControlCreator(sourceViewer));
    return assistant;
}
Also used : JsonQuickAssistProcessor(com.reprezen.swagedit.core.assist.JsonQuickAssistProcessor) QuickAssistAssistant(org.eclipse.jface.text.quickassist.QuickAssistAssistant) IQuickAssistAssistant(org.eclipse.jface.text.quickassist.IQuickAssistAssistant) QuickFixer(com.reprezen.swagedit.core.quickfix.QuickFixer)

Aggregations

IQuickAssistAssistant (org.eclipse.jface.text.quickassist.IQuickAssistAssistant)6 QuickAssistAssistant (org.eclipse.jface.text.quickassist.QuickAssistAssistant)5 BndMarkerQuickAssistProcessor (org.bndtools.core.editors.BndMarkerQuickAssistProcessor)2 JsonQuickAssistProcessor (com.reprezen.swagedit.core.assist.JsonQuickAssistProcessor)1 QuickFixer (com.reprezen.swagedit.core.quickfix.QuickFixer)1 IMenuListener (org.eclipse.jface.action.IMenuListener)1 IMenuManager (org.eclipse.jface.action.IMenuManager)1 MenuManager (org.eclipse.jface.action.MenuManager)1 DefaultInformationControl (org.eclipse.jface.text.DefaultInformationControl)1 DocumentEvent (org.eclipse.jface.text.DocumentEvent)1 IDocumentListener (org.eclipse.jface.text.IDocumentListener)1 ITextInputListener (org.eclipse.jface.text.ITextInputListener)1 ITextListener (org.eclipse.jface.text.ITextListener)1 TextEvent (org.eclipse.jface.text.TextEvent)1 CompositeRuler (org.eclipse.jface.text.source.CompositeRuler)1 ISourceViewerExtension3 (org.eclipse.jface.text.source.ISourceViewerExtension3)1 ISourceViewerExtension4 (org.eclipse.jface.text.source.ISourceViewerExtension4)1 IVerticalRuler (org.eclipse.jface.text.source.IVerticalRuler)1 SourceViewerConfiguration (org.eclipse.jface.text.source.SourceViewerConfiguration)1 IPropertyChangeListener (org.eclipse.jface.util.IPropertyChangeListener)1