aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/CellBuffer.h
AgeCommit message (Collapse)AuthorFilesLines
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-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-09Avoid overhead of extra start actions that delimited user operations. Now reliesNeil1-4/+4
on mayCoalesce flag to indicate that a user operation is complete when false.
2024-02-01Add UndoAction class as internal type for undo actions and make Action a structNeil1-10/+5
that is used for reporting undo steps to Document. This will allow further minimization of undo memory use.
2024-02-01Move UndoHistory into its own module that is accessible from CellBuffer andNeil1-52/+3
tests but hidden from most of Scintilla. Access through std::unique_ptr.
2024-01-27Use noexcept where reasonable.Neil1-16/+16
2024-01-27Feature [feature-requests:#1458] Reduce memory used for undo actions.Zufu Liu1-5/+5
2023-10-26Implement LineEnd method in CellBuffer as it is a basic function and only usesNeil1-0/+1
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.
2022-07-31Added change history which can display document changes (modified, saved, ...)Neil1-0/+14
in the margin or in the text.
2022-07-29Apply rule-of-zero to delete standard methods where possible as handled byNeil1-16/+3
contained types. This allows flexibility as most lower-level data types can be moved and SplitVector and Partitioning of non-move-only types may be copied. CellBuffer still needs destructor due to incomplete type so retains all standard operations.
2021-07-24Bug [#2269]. Fix error with MSVC with /std:c++latest.rel-5-1-1Zufu Liu1-2/+0
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-15Feature [feature-requests:#1381] Move SplitView to header so it can be used moreNeil1-0/+29
widely. Ensure that case where all text is after the gap is as efficient as when all text is before the gap.
2021-05-24Define C++ version of the Scintilla API in ScintillaTypes.h, ScintillaMessages.hNeil1-9/+9
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-04-05Change actionType to an enum class.Neil1-4/+4
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-03-24Use noexcept where possible.Neil1-11/+11
2019-04-28Declare reading methods as noexcept where reasonable.Neil1-15/+15
2018-10-09Improve performance of text insertion when Unicode line indexing off.Neil1-0/+1
2018-07-10Optional indexing of line starts in UTF-8 documents by UTF-32 code points andNeil1-0/+9
UTF-16 code units added.
2018-06-10Using noexcept for simple functions.Neil1-1/+1
2018-05-14Replace 0 with nullptr.Neil1-1/+1
2018-04-28Delete standard functions on classes where there could be attempts to copy.Neil1-0/+2
2018-04-24Feature [feature-requests:#1215]. Make Action move constructor noexcept and useNeil1-2/+1
default implementation.
2018-04-21Use noexcept in basic data structures where reasonable.Neil1-0/+2
Declare the standard member functions in more classes
2018-04-21Tighten definition of regular expression iterators so they are noexcept andNeil1-7/+7
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.
2018-04-19Casting changed in many places, due to change to 64-bit variables for 64-bitNeil1-0/+1
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.
2018-04-17Add SC_DOCUMENTOPTION_TEXT_LARGE option for documents larger than 2 GigaBytes.Neil1-1/+4
This option is provisional and experimental.
2018-03-03Split LineVector into interface and implementation classes to allow futureNeil1-29/+3
choice between 32-bit and 64-bit position implementations.
2018-02-02Implement SC_DOCUMENTOPTION_STYLES_NONE.Neil1-1/+2
2018-02-01Templatize Partitioning so it can hold different types.Neil1-1/+1
2017-09-11The Scintilla namespace is always active for internal symbols and for the lexerNeil1-4/+0
interfaces ILexer4 and IDocument.
2017-04-29Use std::unique_ptr, std::vector, and move construction to simplify UndoHistoryNeil1-7/+9
and make it easier to modify. Remove out of date warning suppression.
2017-04-21More consistent deletion of standard methods.Neil1-1/+11
2017-04-19Use =delete for unwanted functions.Neil1-3/+2
2017-04-07Use same parameter names in declarations and definitions.Neil1-2/+2
2017-03-31Using Sci::Position and Sci::Line to mark variables that are document positionsNeil1-35/+35
and lines.
2016-11-15Remove declaration of methods that were moved to Document in change set 2867.Neil1-16/+0
2015-12-31Treat Unicode line ends like common line ends when maintaining fold state.Neil1-0/+1
2014-07-18Added the tentative undo feature. This is useful for IMEs that want to displayNeil1-0/+12
and manipulate a character being composed, but may then commit or remove it leaving no history in undo of the intermediate forms.
2014-05-24Removing style byte indicators.Neil1-2/+2
2013-12-15Format normalization - whitespace and braces made consistent.Neil1-2/+2
Parameter names added to method declarations.
2013-07-03Make CellBuffer::DeleteChars return a pointer to the deleted data evenNeil1-1/+1
when deleting all of the buffer.
2013-05-24Made methods const where they can be and are logically const as well.nyamatongwe1-3/+3
2013-05-03Moved allocation of data owned by Action into Action::Create.nyamatongwe1-2/+2
Made more variables const.
2013-01-19Add private copy constructors to prevent copying and avoid warnings.nyamatongwe1-0/+3
2013-01-19Support the three Unicode line ends NEL, LS, and PS in CellBuffer, Document,nyamatongwe1-0/+5
Editor and the message interface. Will only be turned on for lexers that support Unicode line ends.