aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Document.cxx
AgeCommit message (Collapse)AuthorFilesLines
2019-03-09Backport: Use constexpr where reasonable and move groups of static functions ↵mitchell1-3/+3
into unnamed namespace. Backport of changeset 7289:3f930310a0de, but without complicated constexpr functions, since they are not available in C++11.
2019-03-03Backport: Use noexcept where reasonable.Neil1-1/+1
Backport of changeset 7287:0272b3c3a03b.
2019-01-06Backport: Bug [#2068]. Fix some clang-tidy warnings.Zufu Liu1-1/+1
Backport of changeset 7195:ce4394f12c76.
2019-01-03Backport: Bug [#2073]. Stop GetCharacterAndWidth returning negative ↵Zufu Liu1-2/+2
character value. This occurred for single-byte encodings and was never hit as GetCharacterAndWidth is only called for multi-byte encodings. Backport of changeset 7188:c836128fa848.
2018-10-17Backport: Bug [#2051]. Correct return value from SCI_MARKERADD for invalid ↵Neil1-1/+1
lines. Backport of changeset 7117:0cbbfacbf008.
2018-10-16Backport: Make damping work in ActionDuration.Colomban Wendling1-1/+1
Backport of changeset 7115:f6d66247a18e.
2018-10-15Backport: Extract duration measurement damping and clamping into ↵Neil1-22/+25
ActionDuration class so that it can be reused. Backport of changeset 7113:9b7421470bf8.
2018-09-16Backport: Use nullptr in Document where appropriate.Neil1-10/+10
Backport of changeset 7088:793a7a86ee7f.
2018-09-16Backport: Moved declaration to avoid warnings from linters.Neil1-2/+2
Backport of changeset 7087:e408638433a4.
2018-07-24Backport: Fix reversion in revision 7063 which removed folding when changing ↵Neil1-0/+1
code page. Changing code page now causes full restyle. Backport of changeset 7068:00b787e2aab1.
2018-07-10Backport: Optional indexing of line starts in UTF-8 documents by UTF-32 code ↵Neil1-0/+22
points and UTF-16 code units added. Converted instances of C++17 std::string_view to C++11. Also used const_casts where appropriate to fix compile errors. Backport of changeset 7063:0d5edc93e280.
2018-06-10Backport: Using noexcept for simple functions.Neil1-6/+6
Backport of changeset 7029:c726541dbd11.
2018-06-10Backport: Updated the code and comment for running a regex over multiple ↵Neil1-8/+14
lines at once instead of breaking up into lines. Using the preprocessor to hide the multiline code instead of comments so that it is easier to experiment with. Backport of changeset 7028:9227461c9330.
2018-05-25Backport: Draw invalid bytes in DBCS when detected as blobs in a similar way ↵mitchell1-0/+87
to UTF-8. Backport of changeset 6962:514fde42ccbf, but without std::string_view.
2018-05-16Backport: Use noexcept method to preserve noexcept.Neil1-1/+1
Backport of changeset 6956:beee37b055d6.
2018-05-16Backport: Fix regex crash reported with libstdc++ on macOS that occursNeil Hodgson1-7/+0
when the regex has a locale imbued. Backport of changeset 6953:85ff33e92309.
2018-05-06Backport: Use <chrono> for platform-independent timing and remove ↵mitchell1-4/+6
ElapsedTime. Also use #if for painting measurement as there are 7 sections of code to enable. Backport of changeset 6741:af5d9064c25c.
2018-04-22Backport: Remove casts between char and unsigned char where possible.Neil1-7/+7
Backport of changeset 6731:8e06234817c0.
2018-04-21Backport: Tighten definition of regular expression iterators so they are ↵Neil1-69/+96
noexcept and define all the standard member functions. This cascades to all methods called by the iterators, affecting Document, CellBuffer, Partitioning, SplitVector and UTF-8 and DBCS functions. Other trivial functions declared noexcept. Backport of changeset 6724:f2dfdc0dddd3.
2018-04-19Backport: Casting changed in many places, due to change to 64-bit variables ↵Neil1-91/+94
for 64-bit builds. Some of the changes ensure no truncation while others remove casts that are no longer needed because the externally visible Sci_Position is now identical to Sci::Position. Some extra methods (CellBuffer::UCharAt and Document::SciLineFromPosition) added to avoid casting in client code. Sci::Line is currently identical to Sci::Position but it could be made smaller so lines have Sci::Line types and are cast. Some arguments widened. Backport of changeset 6705:5c0a80740b8c.
2018-04-19Backport: Remove casts by using harmonized types. Drop NUL termination that ↵Neil1-16/+13
is not needed. Backport of changeset 6701:6be1be362cfc.
2018-05-05Backport: Add SC_DOCUMENTOPTION_TEXT_LARGE option for documents larger than ↵mitchell1-3/+8
2 GigaBytes. This option is provisional and experimental. Backport of changesets 6696:9729ff36c5b1 and 6723:cffe824ab55e. Also added '#include <cstddef>' to top of src/RESearch.cxx to fix 32-bit build error.
2018-03-28Backport: Templatize decorations to allow 32-bit or 64-bit positions.Neil1-1/+1
Backport of changeset 6693:7247d1c9c27f.
2018-04-16Backport: Determine if line start or end pattern before loop.Neil1-5/+7
Backport of changeset 6692:1868a36cb306.
2018-04-13Backport: Use 'override' for methods that are overridden.Neil1-28/+28
Group some method declarations and definitions for AddRef/Release and PerLine. Backport of changeset 6684:bd4aae09fb4b.
2018-04-13Backport: Fix bug with regular expression searches failing to match at line ↵Neil1-16/+4
start or end. This was a work-around for infinite loops when replacing empty matches and this is now the application's responsibility. Backport of changeset 6683:bcae0331720b.
2018-04-11Backport: Remove workaround for problems with noexcept.Neil1-10/+2
Backport of changeset 6681:84298b2b66f2.
2018-05-05Backport: Split decorations into interface and implementation.mitchell1-4/+6
Backport of changeset 6658:693e737f3155.
2018-03-27Backport: Return a FillResult struct from RunStyles::FillRange instead of ↵Neil1-4/+4
modifying arguments as that is clumsy when converting types. Backport of changeset 6657:43515e7709c6.
2018-05-05Backport: Feature [feature-requests:#1212]. Move Unicode conversions into ↵mitchell1-1/+0
UniConversion. Move Unicode conversion functions UnicodeFromUTF8 and UTF8FromUTF32Character into UniConversion. Backport of changeset 6645:463fa6965d9a.
2018-05-05Backport: Feature [feature-requests:#1211]. Use pre-computed table for ↵mitchell1-2/+0
UTF8BytesOfLead. Friendlier treatment of invalid UTF-8. Add tests for UniConversion handling invalid UTF-8. Simplify UTF8Classify tests. Backport of changeset 6643:ebbb4e5aaf93.
2018-03-09Backport: Use Position/Line/int more accurately in preparation for large ↵Neil1-6/+6
documents. Backport of changeset 6480:f2650eaa75e6.
2018-03-01Backport: Mark variables as const where simple.Neil1-49/+49
Backport of changeset 6470:d78a4b522662.
2018-02-02Backport: Implement SC_DOCUMENTOPTION_STYLES_NONE.Neil1-1/+2
Backport of changeset 6448:431b814a54a6.
2018-01-28Backport: Use std::abs in preference to abs as std::abs is generic and abs ↵Neil1-1/+2
casts to int which may drop information. Backport of changeset 6434:ed27432729c3.
2017-12-13Backport: Use explicit typedefs instead of deprecated derivation from ↵Greg Smith1-3/+21
std::iterator. This fixes a C4996 / STL4015 warning from Visual C++ 2017.5 that the std::iterator class template is deprecated in C++17. Backport of changeset 6421:fd2f856b8d58.
2017-10-16Backport: Use const for interface CharacterIndexer and its implementation ↵Neil1-3/+3
DocumentIndexer. Backport of changeset 6401:fccfa635ff0c.
2017-09-11Backport: The Scintilla namespace is always active for internal symbols and ↵Neil1-12/+0
for the lexer and document interfaces. Backport of changeset 6388:d62863ae40a3.
2017-08-28Backport: New header ILoader.h defines ILoader interface as it does not ↵Neil1-0/+1
belong in ILexer.h. Backport of changeset 6383:9c8257ff60b7.
2017-07-09Backport: Bug [#1955]. The data parameter to ILoader::AddData made const.Justin Dailey1-1/+1
Backport of changeset 6340:52f12c3eebcd.
2017-06-22Backport: Cast between Sci_Position.h types used for lexers and Position.h ↵Neil1-72/+83
types used in core to allow the Sci_Position.h types to widen to 64-bits. Backport of changeset 6324:95346e626cf8.
2017-06-19Backport: The default encoding is now UTF-8.Neil1-1/+1
Backport of changeset 6320:8d56eaef4f0a.
2017-06-12Backport: Removed unused functions and methods from Platform.h.Neil1-1/+1
Replaced Platform::Clamp with Sci::clamp. Drop MouseButtonBounce workaround for very early GTK+/Linux. Backported from changeset 6307:7030530a9a0f.
2017-05-21Use unique_ptr and forward_list to regularize PerLine data structures.Neil1-0/+1
2017-05-10Use unique_ptr fpr Partitioning, RunStyles, SparseVector, PositionCache andNeil1-43/+58
Document.
2017-05-02More consistent use of size_t when converting Unicode formats.Neil1-1/+1
2017-04-29Use std::unique_ptr, std::vector, and move construction to simplify UndoHistoryNeil1-3/+3
and make it easier to modify. Remove out of date warning suppression.
2017-04-22Using unique_ptr to simplify ownership of images, case folder, and list box.Neil1-9/+3
2017-04-22Encapsulate the LexInterface of Document.Neil1-4/+8
2017-04-09Further use of range-for.Neil1-24/+24