org.eclipse.jface.text.IDocument#removeDocumentListener ( )源码实例Demo

下面列出了org.eclipse.jface.text.IDocument#removeDocumentListener ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: ContentAssist   文件: DocumentManager.java
/**
 * Unregisters a document manager with an editor.
 * @param doc the document to be managed
 * @param st the styled text of the editor
 * @param dm the document manager
 */
public static void unregister(IDocument doc, StyledText st, DocumentManager dm) {
    if (doc != null) {
        doc.removeDocumentListener(dm);
        
        IDocumentUndoManager undoManager = DocumentUndoManagerRegistry.getDocumentUndoManager(doc);
        DocumentUndoManagerRegistry.disconnect(doc);
        if (undoManager != null) {
            undoManager.removeDocumentUndoListener(dm);
        }
    }
    
    if (st != null) {
        st.removeListener(SWT.KeyDown, dm);
        st.removeListener(SWT.MouseDown, dm);
        st.removeListener(SWT.MouseDoubleClick, dm);
    }
}
 
源代码2 项目: e4macs   文件: ConsoleCmdHandler.java
/**
	 * @see com.mulgasoft.emacsplus.commands.IConsoleDispatch#consoleDispatch(org.eclipse.ui.console.TextConsoleViewer, IConsoleView, ExecutionEvent)
	 */
	public Object consoleDispatch(TextConsoleViewer viewer, IConsoleView activePart, ExecutionEvent event) {
		IDocument doc = viewer.getDocument();
		int action = -1;
		try {
			StyledText st = viewer.getTextWidget();
			action = getDispatchId(getId(event, viewer));
			if (action > -1) {
				// set up for kill ring
				doc.addDocumentListener(KillRing.getInstance());
//  			setUpUndo(viewer);
				st.invokeAction(action);
			}
		} finally {
			// remove kill ring behavior
			if (action > -1) {
				doc.removeDocumentListener(KillRing.getInstance());
			}
			KillRing.getInstance().setKill(null, false);
		}
		return null;
	}
 
源代码3 项目: Pydev   文件: BaseDocumentCommand.java
/**
 * Executes the document command on the specified document.
 *
 * @param document the document on which to execute the command.
 * @throws BadLocationException in case this commands cannot be executed
 */
public void execute(IDocument document) throws BadLocationException {

    if (fLength == 0 && fText == null) {
        return;
    }

    if (fOwner != null) {
        document.removeDocumentListener(fOwner);
    }

    document.replace(fOffset, fLength, fText);

    if (fOwner != null) {
        document.addDocumentListener(fOwner);
    }
}
 
源代码4 项目: xtext-eclipse   文件: HighlightingPresenter.java
/**
 * Stop managing the given document.
 * 
 * @param document
 *            The document
 */
private void releaseDocument(IDocument document) {
	if (document != null) {
		document.removeDocumentListener(this);
		document.removePositionUpdater(fPositionUpdater);
		try {
			document.removePositionCategory(getPositionCategory());
		} catch (BadPositionCategoryException e) {
			// Should not happen
			log.debug(e.getMessage(), e);
		}
	}
}
 
源代码5 项目: xds-ide   文件: SourceCodeTextEditor.java
@Override
public void inputDocumentAboutToBeChanged(IDocument oldInput,
		IDocument newInput) {
	if (oldInput != null) {
		oldInput.removeDocumentListener(documentListener);
	}
	if (newInput != null) {
		newInput.addDocumentListener(documentListener);
	}
	modificationStamp = ModificationStamp.OLDEST;
}
 
源代码6 项目: xds-ide   文件: XdsConsoleViewer.java
public void setDocument(IDocument document) {
    IDocument oldDocument= getDocument();
    
    super.setDocument(document);
    
    if (oldDocument != null) {
        oldDocument.removeDocumentListener(getDocumentListener());
    }
    if (document != null) {
        document.addDocumentListener(getDocumentListener());
    }
}
 
源代码7 项目: typescript.java   文件: TypeScriptEditor.java
public void uninstall() {
	ISourceViewer sourceViewer = getSourceViewer();
	if (sourceViewer != null)
		sourceViewer.removeTextInputListener(this);

	IDocumentProvider documentProvider = getDocumentProvider();
	if (documentProvider != null) {
		IDocument document = documentProvider.getDocument(getEditorInput());
		if (document != null)
			document.removeDocumentListener(this);
	}
}
 
