Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse Platform
Release 3.5

org.eclipse.jface.text
Interface IDocumentPartitioner

All Known Subinterfaces:
IConsoleDocumentPartitioner
All Known Implementing Classes:
DefaultPartitioner, FastPartitioner, RuleBasedPartitioner

public interface IDocumentPartitioner

A document partitioner divides a document into a set of disjoint text partitions. Each partition has a content type, an offset, and a length. The document partitioner is connected to one document and informed about all changes of this document before any of the document's document listeners. A document partitioner can thus incrementally update on the receipt of a document change event.

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

Clients may implement this interface and its extension interfaces or use the standard implementation DefaultPartitioner.

See Also:
IDocumentPartitionerExtension, IDocumentPartitionerExtension2, IDocument

Method Summary
  ITypedRegion[] computePartitioning (int offset, int length)
          Returns the partitioning of the given range of the connected document.
 void connect ( IDocument document)
          Connects the partitioner to a document.
 void disconnect ()
          Disconnects the partitioner from the document it is connected to.
 void documentAboutToBeChanged ( DocumentEvent event)
          Informs about a forthcoming document change.
 boolean documentChanged ( DocumentEvent event)
          The document has been changed.
  String getContentType (int offset)
          Returns the content type of the partition containing the given offset in the connected document.
  String[] getLegalContentTypes ()
          Returns the set of all legal content types of this partitioner.
  ITypedRegion getPartition (int offset)
          Returns the partition containing the given offset of the connected document.
 

Method Detail

connect

void connect(
IDocument document)
Connects the partitioner to a document. Connect indicates the begin of the usage of the receiver as partitioner of the given document. Thus, resources the partitioner needs to be operational for this document should be allocated.

The caller of this method must ensure that this partitioner is also set as the document's document partitioner.

This method has been replaced with IDocumentPartitionerExtension3.connect(IDocument, boolean). Implementers should default a call connect(document) to connect(document, false) in order to sustain the same semantics.

Parameters:
document - the document to be connected to

disconnect

void disconnect()
Disconnects the partitioner from the document it is connected to. Disconnect indicates the end of the usage of the receiver as partitioner of the connected document. Thus, resources the partitioner needed to be operation for its connected document should be deallocated.

The caller of this method should also must ensure that this partitioner is no longer the document's partitioner.


documentAboutToBeChanged

void documentAboutToBeChanged(
DocumentEvent event)
Informs about a forthcoming document change. Will be called by the connected document and is not intended to be used by clients other than the connected document.

Parameters:
event - the event describing the forthcoming change

documentChanged

boolean documentChanged(
DocumentEvent event)
The document has been changed. The partitioner updates the document's partitioning and returns whether the structure of the document partitioning has been changed, i.e. whether partitions have been added or removed. Will be called by the connected document and is not intended to be used by clients other than the connected document.

This method has been replaced by IDocumentPartitionerExtension.documentChanged2(DocumentEvent).

Parameters:
event - the event describing the document change
Returns:
true if partitioning changed

getLegalContentTypes

String[] getLegalContentTypes()
Returns the set of all legal content types of this partitioner. I.e. any result delivered by this partitioner may not contain a content type which would not be included in this method's result.

Returns:
the set of legal content types

getContentType

String getContentType(int offset)
Returns the content type of the partition containing the given offset in the connected document. There must be a document connected to this partitioner.

Use IDocumentPartitionerExtension2.getContentType(int, boolean) when zero-length partitions are supported. In that case this method is equivalent:

    IDocumentPartitionerExtension2 extension= (IDocumentPartitionerExtension2) partitioner;
    return extension.getContentType(offset, false);
 

Parameters:
offset - the offset in the connected document
Returns:
the content type of the offset's partition

computePartitioning

ITypedRegion[] computePartitioning(int offset,
                                   int length)
Returns the partitioning of the given range of the connected document. There must be a document connected to this partitioner.

Use IDocumentPartitionerExtension2.computePartitioning(int, int, boolean) when zero-length partitions are supported. In that case this method is equivalent:

    IDocumentPartitionerExtension2 extension= (IDocumentPartitionerExtension2) partitioner;
    return extension.computePartitioning(offset, length, false);
 

Parameters:
offset - the offset of the range of interest
length - the length of the range of interest
Returns:
the partitioning of the range

getPartition

ITypedRegion getPartition(int offset)
Returns the partition containing the given offset of the connected document. There must be a document connected to this partitioner.

Use IDocumentPartitionerExtension2.getPartition(int, boolean) when zero-length partitions are supported. In that case this method is equivalent:

    IDocumentPartitionerExtension2 extension= (IDocumentPartitionerExtension2) partitioner;
    return extension.getPartition(offset, false);
 

Parameters:
offset - the offset for which to determine the partition
Returns:
the partition containing the offset

Eclipse Platform
Release 3.5

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.


 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire