public class ProjectionMapping extends Object implements IDocumentInformationMapping, IDocumentInformationMappingExtension, IDocumentInformationMappingExtension2
Implementation of IDocumentInformationMapping
for the projection mapping between a master and a slave document.
| Constructor and Description |
|---|
ProjectionMapping(IDocument masterDocument,
String fragmentsCategory,
IDocument slaveDocument,
String segmentsCategory)
Creates a new mapping between the given parent document and the given projection document.
|
| Modifier and Type | Method and Description |
|---|---|
IRegion |
getCoverage()
Returns the minimal region of the original document that completely comprises all of the image document
or
null if there is no such region. |
IRegion[] |
getExactCoverage(IRegion originRegion)
Returns the maximal sub-regions of the given origin region which are
completely covered.
|
int |
getImageLength()
Returns the length of the image document.
|
void |
projectionChanged()
Notifies this projection mapping that there was a projection change.
|
int |
toClosestImageLine(int originLine)
Returns the line of the image document whose corresponding line in the original document
is closest to the given line in the original document.
|
IRegion |
toClosestImageRegion(IRegion originRegion)
Returns the minimal region of the image document that completely
comprises the given region of the original document.
|
IRegion |
toExactImageRegion(IRegion originRegion)
Adheres to
originRegion=toOriginRegion(toExactImageRegion(originRegion)),
if toExactImageRegion(originRegion) ! |
IRegion[] |
toExactImageRegions(IRegion originRegion)
Returns the segments of the image document that exactly correspond to the
given region of the original document.
|
IRegion[] |
toExactOriginRegions(IRegion imageRegion)
Returns the fragments of the original document that exactly correspond to
the given region of the image document.
|
int |
toImageLine(int originLine)
Returns the line of the image document that corresponds to the given line of the original document or
-1 if there is no such line. |
int |
toImageOffset(int originOffset)
Returns the offset in the image document that corresponds to the given offset in the original document
or
-1 if there is no such offset |
IRegion |
toImageRegion(IRegion originRegion)
Returns the minimal region of the image document that completely comprises the given region of the
original document or
null if there is no such region. |
int |
toOriginLine(int imageLine)
Returns the line of the original document that corresponds to the given line of the image document or
-1 if there is no such line. |
IRegion |
toOriginLines(int imageLine)
Returns the range of lines of the original document that corresponds to the given line of the image document or
null if there are no such lines. |
int |
toOriginOffset(int imageOffset)
Returns the offset in the original document that corresponds to the given offset in the image document
or
-1 if there is no such offset |
IRegion |
toOriginRegion(IRegion imageRegion)
Returns the minimal region of the original document that completely comprises the given region of the
image document or
null if there is no such region. |
public ProjectionMapping(IDocument masterDocument, String fragmentsCategory, IDocument slaveDocument, String segmentsCategory)
masterDocument - the master documentfragmentsCategory - the position category of the parent document used to manage the projected regionsslaveDocument - the slave documentsegmentsCategory - the position category of the projection document used to manage the fragmentspublic void projectionChanged()
public IRegion getCoverage()
IDocumentInformationMappingnull if there is no such region.getCoverage in interface IDocumentInformationMappingnullpublic int toOriginOffset(int imageOffset)
throws BadLocationException
IDocumentInformationMapping-1 if there is no such offsettoOriginOffset in interface IDocumentInformationMappingimageOffset - the offset in the image document-1BadLocationException - if imageOffset is not a valid offset in the image documentpublic IRegion toOriginRegion(IRegion imageRegion) throws BadLocationException
IDocumentInformationMappingnull if there is no such region.toOriginRegion in interface IDocumentInformationMappingimageRegion - the region of the image documentnullBadLocationException - if imageRegion is not a valid region of the image documentpublic IRegion toOriginLines(int imageLine) throws BadLocationException
IDocumentInformationMappingnull if there are no such lines.toOriginLines in interface IDocumentInformationMappingimageLine - the line of the image documentnullBadLocationException - if imageLine is not a valid line number in the image documentpublic int toOriginLine(int imageLine)
throws BadLocationException
IDocumentInformationMapping-1 if there is no such line.toOriginLine in interface IDocumentInformationMappingimageLine - the line of the image document-1BadLocationException - if imageLine is not a valid line number in the image documentpublic int toImageOffset(int originOffset)
throws BadLocationException
IDocumentInformationMapping-1 if there is no such offsettoImageOffset in interface IDocumentInformationMappingoriginOffset - the offset in the original document-1BadLocationException - if originOffset is not a valid offset in the original documentpublic IRegion toExactImageRegion(IRegion originRegion) throws BadLocationException
IDocumentInformationMappingExtensionoriginRegion=toOriginRegion(toExactImageRegion(originRegion)),
if toExactImageRegion(originRegion) != null. Returns
null if there is no image for the given origin region.toExactImageRegion in interface IDocumentInformationMappingExtensionoriginRegion - the origin regionnullBadLocationException - if origin region is not a valid region in
the origin documentpublic IRegion toImageRegion(IRegion originRegion) throws BadLocationException
IDocumentInformationMappingnull if there is no such region.toImageRegion in interface IDocumentInformationMappingoriginRegion - the region of the original documentnullBadLocationException - if originRegion is not a valid region of the original documentpublic IRegion toClosestImageRegion(IRegion originRegion) throws BadLocationException
IDocumentInformationMappingExtension2IDocumentInformationMapping.toImageRegion(IRegion) is that this
method will always return an image region for a valid origin region. If
originRegion has no corresponding image region, the
zero-length region at the offset between its surrounding fragments is
returned.toClosestImageRegion in interface IDocumentInformationMappingExtension2originRegion - the region of the original documentBadLocationException - if originRegion is not a
valid region of the original documentpublic int toImageLine(int originLine)
throws BadLocationException
IDocumentInformationMapping-1 if there is no such line.toImageLine in interface IDocumentInformationMappingoriginLine - the line of the original document-1BadLocationException - if originLine is not a valid line number in the original documentpublic int toClosestImageLine(int originLine)
throws BadLocationException
IDocumentInformationMappingtoClosestImageLine in interface IDocumentInformationMappingoriginLine - the line in the original documentBadLocationException - if originLineis not a valid line in the original documentpublic IRegion[] toExactOriginRegions(IRegion imageRegion) throws BadLocationException
IDocumentInformationMappingExtensiontoExactOriginRegions in interface IDocumentInformationMappingExtensionimageRegion - the region in the image documentBadLocationException - in case the given image region is not valid
in the image documentpublic int getImageLength()
IDocumentInformationMappingExtensiongetImageLength in interface IDocumentInformationMappingExtensionpublic IRegion[] toExactImageRegions(IRegion originRegion) throws BadLocationException
IDocumentInformationMappingExtensionnull if
there are no such image regions.toExactImageRegions in interface IDocumentInformationMappingExtensionoriginRegion - the region in the origin documentnullBadLocationException - in case the given origin region is not valid
in the original documentpublic IRegion[] getExactCoverage(IRegion originRegion) throws BadLocationException
IDocumentInformationMappingExtensionnull if there are no such
sub-regions.getExactCoverage in interface IDocumentInformationMappingExtensionoriginRegion - the region in the origin documentnullBadLocationException - in case the given origin region is not valid
in the original documentGuidelines for using Eclipse APIs. Copyright (c) IBM Corp. and others 2000, 2006. All rights reserved.