Package snap.text
Class SourceTextModel
java.lang.Object
snap.props.PropObject
snap.text.TextModel
snap.text.SourceTextModel
- All Implemented Interfaces:
CharSequence
,Cloneable
,PropChange.DoChange
,CharSequenceX
,XMLArchiver.Archivable
- Direct Known Subclasses:
TextModelX
This TextModel subclass embeds a source text to forward all changes and to update from when needed.
-
Field Summary
FieldsFields inherited from class snap.text.TextModel
_defaultLineStyle, _defaultTextStyle, _length, _lines, _mouseY, _prefW, _propChangeEnabled, Chars_Prop, DefaultLineStyle_Prop, DefaultTextStyle_Prop, LineStyle_Prop, Style_Prop, TextModified_Prop
Fields inherited from class snap.props.PropObject
_pcs, EMPTY_OBJECT
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor.SourceTextModel
(boolean isRichText) Constructor with option for rich text.SourceTextModel
(TextModel sourceText) Constructor for source text. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addCharsToLine
(CharSequence theChars, TextStyle theStyle, int charIndex, TextLine textLine, boolean charsHaveNewline) Override to do wrapping.void
addCharsWithStyle
(CharSequence theChars, TextStyle theStyle, int anIndex) Adds characters with given style to this text at given index.copyForRange
(int aStart, int aEnd) Returns a copy of this text for given char range.protected TextToken[]
createTokensForTextLine
(TextLine aTextLine) Creates TextTokens for a TextLine.Returns the source text model.void
readTextFromSourceFile
(WebFile sourceFile) Override to forward to SourceText.protected void
Reloads text from SourceText.void
removeChars
(int aStartCharIndex, int anEndCharIndex) Removes characters in given range.void
setDefaultLineStyle
(TextLineStyle lineStyle) Sets the default line style.void
setDefaultTextStyle
(TextStyle textStyle) Sets the default text style.void
setLineStyle
(TextLineStyle aStyle, int aStart, int anEnd) Sets a given style to a given range.protected void
setLineStyleRich
(TextLineStyle aStyle, int aStart, int anEnd) Sets a given style to a given range.protected void
setLineStyleValueRich
(String aKey, Object aValue, int aStart, int anEnd) Sets a given style to a given range.void
setRichText
(boolean aValue) Sets whether text supports multiple styles.void
setSourceText
(TextModel sourceText) Sets the source TextModel.void
setTextModified
(boolean aValue) Sets whether text is modified.void
setTextStyle
(TextStyle textStyle, int aStart, int anEnd) Sets the given text style for given range.void
Override to forward to SourceText.toXML
(XMLArchiver anArchiver) XMLArchiver.Archivable archival.void
Override to forward to SourceText.Methods inherited from class snap.text.TextModel
addChars, addChars, addCharsForTextModel, addCharsToLineFinished, addCharsWithStyle, addCharsWithStyleImpl, addLine, charAt, clear, clone, fromXML, getAlignedY, getAlignX, getAlignY, getBounds, getCharIndexForXY, getDefaultFont, getDefaultLineStyle, getDefaultTextColor, getDefaultTextStyle, getEndCharIndex, getFontForCharIndex, getHeight, getLastLine, getLine, getLineCount, getLineForCharIndex, getLineForY, getLineLongest, getLines, getLineStyleForCharIndex, getMaxX, getMaxY, getPathForCharRange, getPrefHeight, getPrefHeight, getPrefWidth, getPrefWidthForStartCharIndex, getRunForCharIndex, getRunForCharRange, getRunIterForCharRange, getSourceFile, getSourceUrl, getStartCharIndex, getString, getTextStyleForCharIndex, getTextStyleForCharRange, getTokenForCharIndex, getUnderlineRuns, getWidth, getX, getY, indexOf, isPropChangeEnabled, isRichText, isTextModified, isUnderlined, isWrapLines, joinLineWithNextLine, length, moveLineCharsToNextLine, paint, paintLine, removeCharsFromLine, removeLine, replaceChars, replaceCharsWithStyle, resetLineYForLinesAfterIndex, scaleFonts, setAlignX, setAlignY, setBounds, setBounds, setDefaultFont, setDefaultTextColor, setDefaultTextStyleString, setHeight, setLineStyleValue, setPropChangeEnabled, setSourceUrl, setString, setTextStyleValue, setUnderlined, setWidth, setX, setY, splitLineAtIndex, subSequence, toStringProps, updateLine, updateLines
Methods inherited from class snap.props.PropObject
addDeepChangeListener, addPropChangeListener, addPropChangeListener, batchPropChange, batchPropChange, batchPropChanges, fireBatchPropChanges, firePropChange, firePropChange, firePropChange, getPropDefault, getPropForName, getPropParent, getPropSet, getPropsForArchival, getPropsForArchivalExtra, getPropsString, getPropValue, initProps, isPropDefault, processArchivedNode, processPropChange, processUnarchivedNode, removeDeepChangeListener, removePropChangeListener, removePropChangeListener, setPropsString, setPropValue, setPropValues, toString
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.CharSequence
chars, codePoints, isEmpty, toString
Methods inherited from interface snap.util.CharSequenceX
getIndentLength, getIndentString, getLastChar, indexAfterNewline, indexAfterNewlineOrEnd, indexOfNewline, isAfterLineEnd, isLastCharNewline, isLineEnd, isLineEndChar, isWhiteSpace, lastIndexAfterNewline, lastIndexOfNewline, startsWith
-
Field Details
-
_sourceText
-
-
Constructor Details
-
SourceTextModel
public SourceTextModel()Constructor. -
SourceTextModel
public SourceTextModel(boolean isRichText) Constructor with option for rich text. -
SourceTextModel
Constructor for source text.
-
-
Method Details
-
getSourceText
Returns the source text model. -
setSourceText
Sets the source TextModel. -
setRichText
public void setRichText(boolean aValue) Sets whether text supports multiple styles.- Overrides:
setRichText
in classTextModel
-
setDefaultTextStyle
Sets the default text style.- Overrides:
setDefaultTextStyle
in classTextModel
-
setDefaultLineStyle
Sets the default line style.- Overrides:
setDefaultLineStyle
in classTextModel
-
setTextModified
public void setTextModified(boolean aValue) Sets whether text is modified.- Overrides:
setTextModified
in classTextModel
-
addCharsWithStyle
Adds characters with given style to this text at given index.- Overrides:
addCharsWithStyle
in classTextModel
-
addCharsToLine
protected void addCharsToLine(CharSequence theChars, TextStyle theStyle, int charIndex, TextLine textLine, boolean charsHaveNewline) Override to do wrapping.- Overrides:
addCharsToLine
in classTextModel
-
removeChars
public void removeChars(int aStartCharIndex, int anEndCharIndex) Removes characters in given range.- Overrides:
removeChars
in classTextModel
-
setTextStyle
Sets the given text style for given range.- Overrides:
setTextStyle
in classTextModel
-
setLineStyle
Sets a given style to a given range.- Overrides:
setLineStyle
in classTextModel
-
setLineStyleRich
Sets a given style to a given range.- Overrides:
setLineStyleRich
in classTextModel
-
setLineStyleValueRich
Sets a given style to a given range.- Overrides:
setLineStyleValueRich
in classTextModel
-
createTokensForTextLine
Creates TextTokens for a TextLine.- Overrides:
createTokensForTextLine
in classTextModel
-
copyForRange
Returns a copy of this text for given char range.- Overrides:
copyForRange
in classTextModel
-
readTextFromSourceFile
Override to forward to SourceText.- Overrides:
readTextFromSourceFile
in classTextModel
-
writeTextToSourceFile
public void writeTextToSourceFile()Override to forward to SourceText.- Overrides:
writeTextToSourceFile
in classTextModel
-
syncTextModelToSourceFile
public void syncTextModelToSourceFile()Override to forward to SourceText.- Overrides:
syncTextModelToSourceFile
in classTextModel
-
toXML
XMLArchiver.Archivable archival.- Specified by:
toXML
in interfaceXMLArchiver.Archivable
- Overrides:
toXML
in classTextModel
-
reloadTextFromSourceText
protected void reloadTextFromSourceText()Reloads text from SourceText.
-