Revivius / nb-darcula

Darcula LAF for NetBeans
277 stars 83 forks source link

Colors not displayed into a service child node. #102

Closed claudio-rosati closed 8 years ago

claudio-rosati commented 8 years ago

Hello all,

I'm developing an RCP application whose main entry point is a service displayed into the standard NB Services panel.

Children nodes of this services are displayed using the getHtmlDisplayName() method returning something similar to the the following:

"<FONT color=\"#A06060\">" + getDisplayName() + "</FONT>";

or

"<B><FONT color=\"#A06060\">" + getDisplayName() + "</FONT></B>";

or

"<FONT color=\"#A06060\"><I>" + getDisplayName() + "</I></FONT>";

or

"<B><FONT color=\"#A06060\"><I>" + getDisplayName() + "</I></FONT></B>";

While this is working while not using Darcula L&F, it doesn't work when Darcula is in place (i.e. italic and bold are displayed correctly, only the color doesn't work).

Is that a Darcula issue or I'm doing something wrong?

Claudio

claudio-rosati commented 8 years ago

I've found it was my fault: I missed the following from the Node.getHtmlDisplayName() method:

Note the specified foreground color has to have a high luminescence difference to the background color in order to be used (displayed). If not, the specified foreground color will be ignored and the default color will be used. Luminescence of a color is calculated as following: (Red value * 299 + Green value * 587 + Blue value * 114) / 1000 and the difference has to be greater or equal to 80.