aboutsummaryrefslogtreecommitdiff
path: root/src/scintilla_backports/6448_431b814a54a6.patch
diff options
context:
space:
mode:
Diffstat (limited to 'src/scintilla_backports/6448_431b814a54a6.patch')
-rw-r--r--src/scintilla_backports/6448_431b814a54a6.patch307
1 files changed, 0 insertions, 307 deletions
diff --git a/src/scintilla_backports/6448_431b814a54a6.patch b/src/scintilla_backports/6448_431b814a54a6.patch
deleted file mode 100644
index a0fca282..00000000
--- a/src/scintilla_backports/6448_431b814a54a6.patch
+++ /dev/null
@@ -1,307 +0,0 @@
-# HG changeset patch
-# User Neil <nyamatongwe@gmail.com>
-# Date 1517542495 -39600
-# Node ID 431b814a54a62d81c8069655bbbebec7bda782e3
-# Parent 44ff2195a2026367e556e7dd9ef83af81a07219e
-Implement SC_DOCUMENTOPTION_STYLES_NONE.
-
-diff -r 44ff2195a202 -r 431b814a54a6 doc/ScintillaDoc.html
---- a/doc/ScintillaDoc.html Fri Feb 02 08:37:32 2018 +1100
-+++ b/doc/ScintillaDoc.html Fri Feb 02 14:34:55 2018 +1100
-@@ -119,7 +119,7 @@
-
- <h1>Scintilla Documentation</h1>
-
-- <p>Last edited 31 January 2018 NH</p>
-+ <p>Last edited 1 February 2018 NH</p>
-
- <p>There is <a class="jump" href="Design.html">an overview of the internal design of
- Scintilla</a>.<br />
-@@ -5743,9 +5743,38 @@
- to allocate once rather than rely on the buffer growing as data is added.
- If <code>SCI_CREATEDOCUMENT</code> fails then 0 is returned.</p>
-
-- <p>The <code class="parameter">documentOption</code> argument may be used in future versions
-- to choose between different document capabilities which affect memory allocation and performance.
-- The only valid value for now is <code>SC_DOCUMENTOPTION_DEFAULT</code> (0).</p>
-+ <p id="documentOption">The <code class="parameter">documentOption</code> argument
-+ chooses between different document capabilities which affect memory allocation and performance with
-+ <code>SC_DOCUMENTOPTION_DEFAULT</code> (0) choosing standard options.
-+ <code>SC_DOCUMENTOPTION_STYLES_NONE</code> (1) stops allocation of memory to style characters
-+ which saves significant memory, often 40% with the whole document treated as being style 0.
-+ Lexers may still produce visual styling by using indicators.</p>
-+
-+ <table class="standard" summary="Document options">
-+ <tbody>
-+ <tr>
-+ <th align="left">Symbol</th>
-+ <th align="left">Value</th>
-+ <th align="left">Effect</th>
-+ </tr>
-+ </tbody>
-+
-+ <tbody valign="top">
-+
-+ <tr>
-+ <td align="left">SC_DOCUMENTOPTION_DEFAULT</td>
-+ <td align="left">0</td>
-+ <td align="left">Standard behaviour</td>
-+ </tr>
-+
-+ <tr>
-+ <td align="left">SC_DOCUMENTOPTION_STYLES_NONE</td>
-+ <td align="left">1</td>
-+ <td align="left">Stop allocation of memory for styles and treat all text as style 0.</td>
-+ </tr>
-+
-+ </tbody>
-+ </table>
-
- <p><b id="SCI_ADDREFDOCUMENT">SCI_ADDREFDOCUMENT(&lt;unused&gt;, document *doc)</b><br />
- This increases the reference count of a document by 1. If you want to replace the current
-@@ -5788,9 +5817,8 @@
- to allocate once rather than rely on the buffer growing as data is added.
- If <code>SCI_CREATELOADER</code> fails then 0 is returned.</p>
-
-- <p>The <code class="parameter">documentOption</code> argument may be used in future versions
-- to choose between different document capabilities which affect memory allocation and performance.
-- The only valid value for now is <code>SC_DOCUMENTOPTION_DEFAULT</code> (0).</p>
-+ <p>The <code class="parameter">documentOption</code> argument
-+ is described in the <a class="seealso" href="#documentOption"><code>SCI_CREATEDOCUMENT</code></a> section.</p>
-
- <h4>ILoader</h4>
-
-diff -r 44ff2195a202 -r 431b814a54a6 doc/ScintillaHistory.html
---- a/doc/ScintillaHistory.html Fri Feb 02 08:37:32 2018 +1100
-+++ b/doc/ScintillaHistory.html Fri Feb 02 14:34:55 2018 +1100
-@@ -539,6 +539,11 @@
- </li>
- <li>
- SCI_CREATEDOCUMENT adds a bytes argument to allocate memory for an initial size.
-+ SCI_CREATELOADER and SCI_CREATEDOCUMENT add a documentOption argument to
-+ allow choosing different document capabilities.
-+ </li>
-+ <li>
-+ Add SC_DOCUMENTOPTION_STYLES_NONE option to stop allocating memory for styles.
- </li>
- <li>
- Add SCI_GETMOVEEXTENDSSELECTION to allow applications to add more
-diff -r 44ff2195a202 -r 431b814a54a6 include/Scintilla.h
---- a/include/Scintilla.h Fri Feb 02 08:37:32 2018 +1100
-+++ b/include/Scintilla.h Fri Feb 02 14:34:55 2018 +1100
-@@ -690,6 +690,7 @@
- #define SCI_SETZOOM 2373
- #define SCI_GETZOOM 2374
- #define SC_DOCUMENTOPTION_DEFAULT 0
-+#define SC_DOCUMENTOPTION_STYLES_NONE 1
- #define SCI_CREATEDOCUMENT 2375
- #define SCI_ADDREFDOCUMENT 2376
- #define SCI_RELEASEDOCUMENT 2377
-diff -r 44ff2195a202 -r 431b814a54a6 include/Scintilla.iface
---- a/include/Scintilla.iface Fri Feb 02 08:37:32 2018 +1100
-+++ b/include/Scintilla.iface Fri Feb 02 14:34:55 2018 +1100
-@@ -1773,6 +1773,7 @@
-
- enu DocumentOption=SC_DOCUMENTOPTION_
- val SC_DOCUMENTOPTION_DEFAULT=0
-+val SC_DOCUMENTOPTION_STYLES_NONE=1
-
- # Create a new document object.
- # Starts with reference count of 1 and not selected into editor.
-diff -r 44ff2195a202 -r 431b814a54a6 qt/ScintillaEdit/ScintillaDocument.cpp
---- a/qt/ScintillaEdit/ScintillaDocument.cpp Fri Feb 02 08:37:32 2018 +1100
-+++ b/qt/ScintillaEdit/ScintillaDocument.cpp Fri Feb 02 14:34:55 2018 +1100
-@@ -91,7 +91,7 @@
- ScintillaDocument::ScintillaDocument(QObject *parent, void *pdoc_) :
- QObject(parent), pdoc(pdoc_), docWatcher(0) {
- if (!pdoc) {
-- pdoc = new Document();
-+ pdoc = new Document(SC_DOCUMENTOPTION_DEFAULT);
- }
- docWatcher = new WatcherHelper(this);
- (static_cast<Document *>(pdoc))->AddRef();
-diff -r 44ff2195a202 -r 431b814a54a6 src/CellBuffer.cxx
---- a/src/CellBuffer.cxx Fri Feb 02 08:37:32 2018 +1100
-+++ b/src/CellBuffer.cxx Fri Feb 02 14:34:55 2018 +1100
-@@ -342,7 +342,8 @@
- currentAction++;
- }
-
--CellBuffer::CellBuffer() {
-+CellBuffer::CellBuffer(bool hasStyles_) :
-+ hasStyles(hasStyles_) {
- readOnly = false;
- utf8LineEnds = 0;
- collectingUndo = true;
-@@ -369,7 +370,7 @@
- }
-
- char CellBuffer::StyleAt(Sci::Position position) const {
-- return style.ValueAt(position);
-+ return hasStyles ? style.ValueAt(position) : 0;
- }
-
- void CellBuffer::GetStyleRange(unsigned char *buffer, Sci::Position position, Sci::Position lengthRetrieve) const {
-@@ -377,6 +378,10 @@
- return;
- if (position < 0)
- return;
-+ if (!hasStyles) {
-+ std::fill(buffer, buffer + lengthRetrieve, static_cast<unsigned char>(0));
-+ return;
-+ }
- if ((position + lengthRetrieve) > style.Length()) {
- Platform::DebugPrintf("Bad GetStyleRange %d for %d of %d\n", position,
- lengthRetrieve, style.Length());
-@@ -414,6 +419,9 @@
- }
-
- bool CellBuffer::SetStyleAt(Sci::Position position, char styleValue) {
-+ if (!hasStyles) {
-+ return false;
-+ }
- const char curVal = style.ValueAt(position);
- if (curVal != styleValue) {
- style.SetValueAt(position, styleValue);
-@@ -424,6 +432,9 @@
- }
-
- bool CellBuffer::SetStyleFor(Sci::Position position, Sci::Position lengthStyle, char styleValue) {
-+ if (!hasStyles) {
-+ return false;
-+ }
- bool changed = false;
- PLATFORM_ASSERT(lengthStyle == 0 ||
- (lengthStyle > 0 && lengthStyle + position <= style.Length()));
-@@ -462,7 +473,9 @@
-
- void CellBuffer::Allocate(Sci::Position newSize) {
- substance.ReAllocate(newSize);
-- style.ReAllocate(newSize);
-+ if (hasStyles) {
-+ style.ReAllocate(newSize);
-+ }
- }
-
- void CellBuffer::SetLineEndTypes(int utf8LineEnds_) {
-@@ -608,7 +621,9 @@
- }
-
- substance.InsertFromArray(position, s, 0, insertLength);
-- style.InsertValue(position, insertLength, 0);
-+ if (hasStyles) {
-+ style.InsertValue(position, insertLength, 0);
-+ }
-
- Sci::Line lineInsert = lv.LineFromPosition(position) + 1;
- bool atLineStart = lv.LineStart(lineInsert-1) == position;
-@@ -738,7 +753,9 @@
- }
- }
- substance.DeleteRange(position, deleteLength);
-- style.DeleteRange(position, deleteLength);
-+ if (hasStyles) {
-+ style.DeleteRange(position, deleteLength);
-+ }
- }
-
- bool CellBuffer::SetUndoCollection(bool collectUndo) {
-diff -r 44ff2195a202 -r 431b814a54a6 src/CellBuffer.h
---- a/src/CellBuffer.h Fri Feb 02 08:37:32 2018 +1100
-+++ b/src/CellBuffer.h Fri Feb 02 14:34:55 2018 +1100
-@@ -133,6 +133,7 @@
- */
- class CellBuffer {
- private:
-+ bool hasStyles;
- SplitVector<char> substance;
- SplitVector<char> style;
- bool readOnly;
-@@ -151,7 +152,7 @@
-
- public:
-
-- CellBuffer();
-+ CellBuffer(bool hasStyles_);
- ~CellBuffer();
-
- /// Retrieving positions outside the range of the buffer works and returns 0
-diff -r 44ff2195a202 -r 431b814a54a6 src/Document.cxx
---- a/src/Document.cxx Fri Feb 02 08:37:32 2018 +1100
-+++ b/src/Document.cxx Fri Feb 02 14:34:55 2018 +1100
-@@ -90,7 +90,8 @@
- return 0;
- }
-
--Document::Document() {
-+Document::Document(int options) :
-+ cb((options & SC_DOCUMENTOPTION_STYLES_NONE) == 0) {
- refCount = 0;
- #ifdef _WIN32
- eolMode = SC_EOL_CRLF;
-diff -r 44ff2195a202 -r 431b814a54a6 src/Document.h
---- a/src/Document.h Fri Feb 02 08:37:32 2018 +1100
-+++ b/src/Document.h Fri Feb 02 14:34:55 2018 +1100
-@@ -265,7 +265,7 @@
-
- DecorationList decorations;
-
-- Document();
-+ Document(int options);
- virtual ~Document();
-
- int AddRef();
-diff -r 44ff2195a202 -r 431b814a54a6 src/EditModel.cxx
---- a/src/EditModel.cxx Fri Feb 02 08:37:32 2018 +1100
-+++ b/src/EditModel.cxx Fri Feb 02 14:34:55 2018 +1100
-@@ -69,7 +69,7 @@
- hotspot = Range(Sci::invalidPosition);
- hoverIndicatorPos = Sci::invalidPosition;
- wrapWidth = LineLayout::wrapWidthInfinite;
-- pdoc = new Document();
-+ pdoc = new Document(SC_DOCUMENTOPTION_DEFAULT);
- pdoc->AddRef();
- }
-
-diff -r 44ff2195a202 -r 431b814a54a6 src/Editor.cxx
---- a/src/Editor.cxx Fri Feb 02 08:37:32 2018 +1100
-+++ b/src/Editor.cxx Fri Feb 02 14:34:55 2018 +1100
-@@ -5162,7 +5162,7 @@
- pdoc->RemoveWatcher(this, 0);
- pdoc->Release();
- if (document == NULL) {
-- pdoc = new Document();
-+ pdoc = new Document(SC_DOCUMENTOPTION_DEFAULT);
- } else {
- pdoc = document;
- }
-@@ -7554,7 +7554,7 @@
- return 0;
-
- case SCI_CREATEDOCUMENT: {
-- Document *doc = new Document();
-+ Document *doc = new Document(static_cast<int>(lParam));
- doc->AddRef();
- doc->Allocate(static_cast<int>(wParam));
- return reinterpret_cast<sptr_t>(doc);
-@@ -7569,7 +7569,7 @@
- break;
-
- case SCI_CREATELOADER: {
-- Document *doc = new Document();
-+ Document *doc = new Document(static_cast<int>(lParam));
- doc->AddRef();
- doc->Allocate(static_cast<int>(wParam));
- doc->SetUndoCollection(false);
-diff -r 44ff2195a202 -r 431b814a54a6 test/unit/testCellBuffer.cxx
---- a/test/unit/testCellBuffer.cxx Fri Feb 02 08:37:32 2018 +1100
-+++ b/test/unit/testCellBuffer.cxx Fri Feb 02 14:34:55 2018 +1100
-@@ -25,7 +25,7 @@
- const char sText[] = "Scintilla";
- const Sci::Position sLength = static_cast<Sci::Position>(strlen(sText));
-
-- CellBuffer cb;
-+ CellBuffer cb(true);
-
- SECTION("InsertOneLine") {
- bool startSequence = false;