aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Document.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'src/Document.cxx')
-rw-r--r--src/Document.cxx11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/Document.cxx b/src/Document.cxx
index 34238af35..b1128b82b 100644
--- a/src/Document.cxx
+++ b/src/Document.cxx
@@ -86,7 +86,7 @@ int LexInterface::LineEndTypesSupported() {
}
Document::Document(int options) :
- cb((options & SC_DOCUMENTOPTION_STYLES_NONE) == 0) {
+ cb((options & SC_DOCUMENTOPTION_STYLES_NONE) == 0, (options & SC_DOCUMENTOPTION_TEXT_LARGE) != 0) {
refCount = 0;
#ifdef _WIN32
eolMode = SC_EOL_CRLF;
@@ -117,7 +117,7 @@ Document::Document(int options) :
perLineData[ldMargin].reset(new LineAnnotation());
perLineData[ldAnnotation].reset(new LineAnnotation());
- decorations = DecorationListCreate(false);
+ decorations = DecorationListCreate(IsLarge());
cb.SetPerLine(this);
}
@@ -556,7 +556,7 @@ void Document::GetHighlightDelimiters(HighlightDelimiter &highlightDelimiter, Sc
}
Sci::Position Document::ClampPositionIntoDocument(Sci::Position pos) const {
- return Sci::clamp(pos, 0, static_cast<Sci::Position>(Length()));
+ return Sci::clamp(pos, static_cast<Sci::Position>(0), static_cast<Sci::Position>(Length()));
}
bool Document::IsCrLf(Sci::Position pos) const {
@@ -1524,6 +1524,11 @@ void Document::ConvertLineEnds(int eolModeSet) {
}
+int Document::Options() const {
+ return (IsLarge() ? SC_DOCUMENTOPTION_TEXT_LARGE : 0) |
+ (cb.HasStyles() ? 0 : SC_DOCUMENTOPTION_STYLES_NONE);
+}
+
bool Document::IsWhiteLine(Sci::Line line) const {
Sci::Position currentChar = static_cast<Sci::Position>(LineStart(line));
const Sci::Position endLine = static_cast<Sci::Position>(LineEnd(line));