源代码8 项目: APICloud-Studio   文件: CompletionProposalPopup.java
/**
 * Unregister this completion proposal popup.
 * 
 * @since 3.0
 */
private void unregister()
{
	if (fDocumentListener != null)
	{
		IDocument document = fContentAssistSubjectControlAdapter.getDocument();
		if (document != null)
		{
			document.removeDocumentListener(fDocumentListener);
		}
		fDocumentListener = null;
	}
	fDocumentEvents.clear();

	if (fKeyListener != null && Helper.okToUse(fContentAssistSubjectControlAdapter.getControl()))
	{
		fContentAssistSubjectControlAdapter.removeKeyListener(fKeyListener);
		fKeyListener = null;
	}

	if (fLastProposal != null)
	{
		if (fLastProposal instanceof ICompletionProposalExtension2 && fViewer != null)
		{
			ICompletionProposalExtension2 extension = (ICompletionProposalExtension2) fLastProposal;
			extension.unselected(fViewer);
		}
		fLastProposal = null;
	}

	fFilteredProposals = null;
	fComputedProposals = null;

	fContentAssistant.possibleCompletionsClosed();
}
 
源代码9 项目: APICloud-Studio   文件: CommonQuickOutlinePage.java
/**
 * @see org.eclipse.ui.part.Page#dispose()
 */
public void dispose()
{
	if (this._documentListener != null)
	{
		IDocument document = getDocument();
		if (document != null)
		{
			document.removeDocumentListener(this._documentListener);
		}
		this._documentListener = null;
	}

	if (this._delayedRefreshJob != null)
	{
		this._delayedRefreshJob.cancel();
		this._delayedRefreshJob = null;
	}

	if (this._filterRefreshJob != null)
	{
		this._filterRefreshJob.cancel();
		this._filterRefreshJob = null;
	}

	if (this._toolbarManager != null)
	{
		this._toolbarManager.dispose();
		this._toolbarManager = null;
	}

	super.dispose();
}
 
源代码10 项目: APICloud-Studio   文件: CommonOccurrencesUpdater.java
/**
 * uninstall
 */
public void uninstall() {
	ISourceViewer sourceViewer = getSourceViewer();
	IDocument document = getDocument();

	if (sourceViewer != null) {
		sourceViewer.removeTextInputListener(this);
	}

	if (document != null) {
		document.removeDocumentListener(this);
	}
}
 
public void uninstall() {
	ISourceViewer sourceViewer= getSourceViewer();
	if (sourceViewer != null)
		sourceViewer.removeTextInputListener(this);

	IDocumentProvider documentProvider= getDocumentProvider();
	if (documentProvider != null) {
		IDocument document= documentProvider.getDocument(getEditorInput());
		if (document != null)
			document.removeDocumentListener(this);
	}
}
 
/**
 * Stop managing the given document.
 *
 * @param document The document
 */
private void releaseDocument(IDocument document) {
	if (document != null) {
		document.removeDocumentListener(this);
		document.removePositionUpdater(fPositionUpdater);
		try {
			document.removePositionCategory(getPositionCategory());
		} catch (BadPositionCategoryException e) {
			// Should not happen
			JavaPlugin.log(e);
		}
	}
}
 
源代码13 项目: e4macs   文件: MarkUtils.java
private static void removeDocumentListeners(ITextEditor editor) {
	if (docListener != null) {
		IDocumentProvider idp = editor.getDocumentProvider();
		IDocument document;
		// add null check for document, due to an unreproducible NPE reported by a clojure user
		if (idp != null && (document = idp.getDocument(editor.getEditorInput())) != null) {
			document.removeDocumentListener(docListener);
		}
	}
	docListener = null;
}
 
源代码14 项目: e4macs   文件: ConsoleCopyCutHandler.java
/**
 * @see com.mulgasoft.emacsplus.commands.ConsoleCmdHandler#consoleDispatch(TextConsoleViewer, IConsoleView, ExecutionEvent)
 */
