NotesColorObject (JavaScript)

Represents a color.

Creation

To create a NotesColorObject object, use the createColorObject method of NotesSession.

Usage

Domino defines colors numbered 0 through 240, as reflected in the read-write property NotesColor. Each Domino® color maps to RGB (red, green, and blue) values in the range 0-255 and HSL (hue, saturation, and luminance) values in the range 0-240, as reflected in the remaining, read-only properties.

NotesColor can be used as the value for the following properties: Color in RichTextStyle; BackgroundColor in View; FontColor and HeaderFontColor in ViewColumn.

The following table lists the values for the first 16 Domino® colors, which are defined by constants. See the example for code to generate the values for all 241 colors.

Notes® Red Grn Blue Hue Sat Lum Constant
0 0 0 0 160 0 0 RichTextStyle.COLOR_BLACK
1 255 255 255 160 0 240 RichTextStyle.COLOR_WHITE
2 255 0 0 0 240 120 RichTextStyle.COLOR_RED
3 0 255 0 80 240 120 RichTextStyle.COLOR_GREEN
4 0 0 255 160 240 120 RichTextStyle.COLOR_BLUE
5 255 255 0 200 240 120 RichTextStyle.COLOR_MAGENTA
6 255 255 0 40 240 120 RichTextStyle.COLOR_YELLOW
7 0 255 255 120 240 120 RichTextStyle.COLOR_CYAN
8 128 0 0 0 240 60 RichTextStyle.COLOR_DARK_RED
9 0 128 0 80 240 60 RichTextStyle.COLOR_DARK_GREEN
10 0 0 128 160 240 60 RichTextStyle.COLOR_DARK_BLUE
11 128 0 128 200 240 60 RichTextStyle.COLOR_DARK_MAGENTA
12 128 128 0 40 240 60 RichTextStyle.COLOR_DARK_YELLOW
13 0 128 128 120 240 60 RichTextStyle.COLOR_DARK_CYAN
14 120 128 128 160 0 120 RichTextStyle.COLOR_GRAY
15 192 192 192 160 0 181 RichTextStyle.COLOR_LIGHT_GRAY

Examples

This button builds a table in HTML that contains one line for each Domino® color, and assigns the text to a scoped variable bound to a rich text control. The line identifies the Domino® color code, the RGB values, and the HSL values. The line displays in the color being represented so some lines are not visible depending on the background color of the table.
var color = session.createColorObject();
var text = '<table style="text-align:center;background-color:silver">';
// Generate header row
text = text + '<tr style="font-weight:bold">';
text = text + "<td>Notes</td>";
text = text + "<td>Red</td>";
text = text + "<td>Green</td>";
text = text + "<td>Blue</td>";
text = text + "<td>Hue</td>";
text = text + "<td>Saturation</td>";
text = text + "<td>Luminance</td>";
text = text + "</tr>";
for (var i=0; i<=240; i++) { // for each Notes color
	color.setNotesColor(i);
	// Get RGB, HSL, and generate hex values for RGB
	var red = color.getRed();
	var green = color.getGreen();
	var blue = color.getBlue();
	var hue = color.getHue();
	var saturation = color.getSaturation();
	var luminance = color.getLuminance();
	var redx = red.toString(16).toUpper().lpad("0", 2);
	var greenx = green.toString(16).toUpper().lpad("0", 2);
	var bluex = blue.toString(16).toUpper().lpad("0", 2);
	// Generate row for color
	text = text + '<tr style="font-weight:bold;color:#' + redx + greenx + bluex + '">';
	text = text + "<td>" + i + "</td>";
	text = text + "<td>" + red + "</td>";
	text = text + "<td>" + green + "</td>";
	text = text + "<td>" + blue + "</td>";
	text = text + "<td>" + hue + "</td>";
	text = text + "<td>" + saturation + "</td>";
	text = text + "<td>" + luminance + "</td>";
	text = text + "</tr>"
}
text = text + "</table>";
requestScope.colortable = text // bound to a rich text control