Class Index | File Index

## Classes

- _global_
- Boolean
- Date
- eclipse.sites
- eclipse.sites.SiteRenderer
- eclipse.sites.SiteTreeModel
- exports.GitCommitExplorer-GitCommitExplorer
- exports.GitRepositoryExplorer-GitRepositoryExplorer
- Object
- orion.breadcrumbs.BreadCrumbs
- orion.commands.Command
- orion.commands.CommandService
- orion.commonHTMLFragments
- orion.compare.DiffProvider
- orion.compare.rulers.CompareOverviewRuler
- orion.compare.rulers.CompareRuler
- orion.compare.rulers.LineNumberCompareRuler
- orion.compareUtils
- orion.console.Console
- orion.console.ConsoleInput
- orion.contentAssist.CssContentAssistProvider
- orion.contentAssist.HTMLContentAssistProvider
- orion.dialogs.DialogService
- orion.edit.Dispatcher
- orion.editor.ContentAssist
- orion.editor.Editor
- orion.editor.JavaScriptContentAssistProvider
- orion.editor.regex
- orion.editor.StyleReadyEvent
- orion.editor.StyleReadyEvent#LineStyle
- orion.editor.TextMateStyler
- orion.editor.util
- orion.explorer-table.FileExplorer
- orion.explorer.Explorer
- orion.explorer.ExplorerFlatModel
- orion.explorer.ExplorerModel
- orion.explorer.SelectionRenderer
- orion.ExplorerNavHandler.ExplorerNavHandler
- orion.extensionCommands
- orion.favorites.FavoritesService
- orion.file.ContentType
- orion.file.ContentTypeService
- orion.fileClient.FileClient
- orion.fileCommands
- orion.git.GitClonesExplorer
- orion.git.GitClonesModel
- orion.git.GitCommitNavigator
- orion.git.GitService
- orion.git.widgets.OpenCommitDialog
- orion.globalCommands
- orion.highlight.SyntaxHighlighter
- orion.links.TextLinkService
- orion.log.LogService
- orion.mirror.CodeMirrorStyler
- orion.mirror.Mirror
- orion.mirror.MirrorLineStyle
- orion.mirror.ModeApplier
- orion.navoutliner.NavigationOutliner
- orion.outliner.Outliner
- orion.outliner.OutlineService
- orion.parameterCollectors.CommandParameterCollector
- orion.pluginregistry.Plugin
- orion.pluginregistry.PluginRegistry
- orion.preferences.Preferences
- orion.preferences.PreferencesService
- orion.problems.ProblemService
- orion.profile.usersClient.UsersClient
- orion.progress.ProgressService
- orion.searchClient.Searcher
- orion.searchResults.SearchResultsGenerator
- orion.searchUtils
- orion.selection.Selection
- orion.serviceregistry.EventTarget
- orion.serviceregistry.Service
- orion.serviceregistry.ServiceReference
- orion.serviceregistry.ServiceRegistration
- orion.serviceregistry.ServiceRegistry
- orion.siteService.SiteConfiguration
- orion.siteService.SiteService
- orion.status.StatusReportingService
- orion.textview.Annotation
- orion.textview.AnnotationIterator
- orion.textview.AnnotationModel
- orion.textview.AnnotationRuler
- orion.textview.AnnotationStyler
- orion.textview.AnnotationTypeList
- orion.textview.BlurEvent
- orion.textview.ContextMenuEvent
- orion.textview.DestroyEvent
- orion.textview.EventTarget
- orion.textview.FocusEvent
- orion.textview.FoldingAnnotation
- orion.textview.KeyBinding
- orion.textview.LineNumberRuler
- orion.textview.LineStyleEvent
- orion.textview.LoadEvent
- orion.textview.ModelChangedEvent
- orion.textview.ModelChangingEvent
- orion.textview.ModifyEvent
- orion.textview.OverviewRuler
- orion.textview.Projection
- orion.textview.ProjectionTextModel
- orion.textview.Ruler
- orion.textview.ScrollEvent
- orion.textview.Selection
- orion.textview.SelectionEvent
- orion.textview.Style
- orion.textview.StyleRange
- orion.textview.TextModel
- orion.textview.TextView
- orion.textview.TextViewOptions
- orion.textview.UndoStack
- orion.textview.UnloadEvent
- orion.textview.VerifyEvent
- orion.TreeModelIterator.TreeModelIterator
- orion.treetable.TableTree
- orion.util
- orion.widgets.DirectoryTreeModel
- orion.widgets.OpenResourceDialog
- orion.widgets.SiteEditor
- String

