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
Answertopia.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.projection
Class ProjectionDocumentManager


java.lang.Object
  extended by 
org.eclipse.jface.text.projection.ProjectionDocumentManager
All Implemented Interfaces:
IDocumentListener, ISlaveDocumentManager, ISlaveDocumentManagerExtension
Direct Known Subclasses:
ChildDocumentManager

public class ProjectionDocumentManager
extends Object
implements IDocumentListener, ISlaveDocumentManager, ISlaveDocumentManagerExtension

A ProjectionDocumentManager is one particular implementation of ISlaveDocumentManager. This manager creates so called projection documents (see ProjectionDocumentas slave documents for given master documents.

A projection document represents a particular projection of the master document and is accordingly adapted to changes of the master document. Vice versa, the master document is accordingly adapted to changes of its slave documents. The manager does not maintain any particular management structure but utilizes mechanisms given by IDocument such as position categories and position updaters.

Clients can instantiate this class. This class is not intended to be subclassed.

Since:
3.0
Restriction:
This class is not intended to be subclassed by clients.

Constructor Summary
ProjectionDocumentManager ()
           
 
Method Summary
  IDocumentInformationMapping createMasterSlaveMapping ( IDocument slave)
          Creates a new document information mapping between the given slave document and its master document.
protected   ProjectionDocument createProjectionDocument ( IDocument master)
          Factory method for projection documents.
  IDocument createSlaveDocument ( IDocument master)
          Creates a new slave document for the given master document.
 void documentAboutToBeChanged ( DocumentEvent event)
          The manipulation described by the document event will be performed.
 void documentChanged ( DocumentEvent event)
          The manipulation described by the document event has been performed.
protected  void fireDocumentEvent (boolean about, DocumentEvent masterEvent)
          Informs all projection documents of the master document that issued the given document event.
 void freeSlaveDocument ( IDocument slave)
          Frees the given slave document.
  IDocument getMasterDocument ( IDocument slave)
          Returns the master document of the given slave document or null if the given document is unknown to this slave document manager.
  IDocument[] getSlaveDocuments ( IDocument master)
          Returns the list of slave documents for the given master document or null if there are no such slave document.
 boolean isSlaveDocument ( IDocument document)
          Returns whether the given document is a slave document known to this slave document manager.
 void setAutoExpandMode ( IDocument slave, boolean autoExpanding)
          Sets the given slave document's auto expand mode.
 
Methods inherited from class java.lang. Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProjectionDocumentManager

public ProjectionDocumentManager()
Method Detail

fireDocumentEvent

protected void fireDocumentEvent(boolean about,
                                 
DocumentEvent masterEvent)
Informs all projection documents of the master document that issued the given document event.

Parameters:
about - indicates whether the change is about to happen or happened already
masterEvent - the document event which will be processed to inform the projection documents

documentChanged

public void documentChanged(
DocumentEvent event)
Description copied from interface: IDocumentListener
The manipulation described by the document event has been performed.

Specified by:
documentChanged in interface IDocumentListener
Parameters:
event - the document event describing the document change

documentAboutToBeChanged

public void documentAboutToBeChanged(
DocumentEvent event)
Description copied from interface: IDocumentListener
The manipulation described by the document event will be performed.

Specified by:
documentAboutToBeChanged in interface IDocumentListener
Parameters:
event - the document event describing the document change

createMasterSlaveMapping

public 
IDocumentInformationMapping createMasterSlaveMapping(
IDocument slave)
Description copied from interface: ISlaveDocumentManager
Creates a new document information mapping between the given slave document and its master document. Returns null if the given document is unknown to this slave document manager.

Specified by:
createMasterSlaveMapping in interface ISlaveDocumentManager
Parameters:
slave - the slave document
Returns:
a document information mapping between the slave document and its master document or null

createSlaveDocument

public 
IDocument createSlaveDocument(
IDocument master)
Description copied from interface: ISlaveDocumentManager
Creates a new slave document for the given master document. The slave document is causally connected to its master document until freeSlaveDocument is called. The connection between the newly created slave document and the master document is managed by this slave document manager.

Specified by:
createSlaveDocument in interface ISlaveDocumentManager
Parameters:
master - the master document
Returns:
the newly created slave document
See Also:
ISlaveDocumentManager.freeSlaveDocument(IDocument)

createProjectionDocument

protected 
ProjectionDocument createProjectionDocument(
IDocument master)
Factory method for projection documents.

Parameters:
master - the master document
Returns:
the newly created projection document

freeSlaveDocument

public void freeSlaveDocument(
IDocument slave)
Description copied from interface: ISlaveDocumentManager
Frees the given slave document. If the given document is not a slave document known to this slave document manager, this call does not have any effect. A slave document is known to this slave document manager if it has been created by this manager using createSlaveDocument.

Specified by:
freeSlaveDocument in interface ISlaveDocumentManager
Parameters:
slave - the slave document to be freed
See Also:
ISlaveDocumentManager.createSlaveDocument(IDocument)

getMasterDocument

public 
IDocument getMasterDocument(
IDocument slave)
Description copied from interface: ISlaveDocumentManager
Returns the master document of the given slave document or null if the given document is unknown to this slave document manager.

Specified by:
getMasterDocument in interface ISlaveDocumentManager
Parameters:
slave - the slave document
Returns:
the master document of the given slave document or null

isSlaveDocument

public boolean isSlaveDocument(
IDocument document)
Description copied from interface: ISlaveDocumentManager
Returns whether the given document is a slave document known to this slave document manager. A slave document is known to this slave document manager, if the document has been created by this manager.

Specified by:
isSlaveDocument in interface ISlaveDocumentManager
Parameters:
document - the document to be checked whether it is a slave document known to this manager
Returns:
true if the document is a slave document, false otherwise

setAutoExpandMode

public void setAutoExpandMode(
IDocument slave,
                              boolean autoExpanding)
Description copied from interface: ISlaveDocumentManager
Sets the given slave document's auto expand mode. In auto expand mode, a slave document is automatically adapted to reflect all changes applied to it's master document. Assume a master document contains 30 lines and the slave is defined to contain the lines 11-20. In auto expand mode, when the master document is changed at line 8, the slave document is expanded to contain the lines 8-20.

This call is without effect if the given document is unknown to this slave document manager.

Specified by:
setAutoExpandMode in interface ISlaveDocumentManager
Parameters:
slave - the slave whose auto expand mode should be set
autoExpanding - true for auto expand, false otherwise

getSlaveDocuments

public 
IDocument[] getSlaveDocuments(
IDocument master)
Description copied from interface: ISlaveDocumentManagerExtension
Returns the list of slave documents for the given master document or null if there are no such slave document.

Specified by:
getSlaveDocuments in interface ISlaveDocumentManagerExtension
Parameters:
master - the master document
Returns:
the list of slave documents or null

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