From ec391b6bfe8d87f4fb1bbb2a4e6033eaad9f4672 Mon Sep 17 00:00:00 2001 From: mitchell <70453897+667e-11@users.noreply.github.com> Date: Mon, 12 Mar 2018 18:20:24 -0400 Subject: Start using Scintilla's LongTerm3, which now includes Scintillua and Scinterm. Since LongTerm3 requires a C++11 compiler, GCC 4.9+ is required. Since C++11 includes regex capability, drop TRE dependency. --- src/scintilla_backports/6448_431b814a54a6.patch | 307 ------------------------ 1 file changed, 307 deletions(-) delete mode 100644 src/scintilla_backports/6448_431b814a54a6.patch (limited to 'src/scintilla_backports/6448_431b814a54a6.patch') 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 -# 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 @@ - -

Scintilla Documentation

- --

Last edited 31 January 2018 NH

-+

Last edited 1 February 2018 NH

- -

There is an overview of the internal design of - Scintilla.
-@@ -5743,9 +5743,38 @@ - to allocate once rather than rely on the buffer growing as data is added. - If SCI_CREATEDOCUMENT fails then 0 is returned.

- --

The documentOption 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 SC_DOCUMENTOPTION_DEFAULT (0).

-+

The documentOption argument -+ chooses between different document capabilities which affect memory allocation and performance with -+ SC_DOCUMENTOPTION_DEFAULT (0) choosing standard options. -+ SC_DOCUMENTOPTION_STYLES_NONE (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.

-+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+
SymbolValueEffect
SC_DOCUMENTOPTION_DEFAULT0Standard behaviour
SC_DOCUMENTOPTION_STYLES_NONE1Stop allocation of memory for styles and treat all text as style 0.
- -

SCI_ADDREFDOCUMENT(<unused>, document *doc)
- 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 SCI_CREATELOADER fails then 0 is returned.

- --

The documentOption 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 SC_DOCUMENTOPTION_DEFAULT (0).

-+

The documentOption argument -+ is described in the SCI_CREATEDOCUMENT section.

- -

ILoader

- -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 @@ - -
  • - 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. -+
  • -+
  • -+ Add SC_DOCUMENTOPTION_STYLES_NONE option to stop allocating memory for styles. -
  • -
  • - 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(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(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 substance; - SplitVector 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(lParam)); - doc->AddRef(); - doc->Allocate(static_cast(wParam)); - return reinterpret_cast(doc); -@@ -7569,7 +7569,7 @@ - break; - - case SCI_CREATELOADER: { -- Document *doc = new Document(); -+ Document *doc = new Document(static_cast(lParam)); - doc->AddRef(); - doc->Allocate(static_cast(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(strlen(sText)); - -- CellBuffer cb; -+ CellBuffer cb(true); - - SECTION("InsertOneLine") { - bool startSequence = false; -- cgit v1.2.3