aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/EditView.cxx
AgeCommit message (Collapse)AuthorFilesLines
2018-05-01Add IntegerRectangle to simplify drawing lines without casting.Neil1-24/+28
2018-04-27Use nullptr for custom draw functions.Neil1-7/+8
2018-04-26Specify concrete class for ldTabstops and use directly instead of copying valueNeil1-7/+4
of .get() before use.
2018-04-26Use <chrono> for platform-independent timing and remove ElapsedTime.Neil1-19/+30
Also use #if for painting measurement as there are 7 sections of code to enable.
2018-04-20More const and cast avoidance.Neil1-5/+6
2018-04-20Mark pointer to constant parameter as const.Neil1-1/+1
2018-04-20Feature [feature-requests:#1215]. Use standard functions in prference toNeil1-4/+4
RoundXYPosition, XYMinimum, and XYMaximum.
2018-04-20Avoid casts for DrawIndentGuide.Neil1-6/+6
2018-04-19Templatize MakeUpperCase/MakeLowerCase so they work on char/int without casts.Neil1-4/+4
2018-04-19Use ColourDesired constructor explicitly to make more obvious.Neil1-1/+1
Constructor not marked explicit as may be used in external platform layers.
2018-04-19Casting changed in many places, due to change to 64-bit variables for 64-bitNeil1-44/+44
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-19SC_PRINT_SCREENCOLOURS doesn't force the background colour of line numbers ↵Nicholai Benalal1-2/+3
white.
2018-04-17Add SC_DOCUMENTOPTION_TEXT_LARGE option for documents larger than 2 GigaBytes.Neil1-4/+3
This option is provisional and experimental.
2018-04-05Backed out changeset: 7402342dc7a3 Caching client rectangle on EditView.Neil1-8/+0
This change was not compatible with Cocoa as it uses document-based coordinates rather than view-based.
2018-04-04Cache client rectangle on EditView so it can be used easily inside EditView.Neil1-0/+8
2018-03-28Split decorations into interface and implementation.Neil1-10/+10
2018-03-27Use an interface for ContractionState so that there can be differentNeil1-15/+15
implementations of that interface.
2018-03-15Use forward class definitions of XPM and RGBAImage so only code that uses themNeil1-1/+0
needs to #include "XPM.h". Move definition of standard methods on LineMarker from header to implementation to reduce included text and further isolate use of XPM and RGBAImage.
2018-03-09Use Position/Line/int more accurately in preparation for large documents.Neil1-22/+24
2018-03-01Mark variables as const where simple.Neil1-46/+46
2018-03-01Use make_unique in preference to new.Neil1-1/+1
From Effective Modern C++ Item 21.
2017-09-11The Scintilla namespace is always active for internal symbols and for the lexerNeil1-6/+0
interfaces ILexer4 and IDocument.
2017-08-28New header ILoader.h defines ILoader interface as it does not belong in ↵Neil1-0/+1
ILexer.h.
2017-06-22Cast between Sci_Position.h types used for lexers and Position.h types used inNeil1-41/+49
core to allow the Sci_Position.h types to widen to 64-bits.
2017-05-21Use unique_ptr and forward_list to regularize PerLine data structures.Neil1-0/+1
2017-05-21Make SparseVector work with move-only types.Neil1-0/+1
Define UniqueString as a move-only string and use in a SparseVector for ContractionState. Remove SparseVector method specializations that are no longer needed.
2017-05-10Simplify DecorationList and its clients by using a vector instead of anNeil1-2/+2
intrusive linked list. Restrict clients to a read-only view.
2017-05-10Use unique_ptr fpr Partitioning, RunStyles, SparseVector, PositionCache andNeil1-8/+8
Document.
2017-05-02Use unique_ptr for drawing surfaces and don't check for allocation failureNeil1-22/+12
as that throws an exception. Also use unique_ptr for tab stop positions.
2017-04-12For speed, store height of capital letters in FontMeasurements so notNeil1-2/+1
recalculated for every character blob.
2017-04-09Further use of range-for.Neil1-5/+5
2017-04-09Modernise ViewStyle with vector, unique_ptr, any_of, and method deletion.Neil1-1/+1
2017-04-06Added const where possible.Neil1-36/+36
2017-04-06Added a caret line frame as an alternative visual for highlighting the caret ↵A-R-C-A1-8/+62
line.
2017-04-01Fix DisplayFromPosition pos argument to be correct type.Neil1-1/+1
2017-04-01More encapsulation for Decoration and DecorationList.Neil1-6/+6
2017-04-01Standardize on C++ headers, remove headers that aren't needed and add <cstddef>Neil1-6/+7
where it may be needed in the future.
2017-03-31Prefer standard min/max over Platform's as adapts to changed types.Neil1-7/+7
2017-03-31Using Sci::Position and Sci::Line to mark variables that are document positionsNeil1-108/+108
and lines.
2017-03-19Group non-single-phase drawing before text.Neil1-11/+11
2017-03-16For single phase drawing ensure remainder of line filled by always fillingNeil1-1/+1
in tag fold drawing.
2017-03-16For single phase drawing ensure edges and mark underline drawn over fold tags byNeil1-5/+8
moving drawing of edge line and mark underline after fold tags.
2017-03-16For multiphase drawing ensure edges and mark underline drawn over fold tags byNeil1-0/+2
moving background drawing of fold tags before edge line and mark underline.
2017-03-17Round left and right sides of fold text box to ensure within the allocation.Neil1-8/+11
2017-03-16Fix 1 pixel unpainted as background.Neil1-1/+1
2017-03-16Fix difference between right of line end and left of fold tag.Neil1-1/+1
2017-01-22Display block caret over the character at the end of a selection to be similarJohn Ehresman1-1/+7
to other editors.
2017-01-04Mark some const methods as const.Neil1-1/+1
2016-12-09Warning suppression and documentation of previous change 6082.Neil1-1/+2
2016-12-09Use double coordinates instead of float in some cases as float ran out ofNeil1-1/+1
precision in long documents. This meant that individual lines could not be selected by mouse when the document exceeded 16.7 million lines.