Class orion.editor.ProjectionTextModel
				
				
			
				The ProjectionTextModel represents a projection of its base text
model. Projection ranges can be added to the projection text model to hide and/or insert
ranges to the base text model.
The contents of the projection text model is modified when changes occur in the base model, projection model or by calls to #addProjection and #removeProjection.
See:
orion.editor.TextView
orion.editor.TextModel
orion.editor.TextView#setModel
Defined in: </shared/eclipse/e4/orion/I201404012230/bundles/org.eclipse.orion.client.editor/web/orion/editor/projectionTextModel.js>.
| Constructor Attributes | Constructor Name and Description | 
|---|---|
| 
							 
								orion.editor.ProjectionTextModel(baseModel)
							 
							Constructs a new  
						ProjectionTextModel based on the specified TextModel. | 
					
| Method Attributes | Method Name and Description | 
|---|---|
| 
								 addEventListener(type, listener, useCapture)
								 
								Adds an event listener to this event target. 
							 | 
						|
| 
								 addProjection(projection)
								 
								Adds a projection range to the model. 
							 | 
						|
| 
								 destroy()
								 
								Destroys this projection text model. 
							 | 
						|
| 
								 dispatchEvent(evt)
								 
								Dispatches the given event to the listeners added to this event target. 
							 | 
						|
| 
								
								 Gets the base text model. 
							 | 
						|
| 
								 getLine(lineIndex, includeDelimiter)
								 
								
							 | 
						|
| 
								 getLineAtOffset(offset)
								 
								
							 | 
						|
| 
								 getLineEnd(lineIndex, includeDelimiter)
								 
								
							 | 
						|
| 
								 getLineStart(lineIndex)
								 
								
							 | 
						|
| 
								
								 Returns all projection ranges of this model. 
							 | 
						|
| 
								 getText(start, end)
								 
								
							 | 
						|
| 
								 mapOffset(offset, baseOffset)
								 
								Maps offsets between the projection model and its base model. 
							 | 
						|
| 
								 onChanged(modelChangedEvent)
								 
								
							 | 
						|
| 
								 onChanging(modelChangingEvent)
								 
								
							 | 
						|
| 
								 removeEventListener(type, listener, useCapture)
								 
								Removes an event listener from the event target. 
							 | 
						|
| 
								 removeProjection(projection)
								 
								Removes a projection range from the model. 
							 | 
						|
| 
								 setLineDelimiter(lineDelimiter)
								 
								
							 | 
						|
| 
								 setText(text, start, end)
								 
								
							 | 
						
ProjectionTextModel based on the specified TextModel.
					
				- Parameters:
 - {orion.editor.TextModel} baseModel
 - The base text model.
 
Defined in: </shared/eclipse/e4/orion/I201404012230/bundles/org.eclipse.orion.client.editor/web/orion/editor/eventTarget.js>.
- Parameters:
 - {String} type
 - The event type.
 - {Function|EventListener} listener
 - The function or the EventListener that will be executed when the event happens.
 - {Boolean} useCapture Optional, Default: false
 trueif the listener should be trigged in the capture phase.
The model must notify the listeners before and after the the text is changed by calling #onChanging and #onChanged respectively.
- Parameters:
 - {orion.editor.Projection} projection
 - The projection range to be added.
 
Defined in: </shared/eclipse/e4/orion/I201404012230/bundles/org.eclipse.orion.client.editor/web/orion/editor/eventTarget.js>.
- Parameters:
 - {Event} evt
 - The event to dispatch.
 
- Returns:
 - {orion.editor.TextModel} The base text model.
 
- Parameters:
 - lineIndex
 - includeDelimiter
 
- Parameters:
 - offset
 
- Parameters:
 - lineIndex
 - includeDelimiter
 
- Parameters:
 - lineIndex
 
- Returns:
 - {orion.editor.Projection[]} The projection ranges.
 
- Parameters:
 - start
 - end
 
- Parameters:
 - {Number} offset
 - The offset to be mapped.
 - {Boolean} baseOffset Optional, Default: false
 trueifoffsetis in base model and should be mapped to the projection model.
- Returns:
 - {Number} The mapped offset
 
- Parameters:
 - modelChangedEvent
 
- Parameters:
 - modelChangingEvent
 
All the parameters must be the same ones used to add the listener.
Defined in: </shared/eclipse/e4/orion/I201404012230/bundles/org.eclipse.orion.client.editor/web/orion/editor/eventTarget.js>.
- Parameters:
 - {String} type
 - The event type
 - {Function|EventListener} listener
 - The function or the EventListener that will be executed when the event happens.
 - {Boolean} useCapture Optional, Default: false
 trueif the listener should be trigged in the capture phase.
The model must notify the listeners before and after the the text is changed by calling #onChanging and #onChanged respectively.
- Parameters:
 - {orion.editor.Projection} projection
 - The projection range to be removed.
 
- Parameters:
 - lineDelimiter
 
- Parameters:
 - text
 - start
 - end