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: </jobs/genie.orion/orion-client-stable/workspace/bundles/org.eclipse.orion.client.editor/web/orion/editor/projectionTextModel.js>.
| Constructor Attributes | Constructor Name and Description | 
|---|---|
| 
								orion.editor.ProjectionTextModel(baseModel)
							 Constructs a new  ProjectionTextModelbased on the specifiedTextModel. | 
| 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: </jobs/genie.orion/orion-client-stable/workspace/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: </jobs/genie.orion/orion-client-stable/workspace/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
- trueif- offsetis 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: </jobs/genie.orion/orion-client-stable/workspace/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