aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Document.h
AgeCommit message (Collapse)AuthorFilesLines
2025-05-24Remove line end space.Zufu Liu1-1/+1
2025-02-14Implement LastCharacter to return the last character or character fragment in aNeil1-0/+2
potentially invalid UTF-8 string. Use this in DiscardLastCombinedCharacter. Place DiscardLastCombinedCharacter in Scintilla::Internal namespace for use in text wrap.
2025-01-22Bug [#1224]. Remember selection in undo history. SCI_SETSELECTIONUNDOHISTORY.Neil1-1/+26
2024-11-17Feature [feature-requests:#1533]. More performance for SCI_BRACEMATCH byZufu Liu1-0/+1
avoiding costly NextPosition call where possible. Approximately 60% improvement on tested system.
2024-09-28Remove private field that was never used.Neil1-1/+0
2024-07-28Add SCI_GETUNDOSEQUENCE to determine whether an undo sequence is active and itsNeil1-0/+1
nesting depth.
2024-03-08Reformat with astyle.Neil1-2/+2
2024-03-02Feature [feature-requests:#1511] Add mayCoalesce argument to BeginUndoAction.John Ehresman1-1/+1
2024-02-16Implement detach point access with SCI_SETUNDODETACH and SCI_GETUNDODETACH.Neil1-2/+4
Write more documentation for undo history.
2024-02-15Mark Document methods noexcept where they call noexcept CellBuffer methods.Neil1-8/+8
2024-02-15Perform validation of undo state when SCI_SETUNDOCURRENT called, setting statusNeil1-1/+1
when invalid.
2024-02-09Implement API to read and write undo history from applications.Neil1-0/+13
2024-02-01Add UndoAction class as internal type for undo actions and make Action a structNeil1-1/+1
that is used for reporting undo steps to Document. This will allow further minimization of undo memory use.
2023-12-20Add IDocumentEditable interface for efficient interaction with document objects.Neil1-2/+4
2023-10-26Add LineStartPosition to replace common idiom LineStart(LineFromPosition(x)) asNeil1-1/+2
this shortens code. LineStartPosition is also noexcept which allows callers to be noexcept.
2023-10-26Implement LineEnd method in CellBuffer as it is a basic function and only usesNeil1-3/+3
CellBuffer fields. Declare LineEnd noexcept as it should never throw and that allows methods calling it to also be noexcept. Call LineEndPosition to simplify Editor::LineSelectionRange.
2023-03-02Add multithreaded wrap to significantly improve performance of wrapping largeNeil1-0/+5
files.
2023-01-12Feature [feature-requests:#1474] Move EOL string function to Document and returnZufu Liu1-0/+1
string_view.
2022-12-21Bug [#2340]. Avoid repeated call in GetFoldParent for around 10% performanceZufu Liu1-2/+2
gain with Visual C++ 64-bit release mode on 300,000 line file. Remove duplicated code and simplify. GetFoldLevel and thus GetFoldParent can't throw so mark as noexcept.
2022-11-24Add const and noexcept where sensible.Neil1-2/+2
2022-11-22Add SCI_REPLACETARGETMINIMAL to change text without causing unchanged prefix andNeil1-0/+5
suffix to be marked as modified in change history.
2022-11-12Hoist common conversion from UTF-8 byte string into CharacterExtractedNeil1-14/+25
constructor. Move CharacterExtracted out of Document so it can be more widely used.
2022-10-20Change ScintillaBase::AutoCompleteInsert to take a string_view and addNeil1-0/+1
Document::InsertString overload taking a string_view. These changes simplify callers.
2022-10-19Fix noexcept warnings from recent changes.Neil1-0/+1
2022-09-12Remove NotifyLexerChanged notification from DocWatcher.Neil1-2/+0
This is a private interface but could be used by independent platform layers and was exposed by ScintillaDocument in the Qt implementation of ScintillaEdit.
2022-08-09Remove unnecessary semicolons.Neil1-5/+5
2022-07-31Added change history which can display document changes (modified, saved, ...)Neil1-1/+7
in the margin or in the text.
2021-10-21Feature [feature-requests:#1417] Use backward iteration to find space / controlZufu Liu1-1/+1
character and text / punctuation boundaries in SafeSegment as will be simpler and faster in almost all cases. Simplify BreakFinder::Next calling SafeSegment.
2021-09-30Feature [feature-requests:#1416] Remove extra check that is never true andZufu Liu1-1/+1
remove parameter used just for this test.
2021-08-22Follow rule-of-zero / rule-of-5 where reasonable by removing standard operatorsNeil1-1/+1
that are not needed.
2021-08-22Encapsulate an ILexer5* in LexerInstance class to simplify client code.Neil1-8/+28
2021-07-15Feature [feature-requests:#1370] Implement SCI_ALLOCATELINES to allocate indicesZufu Liu1-0/+1
to hold some number of lines. This is an optimization that can decrease reallocation overhead.
2021-07-05Feature [feature-requests:#1408] Check both bytes of potential DBCS characterZufu Liu1-1/+1
before treating as a character.
2021-07-03Feature [feature-requests:#1408] Simplify code, remove IsDBCSTrailByteInvalid.Zufu Liu1-1/+0
Drop temporary test for IsDBCSTrailByteNoExcept.
2021-07-03Feature [feature-requests:#1408] Use positive IsDBCSTrailByteNoExcept functionZufu Liu1-0/+1
instead of negated IsDBCSTrailByteInvalid.
2021-05-28Better exception handling for noexcept methods. More accurate noexcept marking.Neil1-1/+4
2021-05-24Define C++ version of the Scintilla API in ScintillaTypes.h, ScintillaMessages.hNeil1-45/+34
and ScintillaStructures.h using scoped enumerations. Use these headers instead of Scintilla.h internally. External definitions go in the Scintilla namespace and internal definitio0ns in Scintilla::Internal.
2021-05-20Add LevelIsHeader and LevelIsWhitespace as fold levels will become enum classNeil1-0/+8
later so not work well with '&'.
2021-05-08Feature [feature-requests:1373]. Make idle actions smoother by measuringNeil1-1/+1
per-byte and allowing just one line to be processed in a time slice. Very long lines will not distort estimation or block interaction as much.
2021-05-08Feature [feature-requests:1373]. Add methods for refining idle task durations.Zufu Liu1-0/+2
2021-04-05Extract CharClassify::cc as CharacterClass and change to enum class.Neil1-3/+3
2021-03-18Use unique_ptr for CaseFolderForEncoding to show transfer of ownership.Neil1-1/+1
2020-07-16Make EncodingFamily an enum class for more type safety.Neil1-1/+1
2020-07-15Feature [feature-requests:1368]. Add BraceMatchNext API.Zufu Liu1-1/+1
2020-06-12Bug [#2141]. Implement end of line annotations.Prakash Sahni1-1/+7
2020-06-11Use noexcept where safe and maintainable.Neil1-1/+1
2020-05-03Feature [feature-requests:1347]. Add InsertLines method to PerLine interface andNeil1-0/+1
all implementations. This will allow insertion of lines in batches in a future change set. Added tests for PerLine implementations.
2020-04-08Simplify PerLine, remove casts, use noexcept, const, & constexpr where possible.Neil1-8/+8
2020-04-08Feature [feature-requests:1344]. Add methods for iterating through the markerIain Clarke1-0/+2
handles and marker numbers on a line.
2020-03-31Pass argument as unique_ptr to show transfer of ownership. Add const and ↵Neil1-2/+2
noexcept.