Copyright (c) 2000, 2008 IBM Corporation and others. This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/ SPDX-License-Identifier: EPL-2.0 Contributors: IBM Corporation - initial API and implementation
/******************************************************************************* * Copyright (c) 2000, 2008 IBM Corporation and others. * * This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at * https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/
package org.eclipse.core.filebuffers; import org.eclipse.jface.text.IDocument;
Participates in the setup of a text file buffer document.

This interface is the expected interface for extensions provided for the "org.eclipse.core.filebuffers.documentSetup" extension point.

Participants have to be aware of the existence of other participants. I.e. they should always setup a document in a way that does not interfere with others. E.g., when a participant wants to install partitioning on the document, it must use the IDocumentExtension3 API and choose a unique partitioning id.

In order to provide backward compatibility for clients of IDocumentSetupParticipant, extension interfaces are used to provide a means of evolution. The following extension interfaces exist:

See Also:
Since:3.0
/** * Participates in the setup of a text file buffer document. * <p> * This interface is the expected interface for extensions provided for the * <code>"org.eclipse.core.filebuffers.documentSetup"</code> extension point. * <p> * Participants have to be aware of the existence of other participants. I.e. * they should always setup a document in a way that does not interfere with * others. E.g., when a participant wants to install partitioning on the * document, it must use the * {@link org.eclipse.jface.text.IDocumentExtension3} API and choose a unique * partitioning id. * <p> * In order to provide backward compatibility for clients of <code>IDocumentSetupParticipant</code>, extension * interfaces are used to provide a means of evolution. The following extension interfaces * exist: * </p> * <ul> * <li> {@link IDocumentSetupParticipantExtension} since version 3.4 introducing the * concept of rewrite sessions. .</li> * </ul> * * @since 3.0 * @see org.eclipse.jface.text.IDocumentExtension3 * @see org.eclipse.core.filebuffers.IDocumentSetupParticipantExtension */
public interface IDocumentSetupParticipant {
Sets up the document to be ready for use by a text file buffer.
Params:
  • document – the document to be set up
/** * Sets up the document to be ready for use by a text file buffer. * * @param document the document to be set up */
void setup(IDocument document); }