<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Andy, thank you for your time and the detailed discussion. I'm sure
it was very helpful. <br>
<br>
That's why I just opened a new issue with ID: 9078500.<br>
<br>
Best regards, Pavel<br>
<br>
<div class="moz-cite-prefix">On 5/12/25 19:58, Andy Goryachev wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CY8PR10MB7265A12E68365EA3B4E61CF2E597A@CY8PR10MB7265.namprd10.prod.outlook.com">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator"
content="Microsoft Word 15 (filtered medium)">
<style>@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
{font-family:"Yu Gothic";
panose-1:2 11 4 0 0 0 0 0 0 0;}@font-face
{font-family:Aptos;
panose-1:2 11 0 4 2 2 2 2 2 4;}@font-face
{font-family:"Iosevka Fixed SS16";
panose-1:2 0 5 9 3 0 0 0 0 4;}@font-face
{font-family:"Times New Roman \(Body CS\)";
panose-1:2 11 6 4 2 2 2 2 2 4;}@font-face
{font-family:"\@Yu Gothic";
panose-1:2 11 4 0 0 0 0 0 0 0;}p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:10.0pt;
font-family:"Aptos",sans-serif;}a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}span.EmailStyle20
{mso-style-type:personal-reply;
font-family:"Iosevka Fixed SS16";
color:windowtext;}.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;
mso-ligatures:none;}div.WordSection1
{page:WordSection1;}</style>
<div class="WordSection1">
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">JDK-8355774
adds methods to style highlights added via addHighlight()
with CSS.<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">What
(I think) you want is an ability to style a single text
segment with (background | underlines | etc) attributes,
which is still debatable - because you already can do all
that, albeit with some additional code. The addHighlight()
is more flexible, as it allows to style not only the segment
being added, but also multiple segments of parts of
segments. So, in effect, the existing APIs (plus
JDK-8355774) allow you address your requirements.<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Or
is there something you that is still impossible to do?<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
<div id="mail-editor-reference-message-container">
<div>
<div>
<div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From:
</span></b><span
style="font-size:12.0pt;color:black">openjfx-dev
<a class="moz-txt-link-rfc2396E" href="mailto:openjfx-dev-retn@openjdk.org"><openjfx-dev-retn@openjdk.org></a> on behalf of
PavelTurk <a class="moz-txt-link-rfc2396E" href="mailto:pavelturk2000@gmail.com"><pavelturk2000@gmail.com></a><br>
<b>Date: </b>Monday, May 12, 2025 at 09:49<br>
<b>To: </b><a class="moz-txt-link-abbreviated" href="mailto:openjfx-dev@openjdk.org">openjfx-dev@openjdk.org</a>
<a class="moz-txt-link-rfc2396E" href="mailto:openjfx-dev@openjdk.org"><openjfx-dev@openjdk.org></a><br>
<b>Subject: </b>Re: RFR: 8355774: RichTextArea:
provide mechanism for CSS styling of highlights<o:p></o:p></span></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span
style="font-size:12.0pt">Thank you very much for the
detailed explanation. Am I right in understanding that
JDK-8355774 does not
<br>
consider the possibility of styling underline/wavy
underline via a CSS file (without calling special
methods<br>
like addHighlight, addWavyUnderline? <br>
<br>
If so, should I open another issue?<br>
<br>
Best regards, Pavel<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt">On
5/12/25 19:41, Andy Goryachev wrote:<o:p></o:p></span></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Yes,
I know. But we must support both options, since
the RichTextArea provides models that allow to
style programmatically and independently from the
stylesheet. Our goal is to provide the tools that
can be used equally well in either situation.
"The most frequent operations must be easy, all
other must be possible".</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<div id="mail-editor-reference-message-container">
<div>
<div>
<div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"
style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From:
</span></b><span
style="font-size:12.0pt;color:black">openjfx-dev
<a
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true">
<openjfx-dev-retn@openjdk.org></a>
on behalf of PavelTurk <a
href="mailto:pavelturk2000@gmail.com"
moz-do-not-send="true">
<pavelturk2000@gmail.com></a><br>
<b>Date: </b>Monday, May 12, 2025 at
09:34<br>
<b>To: </b><a
href="mailto:openjfx-dev@openjdk.org"
moz-do-not-send="true"
class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a>
<a href="mailto:openjfx-dev@openjdk.org"
moz-do-not-send="true">
<openjfx-dev@openjdk.org></a><br>
<b>Subject: </b>Re: RFR: 8355774:
RichTextArea: provide mechanism for CSS
styling of highlights</span><o:p></o:p></p>
</div>
<p class="MsoNormal"
style="margin-bottom:12.0pt"><span
style="font-size:12.0pt">Andy, thank you
very much for your response. But as I’ve
said many times, I’m only considering
styling through a CSS file.
<br>
<br>
Best regards, Pavel<br>
<br>
On 5/12/25 19:28, Andy Goryachev wrote:</span><o:p></o:p></p>
<blockquote
style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Pavel:</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Underlines
and strike-through attributes are
available via
StyleAttributeMap.STRIKE_THROUGH and
StyleAttributeMap.UNDERLINE (using text
color). On the other hand, adding this
functionality via addHighlight() would
allow the application to style the
shapes via CSS.</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<div
id="mail-editor-reference-message-container">
<div>
<div>
<div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"
style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From:
</span></b><span
style="font-size:12.0pt;color:black">openjfx-dev <a
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true">
<openjfx-dev-retn@openjdk.org></a> on behalf of PavelTurk <a
href="mailto:pavelturk2000@gmail.com" moz-do-not-send="true">
<pavelturk2000@gmail.com></a><br>
<b>Date: </b>Thursday, May 8,
2025 at 22:18<br>
<b>To: </b><a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true"
class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a>
<a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true">
<openjfx-dev@openjdk.org></a><br>
<b>Subject: </b>Re: RFR:
8355774: RichTextArea: provide
mechanism for CSS styling of
highlights</span><o:p></o:p></p>
</div>
<p class="MsoNormal"
style="margin-bottom:12.0pt"><span
style="font-size:12.0pt">Andy, I'm
really glad we figured out the
background-color issue, and I'm
also very grateful to you!<br>
<br>
Regarding wavy lines and other
types of underlining — in my
previous message, I listed the key
attributes
<br>
that are essential for a modern
CodeArea. For example, underline
for links — I don't think it's
necessary to write
<br>
that the internet is extremely
popular today and that links in
code are common practice, and so
on.<br>
<br>
Of course, all of these properties
should be set via a CSS file,
since that's the most efficient
way to use CSS —
<br>
when styling is completely
separated from logic.<br>
<br>
So, the list contains five
properties. If two of them are not
supported, that means (to me) that
only 60% of the
<br>
core properties are supported.<br>
<br>
That's just my feedback — the
decision is, of course, yours :)<br>
<br>
Best regards, Pavel</span><o:p></o:p></p>
<div>
<p class="MsoNormal"><span
style="font-size:12.0pt">On
5/9/25 00:09, Andy Goryachev
wrote:</span><o:p></o:p></p>
</div>
<blockquote
style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">The
only property that makes sense
is the background color. The
wavy and other kinds of
underlines, while they make
some sense in the context of
the CodeArea, would fail in
general in the context of
RichTextArea where the content
may include nodes and images.
The highlights were designed
specifically for the case to
highlight the content range
regardless of what is in it.</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">I've
reopened
<a
href="https://bugs.openjdk.org/browse/JDK-8356436"
moz-do-not-send="true"
class="moz-txt-link-freetext">https://bugs.openjdk.org/browse/JDK-8356436</a>
for the background color.</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Thank
you for your patience and good
suggestions!</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<div
id="mail-editor-reference-message-container">
<div>
<div>
<div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"
style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From:
</span></b><span
style="font-size:12.0pt;color:black">openjfx-dev <a
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true">
<openjfx-dev-retn@openjdk.org></a> on behalf of PavelTurk <a
href="mailto:pavelturk2000@gmail.com" moz-do-not-send="true">
<pavelturk2000@gmail.com></a><br>
<b>Date: </b>Thursday,
May 8, 2025 at 13:13<br>
<b>To: </b><a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true"
class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a> <a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true">
<openjfx-dev@openjdk.org></a><br>
<b>Subject: </b>Re:
RFR: 8355774:
RichTextArea: provide
mechanism for CSS
styling of highlights</span><o:p></o:p></p>
</div>
<p class="MsoNormal"
style="margin-bottom:12.0pt"><span style="font-size:12.0pt">Since we’re
talking about code
styling, I would
highlight the following
as the main properties:<br>
- foreground color (+)<br>
- background color (-)<br>
- font (weight, italic,
size, name) (+)<br>
- underline (e.g. for
links) (?)<br>
- wavy underline (e.g.
for spelling) (-)<br>
<br>
I think these properties
cover 99% of all the
necessary properties for
CodeArea.<br>
I used + and - to show
what has already been
implemented.<br>
<br>
Best regards, Pavel</span><o:p></o:p></p>
<div>
<p class="MsoNormal"><span
style="font-size:12.0pt">On 5/8/25 22:21, Andy Goryachev wrote:</span><o:p></o:p></p>
</div>
<blockquote
style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Oh,
I finally get it
what you want.
Thanks!</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">What
you asking is
effectively to add
support for some
additional
properties to the
class that renders
the text segment
(currently, Text).
My first question is
- what are the
additional
properties, beside
the
background-color?
If it's only the
background color,
it's probably easy
to add.</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Anything
beyond that, such as
equivalent of full
-fx-region-background
or
-fx-region-border,
would be extremely
unlikely.</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<div
id="mail-editor-reference-message-container">
<div>
<div>
<div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p
class="MsoNormal" style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From:
</span></b><span
style="font-size:12.0pt;color:black">openjfx-dev <a
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true">
<openjfx-dev-retn@openjdk.org></a> on behalf of PavelTurk <a
href="mailto:pavelturk2000@gmail.com" moz-do-not-send="true">
<pavelturk2000@gmail.com></a><br>
<b>Date: </b>Thursday,
May 8, 2025 at
11:44<br>
<b>To: </b><a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true"
class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a> <a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true">
<openjfx-dev@openjdk.org></a><br>
<b>Subject: </b>Re:
RFR: 8355774:
RichTextArea:
provide
mechanism for
CSS styling of
highlights</span><o:p></o:p></p>
</div>
<p
class="MsoNormal" style="margin-bottom:12.0pt"><span
style="font-size:12.0pt">Andy, thank you for your reply.
<br>
<br>
I have already
provided some
examples, but
I’ll give one
more very
simple example
that clearly
illustrates
the problem.<br>
<br>
I have a
library that
uses JFX
CodeArea.
Naturally, all
styles are
stored in a
CSS file.
Users of this
library can
customize
<br>
how the code
is displayed
by modifying
the styles in
the CSS file.
Let’s take the
search feature
as an example.
In the
<br>
CSS file,
there is a
class:<br>
<br>
.search-match
{<br>
-fx-background-color:
orange;<br>
}<br>
<br>
But the user
wants to
change not the
background
color, but the
foreground
color and font
weight. So
they write:<br>
<br>
.search-match
{<br>
-fx-fill:
orange;<br>
-fx-font-weight:
bold;<br>
}<br>
<br>
And this
should work.
If it doesn’t,
then it’s no
longer
CSS-based
styling.<br>
<br>
If, for some
reason, the
-fx-background-color
property
cannot be
used, an
alternative
property can
be introduced,
<br>
such as
-fx-highlight-color.
However,
everything
else in the
example should
work as
described.<br>
<br>
Best regards,
Pavel</span><o:p></o:p></p>
<div>
<p
class="MsoNormal"><span style="font-size:12.0pt">On 5/8/25 21:25, Andy
Goryachev
wrote:</span><o:p></o:p></p>
</div>
<blockquote
style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Pavel:</span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">I
think your
comments in
the ticket are
still
invisible to
me, so I can't
comment.</span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">About
your recent
comment in the
PR - I have
difficulty
understanding
what you
mean. We are
not adding
methods to
"style
individual
properties".
We are adding
methods that
allow the
application to
use CSS to
style parts of
the visual
representation
of the given
RichParagraph.</span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Perhaps
if you
describe what
kind of visual
representation
you have in
mind, we can
show how to
achieve that
in the code.</span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<p
class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
<div
id="mail-editor-reference-message-container">
<div>
<div>
<div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p
class="MsoNormal" style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From:
</span></b><span
style="font-size:12.0pt;color:black">openjfx-dev <a
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true">
<openjfx-dev-retn@openjdk.org></a> on behalf of PavelTurk <a
href="mailto:pavelturk2000@gmail.com" moz-do-not-send="true">
<pavelturk2000@gmail.com></a><br>
<b>Date: </b>Thursday,
May 8, 2025 at
11:04<br>
<b>To: </b><a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true"
class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a> <a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true">
<openjfx-dev@openjdk.org></a><br>
<b>Subject: </b>Re:
RFR: 8355774:
RichTextArea:
provide
mechanism for
CSS styling of
highlights</span><o:p></o:p></p>
</div>
<div>
<p
class="MsoNormal" style="margin-bottom:12.0pt"><span
style="font-size:11.0pt">I am not a member of the JavaFX team, but if I
may, I’d like
to express my
opinion. I
believe that
creating
separate<br>
methods for
styling
individual
properties is
a very
problematic
and dangerous
decision.<br>
<br>
First, the
usefulness of
such methods
is minimal
because when
styling is
done via CSS,
the assumption
is that<br>
adjusting the
CSS file
should be
sufficient—something
that won’t
work in this
case. For
example one
user for
search<br>
result wants
to set
background
color for
matches but
another one
wants to set
foreground
color +
weight.<br>
Second, it
violates
fundamental
CSS
principles.
Third, if
these methods
are added to
the API, they
cannot later<br>
be removed
without
breaking
backward
compatibility.<br>
<br>
I wrote about
this in detail
in the
additional
information
for
JDK-8356436,
but my comment
has not yet
been approved<br>
by a
moderator.<br>
<br>
When in doubt,
it’s very
helpful to see
how others are
doing it. In
RichTextFX,
special CSS
properties
were
introduced,<br>
which resulted
in a
consistent
standard for
applying CSS
styles to all
properties—fully aligned with established CSS norms.<br>
<br>
This is my
personal
opinion,
which, of
course, can be
wrong.<br>
<br>
Best regards,
Pavel<br>
<br>
On 5/8/25
20:46, Andy
Goryachev
wrote:<br>
> Adding
missing APIs
related to
styling the
highlights
with CSS:<br>
><br>
>
<br>
><br>
><br>
><br>
> Adds
methods to the
`RichParagraph.Builder`:<br>
><br>
><br>
>
/**<br>
>
* Adds a wavy
underline
(typically
used as a
spell checker
indicator)
with the
specified
style name(s).<br>
>
* <p><br>
>
* The
corresponding
styles should
define CSS
properties
applicable to
{@link
javafx.scene.shape.Path}.<br>
>
*<br>
>
* @param start
the start
offset<br>
>
* @param
length the end
offset<br>
>
* @param css
the style
name(s)<br>
>
* @return this
{@code
Builder}
instance<br>
>
* @since 25<br>
>
*/<br>
>
public Builder
addWavyUnderline(int start, int length, String ... css) {<br>
><br>
><br>
><br>
>
/**<br>
>
* Adds a
highlight with
the specified
style name(s).<br>
>
* Use
translucent
colors to
enable
multiple
highlights in
the same
region of
text.<br>
>
* <p><br>
>
* The
corresponding
styles should
define CSS
properties
applicable to
{@link
javafx.scene.shape.Path}.<br>
>
*<br>
>
* @param start
the start
offset<br>
>
* @param
length the end
offset<br>
>
* @param css
the style
name(s)<br>
>
* @return this
{@code
Builder}
instance<br>
>
* @since 25<br>
>
*/<br>
>
public Builder
addHighlight(int start, int length, String ... css) {<br>
><br>
><br>
><br>
> Also
adding similar
methods to the
`SimpleViewOnlyStyledModel` class:<br>
><br>
><br>
> /**<br>
> *
Adds a
highlight of
the given
color to the
specified
range within
the last
paragraph,<br>
> *
with the
specified
style name(s).<br>
> *<br>
> *
@param start
the start
offset<br>
> *
@param length
the length of
the highlight<br>
> *
@param css the
highlight
style name(s)<br>
> *
@return this
model instance<br>
> *
@since 25<br>
> */<br>
>
public
SimpleViewOnlyStyledModel
highlight(int
start, int
length, String
... css) {<br>
><br>
><br>
> /**<br>
> *
Adds a wavy
underline
(typically
used as a
spell checker
indicator)<br>
> *
to the
specified
range within
the last
paragraph,
with the
specified
style name(s).<br>
> *<br>
> *
@param start
the start
offset<br>
> *
@param length
the length of
the highlight<br>
> *
@param css the
highlight
style name(s)<br>
> *
@return this
model instance<br>
> *
@since 25<br>
> */<br>
>
public
SimpleViewOnlyStyledModel
addWavyUnderline(int start, int length, String ... css) {<br>
><br>
>
-------------<br>
><br>
> Commit
messages:<br>
> - tab<br>
> - css<br>
><br>
> Changes:
<a
href="https://git.openjdk.org/jfx/pull/1802/files"
moz-do-not-send="true" class="moz-txt-link-freetext">https://git.openjdk.org/jfx/pull/1802/files</a><br>
>
Webrev: <a
href="https://webrevs.openjdk.org/?repo=jfx&pr=1802&range=00"
moz-do-not-send="true">https://webrevs.openjdk.org/?repo=jfx&pr=1802&range=00</a><br>
> Issue:
<a
href="https://bugs.openjdk.org/browse/JDK-8355774"
moz-do-not-send="true" class="moz-txt-link-freetext">https://bugs.openjdk.org/browse/JDK-8355774</a><br>
> Stats:
128 lines in 4
files changed:
110 ins; 8
del; 10 mod<br>
> Patch:
<a
href="https://git.openjdk.org/jfx/pull/1802.diff" moz-do-not-send="true"
class="moz-txt-link-freetext">https://git.openjdk.org/jfx/pull/1802.diff</a><br>
> Fetch:
git fetch <a
href="https://git.openjdk.org/jfx.git" moz-do-not-send="true"
class="moz-txt-link-freetext">https://git.openjdk.org/jfx.git</a>
pull/1802/head:pull/1802<br>
><br>
> PR: <a
href="https://git.openjdk.org/jfx/pull/1802" moz-do-not-send="true"
class="moz-txt-link-freetext">https://git.openjdk.org/jfx/pull/1802</a></span><o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</blockquote>
<p
class="MsoNormal"><span style="font-size:12.0pt"> </span><o:p></o:p></p>
</div>
</div>
</div>
</div>
</blockquote>
<p class="MsoNormal"><span
style="font-size:12.0pt"> </span><o:p></o:p></p>
</div>
</div>
</div>
</div>
</blockquote>
<p class="MsoNormal"><span
style="font-size:12.0pt"> </span><o:p></o:p></p>
</div>
</div>
</div>
</div>
</blockquote>
<p class="MsoNormal"><span
style="font-size:12.0pt"> </span><o:p></o:p></p>
</div>
</div>
</div>
</div>
</blockquote>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
</div>
</div>
</div>
</div>
</blockquote>
<br>
</body>
</html>