[roland@roland-hpz820workstation Scintilla-work]$ diff -rn original-code/scintilla/README modifications/scintilla/README
a15 14
If you modified Scintilla.iface or just want to be certain before building
cd scintilla/scripts
python3 HFacer.py
python3 ScintillaAPIFacer.py
cd ../..
to regenerate:
Scintilla.h
SciLexer.h
ScintillaMessages.h
ScintillaTypes.h
ScintillaCall.h
ScintillaCall.cxx
files from the Scintilla.iface interface definition file.
You probably want to take out the "Bluefish" line
[roland@roland-hpz820workstation Scintilla-work]$ diff -rn original-code/scintilla/doc/ScintillaDoc.html modifications/scintilla/doc/ScintillaDoc.html
d9 1
a9 1
d8443 2
a8444 2
a8453 10
EDGE_FULL_BACKGROUND |
4 |
The background colour after the column limit is changed to the colour set by
SCI_SETEDGECOLOUR whether it has text or not. This is recommended for
proportional fonts. |
a8454 1
[roland@roland-hpz820workstation Scintilla-work]$ diff -rn original-code/scintilla/include/Scintilla.iface modifications/scintilla/include/Scintilla.iface
d2167 1
a2167 2
val EDGE_MULTILINE=3
val EDGE_FULL_BACKGROUND=4
d2175 1
a2175 2
# If text goes past the edge then it is highlighted.
# if EDGE_FULL_BACKGROUND then all space past this column highlighted
[roland@roland-hpz820workstation Scintilla-work]$ diff -rn original-code/scintilla/src/EditView.cxx modifications/scintilla/src/EditView.cxx
d1729 11
a1739 27
switch(vsDraw.edgeState) {
case EdgeVisualStyle::Line: {
PRectangle rcSegment = rcLine;
const int edgeX = static_cast(vsDraw.theEdge.column * vsDraw.spaceWidth);
rcSegment.left = static_cast(edgeX + xStart);
if ((ll->wrapIndent != 0) && (lineRange.start != 0))
rcSegment.left -= ll->wrapIndent;
rcSegment.right = rcSegment.left + 1;
surface->FillRectangleAligned(rcSegment, Fill(vsDraw.theEdge.colour));
}
break;
case EdgeVisualStyle::MultiLine: {
for (size_t edge = 0; edge < vsDraw.theMultiEdge.size(); edge++) {
if (vsDraw.theMultiEdge[edge].column >= 0) {
PRectangle rcSegment = rcLine;
const int edgeX = static_cast(vsDraw.theMultiEdge[edge].column * vsDraw.spaceWidth);
rcSegment.left = static_cast(edgeX + xStart);
if ((ll->wrapIndent != 0) && (lineRange.start != 0))
rcSegment.left -= ll->wrapIndent;
rcSegment.right = rcSegment.left + 1;
surface->FillRectangleAligned(rcSegment, Fill(vsDraw.theMultiEdge[edge].colour));
}
}
}
break;
case EdgeVisualStyle::FullBackground: {
if (vsDraw.theEdge.column > 0) {
d1741 6
a1746 17
const int edgeX = static_cast(vsDraw.theEdge.column * vsDraw.spaceWidth);
/* left and right are backwards for some reason. Deal with it.
* It would be nice if there were a function to compute distance between
* theEdge.column and last theoretically visible column if it had a character.
* Supporting wrap makes little sense. It "could" be done but wrap happens at
* visible edge which changes with window size. If line 0 of the wrap
* crossed theEdge.column we could continue theEdge.colour on each of the following
* wrapped lines . . . but FullBackground is more for ANSI card formatted
* languages, UseNet posts, special data editing, etc.
*/
rcSegment.right = static_cast(edgeX);
int farRight = 500; // just a big number because we could be 2+ monitors wide
if ((ll->widthLine != 0) && (ll->widthLine != LineLayout::wrapWidthInfinite)) {
farRight = ll->widthLine;
}
rcSegment.left = static_cast(farRight * vsDraw.spaceWidth);
surface->FillRectangle(rcSegment, Fill(vsDraw.theEdge.colour));
a1748 3
break;
default:
break;