aboutsummaryrefslogtreecommitdiff
path: root/src/scintilla_backports/6445_89d992f380a1.patch
diff options
context:
space:
mode:
authormitchell <70453897+667e-11@users.noreply.github.com>2018-03-12 18:20:24 -0400
committermitchell <70453897+667e-11@users.noreply.github.com>2018-03-12 18:20:24 -0400
commitec391b6bfe8d87f4fb1bbb2a4e6033eaad9f4672 (patch)
tree3e465bb700187ef104363c31525a73a4147c0edb /src/scintilla_backports/6445_89d992f380a1.patch
parentf82726891b4cd2f323ce882e5aa6d71227dda887 (diff)
downloadtextadept-ec391b6bfe8d87f4fb1bbb2a4e6033eaad9f4672.tar.gz
textadept-ec391b6bfe8d87f4fb1bbb2a4e6033eaad9f4672.zip
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.
Diffstat (limited to 'src/scintilla_backports/6445_89d992f380a1.patch')
-rw-r--r--src/scintilla_backports/6445_89d992f380a1.patch418
1 files changed, 0 insertions, 418 deletions
diff --git a/src/scintilla_backports/6445_89d992f380a1.patch b/src/scintilla_backports/6445_89d992f380a1.patch
deleted file mode 100644
index b0b9acae..00000000
--- a/src/scintilla_backports/6445_89d992f380a1.patch
+++ /dev/null
@@ -1,418 +0,0 @@
-# HG changeset patch
-# User Neil <nyamatongwe@gmail.com>
-# Date 1517437334 -39600
-# Node ID 89d992f380a1ce28a3ba6934230388ffaf1ea611
-# Parent 1bd57324aa36e3fce1ed8a2371001b062322884b
-Templatize RunStyles so it can be over ranges of different types and contain
-different style types.
-Currently only instantiated over <int, int>.
-
-diff -r 1bd57324aa36 -r 89d992f380a1 src/ContractionState.cxx
---- a/src/ContractionState.cxx Thu Feb 01 09:07:21 2018 +1100
-+++ b/src/ContractionState.cxx Thu Feb 01 09:22:14 2018 +1100
-@@ -35,9 +35,9 @@
-
- void ContractionState::EnsureData() {
- if (OneToOne()) {
-- visible = new RunStyles();
-- expanded = new RunStyles();
-- heights = new RunStyles();
-+ visible = new RunStyles<int, int>();
-+ expanded = new RunStyles<int, int>();
-+ heights = new RunStyles<int, int>();
- foldDisplayTexts = new SparseVector<const char *>();
- displayLines = new Partitioning<int>(4);
- InsertLines(0, linesInDocument);
-diff -r 1bd57324aa36 -r 89d992f380a1 src/ContractionState.h
---- a/src/ContractionState.h Thu Feb 01 09:07:21 2018 +1100
-+++ b/src/ContractionState.h Thu Feb 01 09:22:14 2018 +1100
-@@ -17,9 +17,9 @@
- */
- class ContractionState {
- // These contain 1 element for every document line.
-- RunStyles *visible;
-- RunStyles *expanded;
-- RunStyles *heights;
-+ RunStyles<int, int> *visible;
-+ RunStyles<int, int> *expanded;
-+ RunStyles<int, int> *heights;
- SparseVector<const char *> *foldDisplayTexts;
- Partitioning<int> *displayLines;
- Sci::Line linesInDocument;
-diff -r 1bd57324aa36 -r 89d992f380a1 src/Decoration.h
---- a/src/Decoration.h Thu Feb 01 09:07:21 2018 +1100
-+++ b/src/Decoration.h Thu Feb 01 09:22:14 2018 +1100
-@@ -12,7 +12,7 @@
- class Decoration {
- int indicator;
- public:
- Decoration *next;
-- RunStyles rs;
-+ RunStyles<int, int> rs;
-
- explicit Decoration(int indicator_);
-diff -r 1bd57324aa36 -r 89d992f380a1 src/RunStyles.cxx
---- a/src/RunStyles.cxx Thu Feb 01 09:07:21 2018 +1100
-+++ b/src/RunStyles.cxx Thu Feb 01 09:22:14 2018 +1100
-@@ -26,8 +26,9 @@
- using namespace Scintilla;
-
- // Find the first run at a position
--int RunStyles::RunFromPosition(int position) const {
-- int run = starts->PartitionFromPosition(position);
-+template <typename DISTANCE, typename STYLE>
-+DISTANCE RunStyles<DISTANCE, STYLE>::RunFromPosition(DISTANCE position) const {
-+ DISTANCE run = starts->PartitionFromPosition(position);
- // Go to first element with this position
- while ((run > 0) && (position == starts->PositionFromPartition(run-1))) {
- run--;
-@@ -36,11 +37,12 @@
- }
-
- // If there is no run boundary at position, insert one continuing style.
--int RunStyles::SplitRun(int position) {
-- int run = RunFromPosition(position);
-- const int posRun = starts->PositionFromPartition(run);
-+template <typename DISTANCE, typename STYLE>
-+DISTANCE RunStyles<DISTANCE, STYLE>::SplitRun(DISTANCE position) {
-+ DISTANCE run = RunFromPosition(position);
-+ const DISTANCE posRun = starts->PositionFromPartition(run);
- if (posRun < position) {
-- int runStyle = ValueAt(position);
-+ STYLE runStyle = ValueAt(position);
- run++;
- starts->InsertPartition(run, position);
- styles->InsertValue(run, 1, runStyle);
-@@ -48,12 +50,14 @@
- return run;
- }
-
--void RunStyles::RemoveRun(int run) {
-+template <typename DISTANCE, typename STYLE>
-+void RunStyles<DISTANCE, STYLE>::RemoveRun(DISTANCE run) {
- starts->RemovePartition(run);
- styles->DeleteRange(run, 1);
- }
-
--void RunStyles::RemoveRunIfEmpty(int run) {
-+template <typename DISTANCE, typename STYLE>
-+void RunStyles<DISTANCE, STYLE>::RemoveRunIfEmpty(DISTANCE run) {
- if ((run < starts->Partitions()) && (starts->Partitions() > 1)) {
- if (starts->PositionFromPartition(run) == starts->PositionFromPartition(run+1)) {
- RemoveRun(run);
-@@ -61,7 +65,8 @@
- }
- }
-
--void RunStyles::RemoveRunIfSameAsPrevious(int run) {
-+template <typename DISTANCE, typename STYLE>
-+void RunStyles<DISTANCE, STYLE>::RemoveRunIfSameAsPrevious(DISTANCE run) {
- if ((run > 0) && (run < starts->Partitions())) {
- if (styles->ValueAt(run-1) == styles->ValueAt(run)) {
- RemoveRun(run);
-@@ -69,34 +74,39 @@
- }
- }
-
--RunStyles::RunStyles() {
-- starts = new Partitioning<int>(8);
-- styles = new SplitVector<int>();
-+template <typename DISTANCE, typename STYLE>
-+RunStyles<DISTANCE, STYLE>::RunStyles() {
-+ starts = new Partitioning<DISTANCE>(8);
-+ styles = new SplitVector<STYLE>();
- styles->InsertValue(0, 2, 0);
- }
-
--RunStyles::~RunStyles() {
-+template <typename DISTANCE, typename STYLE>
-+RunStyles<DISTANCE, STYLE>::~RunStyles() {
- delete starts;
- starts = NULL;
- delete styles;
- styles = NULL;
- }
-
--int RunStyles::Length() const {
-+template <typename DISTANCE, typename STYLE>
-+DISTANCE RunStyles<DISTANCE, STYLE>::Length() const {
- return starts->PositionFromPartition(starts->Partitions());
- }
-
--int RunStyles::ValueAt(int position) const {
-+template <typename DISTANCE, typename STYLE>
-+STYLE RunStyles<DISTANCE, STYLE>::ValueAt(DISTANCE position) const {
- return styles->ValueAt(starts->PartitionFromPosition(position));
- }
-
--int RunStyles::FindNextChange(int position, int end) const {
-- const int run = starts->PartitionFromPosition(position);
-+template <typename DISTANCE, typename STYLE>
-+DISTANCE RunStyles<DISTANCE, STYLE>::FindNextChange(DISTANCE position, DISTANCE end) const {
-+ const DISTANCE run = starts->PartitionFromPosition(position);
- if (run < starts->Partitions()) {
-- const int runChange = starts->PositionFromPartition(run);
-+ const DISTANCE runChange = starts->PositionFromPartition(run);
- if (runChange > position)
- return runChange;
-- const int nextChange = starts->PositionFromPartition(run + 1);
-+ const DISTANCE nextChange = starts->PositionFromPartition(run + 1);
- if (nextChange > position) {
- return nextChange;
- } else if (position < end) {
-@@ -105,23 +115,26 @@
- }
- }
-
--int RunStyles::StartRun(int position) const {
-+template <typename DISTANCE, typename STYLE>
-+DISTANCE RunStyles<DISTANCE, STYLE>::StartRun(DISTANCE position) const {
- return starts->PositionFromPartition(starts->PartitionFromPosition(position));
- }
-
--int RunStyles::EndRun(int position) const {
-+template <typename DISTANCE, typename STYLE>
-+DISTANCE RunStyles<DISTANCE, STYLE>::EndRun(DISTANCE position) const {
- return starts->PositionFromPartition(starts->PartitionFromPosition(position) + 1);
- }
-
--bool RunStyles::FillRange(int &position, int value, int &fillLength) {
-+template <typename DISTANCE, typename STYLE>
-+bool RunStyles<DISTANCE, STYLE>::FillRange(DISTANCE &position, STYLE value, DISTANCE &fillLength) {
- if (fillLength <= 0) {
- return false;
- }
-- int end = position + fillLength;
-+ DISTANCE end = position + fillLength;
- if (end > Length()) {
- return false;
- }
-- int runEnd = RunFromPosition(end);
-+ DISTANCE runEnd = RunFromPosition(end);
- if (styles->ValueAt(runEnd) == value) {
- // End already has value so trim range.
- end = starts->PositionFromPartition(runEnd);
-@@ -133,7 +146,7 @@
- } else {
- runEnd = SplitRun(end);
- }
-- int runStart = RunFromPosition(position);
-+ DISTANCE runStart = RunFromPosition(position);
- if (styles->ValueAt(runStart) == value) {
- // Start is in expected value so trim range.
- runStart++;
-@@ -148,7 +161,7 @@
- if (runStart < runEnd) {
- styles->SetValueAt(runStart, value);
- // Remove each old run over the range
-- for (int run=runStart+1; run<runEnd; run++) {
-+ for (DISTANCE run=runStart+1; run<runEnd; run++) {
- RemoveRun(runStart+1);
- }
- runEnd = RunFromPosition(end);
-@@ -162,20 +175,22 @@
- }
- }
-
--void RunStyles::SetValueAt(int position, int value) {
-- int len = 1;
-+template <typename DISTANCE, typename STYLE>
-+void RunStyles<DISTANCE, STYLE>::SetValueAt(DISTANCE position, STYLE value) {
-+ DISTANCE len = 1;
- FillRange(position, value, len);
- }
-
--void RunStyles::InsertSpace(int position, int insertLength) {
-- int runStart = RunFromPosition(position);
-+template <typename DISTANCE, typename STYLE>
-+void RunStyles<DISTANCE, STYLE>::InsertSpace(DISTANCE position, DISTANCE insertLength) {
-+ DISTANCE runStart = RunFromPosition(position);
- if (starts->PositionFromPartition(runStart) == position) {
-- int runStyle = ValueAt(position);
-+ STYLE runStyle = ValueAt(position);
- // Inserting at start of run so make previous longer
- if (runStart == 0) {
- // Inserting at start of document so ensure 0
- if (runStyle) {
-- styles->SetValueAt(0, 0);
-+ styles->SetValueAt(0, STYLE());
- starts->InsertPartition(1, 0);
- styles->InsertValue(1, 1, runStyle);
- starts->InsertText(0, insertLength);
-@@ -195,20 +210,22 @@
- }
- }
-
--void RunStyles::DeleteAll() {
-+template <typename DISTANCE, typename STYLE>
-+void RunStyles<DISTANCE, STYLE>::DeleteAll() {
- delete starts;
- starts = NULL;
- delete styles;
- styles = NULL;
-- starts = new Partitioning<int>(8);
-- styles = new SplitVector<int>();
-+ starts = new Partitioning<DISTANCE>(8);
-+ styles = new SplitVector<STYLE>();
- styles->InsertValue(0, 2, 0);
- }
-
--void RunStyles::DeleteRange(int position, int deleteLength) {
-- int end = position + deleteLength;
-- int runStart = RunFromPosition(position);
-- int runEnd = RunFromPosition(end);
-+template <typename DISTANCE, typename STYLE>
-+void RunStyles<DISTANCE, STYLE>::DeleteRange(DISTANCE position, DISTANCE deleteLength) {
-+ DISTANCE end = position + deleteLength;
-+ DISTANCE runStart = RunFromPosition(position);
-+ DISTANCE runEnd = RunFromPosition(end);
- if (runStart == runEnd) {
- // Deleting from inside one run
- starts->InsertText(runStart, -deleteLength);
-@@ -214,7 +231,7 @@
- runEnd = SplitRun(end);
- starts->InsertText(runStart, -deleteLength);
- // Remove each old run over the range
-- for (int run=runStart; run<runEnd; run++) {
-+ for (DISTANCE run=runStart; run<runEnd; run++) {
- RemoveRun(runStart);
- }
- RemoveRunIfEmpty(runStart);
-@@ -222,11 +239,13 @@
- }
- }
-
--int RunStyles::Runs() const {
-+template <typename DISTANCE, typename STYLE>
-+DISTANCE RunStyles<DISTANCE, STYLE>::Runs() const {
- return starts->Partitions();
- }
-
--bool RunStyles::AllSame() const {
-+template <typename DISTANCE, typename STYLE>
-+bool RunStyles<DISTANCE, STYLE>::AllSame() const {
- for (int run = 1; run < starts->Partitions(); run++) {
- if (styles->ValueAt(run) != styles->ValueAt(run - 1))
- return false;
-@@ -234,13 +253,15 @@
- return true;
- }
-
--bool RunStyles::AllSameAs(int value) const {
-+template <typename DISTANCE, typename STYLE>
-+bool RunStyles<DISTANCE, STYLE>::AllSameAs(STYLE value) const {
- return AllSame() && (styles->ValueAt(0) == value);
- }
-
--int RunStyles::Find(int value, int start) const {
-+template <typename DISTANCE, typename STYLE>
-+DISTANCE RunStyles<DISTANCE, STYLE>::Find(STYLE value, DISTANCE start) const {
- if (start < Length()) {
-- int run = start ? RunFromPosition(start) : 0;
-+ DISTANCE run = start ? RunFromPosition(start) : 0;
- if (styles->ValueAt(run) == value)
- return start;
- run++;
-@@ -253,7 +274,8 @@
- return -1;
- }
-
--void RunStyles::Check() const {
-+template <typename DISTANCE, typename STYLE>
-+void RunStyles<DISTANCE, STYLE>::Check() const {
- if (Length() < 0) {
- throw std::runtime_error("RunStyles: Length can not be negative.");
- }
-@@ -263,9 +285,9 @@
- if (starts->Partitions() != styles->Length()-1) {
- throw std::runtime_error("RunStyles: Partitions and styles different lengths.");
- }
-- int start=0;
-+ DISTANCE start=0;
- while (start < Length()) {
-- const int end = EndRun(start);
-+ const DISTANCE end = EndRun(start);
- if (start >= end) {
- throw std::runtime_error("RunStyles: Partition is 0 length.");
- }
-@@ -280,3 +302,9 @@
- }
- }
- }
-+
-+#ifdef SCI_NAMESPACE
-+template class Scintilla::RunStyles<int, int>;
-+#else
-+template class RunStyles<int, int>;
-+#endif
-diff -r 1bd57324aa36 -r 89d992f380a1 src/RunStyles.h
---- a/src/RunStyles.h Thu Feb 01 09:07:21 2018 +1100
-+++ b/src/RunStyles.h Thu Feb 01 09:22:14 2018 +1100
-@@ -12,35 +12,36 @@
- namespace Scintilla {
- #endif
-
-+template <typename DISTANCE, typename STYLE>
- class RunStyles {
- private:
-- Partitioning<int> *starts;
-- SplitVector<int> *styles;
-- int RunFromPosition(int position) const;
-- int SplitRun(int position);
-- void RemoveRun(int run);
-- void RemoveRunIfEmpty(int run);
-- void RemoveRunIfSameAsPrevious(int run);
-+ Partitioning<DISTANCE> *starts;
-+ SplitVector<STYLE> *styles;
-+ DISTANCE RunFromPosition(DISTANCE position) const;
-+ DISTANCE SplitRun(DISTANCE position);
-+ void RemoveRun(DISTANCE run);
-+ void RemoveRunIfEmpty(DISTANCE run);
-+ void RemoveRunIfSameAsPrevious(DISTANCE run);
- // Private so RunStyles objects can not be copied
- RunStyles(const RunStyles &);
- public:
- RunStyles();
- ~RunStyles();
-- int Length() const;
-- int ValueAt(int position) const;
-- int FindNextChange(int position, int end) const;
-- int StartRun(int position) const;
-- int EndRun(int position) const;
-+ DISTANCE Length() const;
-+ STYLE ValueAt(DISTANCE position) const;
-+ DISTANCE FindNextChange(DISTANCE position, DISTANCE end) const;
-+ DISTANCE StartRun(DISTANCE position) const;
-+ DISTANCE EndRun(DISTANCE position) const;
- // Returns true if some values may have changed
-- bool FillRange(int &position, int value, int &fillLength);
-- void SetValueAt(int position, int value);
-- void InsertSpace(int position, int insertLength);
-+ bool FillRange(DISTANCE &position, STYLE value, DISTANCE &fillLength);
-+ void SetValueAt(DISTANCE position, STYLE value);
-+ void InsertSpace(DISTANCE position, DISTANCE insertLength);
- void DeleteAll();
-- void DeleteRange(int position, int deleteLength);
-- int Runs() const;
-+ void DeleteRange(DISTANCE position, DISTANCE deleteLength);
-+ DISTANCE Runs() const;
- bool AllSame() const;
-- bool AllSameAs(int value) const;
-- int Find(int value, int start) const;
-+ bool AllSameAs(STYLE value) const;
-+ DISTANCE Find(STYLE value, DISTANCE start) const;
-
- void Check() const;
- };
-diff -r 1bd57324aa36 -r 89d992f380a1 test/unit/testRunStyles.cxx
---- a/test/unit/testRunStyles.cxx Thu Feb 01 09:07:21 2018 +1100
-+++ b/test/unit/testRunStyles.cxx Thu Feb 01 09:22:14 2018 +1100
-@@ -22,7 +22,7 @@
-
- TEST_CASE("RunStyles") {
-
-- RunStyles rs;
-+ RunStyles<int, int> rs;
-
- SECTION("IsEmptyInitially") {
- REQUIRE(0 == rs.Length());