@Override
public Object consoleDispatch(TextConsoleViewer viewer, IConsoleView activePart, ExecutionEvent event) {
	Object result = null;
	IDocument doc = viewer.getDocument();
	try {
		IWorkbenchPartSite site = activePart.getSite();
		if (site != null) {
			IHandlerService service = (IHandlerService) site.getService(IHandlerService.class);
			if (doc != null && service != null) {
				doc.addDocumentListener(KillRing.getInstance());
				String cmdId = getId(event, viewer);
				if (cmdId != null) {
					result = service.executeCommand(cmdId, null);
				}
			}
		}
	} catch (CommandException e) {
		// Shouldn't happen as the Command id will be null or valid
		e.printStackTrace();
	} finally {
		if (doc != null) {
			doc.removeDocumentListener(KillRing.getInstance());
		}
		// clear kill command flag
		KillRing.getInstance().setKill(null, false);
	}
	
	MarkUtils.clearConsoleMark(viewer);
	return result;
}
 
源代码15 项目: Pydev   文件: ScriptConsoleDocumentListener.java
/**
 * Stops listening changes in one document and starts listening another one.
 *
 * @param oldDoc may be null (if not null, this class will stop listening changes in it).
 * @param newDoc the document that should be listened from now on.
 */
protected synchronized void reconnect(IDocument oldDoc, IDocument newDoc) {
    Assert.isTrue(disconnectionLevel == 0);

    if (oldDoc != null) {
        oldDoc.removeDocumentListener(this);
    }

    newDoc.addDocumentListener(this);
    this.doc = newDoc;

}
 
源代码16 项目: goclipse   文件: IOConsoleViewer.java
@Override
public void setDocument(IDocument document) {
 IDocument oldDocument= getDocument();
 
 super.setDocument(document);
 
 if (oldDocument != null) {
	 oldDocument.removeDocumentListener(getDocumentListener());
 }
 if (document != null) {
	 document.addDocumentListener(getDocumentListener());
 }
}
 
源代码17 项目: typescript.java   文件: TypeScriptEditor.java
public void inputDocumentAboutToBeChanged(IDocument oldInput, IDocument newInput) {
	if (oldInput == null)
		return;

	oldInput.removeDocumentListener(this);
}
 
源代码18 项目: APICloud-Studio   文件: CommonOccurrencesUpdater.java
public void inputDocumentAboutToBeChanged(IDocument oldInput, IDocument newInput) {
	if (oldInput != null) {
		oldInput.removeDocumentListener(this);
	}
}
 
public void inputDocumentAboutToBeChanged(IDocument oldInput, IDocument newInput) {
	if (oldInput == null)
		return;

	oldInput.removeDocumentListener(this);
}
 
源代码20 项目: saros   文件: EditorPool.java
/**
 * Removes an {@link IEditorPart} from the pool and makes the editor editable again.
 *
 * <p>This Method also disconnects the editorPart from its data source (identified by associated
 * {@link IFile}) and removes registered listeners:
 *
 * <ul>
 *   <li>{@link IElementStateListener} from {@link IDocumentProvider}
 *   <li>{@link IDocumentListener} from {@link IDocument}
 *   <li>{@link EditorListener} from {@link IEditorPart}
 * </ul>
 *
 * @param editorPart editorPart to be removed
 */
public void remove(final IEditorPart editorPart) {
  log.trace("removing editor part " + editorPart + " [" + editorPart.getTitle() + "]");

  if (!isManaged(editorPart)) {
    log.error("editor part is not managed: " + editorPart);
    return;
  }

  final EditorPartInputReferences inputRefs = editorInputMap.remove(editorPart);

  final IEditorInput input = inputRefs.input;
  final IFile file = inputRefs.file;

  // Unregister and unhook
  setEditable(editorPart, true);

  editorListeners.remove(editorPart).unbind();

  final IDocumentProvider documentProvider = EditorAPI.getDocumentProvider(input);

  dirtyStateListener.unregister(documentProvider, input);

  final IDocument document = documentProvider.getDocument(input);

  if (document == null) {
    log.warn("could not disconnect from document: " + file);
  } else {
    document.removeDocumentListener(documentListener);
  }

  editorManager.disconnect(file);

  final saros.filesystem.IFile wrappedFile = ResourceAdapterFactory.create(file);

  editorParts.get(wrappedFile).remove(editorPart);
}