# Class orion.textview.TextModel

The TextModel is an interface that provides text for the view. Applications may implement the TextModel interface to provide a custom store for the view content. The view interacts with its text model in order to access and update the text that is being displayed and edited in the view. This is the default implementation.

See:
orion.textview.TextView
orion.textview.TextView#setModel

Defined in: </shared/eclipse/e4/orion/I201202282230/plugins/org.eclipse.orion.client.editor/web/orion/textview/textModel.js>.

Class Summary
Constructor Attributes | Constructor Name and Description
--- | ---
| orion.textview.TextModel(text, lineDelimiter) Constructs a new TextModel with the given text and default line delimiter.

Method Summary
Method Attributes | Method Name and Description
--- | ---
| addEventListener(type, listener, useCapture) Adds an event listener to this event target.
| dispatchEvent(evt) Dispatches the given event to the listeners added to this event target.
| getCharCount() Returns the number of characters in the model.
| getLine(lineIndex, includeDelimiter) Returns the text of the line at the given index.
| getLineAtOffset(offset) Returns the line index at the given character offset.
| getLineCount() Returns the number of lines in the model.
| getLineDelimiter() Returns the line delimiter that is used by the view when inserting new lines.
| getLineEnd(lineIndex, includeDelimiter) Returns the end character offset for the given line.
| getLineStart(lineIndex) Returns the start character offset for the given line.
| getText(start, end) Returns the text for the given range.
| onChanged(modelChangedEvent) Notifies all listeners that the text has changed.
| onChanging(modelChangingEvent) Notifies all listeners that the text is about to change.
| removeEventListener(type, listener, useCapture) Removes an event listener from the event target.
| setLineDelimiter(lineDelimiter) Sets the line delimiter that is used by the view when new lines are inserted in the model due to key strokes and paste operations.
| setText(text, start, end) Replaces the text in the given range with the given text.

Class Detail
orion.textview.TextModel(text, lineDelimiter)
Constructs a new TextModel with the given text and default line delimiter.

Parameters:
{String} text Optional, Default: ""
  the text that the model will store
{String} lineDelimiter Optional, Default: platform delimiter
  the line delimiter used when inserting new lines to the model.

Method Detail
addEventListener(type, listener, useCapture)
Adds an event listener to this event target.
Defined in: </shared/eclipse/e4/orion/I201202282230/plugins/org.eclipse.orion.client.editor/web/orion/textview/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
  `true` if the listener should be trigged in the capture phase.

See:
  #removeEventListener

dispatchEvent(evt)
Dispatches the given event to the listeners added to this event target.
Defined in: </shared/eclipse/e4/orion/I201202282230/plugins/org.eclipse.orion.client.editor/web/orion/textview/eventTarget.js>.

Parameters:
{Event} evt
  The event to dispatch.

{Number} getCharCount()
Returns the number of characters in the model.

Returns:
  {Number} the number of characters in the model.

{String} getLine(lineIndex, includeDelimiter)
Returns the text of the line at the given index.

The valid indices are 0 to line count exclusive. Returns `null` if the index is out of range.

Parameters:
{Number} lineIndex
  the zero based index of the line.
{Boolean} includeDelimiter Optional, Default: false
  whether or not to include the line delimiter.

Returns:
  {String} the line text or `null` if out of range.

See:
  #getLineAtOffset

{Number} getLineAtOffset(offset)
Returns the line index at the given character offset.

The valid offsets are 0 to char count inclusive. The line index for char count is `line count - 1`. Returns `-1` if the offset is out of range.

