aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/MarginView.cxx
AgeCommit message (Collapse)AuthorFilesLines
2025-05-29Recreate all pixmaps if any null as this may better handle cases where someNeil1-1/+1
allocations succeed and others fail.
2025-04-03Turn on type conversion warnings for GCC and fix them.Neil1-1/+1
2023-10-10Use global constants for opaque black and white and local constants for greys.Neil1-1/+1
Makes it easier to understand and reduces warnings.
2023-03-27Declare const where possible.Neil1-1/+1
2023-02-17Use maximum 4 digits for next fold level display when lexer incorrectly setsNeil1-3/+3
fold level to -1. Previously 8 digits were displayed due to sign extension. Limit formatted length although no possibility of exceeding 100 characters.
2022-10-01Draw SC_MARK_BAR markers underneath other markers as they often cover multipleNeil1-17/+25
lines for change history and other markers mark individual lines.
2022-10-01Hoist choosing marker variants into PartForFoldHighlight and PartForBar.Neil1-32/+39
PaintOneMargin is constant so mark as const. Extend scope of isExpanded to avoid recalculation. This change set does not change behaviour.
2022-07-31Add SC_MARK_BAR marker and INDIC_POINT_TOP indicator which are useful for changeNeil1-1/+23
history. Tweak size of INDIC_POINT and INDIC_POINTCHARACTER. Let translucency of INDIC_COMPOSITIONTHICK be adjusted.
2022-07-31Move main access to active marker bit set to model. This will allow merging inNeil1-1/+1
change history markers and simplifies calls.
2021-10-26Mark method const as its a reader.Neil1-1/+1
2021-09-28Widen styleNumber in PositionCacheEntry from 8 to 16 bits to allow stylesNeil1-0/+1
larger than 255 to be represented. Before this, it may have been possible but extremely rare for a cache entry to wrongly match a styled lexeme and produce incorrect layout. Using uint16_t from cstdint instead of a bit field as tools perform more checking on that.
2021-09-14Break up PaintOneMargin more and simplify code.Neil1-91/+105
2021-09-07Handle case where all lines are hidden by a filter and kinetic scrollingNeil Hodgson1-1/+1
causes drawing of negative line number.
2021-09-07Move bulk of PaintMargin into PaintOneMargin which paints one margin.Neil1-249/+254
This reduces nesting and indentation.
2021-06-04Simplified expression.Zufu Liu1-1/+1
2021-05-27Fix fold debug mode for margin.Neil1-1/+1
2021-05-24Define C++ version of the Scintilla API in ScintillaTypes.h, ScintillaMessages.hNeil1-70/+72
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-22Encapsulate whether a margin shows folding.Neil1-4/+4
2021-05-22Rename ColourAlpha to ColourRGBA to avoid clashes when a ColourAlpha typedefNeil1-5/+5
will be published in externally visible header.
2021-05-20Add LevelIsHeader and LevelIsWhitespace as fold levels will become enum classNeil1-10/+10
later so not work well with '&'.
2021-04-27Rename CharacterSet and CharacterCategory modules in Scintilla to CharacterTypeNeil1-1/+1
and CharacterCategoryMap to avoid clashes with Lexilla when building an executable that includes both.
2021-04-26Avoid some warnings.Neil1-1/+1
2021-04-26Change std::optional value() to * as value() is not implemented in older macOSNeil Hodgson1-2/+2
releases. Using value() produces error: error: call to unavailable member function 'value': introduced in macOS 10.14
2021-04-26Extract related groups of fields out of ViewStyle into new structs.Neil1-1/+1
Size of ViewStyle makes it more difficult to understand and this helps a bit.
2021-04-25Feature [feature-requests:#1402]. Unify colour type with ColourAlpha.Neil1-9/+9
Change ColourDesired to ColourAlpha in styles. Remove ColourDesired.
2021-03-29Add SCI_SETELEMENTCOLOUR and related APIs to change colours of visible elements.Neil1-0/+1
Implement SC_ELEMENT_LIST* to change colours of autocompletion lists.
2021-03-26Minor changes: const, constexpr, and noexcept.Neil1-2/+2
2021-03-22Use PolyLine to simplify wrap marker arrows and allow thicker strokes when thereNeil1-28/+32
is space.
2021-03-20Use Surface::AllocatePixMap instead of changing an existing surface withNeil1-26/+8
InitPixMap. Changed DropGraphics from releasing surfaces to deleting them. This simplifies code and the added cost of allocating a new Surface is small.
2021-03-19Add an explicit FlushDrawing method to Surface that should be called afterNeil1-0/+2
completing a bitmap. Currently only has a real implementation on Direct2D. Avoiding implicit flushes inside Copy and FillRectangle produced a 23% speed improvement on files with about 1 indentation guide per line as the drawing pipeline was being flushed for each indentation guide.
2021-03-19Switch enum to enum class.Neil1-2/+2
2021-03-18Make Surface::Release and callers (where possible) noexcept.Neil1-1/+1
2021-03-18Use unique_ptr for Surface::Allocate to show transfer of ownership.Neil1-3/+3
2021-03-18std::optional is a basic vocabulary type that may be used widely so includeNeil1-0/+1
almost everywhere.
2021-03-18Move assert and debug trace functions into their own header Debugging.h.Neil1-0/+1
PLATFORM_ASSERT is used in data structure headers which led to including graphics and windowing APIs in data structure modules.
2021-03-17Change Font to an interface and stop using FontID. Fonts are shared andNeil1-1/+1
reference counted using std::shared_ptr. This optimizes memory and reduces potential for allocation bugs.
2021-03-17Extract geometry and colour definitions from Platform.h into src/Geometry.h.Neil1-0/+1
2020-07-28Fix position of marker symbols for SC_MARGIN_RTEXT which were being moved basedNeil1-5/+8
on width of text.
2020-07-16Rename typeOfFold to FoldPart and make an enum class.Neil1-7/+7
2020-06-11Use noexcept where safe and maintainable.Neil1-1/+1
2019-07-02Bug [#2115]. Backed out changeset: 74b2c724a1df as not undefined behaviour.Neil1-2/+2
2019-07-01Bug [#2115]. Fix undefined behaviour of shifting signed 1 by 31.Zufu Liu1-2/+2
2019-05-11Feature [feature-requests:#1283]. Standardise spelling - "color" -> "colour".Neil1-1/+1
2019-03-29Include "CharacterCategory.h" in all files that include "Document.h" as it willNeil1-0/+1
be needed for adding a CharacterCategory feature.
2019-03-03Use noexcept where reasonable.Neil1-1/+1
2019-01-13Replace the only use of a function from <cctype> with a Scintilla function.Neil1-1/+0
Remove inclusion of <cctype> except in lexers as cctype functions often behave poorly and may crash for out of bounds arguments.
2018-05-15Replace ELEMENTS with std::size and drop inclusion of StringCopy.h.Neil1-1/+0
2018-05-14Modernize Platform.h (4) - update Surface to use string_view for text arguments.Neil1-2/+2
2018-05-14Include <string_view> to allow future use in Platform interface and Unicode.Neil1-0/+1
2018-05-01Add IntegerRectangle to simplify drawing lines without casting.Neil1-5/+8