Parameters:
{Number} offset
  a character offset.

Returns:
  {Number} the zero based line index or `-1` if out of range.

{Number} getLineCount()
Returns the number of lines in the model.

The model always has at least one line.

Returns:
  {Number} the number of lines.

{String} getLineDelimiter()
Returns the line delimiter that is used by the view when inserting new lines. New lines entered using key strokes and paste operations use this line delimiter.

Returns:
  {String} the line delimiter that is used by the view when inserting new lines.

{Number} getLineEnd(lineIndex, includeDelimiter)
Returns the end character offset for the given line.

The end offset is not inclusive. This means that when the line delimiter is included, the offset is either the start offset of the next line or char count. When the line delimiter is not included, the offset is the offset of the line delimiter.

The valid indices are 0 to line count exclusive. Returns `-1` if the index is out of range.

Parameters:
{Number} lineIndex
  the zero based index of the line.
{Boolean} includeDelimiter Optional, Default: false
  whether or not to include the line delimiter.

Returns:
  {Number} the line end offset or `-1` if out of range.

See:
  #getLineStart

{Number} getLineStart(lineIndex)
Returns the start character offset for the given line.

The valid indices are 0 to line count exclusive. Returns `-1` if the index is out of range.

Parameters:
{Number} lineIndex
  the zero based index of the line.

Returns:
  {Number} the line start offset or `-1` if out of range.

See:
  #getLineEnd

getText(start, end)
Returns the text for the given range.

The end offset is not inclusive. This means that character at the end offset is not included in the returned text.

Parameters:
{Number} start Optional, Default: 0
  the zero based start offset of text range.
{Number} end Optional, Default: char count
  the zero based end offset of text range.

See:
  #setText

onChanged(modelChangedEvent)
Notifies all listeners that the text has changed.

This notification is intended to be used only by the view. Application clients should use orion.textview.TextView#event:onModelChanged.

NOTE: This method is not meant to called directly by application code. It is called internally by the TextModel as part of the implementation of #setText. This method is included in the public API for documentation purposes and to allow integration with other toolkit frameworks.

Parameters:
{orion.textview.ModelChangedEvent} modelChangedEvent
  the changed event

onChanging(modelChangingEvent)
Notifies all listeners that the text is about to change.

This notification is intended to be used only by the view. Application clients should use orion.textview.TextView#event:onModelChanging.

NOTE: This method is not meant to called directly by application code. It is called internally by the TextModel as part of the implementation of #setText. This method is included in the public API for documentation purposes and to allow integration with other toolkit frameworks.

Parameters:
{orion.textview.ModelChangingEvent} modelChangingEvent
  the changing event

removeEventListener(type, listener, useCapture)
Removes an event listener from the event target.

All the parameters must be the same ones used to add the listener.

Defined in: </shared/eclipse/e4/orion/I201202282230/plugins/org.eclipse.orion.client.editor/web/orion/textview/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
  `true` if the listener should be trigged in the capture phase.

See:
  #addEventListener

setLineDelimiter(lineDelimiter)
Sets the line delimiter that is used by the view when new lines are inserted in the model due to key strokes and paste operations.

If lineDelimiter is "auto", the delimiter is computed to be the first delimiter found the in the current text. If lineDelimiter is undefined or if there are no delimiters in the current text, the platform delimiter is used.

Parameters:
{String} lineDelimiter
  the line delimiter that is used by the view when inserting new lines.

setText(text, start, end)
Replaces the text in the given range with the given text.

The end offset is not inclusive. This means that the character at the end offset is not replaced.

The text model must notify the listeners before and after the the text is changed by calling #onChanging and #onChanged respectively.

Parameters:
{String} text Optional, Default: ""
  the new text.
{Number} start Optional, Default: 0
  the zero based start offset of text range.
{Number} end Optional, Default: char count
  the zero based end offset of text range.

See:
  #getText

Documentation generated by JsDoc Toolkit 2.4.0 on Tue Feb 28 2012 22:34:48 GMT-0500 (EST)