--- a/WinWorkstation.st Fri Nov 18 20:50:35 2016 +0000
+++ b/WinWorkstation.st Fri Nov 18 21:26:33 2016 +0000
@@ -1102,11 +1102,6 @@
extern HANDLE __getHInstance();
-#ifdef xxWIN32THREADS
-extern void __suspendAktThread();
-extern void __resumeAktThread();
-#endif
-
static void __debugEvent__() {}
#ifdef DEBUGMASK
@@ -1134,15 +1129,8 @@
static int
st2RGB(int color, struct gcData *gcData)
{
- int ir,ig,ib;
-
- if (gcData) {
- if (gcData->bitmapColorBitCount == 1) {
- if (color)
- return WhitePixel;
- else
- return BlackPixel;
- }
+ if (gcData && gcData->bitmapColorBitCount == 1) {
+ return (color ? WhitePixel : BlackPixel);
}
#ifdef ALWAYSTRUECOLOR
return (color & 0xffffff);
@@ -1151,9 +1139,9 @@
return 0;
} else {
if ((__depth == 16) || (__depth == 15)) {
- ib = (color & 0x1f) << 3;
- ig = ((color >> 5) & 0x3f) << 2;
- ir = ((color >> 11) & 0x1f) << 3;
+ int ib = (color & 0x1f) << 3;
+ int ig = ((color >> 5) & 0x3f) << 2;
+ int ir = ((color >> 11) & 0x1f) << 3;
ir |= 7;
ig |= 3;
ib |= 7;
@@ -1165,8 +1153,7 @@
}
static int
-RGB2st(r, g, b)
- int r, g, b;
+RGB2st(int r, int g, int b)
{
int ir,ig,ib,id;
@@ -1203,8 +1190,7 @@
* return a windows top-window
*/
static HWND
-GetTopParent(hWnd)
- HWND hwnd;
+GetTopParent(HWND hwnd)
{
HWND lastParent = hWnd;
HWND nextParent;
@@ -1247,11 +1233,8 @@
static int
_DeleteBrush(HBRUSH br, int lineNr)
{
- int r;
-
- if ((br != __whiteBrush)
- && (br != __blackBrush)) {
- r = DeleteObject(br);
+ if ((br != __whiteBrush) && (br != __blackBrush)) {
+ int r = DeleteObject(br);
if (r == 0)
console_fprintf(stderr, "WinWorkstation [warning]: ERROR in DeleteBrush %x [%d]\n", br, lineNr);
@@ -1263,11 +1246,8 @@
static int
_DeletePen(HPEN p, int lineNr)
{
- int r;
-
- if ((p != __whitePen)
- && (p != __blackPen)) {
- r = DeleteObject(p);
+ if ((p != __whitePen) && (p != __blackPen)) {
+ int r = DeleteObject(p);
if (r == 0)
console_fprintf(stderr, "WinWorkstation [warning]: ERROR in DeletePen %x [%d]\n", p, lineNr);
@@ -1283,8 +1263,7 @@
{
int i, r;
- if ((p == __whitePen)
- || (p == __blackPen)) {
+ if ((p == __whitePen) || (p == __blackPen)) {
return 1; /* not deleted, but OK */
}
for (i=0; i<NUM_PEN_CACHED;i++) {
@@ -1315,8 +1294,7 @@
return 1; /* not deleted, but OK */
}
}
- if ((br == __whiteBrush)
- || (br == __blackBrush)) {
+ if ((br == __whiteBrush) || (br == __blackBrush)) {
return 1; /* not deleted, but OK */
}
r = DeleteObject(br);
@@ -1649,9 +1627,8 @@
static void
GcDataReleaseBrush(HDC hDC, struct gcData *gcData)
{
- HBRUSH hBrush;
-
- hBrush = gcData->hBrush;
+ HBRUSH hBrush = gcData->hBrush;
+
if (gcData->save_hBrush) {
SelectObject(hDC, gcData->save_hBrush);
gcData->save_hBrush = NULL;
@@ -1884,7 +1861,7 @@
}
static int
-unlockEvents() {
+unlockEvents(void) {
#ifdef LOCK_DEBUG
lockCountEvents--;
if (lockCountEvents != 0) {
@@ -1903,7 +1880,7 @@
static int
-initEventqueue() {
+initEventqueue(void) {
struct queuedEvent *bulk;
int i;
@@ -2235,7 +2212,6 @@
* if a region is passed in, it is not destroyed.
*/
-
static int
__generateExposes(HWND hWnd, HRGN hRgnInOrNull, int msgType, int doClear)
{
@@ -2382,7 +2358,7 @@
static int
-getModifiers()
+getModifiers(void)
{
int modifiers = 0;
@@ -4313,16 +4289,13 @@
case WM_COPYDATA:
DPRINTFIF(__debug_WM_COPYDATA__ , ("WM_COPYDATA\n"));
{
- PCOPYDATASTRUCT pCDs;
- int dwData;
- void *pData;
+ PCOPYDATASTRUCT pCDs = (PCOPYDATASTRUCT) lParam;
+ int dwData = pCDs->dwData;
+ int nBytes = pCDs->cbData;
+ void *pData = pCDs->lpData;
void *pCopiedData;
- int nBytes;
-
- pCDs = (PCOPYDATASTRUCT) lParam;
- dwData = pCDs->dwData;
- nBytes = pCDs->cbData;
- pData = (void *)pCDs->lpData;
+
+ DPRINTFIF(__debug_WM_COPYDATA__ , ("WM_COPYDATA %d %lx\n", nBytes, pData));
/*
* because pData is only valid here, copy it out to a malloc'd
@@ -4335,7 +4308,7 @@
pCopiedData = NULL;
}
// (flag, hWnd, message, wParam, arg1, arg2, arg3, arg4, evTime)
- enqEvent(0, hWnd, WM_COPYDATA, wParam, (INT)pCopiedData, nBytes, 0, 0, EV_NOTIME);
+ enqEvent(0, hWnd, WM_COPYDATA, wParam, (INT)pCopiedData, nBytes, dwData, 0, EV_NOTIME);
}
*pDefault = 0;
break;
@@ -4562,8 +4535,6 @@
return 0;
}
-LONG APIENTRY
-MainWndProc(HWND hWnd,UINT message,UINT wParam,LONG lParam);
static void _USERENTRY
dispatchThread(void *arg)
@@ -4968,26 +4939,26 @@
return TRUE;
}
-#define xxUSE_EnumFontFamiliesEx
+#ifdef USE_EnumFontFamiliesEx
+# define LOGFONTTYPE ENUMLOGFONTEX
+#else
+# define LOGFONTTYPE LOGFONT
+#endif
static int CALLBACK
-EnumFPTypeFaceProc( lplf, lptm, dwType, lpData )
-#ifdef USE_EnumFontFamiliesEx
- ENUMLOGFONTEX *lplf;
-#else
- LOGFONT *lplf;
-#endif
- TEXTMETRIC *lptm;
- DWORD dwType;
- void *lpData;
-{
+EnumFPTypeFaceProc(
+ const LOGFONTTYPE *lplf, /* ptr to of logical-font data */
+ const TEXTMETRIC *lptm, /* ptr to physical font data */
+ DWORD dwType, /* font type */
+ LPARAM lpData /* application supplied data */
+) {
OBJ t;
volatile OBJ *refToList;
OBJ typeFaceList;
char *faceNameString;
if (lplf) {
- refToList = (OBJ*) lpData;
+ refToList = (OBJ *) lpData;
__PROTECT__(*refToList);
#ifdef USE_EnumFontFamiliesEx
@@ -5238,17 +5209,14 @@
return newArray;
}
+
static int CALLBACK
-EnumFontsProc( lplf, lptm, dwType, lpData )
-#ifdef USE_EnumFontFamiliesEx
- ENUMLOGFONTEX *lplf;
-#else
- LOGFONT *lplf; /* ptr to of logical-font data */
-#endif
- TEXTMETRIC *lptm; /* ptr to physical font data */
- DWORD dwType; /* font type */
- void *lpData; /* application supplied data */
-{
+EnumFontsProc(
+ const LOGFONTTYPE *lplf, // ptr to of logical-font data
+ const TEXTMETRIC *lptm, // ptr to physical font data
+ DWORD dwType, // font type
+ LPARAM lpData // application supplied data
+) {
volatile OBJ *refToList;
OBJ list;
OBJ infoArray;
@@ -5257,7 +5225,7 @@
DPRINTF(("EnumFontsProc\n"));
if ( lplf ) {
- refToList = (OBJ*) lpData;
+ refToList = (OBJ *) lpData;
__PROTECT__(*refToList);
#ifdef USE_EnumFontFamiliesEx
@@ -5288,21 +5256,17 @@
};
static int CALLBACK
-EnumDisplayMonitorsProc( hMonitor, hdcMonitor, lprcMonitor, lpData )
- HMONITOR hMonitor;
- HDC hdcMonitor;
- LPRECT lprcMonitor;
- struct EnumDisplayMonitorsProcData *lpData;
+EnumDisplayMonitorsProc(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor, LPARAM lpData)
{
+ struct EnumDisplayMonitorsProcData *procData = (struct EnumDisplayMonitorsProcData *)lpData;
OBJ mHandle;
- __PROTECT__(lpData->hArray);
+ __PROTECT__(procData->hArray);
mHandle = __MKEXTERNALADDRESS(hMonitor);
- __UNPROTECT__(lpData->hArray);
-
- __ArrayInstPtr(lpData->hArray)->a_element[lpData->index] = mHandle;
- __STORE(lpData->hArray, mHandle);
- lpData->index++;
+ __UNPROTECT__(procData->hArray);
+
+ __arrayVal(procData->hArray)[procData->index++] = mHandle;
+ __STORE(procData->hArray, mHandle);
return (1);
}
@@ -5342,14 +5306,12 @@
self initializeStandardColorNames.
NativeWidgets := NativeDialogs := NativeFileDialogs := false.
-
BeepDuration := 200. "milliseconds"
-
ButtonTranslation := #(1 2 2).
"/ SysColorChanges are reported *very* often when exceed is running,
"/ but are also needed to update my view colors when the settings change.
- "/ I dont know what exceed is doing there ...
+ "/ I don't know what exceed is doing there ...
"/ IgnoreSysColorChanges := true.
IgnoreSysColorChanges := false.
SystemColorValues := IdentityDictionary new.
@@ -5357,18 +5319,20 @@
"/ translation table from ST/X windowType symbol (system-independent)
"/ to Windows windowClass (windows-specific).
- NativeWidgetClassTable := IdentityDictionary new.
- NativeWidgetClassTable at:#ScrollBar put:'SCROLLBAR'.
- NativeWidgetClassTable at:#HorizontalScrollBar put:'SCROLLBAR'.
- NativeWidgetClassTable at:#VerticalScrollBar put:'SCROLLBAR'.
- NativeWidgetClassTable at:#CheckBox put:'BUTTON'.
- NativeWidgetClassTable at:#RadioButton put:'BUTTON'.
- NativeWidgetClassTable at:#Button put:'BUTTON'.
- NativeWidgetClassTable at:#DefaultButton put:'BUTTON'.
- NativeWidgetClassTable at:#OwnerDrawButton put:'BUTTON'.
- NativeWidgetClassTable at:#ComboBox put:'COMBOBOX'.
- NativeWidgetClassTable at:#EditField put:'EDIT'.
- NativeWidgetClassTable at:#ListBox put:'LISTBOX'.
+ NativeWidgetClassTable := IdentityDictionary
+ withKeysAndValues:#(
+ ScrollBar SCROLLBAR
+ HorizontalScrollBar SCROLLBAR
+ VerticalScrollBar SCROLLBAR
+ CheckBox BUTTON
+ RadioButton BUTTON
+ Button BUTTON
+ DefaultButton BUTTON
+ OwnerDrawButton BUTTON
+ ComboBox COMBOBOX
+ EditField EDIT
+ ListBox LISTBOX
+ ).
"Modified: / 24-08-2010 / 16:42:23 / sr"
!
@@ -5378,820 +5342,818 @@
"setup standard color names (X-color names)"
- StandardColorValues := Dictionary new.
- #(
- (240 248 255) 'aliceblue'
- (250 235 215) 'antiquewhite'
- (255 239 219) 'AntiqueWhite1'
- (238 223 204) 'AntiqueWhite2'
- (205 192 176) 'AntiqueWhite3'
- (139 131 120) 'AntiqueWhite4'
- (127 255 212) 'aquamarine'
- (127 255 212) 'aquamarine1'
- (118 238 198) 'aquamarine2'
- (102 205 170) 'aquamarine3'
- ( 69 139 116) 'aquamarine4'
- (240 255 255) 'azure'
- (240 255 255) 'azure1'
- (224 238 238) 'azure2'
- (193 205 205) 'azure3'
- (131 139 139) 'azure4'
- (245 245 220) 'beige'
- (255 228 196) 'bisque'
- (255 228 196) 'bisque1'
- (238 213 183) 'bisque2'
- (205 183 158) 'bisque3'
- (139 125 107) 'bisque4'
- ( 0 0 0) 'black'
- (255 235 205) 'blanchedalmond'
- ( 0 0 255) 'blue'
- (138 43 226) 'blueviolet'
- ( 0 0 255) 'blue1'
- ( 0 0 238) 'blue2'
- ( 0 0 205) 'blue3'
- ( 0 0 139) 'blue4'
- (165 42 42) 'brown'
- (255 64 64) 'brown1'
- (238 59 59) 'brown2'
- (205 51 51) 'brown3'
- (139 35 35) 'brown4'
- (222 184 135) 'burlywood'
- (255 211 155) 'burlywood1'
- (238 197 145) 'burlywood2'
- (205 170 125) 'burlywood3'
- (139 115 85) 'burlywood4'
- ( 95 158 160) 'cadetblue'
- (152 245 255) 'CadetBlue1'
- (142 229 238) 'CadetBlue2'
- (122 197 205) 'CadetBlue3'
- ( 83 134 139) 'CadetBlue4'
- (127 255 0) 'chartreuse'
- (127 255 0) 'chartreuse1'
- (118 238 0) 'chartreuse2'
- (102 205 0) 'chartreuse3'
- ( 69 139 0) 'chartreuse4'
- (210 105 30) 'chocolate'
- (255 127 36) 'chocolate1'
- (238 118 33) 'chocolate2'
- (205 102 29) 'chocolate3'
- (139 69 19) 'chocolate4'
- (255 127 80) 'coral'
- (255 114 86) 'coral1'
- (238 106 80) 'coral2'
- (205 91 69) 'coral3'
- (139 62 47) 'coral4'
- (100 149 237) 'cornflowerblue'
- (255 248 220) 'cornsilk'
- (255 248 220) 'cornsilk1'
- (238 232 205) 'cornsilk2'
- (205 200 177) 'cornsilk3'
- (139 136 120) 'cornsilk4'
- ( 0 255 255) 'cyan'
- ( 0 255 255) 'cyan1'
- ( 0 238 238) 'cyan2'
- ( 0 205 205) 'cyan3'
- ( 0 139 139) 'cyan4'
- ( 0 0 139) 'darkblue'
- ( 0 139 139) 'darkcyan'
- (184 134 11) 'darkgoldenrod'
- (169 169 169) 'darkgray'
- ( 0 100 0) 'darkgreen'
- (169 169 169) 'darkgrey'
- (189 183 107) 'darkkhaki'
- (139 0 139) 'darkmagenta'
- ( 85 107 47) 'darkolivegreen'
- (255 140 0) 'darkorange'
- (153 50 204) 'darkorchid'
- (139 0 0) 'darkred'
- (233 150 122) 'darksalmon'
- (143 188 143) 'darkseagreen'
- ( 72 61 139) 'darkslateblue'
- ( 47 79 79) 'darkslategray'
- ( 47 79 79) 'darkslategrey'
- ( 0 206 209) 'darkturquoise'
- (148 0 211) 'darkviolet'
- (255 185 15) 'DarkGoldenrod1'
- (238 173 14) 'DarkGoldenrod2'
- (205 149 12) 'DarkGoldenrod3'
- (139 101 8) 'DarkGoldenrod4'
- (202 255 112) 'DarkOliveGreen1'
- (188 238 104) 'DarkOliveGreen2'
- (162 205 90) 'DarkOliveGreen3'
- (110 139 61) 'DarkOliveGreen4'
- (255 127 0) 'DarkOrange1'
- (238 118 0) 'DarkOrange2'
- (205 102 0) 'DarkOrange3'
- (139 69 0) 'DarkOrange4'
- (191 62 255) 'DarkOrchid1'
- (178 58 238) 'DarkOrchid2'
- (154 50 205) 'DarkOrchid3'
- (104 34 139) 'DarkOrchid4'
- (193 255 193) 'DarkSeaGreen1'
- (180 238 180) 'DarkSeaGreen2'
- (155 205 155) 'DarkSeaGreen3'
- (105 139 105) 'DarkSeaGreen4'
- (151 255 255) 'DarkSlateGray1'
- (141 238 238) 'DarkSlateGray2'
- (121 205 205) 'DarkSlateGray3'
- ( 82 139 139) 'DarkSlateGray4'
- (255 20 147) 'deeppink'
- ( 0 191 255) 'deepskyblue'
- (255 20 147) 'DeepPink'
- (255 20 147) 'DeepPink1'
- (238 18 137) 'DeepPink2'
- (205 16 118) 'DeepPink3'
- (139 10 80) 'DeepPink4'
- ( 0 191 255) 'DeepSkyBlue1'
- ( 0 178 238) 'DeepSkyBlue2'
- ( 0 154 205) 'DeepSkyBlue3'
- ( 0 104 139) 'DeepSkyBlue4'
- (105 105 105) 'dimgray'
- (105 105 105) 'dimgrey'
- ( 30 144 255) 'dodgerblue'
- ( 30 144 255) 'DodgerBlue1'
- ( 28 134 238) 'DodgerBlue2'
- ( 24 116 205) 'DodgerBlue3'
- ( 16 78 139) 'DodgerBlue4'
- (178 34 34) 'firebrick'
- (255 48 48) 'firebrick1'
- (238 44 44) 'firebrick2'
- (205 38 38) 'firebrick3'
- (139 26 26) 'firebrick4'
- (255 250 240) 'floralwhite'
- ( 34 139 34) 'forestgreen'
- (220 220 220) 'gainsboro'
- (248 248 255) 'ghostwhite'
- (255 215 0) 'gold'
- (255 215 0) 'gold1'
- (238 201 0) 'gold2'
- (205 173 0) 'gold3'
- (139 117 0) 'gold4'
- (218 165 32) 'goldenrod'
- (255 193 37) 'goldenrod1'
- (238 180 34) 'goldenrod2'
- (205 155 29) 'goldenrod3'
- (139 105 20) 'goldenrod4'
- (192 192 192) 'grey'
- ( 0 0 0) 'grey0'
- ( 3 3 3) 'grey1'
- ( 26 26 26) 'grey10'
- (255 255 255) 'grey100'
- ( 28 28 28) 'grey11'
- ( 31 31 31) 'grey12'
- ( 33 33 33) 'grey13'
- ( 36 36 36) 'grey14'
- ( 38 38 38) 'grey15'
- ( 41 41 41) 'grey16'
- ( 43 43 43) 'grey17'
- ( 46 46 46) 'grey18'
- ( 48 48 48) 'grey19'
- ( 5 5 5) 'grey2'
- ( 51 51 51) 'grey20'
- ( 54 54 54) 'grey21'
- ( 56 56 56) 'grey22'
- ( 59 59 59) 'grey23'
- ( 61 61 61) 'grey24'
- ( 64 64 64) 'grey25'
- ( 66 66 66) 'grey26'
- ( 69 69 69) 'grey27'
- ( 71 71 71) 'grey28'
- ( 74 74 74) 'grey29'
- ( 8 8 8) 'grey3'
- ( 77 77 77) 'grey30'
- ( 79 79 79) 'grey31'
- ( 82 82 82) 'grey32'
- ( 84 84 84) 'grey33'
- ( 87 87 87) 'grey34'
- ( 89 89 89) 'grey35'
- ( 92 92 92) 'grey36'
- ( 94 94 94) 'grey37'
- ( 97 97 97) 'grey38'
- ( 99 99 99) 'grey39'
- ( 10 10 10) 'grey4'
- (102 102 102) 'grey40'
- (105 105 105) 'grey41'
- (107 107 107) 'grey42'
- (110 110 110) 'grey43'
- (112 112 112) 'grey44'
- (115 115 115) 'grey45'
- (117 117 117) 'grey46'
- (120 120 120) 'grey47'
- (122 122 122) 'grey48'
- (125 125 125) 'grey49'
- ( 13 13 13) 'grey5'
- (127 127 127) 'grey50'
- (130 130 130) 'grey51'
- (133 133 133) 'grey52'
- (135 135 135) 'grey53'
- (138 138 138) 'grey54'
- (140 140 140) 'grey55'
- (143 143 143) 'grey56'
- (145 145 145) 'grey57'
- (148 148 148) 'grey58'
- (150 150 150) 'grey59'
- ( 15 15 15) 'grey6'
- (153 153 153) 'grey60'
- (156 156 156) 'grey61'
- (158 158 158) 'grey62'
- (161 161 161) 'grey63'
- (163 163 163) 'grey64'
- (166 166 166) 'grey65'
- (168 168 168) 'grey66'
- (171 171 171) 'grey67'
- (173 173 173) 'grey68'
- (176 176 176) 'grey69'
- ( 18 18 18) 'grey7'
- (179 179 179) 'grey70'
- (181 181 181) 'grey71'
- (184 184 184) 'grey72'
- (186 186 186) 'grey73'
- (189 189 189) 'grey74'
- (191 191 191) 'grey75'
- (194 194 194) 'grey76'
- (196 196 196) 'grey77'
- (199 199 199) 'grey78'
- (201 201 201) 'grey79'
- ( 20 20 20) 'grey8'
- (204 204 204) 'grey80'
- (207 207 207) 'grey81'
- (209 209 209) 'grey82'
- (212 212 212) 'grey83'
- (214 214 214) 'grey84'
- (217 217 217) 'grey85'
- (219 219 219) 'grey86'
- (222 222 222) 'grey87'
- (224 224 224) 'grey88'
- (227 227 227) 'grey89'
- ( 23 23 23) 'grey9'
- (229 229 229) 'grey90'
- (232 232 232) 'grey91'
- (235 235 235) 'grey92'
- (237 237 237) 'grey93'
- (240 240 240) 'grey94'
- (242 242 242) 'grey95'
- (245 245 245) 'grey96'
- (247 247 247) 'grey97'
- (250 250 250) 'grey98'
- (252 252 252) 'grey99'
-
- (192 192 192) 'gray'
- ( 0 0 0) 'gray0'
- ( 3 3 3) 'gray1'
- ( 26 26 26) 'gray10'
- (255 255 255) 'gray100'
- ( 28 28 28) 'gray11'
- ( 31 31 31) 'gray12'
- ( 33 33 33) 'gray13'
- ( 36 36 36) 'gray14'
- ( 38 38 38) 'gray15'
- ( 41 41 41) 'gray16'
- ( 43 43 43) 'gray17'
- ( 46 46 46) 'gray18'
- ( 48 48 48) 'gray19'
- ( 5 5 5) 'gray2'
- ( 51 51 51) 'gray20'
- ( 54 54 54) 'gray21'
- ( 56 56 56) 'gray22'
- ( 59 59 59) 'gray23'
- ( 61 61 61) 'gray24'
- ( 64 64 64) 'gray25'
- ( 66 66 66) 'gray26'
- ( 69 69 69) 'gray27'
- ( 71 71 71) 'gray28'
- ( 74 74 74) 'gray29'
- ( 8 8 8) 'gray3'
- ( 77 77 77) 'gray30'
- ( 79 79 79) 'gray31'
- ( 82 82 82) 'gray32'
- ( 84 84 84) 'gray33'
- ( 87 87 87) 'gray34'
- ( 89 89 89) 'gray35'
- ( 92 92 92) 'gray36'
- ( 94 94 94) 'gray37'
- ( 97 97 97) 'gray38'
- ( 99 99 99) 'gray39'
- ( 10 10 10) 'gray4'
- (102 102 102) 'gray40'
- (105 105 105) 'gray41'
- (107 107 107) 'gray42'
- (110 110 110) 'gray43'
- (112 112 112) 'gray44'
- (115 115 115) 'gray45'
- (117 117 117) 'gray46'
- (120 120 120) 'gray47'
- (122 122 122) 'gray48'
- (125 125 125) 'gray49'
- ( 13 13 13) 'gray5'
- (127 127 127) 'gray50'
- (130 130 130) 'gray51'
- (133 133 133) 'gray52'
- (135 135 135) 'gray53'
- (138 138 138) 'gray54'
- (140 140 140) 'gray55'
- (143 143 143) 'gray56'
- (145 145 145) 'gray57'
- (148 148 148) 'gray58'
- (150 150 150) 'gray59'
- ( 15 15 15) 'gray6'
- (153 153 153) 'gray60'
- (156 156 156) 'gray61'
- (158 158 158) 'gray62'
- (161 161 161) 'gray63'
- (163 163 163) 'gray64'
- (166 166 166) 'gray65'
- (168 168 168) 'gray66'
- (171 171 171) 'gray67'
- (173 173 173) 'gray68'
- (176 176 176) 'gray69'
- ( 18 18 18) 'gray7'
- (179 179 179) 'gray70'
- (181 181 181) 'gray71'
- (184 184 184) 'gray72'
- (186 186 186) 'gray73'
- (189 189 189) 'gray74'
- (191 191 191) 'gray75'
- (194 194 194) 'gray76'
- (196 196 196) 'gray77'
- (199 199 199) 'gray78'
- (201 201 201) 'gray79'
- ( 20 20 20) 'gray8'
- (204 204 204) 'gray80'
- (207 207 207) 'gray81'
- (209 209 209) 'gray82'
- (212 212 212) 'gray83'
- (214 214 214) 'gray84'
- (217 217 217) 'gray85'
- (219 219 219) 'gray86'
- (222 222 222) 'gray87'
- (224 224 224) 'gray88'
- (227 227 227) 'gray89'
- ( 23 23 23) 'gray9'
- (229 229 229) 'gray90'
- (232 232 232) 'gray91'
- (235 235 235) 'gray92'
- (237 237 237) 'gray93'
- (240 240 240) 'gray94'
- (242 242 242) 'gray95'
- (245 245 245) 'gray96'
- (247 247 247) 'gray97'
- (250 250 250) 'gray98'
- (252 252 252) 'gray99'
- ( 0 255 0) 'green'
- (173 255 47) 'greenyellow'
- ( 0 255 0) 'green1'
- ( 0 238 0) 'green2'
- ( 0 205 0) 'green3'
- ( 0 139 0) 'green4'
- (240 255 240) 'honeydew'
- (240 255 240) 'honeydew1'
- (224 238 224) 'honeydew2'
- (193 205 193) 'honeydew3'
- (131 139 131) 'honeydew4'
- (255 105 180) 'hotpink'
- (255 110 180) 'HotPink1'
- (238 106 167) 'HotPink2'
- (205 96 144) 'HotPink3'
- (139 58 98) 'HotPink4'
- (205 92 92) 'indianred'
- (255 106 106) 'IndianRed1'
- (238 99 99) 'IndianRed2'
- (205 85 85) 'IndianRed3'
- (139 58 58) 'IndianRed4'
- (255 255 240) 'ivory'
- (255 255 240) 'ivory1'
- (238 238 224) 'ivory2'
- (205 205 193) 'ivory3'
- (139 139 131) 'ivory4'
- (240 230 140) 'khaki'
- (255 246 143) 'khaki1'
- (238 230 133) 'khaki2'
- (205 198 115) 'khaki3'
- (139 134 78) 'khaki4'
- (230 230 250) 'lavender'
- (255 240 245) 'lavenderblush'
- (255 240 245) 'LavenderBlush1'
- (238 224 229) 'LavenderBlush2'
- (205 193 197) 'LavenderBlush3'
- (139 131 134) 'LavenderBlush4'
- (124 252 0) 'lawngreen'
- (255 250 205) 'lemonchiffon'
- (255 250 205) 'LemonChiffon1'
- (238 233 191) 'LemonChiffon2'
- (205 201 165) 'LemonChiffon3'
- (139 137 112) 'LemonChiffon4'
- (173 216 230) 'lightblue'
- (240 128 128) 'lightcoral'
- (224 255 255) 'lightcyan'
- (238 221 130) 'lightgoldenrod'
- (250 250 210) 'lightgoldenrodyellow'
- (211 211 211) 'lightgray'
- (144 238 144) 'lightgreen'
- (211 211 211) 'lightgrey'
- (255 182 193) 'lightpink'
- (255 160 122) 'lightsalmon'
- ( 32 178 170) 'lightseagreen'
- (135 206 250) 'lightskyblue'
- (132 112 255) 'lightslateblue'
- (119 136 153) 'lightslategray'
- (119 136 153) 'lightslategrey'
- (176 196 222) 'lightsteelblue'
- (255 255 224) 'lightyellow'
- (191 239 255) 'LightBlue1'
- (178 223 238) 'LightBlue2'
- (154 192 205) 'LightBlue3'
- (104 131 139) 'LightBlue4'
- (224 255 255) 'LightCyan1'
- (209 238 238) 'LightCyan2'
- (180 205 205) 'LightCyan3'
- (122 139 139) 'LightCyan4'
- (255 236 139) 'LightGoldenrod1'
- (238 220 130) 'LightGoldenrod2'
- (205 190 112) 'LightGoldenrod3'
- (139 129 76) 'LightGoldenrod4'
- (255 174 185) 'LightPink1'
- (238 162 173) 'LightPink2'
- (205 140 149) 'LightPink3'
- (139 95 101) 'LightPink4'
- (255 160 122) 'LightSalmon1'
- (238 149 114) 'LightSalmon2'
- (205 129 98) 'LightSalmon3'
- (139 87 66) 'LightSalmon4'
- (176 226 255) 'LightSkyBlue1'
- (164 211 238) 'LightSkyBlue2'
- (141 182 205) 'LightSkyBlue3'
- ( 96 123 139) 'LightSkyBlue4'
- (202 225 255) 'LightSteelBlue1'
- (188 210 238) 'LightSteelBlue2'
- (162 181 205) 'LightSteelBlue3'
- (110 123 139) 'LightSteelBlue4'
- (255 255 224) 'LightYellow1'
- (238 238 209) 'LightYellow2'
- (205 205 180) 'LightYellow3'
- (139 139 122) 'LightYellow4'
- ( 50 205 50) 'limegreen'
- (250 240 230) 'linen'
- (255 0 255) 'magenta'
- (255 0 255) 'magenta1'
- (238 0 238) 'magenta2'
- (205 0 205) 'magenta3'
- (139 0 139) 'magenta4'
- (176 48 96) 'maroon'
- (255 52 179) 'maroon1'
- (238 48 167) 'maroon2'
- (205 41 144) 'maroon3'
- (139 28 98) 'maroon4'
- (102 205 170) 'mediumaquamarine'
- ( 0 0 205) 'mediumblue'
- (186 85 211) 'mediumorchid'
- (147 112 219) 'mediumpurple'
- ( 60 179 113) 'mediumseagreen'
- (123 104 238) 'mediumslateblue'
- ( 0 250 154) 'mediumspringgreen'
- ( 72 209 204) 'mediumturquoise'
- (199 21 133) 'mediumvioletred'
- (224 102 255) 'MediumOrchid1'
- (209 95 238) 'MediumOrchid2'
- (180 82 205) 'MediumOrchid3'
- (122 55 139) 'MediumOrchid4'
- (171 130 255) 'MediumPurple1'
- (159 121 238) 'MediumPurple2'
- (137 104 205) 'MediumPurple3'
- ( 93 71 139) 'MediumPurple4'
- ( 25 25 112) 'midnightblue'
- (245 255 250) 'mintcream'
- (255 228 225) 'mistyrose'
- (255 228 225) 'MistyRose1'
- (238 213 210) 'MistyRose2'
- (205 183 181) 'MistyRose3'
- (139 125 123) 'MistyRose4'
- (255 228 181) 'moccasin'
- (255 222 173) 'navajowhite'
- (255 222 173) 'NavajoWhite1'
- (238 207 161) 'NavajoWhite2'
- (205 179 139) 'NavajoWhite3'
- (139 121 94) 'NavajoWhite4'
- ( 0 0 128) 'navy'
- ( 0 0 128) 'navyblue'
- (253 245 230) 'oldlace'
- (107 142 35) 'olivedrab'
- (192 255 62) 'OliveDrab1'
- (179 238 58) 'OliveDrab2'
- (154 205 50) 'OliveDrab3'
- (105 139 34) 'OliveDrab4'
- (255 165 0) 'orange'
- (255 165 0) 'orange1'
- (238 154 0) 'orange2'
- (205 133 0) 'orange3'
- (139 90 0) 'orange4'
- (255 69 0) 'orangered'
- (255 69 0) 'OrangeRed1'
- (238 64 0) 'OrangeRed2'
- (205 55 0) 'OrangeRed3'
- (139 37 0) 'OrangeRed4'
- (218 112 214) 'orchid'
- (255 131 250) 'orchid1'
- (238 122 233) 'orchid2'
- (205 105 201) 'orchid3'
- (139 71 137) 'orchid4'
- (238 232 170) 'palegoldenrod'
- (152 251 152) 'palegreen'
- (175 238 238) 'paleturquoise'
- (219 112 147) 'palevioletred'
- (154 255 154) 'PaleGreen1'
- (144 238 144) 'PaleGreen2'
- (124 205 124) 'PaleGreen3'
- ( 84 139 84) 'PaleGreen4'
- (187 255 255) 'PaleTurquoise1'
- (174 238 238) 'PaleTurquoise2'
- (150 205 205) 'PaleTurquoise3'
- (102 139 139) 'PaleTurquoise4'
- (255 130 171) 'PaleVioletRed1'
- (238 121 159) 'PaleVioletRed2'
- (205 104 137) 'PaleVioletRed3'
- (139 71 93) 'PaleVioletRed4'
- (255 239 213) 'papayawhip'
- (255 218 185) 'peachpuff'
- (255 218 185) 'PeachPuff1'
- (238 203 173) 'PeachPuff2'
- (205 175 149) 'PeachPuff3'
- (139 119 101) 'PeachPuff4'
- (205 133 63) 'peru'
- (255 192 203) 'pink'
- (255 181 197) 'pink1'
- (238 169 184) 'pink2'
- (205 145 158) 'pink3'
- (139 99 108) 'pink4'
- (221 160 221) 'plum'
- (255 187 255) 'plum1'
- (238 174 238) 'plum2'
- (205 150 205) 'plum3'
- (139 102 139) 'plum4'
- (176 224 230) 'powderblue'
- (160 32 240) 'purple'
- (155 48 255) 'purple1'
- (145 44 238) 'purple2'
- (125 38 205) 'purple3'
- ( 85 26 139) 'purple4'
- (255 0 0) 'red'
- (255 0 0) 'red1'
- (238 0 0) 'red2'
- (205 0 0) 'red3'
- (139 0 0) 'red4'
- (188 143 143) 'rosybrown'
- (255 193 193) 'RosyBrown1'
- (238 180 180) 'RosyBrown2'
- (205 155 155) 'RosyBrown3'
- (139 105 105) 'RosyBrown4'
- ( 65 105 225) 'royalblue'
- ( 72 118 255) 'RoyalBlue1'
- ( 67 110 238) 'RoyalBlue2'
- ( 58 95 205) 'RoyalBlue3'
- ( 39 64 139) 'RoyalBlue4'
- (139 69 19) 'saddlebrown'
- (250 128 114) 'salmon'
- (255 140 105) 'salmon1'
- (238 130 98) 'salmon2'
- (205 112 84) 'salmon3'
- (139 76 57) 'salmon4'
- (244 164 96) 'sandybrown'
- ( 255 206 137) 'scoActiveBackground'
- ( 43 45 49) 'scoActiveForeground'
- ( 254 222 255) 'scoActiveTopShadow'
- ( 172 186 204) 'scoAltBackground'
- ( 203 203 192) 'scoBackground'
- ( 11 0 113) 'scoForeground'
- ( 141 178 215) 'scoHighlight'
- ( 255 240 248) 'scoTopShadow'
- ( 46 139 87) 'seagreen'
- ( 84 255 159) 'SeaGreen1'
- ( 78 238 148) 'SeaGreen2'
- ( 67 205 128) 'SeaGreen3'
- ( 46 139 87) 'SeaGreen4'
- (255 245 238) 'seashell'
- (255 245 238) 'seashell1'
- (238 229 222) 'seashell2'
- (205 197 191) 'seashell3'
- (139 134 130) 'seashell4'
- (142 56 142) 'sgi beet'
- (197 193 170) 'sgi bright gray'
- (197 193 170) 'sgi bright grey'
- (113 198 113) 'sgi chartreuse'
- ( 85 85 85) 'sgi dark gray'
- ( 85 85 85) 'sgi dark grey'
- ( 0 0 0) 'sgi gray 0'
- (255 255 255) 'sgi gray 100'
- ( 30 30 30) 'sgi gray 12'
- ( 40 40 40) 'sgi gray 16'
- ( 51 51 51) 'sgi gray 20'
- ( 61 61 61) 'sgi gray 24'
- ( 71 71 71) 'sgi gray 28'
- ( 81 81 81) 'sgi gray 32'
- ( 91 91 91) 'sgi gray 36'
- ( 10 10 10) 'sgi gray 4'
- (102 102 102) 'sgi gray 40'
- (112 112 112) 'sgi gray 44'
- (122 122 122) 'sgi gray 48'
- (132 132 132) 'sgi gray 52'
- (142 142 142) 'sgi gray 56'
- (153 153 153) 'sgi gray 60'
- (163 163 163) 'sgi gray 64'
- (173 173 173) 'sgi gray 68'
- (183 183 183) 'sgi gray 72'
- (193 193 193) 'sgi gray 76'
- ( 20 20 20) 'sgi gray 8'
- (204 204 204) 'sgi gray 80'
- (214 214 214) 'sgi gray 84'
- (224 224 224) 'sgi gray 88'
- (234 234 234) 'sgi gray 92'
- (244 244 244) 'sgi gray 96'
- ( 0 0 0) 'sgi grey 0'
- (255 255 255) 'sgi grey 100'
- ( 30 30 30) 'sgi grey 12'
- ( 40 40 40) 'sgi grey 16'
- ( 51 51 51) 'sgi grey 20'
- ( 61 61 61) 'sgi grey 24'
- ( 71 71 71) 'sgi grey 28'
- ( 81 81 81) 'sgi grey 32'
- ( 91 91 91) 'sgi grey 36'
- ( 10 10 10) 'sgi grey 4'
- (102 102 102) 'sgi grey 40'
- (112 112 112) 'sgi grey 44'
- (122 122 122) 'sgi grey 48'
- (132 132 132) 'sgi grey 52'
- (142 142 142) 'sgi grey 56'
- (153 153 153) 'sgi grey 60'
- (163 163 163) 'sgi grey 64'
- (173 173 173) 'sgi grey 68'
- (183 183 183) 'sgi grey 72'
- (193 193 193) 'sgi grey 76'
- ( 20 20 20) 'sgi grey 8'
- (204 204 204) 'sgi grey 80'
- (214 214 214) 'sgi grey 84'
- (224 224 224) 'sgi grey 88'
- (234 234 234) 'sgi grey 92'
- (244 244 244) 'sgi grey 96'
- (125 158 192) 'sgi light blue'
- (170 170 170) 'sgi light gray'
- (170 170 170) 'sgi light grey'
- (132 132 132) 'sgi medium gray'
- (132 132 132) 'sgi medium grey'
- (142 142 56) 'sgi olive drab'
- (198 113 113) 'sgi salmon'
- (113 113 198) 'sgi slate blue'
- ( 56 142 142) 'sgi teal'
- ( 40 40 40) 'sgi very dark gray'
- ( 40 40 40) 'sgi very dark grey'
- (214 214 214) 'sgi very light gray'
- (214 214 214) 'sgi very light grey'
- (142 56 142) 'SGIBeet'
- (197 193 170) 'SGIBrightGray'
- (197 193 170) 'SGIBrightGrey'
- (113 198 113) 'SGIChartreuse'
- ( 85 85 85) 'SGIDarkGray'
- ( 85 85 85) 'SGIDarkGrey'
- ( 0 0 0) 'SGIGray0'
- (255 255 255) 'SGIGray100'
- ( 30 30 30) 'SGIGray12'
- ( 40 40 40) 'SGIGray16'
- ( 51 51 51) 'SGIGray20'
- ( 61 61 61) 'SGIGray24'
- ( 71 71 71) 'SGIGray28'
- ( 81 81 81) 'SGIGray32'
- ( 91 91 91) 'SGIGray36'
- ( 10 10 10) 'SGIGray4'
- (102 102 102) 'SGIGray40'
- (112 112 112) 'SGIGray44'
- (122 122 122) 'SGIGray48'
- (132 132 132) 'SGIGray52'
- (142 142 142) 'SGIGray56'
- (153 153 153) 'SGIGray60'
- (163 163 163) 'SGIGray64'
- (173 173 173) 'SGIGray68'
- (183 183 183) 'SGIGray72'
- (193 193 193) 'SGIGray76'
- ( 20 20 20) 'SGIGray8'
- (204 204 204) 'SGIGray80'
- (214 214 214) 'SGIGray84'
- (224 224 224) 'SGIGray88'
- (234 234 234) 'SGIGray92'
- (244 244 244) 'SGIGray96'
- ( 0 0 0) 'SGIGrey0'
- (255 255 255) 'SGIGrey100'
- ( 30 30 30) 'SGIGrey12'
- ( 40 40 40) 'SGIGrey16'
- ( 51 51 51) 'SGIGrey20'
- ( 61 61 61) 'SGIGrey24'
- ( 71 71 71) 'SGIGrey28'
- ( 81 81 81) 'SGIGrey32'
- ( 91 91 91) 'SGIGrey36'
- ( 10 10 10) 'SGIGrey4'
- (102 102 102) 'SGIGrey40'
- (112 112 112) 'SGIGrey44'
- (122 122 122) 'SGIGrey48'
- (132 132 132) 'SGIGrey52'
- (142 142 142) 'SGIGrey56'
- (153 153 153) 'SGIGrey60'
- (163 163 163) 'SGIGrey64'
- (173 173 173) 'SGIGrey68'
- (183 183 183) 'SGIGrey72'
- (193 193 193) 'SGIGrey76'
- ( 20 20 20) 'SGIGrey8'
- (204 204 204) 'SGIGrey80'
- (214 214 214) 'SGIGrey84'
- (224 224 224) 'SGIGrey88'
- (234 234 234) 'SGIGrey92'
- (244 244 244) 'SGIGrey96'
- (125 158 192) 'SGILightBlue'
- (170 170 170) 'SGILightGray'
- (170 170 170) 'SGILightGrey'
- (132 132 132) 'SGIMediumGray'
- (132 132 132) 'SGIMediumGrey'
- (142 142 56) 'SGIOliveDrab'
- (198 113 113) 'SGISalmon'
- (113 113 198) 'SGISlateBlue'
- ( 56 142 142) 'SGITeal'
- ( 40 40 40) 'SGIVeryDarkGray'
- ( 40 40 40) 'SGIVeryDarkGrey'
- (214 214 214) 'SGIVeryLightGray'
- (214 214 214) 'SGIVeryLightGrey'
- (160 82 45) 'sienna'
- (255 130 71) 'sienna1'
- (238 121 66) 'sienna2'
- (205 104 57) 'sienna3'
- (139 71 38) 'sienna4'
- (135 206 235) 'skyblue'
- (135 206 255) 'SkyBlue1'
- (126 192 238) 'SkyBlue2'
- (108 166 205) 'SkyBlue3'
- ( 74 112 139) 'SkyBlue4'
- (112 128 144) 'slategray'
- (112 128 144) 'slategrey'
- (106 90 205) 'slateblue'
- (131 111 255) 'SlateBlue1'
- (122 103 238) 'SlateBlue2'
- (105 89 205) 'SlateBlue3'
- ( 71 60 139) 'SlateBlue4'
- (198 226 255) 'SlateGray1'
- (185 211 238) 'SlateGray2'
- (159 182 205) 'SlateGray3'
- (108 123 139) 'SlateGray4'
- (255 250 250) 'snow'
- (255 250 250) 'snow1'
- (238 233 233) 'snow2'
- (205 201 201) 'snow3'
- (139 137 137) 'snow4'
- ( 0 255 127) 'springgreen'
- ( 0 255 127) 'SpringGreen1'
- ( 0 238 118) 'SpringGreen2'
- ( 0 205 102) 'SpringGreen3'
- ( 0 139 69) 'SpringGreen4'
- ( 70 130 180) 'steelblue'
- ( 99 184 255) 'SteelBlue1'
- ( 92 172 238) 'SteelBlue2'
- ( 79 148 205) 'SteelBlue3'
- ( 54 100 139) 'SteelBlue4'
- (210 180 140) 'tan'
- (255 165 79) 'tan1'
- (238 154 73) 'tan2'
- (205 133 63) 'tan3'
- (139 90 43) 'tan4'
- (216 191 216) 'thistle'
- (255 225 255) 'thistle1'
- (238 210 238) 'thistle2'
- (205 181 205) 'thistle3'
- (139 123 139) 'thistle4'
- (255 99 71) 'tomato'
- (255 99 71) 'tomato1'
- (238 92 66) 'tomato2'
- (205 79 57) 'tomato3'
- (139 54 38) 'tomato4'
- ( 64 224 208) 'turquoise'
- ( 0 245 255) 'turquoise1'
- ( 0 229 238) 'turquoise2'
- ( 0 197 205) 'turquoise3'
- ( 0 134 139) 'turquoise4'
- (238 130 238) 'violet'
- (208 32 144) 'violetred'
- (255 62 150) 'VioletRed1'
- (238 58 140) 'VioletRed2'
- (205 50 120) 'VioletRed3'
- (139 34 82) 'VioletRed4'
- (245 222 179) 'wheat'
- (255 231 186) 'wheat1'
- (238 216 174) 'wheat2'
- (205 186 150) 'wheat3'
- (139 126 102) 'wheat4'
- (255 255 255) 'white'
- (245 245 245) 'whitesmoke'
- (255 255 0) 'yellow'
- (154 205 50) 'yellowgreen'
- (255 255 0) 'yellow1'
- (238 238 0) 'yellow2'
- (205 205 0) 'yellow3'
- (139 139 0) 'yellow4'
- ) pairWiseDo:[ :value :name |
- StandardColorValues at:name put:value
- ].
+ StandardColorValues := Dictionary
+ withKeysAndValues:#(
+ 'aliceblue' (240 248 255)
+ 'antiquewhite' (250 235 215)
+ 'AntiqueWhite1' (255 239 219)
+ 'AntiqueWhite2' (238 223 204)
+ 'AntiqueWhite3' (205 192 176)
+ 'AntiqueWhite4' (139 131 120)
+ 'aquamarine' (127 255 212)
+ 'aquamarine1' (127 255 212)
+ 'aquamarine2' (118 238 198)
+ 'aquamarine3' (102 205 170)
+ 'aquamarine4' (69 139 116)
+ 'azure' (240 255 255)
+ 'azure1' (240 255 255)
+ 'azure2' (224 238 238)
+ 'azure3' (193 205 205)
+ 'azure4' (131 139 139)
+ 'beige' (245 245 220)
+ 'bisque' (255 228 196)
+ 'bisque1' (255 228 196)
+ 'bisque2' (238 213 183)
+ 'bisque3' (205 183 158)
+ 'bisque4' (139 125 107)
+ 'black' (0 0 0)
+ 'blanchedalmond' (255 235 205)
+ 'blue' (0 0 255)
+ 'blueviolet' (138 43 226)
+ 'blue1' (0 0 255)
+ 'blue2' (0 0 238)
+ 'blue3' (0 0 205)
+ 'blue4' (0 0 139)
+ 'brown' (165 42 42)
+ 'brown1' (255 64 64)
+ 'brown2' (238 59 59)
+ 'brown3' (205 51 51)
+ 'brown4' (139 35 35)
+ 'burlywood' (222 184 135)
+ 'burlywood1' (255 211 155)
+ 'burlywood2' (238 197 145)
+ 'burlywood3' (205 170 125)
+ 'burlywood4' (139 115 85)
+ 'cadetblue' (95 158 160)
+ 'CadetBlue1' (152 245 255)
+ 'CadetBlue2' (142 229 238)
+ 'CadetBlue3' (122 197 205)
+ 'CadetBlue4' (83 134 139)
+ 'chartreuse' (127 255 0)
+ 'chartreuse1' (127 255 0)
+ 'chartreuse2' (118 238 0)
+ 'chartreuse3' (102 205 0)
+ 'chartreuse4' (69 139 0)
+ 'chocolate' (210 105 30)
+ 'chocolate1' (255 127 36)
+ 'chocolate2' (238 118 33)
+ 'chocolate3' (205 102 29)
+ 'chocolate4' (139 69 19)
+ 'coral' (255 127 80)
+ 'coral1' (255 114 86)
+ 'coral2' (238 106 80)
+ 'coral3' (205 91 69)
+ 'coral4' (139 62 47)
+ 'cornflowerblue' (100 149 237)
+ 'cornsilk' (255 248 220)
+ 'cornsilk1' (255 248 220)
+ 'cornsilk2' (238 232 205)
+ 'cornsilk3' (205 200 177)
+ 'cornsilk4' (139 136 120)
+ 'cyan' (0 255 255)
+ 'cyan1' (0 255 255)
+ 'cyan2' (0 238 238)
+ 'cyan3' (0 205 205)
+ 'cyan4' (0 139 139)
+ 'darkblue' (0 0 139)
+ 'darkcyan' (0 139 139)
+ 'darkgoldenrod' (184 134 11)
+ 'darkgray' (169 169 169)
+ 'darkgreen' (0 100 0)
+ 'darkgrey' (169 169 169)
+ 'darkkhaki' (189 183 107)
+ 'darkmagenta' (139 0 139)
+ 'darkolivegreen' (85 107 47)
+ 'darkorange' (255 140 0)
+ 'darkorchid' (153 50 204)
+ 'darkred' (139 0 0)
+ 'darksalmon' (233 150 122)
+ 'darkseagreen' (143 188 143)
+ 'darkslateblue' (72 61 139)
+ 'darkslategray' (47 79 79)
+ 'darkslategrey' (47 79 79)
+ 'darkturquoise' (0 206 209)
+ 'darkviolet' (148 0 211)
+ 'DarkGoldenrod1' (255 185 15)
+ 'DarkGoldenrod2' (238 173 14)
+ 'DarkGoldenrod3' (205 149 12)
+ 'DarkGoldenrod4' (139 101 8)
+ 'DarkOliveGreen1' (202 255 112)
+ 'DarkOliveGreen2' (188 238 104)
+ 'DarkOliveGreen3' (162 205 90)
+ 'DarkOliveGreen4' (110 139 61)
+ 'DarkOrange1' (255 127 0)
+ 'DarkOrange2' (238 118 0)
+ 'DarkOrange3' (205 102 0)
+ 'DarkOrange4' (139 69 0)
+ 'DarkOrchid1' (191 62 255)
+ 'DarkOrchid2' (178 58 238)
+ 'DarkOrchid3' (154 50 205)
+ 'DarkOrchid4' (104 34 139)
+ 'DarkSeaGreen1' (193 255 193)
+ 'DarkSeaGreen2' (180 238 180)
+ 'DarkSeaGreen3' (155 205 155)
+ 'DarkSeaGreen4' (105 139 105)
+ 'DarkSlateGray1' (151 255 255)
+ 'DarkSlateGray2' (141 238 238)
+ 'DarkSlateGray3' (121 205 205)
+ 'DarkSlateGray4' (82 139 139)
+ 'deeppink' (255 20 147)
+ 'deepskyblue' (0 191 255)
+ 'DeepPink' (255 20 147)
+ 'DeepPink1' (255 20 147)
+ 'DeepPink2' (238 18 137)
+ 'DeepPink3' (205 16 118)
+ 'DeepPink4' (139 10 80)
+ 'DeepSkyBlue1' (0 191 255)
+ 'DeepSkyBlue2' (0 178 238)
+ 'DeepSkyBlue3' (0 154 205)
+ 'DeepSkyBlue4' (0 104 139)
+ 'dimgray' (105 105 105)
+ 'dimgrey' (105 105 105)
+ 'dodgerblue' (30 144 255)
+ 'DodgerBlue1' (30 144 255)
+ 'DodgerBlue2' (28 134 238)
+ 'DodgerBlue3' (24 116 205)
+ 'DodgerBlue4' (16 78 139)
+ 'firebrick' (178 34 34)
+ 'firebrick1' (255 48 48)
+ 'firebrick2' (238 44 44)
+ 'firebrick3' (205 38 38)
+ 'firebrick4' (139 26 26)
+ 'floralwhite' (255 250 240)
+ 'forestgreen' (34 139 34)
+ 'gainsboro' (220 220 220)
+ 'ghostwhite' (248 248 255)
+ 'gold' (255 215 0)
+ 'gold1' (255 215 0)
+ 'gold2' (238 201 0)
+ 'gold3' (205 173 0)
+ 'gold4' (139 117 0)
+ 'goldenrod' (218 165 32)
+ 'goldenrod1' (255 193 37)
+ 'goldenrod2' (238 180 34)
+ 'goldenrod3' (205 155 29)
+ 'goldenrod4' (139 105 20)
+ 'grey' (192 192 192)
+ 'grey0' (0 0 0)
+ 'grey1' (3 3 3)
+ 'grey10' (26 26 26)
+ 'grey100' (255 255 255)
+ 'grey11' (28 28 28)
+ 'grey12' (31 31 31)
+ 'grey13' (33 33 33)
+ 'grey14' (36 36 36)
+ 'grey15' (38 38 38)
+ 'grey16' (41 41 41)
+ 'grey17' (43 43 43)
+ 'grey18' (46 46 46)
+ 'grey19' (48 48 48)
+ 'grey2' (5 5 5)
+ 'grey20' (51 51 51)
+ 'grey21' (54 54 54)
+ 'grey22' (56 56 56)
+ 'grey23' (59 59 59)
+ 'grey24' (61 61 61)
+ 'grey25' (64 64 64)
+ 'grey26' (66 66 66)
+ 'grey27' (69 69 69)
+ 'grey28' (71 71 71)
+ 'grey29' (74 74 74)
+ 'grey3' (8 8 8)
+ 'grey30' (77 77 77)
+ 'grey31' (79 79 79)
+ 'grey32' (82 82 82)
+ 'grey33' (84 84 84)
+ 'grey34' (87 87 87)
+ 'grey35' (89 89 89)
+ 'grey36' (92 92 92)
+ 'grey37' (94 94 94)
+ 'grey38' (97 97 97)
+ 'grey39' (99 99 99)
+ 'grey4' (10 10 10)
+ 'grey40' (102 102 102)
+ 'grey41' (105 105 105)
+ 'grey42' (107 107 107)
+ 'grey43' (110 110 110)
+ 'grey44' (112 112 112)
+ 'grey45' (115 115 115)
+ 'grey46' (117 117 117)
+ 'grey47' (120 120 120)
+ 'grey48' (122 122 122)
+ 'grey49' (125 125 125)
+ 'grey5' (13 13 13)
+ 'grey50' (127 127 127)
+ 'grey51' (130 130 130)
+ 'grey52' (133 133 133)
+ 'grey53' (135 135 135)
+ 'grey54' (138 138 138)
+ 'grey55' (140 140 140)
+ 'grey56' (143 143 143)
+ 'grey57' (145 145 145)
+ 'grey58' (148 148 148)
+ 'grey59' (150 150 150)
+ 'grey6' (15 15 15)
+ 'grey60' (153 153 153)
+ 'grey61' (156 156 156)
+ 'grey62' (158 158 158)
+ 'grey63' (161 161 161)
+ 'grey64' (163 163 163)
+ 'grey65' (166 166 166)
+ 'grey66' (168 168 168)
+ 'grey67' (171 171 171)
+ 'grey68' (173 173 173)
+ 'grey69' (176 176 176)
+ 'grey7' (18 18 18)
+ 'grey70' (179 179 179)
+ 'grey71' (181 181 181)
+ 'grey72' (184 184 184)
+ 'grey73' (186 186 186)
+ 'grey74' (189 189 189)
+ 'grey75' (191 191 191)
+ 'grey76' (194 194 194)
+ 'grey77' (196 196 196)
+ 'grey78' (199 199 199)
+ 'grey79' (201 201 201)
+ 'grey8' (20 20 20)
+ 'grey80' (204 204 204)
+ 'grey81' (207 207 207)
+ 'grey82' (209 209 209)
+ 'grey83' (212 212 212)
+ 'grey84' (214 214 214)
+ 'grey85' (217 217 217)
+ 'grey86' (219 219 219)
+ 'grey87' (222 222 222)
+ 'grey88' (224 224 224)
+ 'grey89' (227 227 227)
+ 'grey9' (23 23 23)
+ 'grey90' (229 229 229)
+ 'grey91' (232 232 232)
+ 'grey92' (235 235 235)
+ 'grey93' (237 237 237)
+ 'grey94' (240 240 240)
+ 'grey95' (242 242 242)
+ 'grey96' (245 245 245)
+ 'grey97' (247 247 247)
+ 'grey98' (250 250 250)
+ 'grey99' (252 252 252)
+ 'gray' (192 192 192)
+ 'gray0' (0 0 0)
+ 'gray1' (3 3 3)
+ 'gray10' (26 26 26)
+ 'gray100' (255 255 255)
+ 'gray11' (28 28 28)
+ 'gray12' (31 31 31)
+ 'gray13' (33 33 33)
+ 'gray14' (36 36 36)
+ 'gray15' (38 38 38)
+ 'gray16' (41 41 41)
+ 'gray17' (43 43 43)
+ 'gray18' (46 46 46)
+ 'gray19' (48 48 48)
+ 'gray2' (5 5 5)
+ 'gray20' (51 51 51)
+ 'gray21' (54 54 54)
+ 'gray22' (56 56 56)
+ 'gray23' (59 59 59)
+ 'gray24' (61 61 61)
+ 'gray25' (64 64 64)
+ 'gray26' (66 66 66)
+ 'gray27' (69 69 69)
+ 'gray28' (71 71 71)
+ 'gray29' (74 74 74)
+ 'gray3' (8 8 8)
+ 'gray30' (77 77 77)
+ 'gray31' (79 79 79)
+ 'gray32' (82 82 82)
+ 'gray33' (84 84 84)
+ 'gray34' (87 87 87)
+ 'gray35' (89 89 89)
+ 'gray36' (92 92 92)
+ 'gray37' (94 94 94)
+ 'gray38' (97 97 97)
+ 'gray39' (99 99 99)
+ 'gray4' (10 10 10)
+ 'gray40' (102 102 102)
+ 'gray41' (105 105 105)
+ 'gray42' (107 107 107)
+ 'gray43' (110 110 110)
+ 'gray44' (112 112 112)
+ 'gray45' (115 115 115)
+ 'gray46' (117 117 117)
+ 'gray47' (120 120 120)
+ 'gray48' (122 122 122)
+ 'gray49' (125 125 125)
+ 'gray5' (13 13 13)
+ 'gray50' (127 127 127)
+ 'gray51' (130 130 130)
+ 'gray52' (133 133 133)
+ 'gray53' (135 135 135)
+ 'gray54' (138 138 138)
+ 'gray55' (140 140 140)
+ 'gray56' (143 143 143)
+ 'gray57' (145 145 145)
+ 'gray58' (148 148 148)
+ 'gray59' (150 150 150)
+ 'gray6' (15 15 15)
+ 'gray60' (153 153 153)
+ 'gray61' (156 156 156)
+ 'gray62' (158 158 158)
+ 'gray63' (161 161 161)
+ 'gray64' (163 163 163)
+ 'gray65' (166 166 166)
+ 'gray66' (168 168 168)
+ 'gray67' (171 171 171)
+ 'gray68' (173 173 173)
+ 'gray69' (176 176 176)
+ 'gray7' (18 18 18)
+ 'gray70' (179 179 179)
+ 'gray71' (181 181 181)
+ 'gray72' (184 184 184)
+ 'gray73' (186 186 186)
+ 'gray74' (189 189 189)
+ 'gray75' (191 191 191)
+ 'gray76' (194 194 194)
+ 'gray77' (196 196 196)
+ 'gray78' (199 199 199)
+ 'gray79' (201 201 201)
+ 'gray8' (20 20 20)
+ 'gray80' (204 204 204)
+ 'gray81' (207 207 207)
+ 'gray82' (209 209 209)
+ 'gray83' (212 212 212)
+ 'gray84' (214 214 214)
+ 'gray85' (217 217 217)
+ 'gray86' (219 219 219)
+ 'gray87' (222 222 222)
+ 'gray88' (224 224 224)
+ 'gray89' (227 227 227)
+ 'gray9' (23 23 23)
+ 'gray90' (229 229 229)
+ 'gray91' (232 232 232)
+ 'gray92' (235 235 235)
+ 'gray93' (237 237 237)
+ 'gray94' (240 240 240)
+ 'gray95' (242 242 242)
+ 'gray96' (245 245 245)
+ 'gray97' (247 247 247)
+ 'gray98' (250 250 250)
+ 'gray99' (252 252 252)
+ 'green' (0 255 0)
+ 'greenyellow' (173 255 47)
+ 'green1' (0 255 0)
+ 'green2' (0 238 0)
+ 'green3' (0 205 0)
+ 'green4' (0 139 0)
+ 'honeydew' (240 255 240)
+ 'honeydew1' (240 255 240)
+ 'honeydew2' (224 238 224)
+ 'honeydew3' (193 205 193)
+ 'honeydew4' (131 139 131)
+ 'hotpink' (255 105 180)
+ 'HotPink1' (255 110 180)
+ 'HotPink2' (238 106 167)
+ 'HotPink3' (205 96 144)
+ 'HotPink4' (139 58 98)
+ 'indianred' (205 92 92)
+ 'IndianRed1' (255 106 106)
+ 'IndianRed2' (238 99 99)
+ 'IndianRed3' (205 85 85)
+ 'IndianRed4' (139 58 58)
+ 'ivory' (255 255 240)
+ 'ivory1' (255 255 240)
+ 'ivory2' (238 238 224)
+ 'ivory3' (205 205 193)
+ 'ivory4' (139 139 131)
+ 'khaki' (240 230 140)
+ 'khaki1' (255 246 143)
+ 'khaki2' (238 230 133)
+ 'khaki3' (205 198 115)
+ 'khaki4' (139 134 78)
+ 'lavender' (230 230 250)
+ 'lavenderblush' (255 240 245)
+ 'LavenderBlush1' (255 240 245)
+ 'LavenderBlush2' (238 224 229)
+ 'LavenderBlush3' (205 193 197)
+ 'LavenderBlush4' (139 131 134)
+ 'lawngreen' (124 252 0)
+ 'lemonchiffon' (255 250 205)
+ 'LemonChiffon1' (255 250 205)
+ 'LemonChiffon2' (238 233 191)
+ 'LemonChiffon3' (205 201 165)
+ 'LemonChiffon4' (139 137 112)
+ 'lightblue' (173 216 230)
+ 'lightcoral' (240 128 128)
+ 'lightcyan' (224 255 255)
+ 'lightgoldenrod' (238 221 130)
+ 'lightgoldenrodyellow' (250 250 210)
+ 'lightgray' (211 211 211)
+ 'lightgreen' (144 238 144)
+ 'lightgrey' (211 211 211)
+ 'lightpink' (255 182 193)
+ 'lightsalmon' (255 160 122)
+ 'lightseagreen' (32 178 170)
+ 'lightskyblue' (135 206 250)
+ 'lightslateblue' (132 112 255)
+ 'lightslategray' (119 136 153)
+ 'lightslategrey' (119 136 153)
+ 'lightsteelblue' (176 196 222)
+ 'lightyellow' (255 255 224)
+ 'LightBlue1' (191 239 255)
+ 'LightBlue2' (178 223 238)
+ 'LightBlue3' (154 192 205)
+ 'LightBlue4' (104 131 139)
+ 'LightCyan1' (224 255 255)
+ 'LightCyan2' (209 238 238)
+ 'LightCyan3' (180 205 205)
+ 'LightCyan4' (122 139 139)
+ 'LightGoldenrod1' (255 236 139)
+ 'LightGoldenrod2' (238 220 130)
+ 'LightGoldenrod3' (205 190 112)
+ 'LightGoldenrod4' (139 129 76)
+ 'LightPink1' (255 174 185)
+ 'LightPink2' (238 162 173)
+ 'LightPink3' (205 140 149)
+ 'LightPink4' (139 95 101)
+ 'LightSalmon1' (255 160 122)
+ 'LightSalmon2' (238 149 114)
+ 'LightSalmon3' (205 129 98)
+ 'LightSalmon4' (139 87 66)
+ 'LightSkyBlue1' (176 226 255)
+ 'LightSkyBlue2' (164 211 238)
+ 'LightSkyBlue3' (141 182 205)
+ 'LightSkyBlue4' (96 123 139)
+ 'LightSteelBlue1' (202 225 255)
+ 'LightSteelBlue2' (188 210 238)
+ 'LightSteelBlue3' (162 181 205)
+ 'LightSteelBlue4' (110 123 139)
+ 'LightYellow1' (255 255 224)
+ 'LightYellow2' (238 238 209)
+ 'LightYellow3' (205 205 180)
+ 'LightYellow4' (139 139 122)
+ 'limegreen' (50 205 50)
+ 'linen' (250 240 230)
+ 'magenta' (255 0 255)
+ 'magenta1' (255 0 255)
+ 'magenta2' (238 0 238)
+ 'magenta3' (205 0 205)
+ 'magenta4' (139 0 139)
+ 'maroon' (176 48 96)
+ 'maroon1' (255 52 179)
+ 'maroon2' (238 48 167)
+ 'maroon3' (205 41 144)
+ 'maroon4' (139 28 98)
+ 'mediumaquamarine' (102 205 170)
+ 'mediumblue' (0 0 205)
+ 'mediumorchid' (186 85 211)
+ 'mediumpurple' (147 112 219)
+ 'mediumseagreen' (60 179 113)
+ 'mediumslateblue' (123 104 238)
+ 'mediumspringgreen' (0 250 154)
+ 'mediumturquoise' (72 209 204)
+ 'mediumvioletred' (199 21 133)
+ 'MediumOrchid1' (224 102 255)
+ 'MediumOrchid2' (209 95 238)
+ 'MediumOrchid3' (180 82 205)
+ 'MediumOrchid4' (122 55 139)
+ 'MediumPurple1' (171 130 255)
+ 'MediumPurple2' (159 121 238)
+ 'MediumPurple3' (137 104 205)
+ 'MediumPurple4' (93 71 139)
+ 'midnightblue' (25 25 112)
+ 'mintcream' (245 255 250)
+ 'mistyrose' (255 228 225)
+ 'MistyRose1' (255 228 225)
+ 'MistyRose2' (238 213 210)
+ 'MistyRose3' (205 183 181)
+ 'MistyRose4' (139 125 123)
+ 'moccasin' (255 228 181)
+ 'navajowhite' (255 222 173)
+ 'NavajoWhite1' (255 222 173)
+ 'NavajoWhite2' (238 207 161)
+ 'NavajoWhite3' (205 179 139)
+ 'NavajoWhite4' (139 121 94)
+ 'navy' (0 0 128)
+ 'navyblue' (0 0 128)
+ 'oldlace' (253 245 230)
+ 'olivedrab' (107 142 35)
+ 'OliveDrab1' (192 255 62)
+ 'OliveDrab2' (179 238 58)
+ 'OliveDrab3' (154 205 50)
+ 'OliveDrab4' (105 139 34)
+ 'orange' (255 165 0)
+ 'orange1' (255 165 0)
+ 'orange2' (238 154 0)
+ 'orange3' (205 133 0)
+ 'orange4' (139 90 0)
+ 'orangered' (255 69 0)
+ 'OrangeRed1' (255 69 0)
+ 'OrangeRed2' (238 64 0)
+ 'OrangeRed3' (205 55 0)
+ 'OrangeRed4' (139 37 0)
+ 'orchid' (218 112 214)
+ 'orchid1' (255 131 250)
+ 'orchid2' (238 122 233)
+ 'orchid3' (205 105 201)
+ 'orchid4' (139 71 137)
+ 'palegoldenrod' (238 232 170)
+ 'palegreen' (152 251 152)
+ 'paleturquoise' (175 238 238)
+ 'palevioletred' (219 112 147)
+ 'PaleGreen1' (154 255 154)
+ 'PaleGreen2' (144 238 144)
+ 'PaleGreen3' (124 205 124)
+ 'PaleGreen4' (84 139 84)
+ 'PaleTurquoise1' (187 255 255)
+ 'PaleTurquoise2' (174 238 238)
+ 'PaleTurquoise3' (150 205 205)
+ 'PaleTurquoise4' (102 139 139)
+ 'PaleVioletRed1' (255 130 171)
+ 'PaleVioletRed2' (238 121 159)
+ 'PaleVioletRed3' (205 104 137)
+ 'PaleVioletRed4' (139 71 93)
+ 'papayawhip' (255 239 213)
+ 'peachpuff' (255 218 185)
+ 'PeachPuff1' (255 218 185)
+ 'PeachPuff2' (238 203 173)
+ 'PeachPuff3' (205 175 149)
+ 'PeachPuff4' (139 119 101)
+ 'peru' (205 133 63)
+ 'pink' (255 192 203)
+ 'pink1' (255 181 197)
+ 'pink2' (238 169 184)
+ 'pink3' (205 145 158)
+ 'pink4' (139 99 108)
+ 'plum' (221 160 221)
+ 'plum1' (255 187 255)
+ 'plum2' (238 174 238)
+ 'plum3' (205 150 205)
+ 'plum4' (139 102 139)
+ 'powderblue' (176 224 230)
+ 'purple' (160 32 240)
+ 'purple1' (155 48 255)
+ 'purple2' (145 44 238)
+ 'purple3' (125 38 205)
+ 'purple4' (85 26 139)
+ 'red' (255 0 0)
+ 'red1' (255 0 0)
+ 'red2' (238 0 0)
+ 'red3' (205 0 0)
+ 'red4' (139 0 0)
+ 'rosybrown' (188 143 143)
+ 'RosyBrown1' (255 193 193)
+ 'RosyBrown2' (238 180 180)
+ 'RosyBrown3' (205 155 155)
+ 'RosyBrown4' (139 105 105)
+ 'royalblue' (65 105 225)
+ 'RoyalBlue1' (72 118 255)
+ 'RoyalBlue2' (67 110 238)
+ 'RoyalBlue3' (58 95 205)
+ 'RoyalBlue4' (39 64 139)
+ 'saddlebrown' (139 69 19)
+ 'salmon' (250 128 114)
+ 'salmon1' (255 140 105)
+ 'salmon2' (238 130 98)
+ 'salmon3' (205 112 84)
+ 'salmon4' (139 76 57)
+ 'sandybrown' (244 164 96)
+ 'scoActiveBackground' (255 206 137)
+ 'scoActiveForeground' (43 45 49)
+ 'scoActiveTopShadow' (254 222 255)
+ 'scoAltBackground' (172 186 204)
+ 'scoBackground' (203 203 192)
+ 'scoForeground' (11 0 113)
+ 'scoHighlight' (141 178 215)
+ 'scoTopShadow' (255 240 248)
+ 'seagreen' (46 139 87)
+ 'SeaGreen1' (84 255 159)
+ 'SeaGreen2' (78 238 148)
+ 'SeaGreen3' (67 205 128)
+ 'SeaGreen4' (46 139 87)
+ 'seashell' (255 245 238)
+ 'seashell1' (255 245 238)
+ 'seashell2' (238 229 222)
+ 'seashell3' (205 197 191)
+ 'seashell4' (139 134 130)
+ 'sgi beet' (142 56 142)
+ 'sgi bright gray' (197 193 170)
+ 'sgi bright grey' (197 193 170)
+ 'sgi chartreuse' (113 198 113)
+ 'sgi dark gray' (85 85 85)
+ 'sgi dark grey' (85 85 85)
+ 'sgi gray 0' (0 0 0)
+ 'sgi gray 100' (255 255 255)
+ 'sgi gray 12' (30 30 30)
+ 'sgi gray 16' (40 40 40)
+ 'sgi gray 20' (51 51 51)
+ 'sgi gray 24' (61 61 61)
+ 'sgi gray 28' (71 71 71)
+ 'sgi gray 32' (81 81 81)
+ 'sgi gray 36' (91 91 91)
+ 'sgi gray 4' (10 10 10)
+ 'sgi gray 40' (102 102 102)
+ 'sgi gray 44' (112 112 112)
+ 'sgi gray 48' (122 122 122)
+ 'sgi gray 52' (132 132 132)
+ 'sgi gray 56' (142 142 142)
+ 'sgi gray 60' (153 153 153)
+ 'sgi gray 64' (163 163 163)
+ 'sgi gray 68' (173 173 173)
+ 'sgi gray 72' (183 183 183)
+ 'sgi gray 76' (193 193 193)
+ 'sgi gray 8' (20 20 20)
+ 'sgi gray 80' (204 204 204)
+ 'sgi gray 84' (214 214 214)
+ 'sgi gray 88' (224 224 224)
+ 'sgi gray 92' (234 234 234)
+ 'sgi gray 96' (244 244 244)
+ 'sgi grey 0' (0 0 0)
+ 'sgi grey 100' (255 255 255)
+ 'sgi grey 12' (30 30 30)
+ 'sgi grey 16' (40 40 40)
+ 'sgi grey 20' (51 51 51)
+ 'sgi grey 24' (61 61 61)
+ 'sgi grey 28' (71 71 71)
+ 'sgi grey 32' (81 81 81)
+ 'sgi grey 36' (91 91 91)
+ 'sgi grey 4' (10 10 10)
+ 'sgi grey 40' (102 102 102)
+ 'sgi grey 44' (112 112 112)
+ 'sgi grey 48' (122 122 122)
+ 'sgi grey 52' (132 132 132)
+ 'sgi grey 56' (142 142 142)
+ 'sgi grey 60' (153 153 153)
+ 'sgi grey 64' (163 163 163)
+ 'sgi grey 68' (173 173 173)
+ 'sgi grey 72' (183 183 183)
+ 'sgi grey 76' (193 193 193)
+ 'sgi grey 8' (20 20 20)
+ 'sgi grey 80' (204 204 204)
+ 'sgi grey 84' (214 214 214)
+ 'sgi grey 88' (224 224 224)
+ 'sgi grey 92' (234 234 234)
+ 'sgi grey 96' (244 244 244)
+ 'sgi light blue' (125 158 192)
+ 'sgi light gray' (170 170 170)
+ 'sgi light grey' (170 170 170)
+ 'sgi medium gray' (132 132 132)
+ 'sgi medium grey' (132 132 132)
+ 'sgi olive drab' (142 142 56)
+ 'sgi salmon' (198 113 113)
+ 'sgi slate blue' (113 113 198)
+ 'sgi teal' (56 142 142)
+ 'sgi very dark gray' (40 40 40)
+ 'sgi very dark grey' (40 40 40)
+ 'sgi very light gray' (214 214 214)
+ 'sgi very light grey' (214 214 214)
+ 'SGIBeet' (142 56 142)
+ 'SGIBrightGray' (197 193 170)
+ 'SGIBrightGrey' (197 193 170)
+ 'SGIChartreuse' (113 198 113)
+ 'SGIDarkGray' (85 85 85)
+ 'SGIDarkGrey' (85 85 85)
+ 'SGIGray0' (0 0 0)
+ 'SGIGray100' (255 255 255)
+ 'SGIGray12' (30 30 30)
+ 'SGIGray16' (40 40 40)
+ 'SGIGray20' (51 51 51)
+ 'SGIGray24' (61 61 61)
+ 'SGIGray28' (71 71 71)
+ 'SGIGray32' (81 81 81)
+ 'SGIGray36' (91 91 91)
+ 'SGIGray4' (10 10 10)
+ 'SGIGray40' (102 102 102)
+ 'SGIGray44' (112 112 112)
+ 'SGIGray48' (122 122 122)
+ 'SGIGray52' (132 132 132)
+ 'SGIGray56' (142 142 142)
+ 'SGIGray60' (153 153 153)
+ 'SGIGray64' (163 163 163)
+ 'SGIGray68' (173 173 173)
+ 'SGIGray72' (183 183 183)
+ 'SGIGray76' (193 193 193)
+ 'SGIGray8' (20 20 20)
+ 'SGIGray80' (204 204 204)
+ 'SGIGray84' (214 214 214)
+ 'SGIGray88' (224 224 224)
+ 'SGIGray92' (234 234 234)
+ 'SGIGray96' (244 244 244)
+ 'SGIGrey0' (0 0 0)
+ 'SGIGrey100' (255 255 255)
+ 'SGIGrey12' (30 30 30)
+ 'SGIGrey16' (40 40 40)
+ 'SGIGrey20' (51 51 51)
+ 'SGIGrey24' (61 61 61)
+ 'SGIGrey28' (71 71 71)
+ 'SGIGrey32' (81 81 81)
+ 'SGIGrey36' (91 91 91)
+ 'SGIGrey4' (10 10 10)
+ 'SGIGrey40' (102 102 102)
+ 'SGIGrey44' (112 112 112)
+ 'SGIGrey48' (122 122 122)
+ 'SGIGrey52' (132 132 132)
+ 'SGIGrey56' (142 142 142)
+ 'SGIGrey60' (153 153 153)
+ 'SGIGrey64' (163 163 163)
+ 'SGIGrey68' (173 173 173)
+ 'SGIGrey72' (183 183 183)
+ 'SGIGrey76' (193 193 193)
+ 'SGIGrey8' (20 20 20)
+ 'SGIGrey80' (204 204 204)
+ 'SGIGrey84' (214 214 214)
+ 'SGIGrey88' (224 224 224)
+ 'SGIGrey92' (234 234 234)
+ 'SGIGrey96' (244 244 244)
+ 'SGILightBlue' (125 158 192)
+ 'SGILightGray' (170 170 170)
+ 'SGILightGrey' (170 170 170)
+ 'SGIMediumGray' (132 132 132)
+ 'SGIMediumGrey' (132 132 132)
+ 'SGIOliveDrab' (142 142 56)
+ 'SGISalmon' (198 113 113)
+ 'SGISlateBlue' (113 113 198)
+ 'SGITeal' (56 142 142)
+ 'SGIVeryDarkGray' (40 40 40)
+ 'SGIVeryDarkGrey' (40 40 40)
+ 'SGIVeryLightGray' (214 214 214)
+ 'SGIVeryLightGrey' (214 214 214)
+ 'sienna' (160 82 45)
+ 'sienna1' (255 130 71)
+ 'sienna2' (238 121 66)
+ 'sienna3' (205 104 57)
+ 'sienna4' (139 71 38)
+ 'skyblue' (135 206 235)
+ 'SkyBlue1' (135 206 255)
+ 'SkyBlue2' (126 192 238)
+ 'SkyBlue3' (108 166 205)
+ 'SkyBlue4' (74 112 139)
+ 'slategray' (112 128 144)
+ 'slategrey' (112 128 144)
+ 'slateblue' (106 90 205)
+ 'SlateBlue1' (131 111 255)
+ 'SlateBlue2' (122 103 238)
+ 'SlateBlue3' (105 89 205)
+ 'SlateBlue4' (71 60 139)
+ 'SlateGray1' (198 226 255)
+ 'SlateGray2' (185 211 238)
+ 'SlateGray3' (159 182 205)
+ 'SlateGray4' (108 123 139)
+ 'snow' (255 250 250)
+ 'snow1' (255 250 250)
+ 'snow2' (238 233 233)
+ 'snow3' (205 201 201)
+ 'snow4' (139 137 137)
+ 'springgreen' (0 255 127)
+ 'SpringGreen1' (0 255 127)
+ 'SpringGreen2' (0 238 118)
+ 'SpringGreen3' (0 205 102)
+ 'SpringGreen4' (0 139 69)
+ 'steelblue' (70 130 180)
+ 'SteelBlue1' (99 184 255)
+ 'SteelBlue2' (92 172 238)
+ 'SteelBlue3' (79 148 205)
+ 'SteelBlue4' (54 100 139)
+ 'tan' (210 180 140)
+ 'tan1' (255 165 79)
+ 'tan2' (238 154 73)
+ 'tan3' (205 133 63)
+ 'tan4' (139 90 43)
+ 'thistle' (216 191 216)
+ 'thistle1' (255 225 255)
+ 'thistle2' (238 210 238)
+ 'thistle3' (205 181 205)
+ 'thistle4' (139 123 139)
+ 'tomato' (255 99 71)
+ 'tomato1' (255 99 71)
+ 'tomato2' (238 92 66)
+ 'tomato3' (205 79 57)
+ 'tomato4' (139 54 38)
+ 'turquoise' (64 224 208)
+ 'turquoise1' (0 245 255)
+ 'turquoise2' (0 229 238)
+ 'turquoise3' (0 197 205)
+ 'turquoise4' (0 134 139)
+ 'violet' (238 130 238)
+ 'violetred' (208 32 144)
+ 'VioletRed1' (255 62 150)
+ 'VioletRed2' (238 58 140)
+ 'VioletRed3' (205 50 120)
+ 'VioletRed4' (139 34 82)
+ 'wheat' (245 222 179)
+ 'wheat1' (255 231 186)
+ 'wheat2' (238 216 174)
+ 'wheat3' (205 186 150)
+ 'wheat4' (139 126 102)
+ 'white' (255 255 255)
+ 'whitesmoke' (245 245 245)
+ 'yellow' (255 255 0)
+ 'yellowgreen' (154 205 50)
+ 'yellow1' (255 255 0)
+ 'yellow2' (238 238 0)
+ 'yellow3' (205 205 0)
+ 'yellow4' (139 139 0)
+ ).
+
"
WinWorkstation initializeStandardColorNames
"
@@ -6294,130 +6256,130 @@
msg = 'WM_ALL' ifTrue:[
%{
- __debug_WM_ALL__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_ALL__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_USER' ifTrue:[
%{
- __debug_WM_MOUSEENTER__ = (aBoolean == true) ? 1 : 0;
- __debug_WM_MOUSELEAVE__ = (aBoolean == true) ? 1 : 0;
- __debug_WM_MOUSEMOVE__ = (aBoolean == true) ? 1 : 0;
- __debug_WM_MOUSEACTIVATE__ = (aBoolean == true) ? 1 : 0;
- __debug_WM_BUTTONUP__ = (aBoolean == true) ? 1 : 0;
- __debug_WM_BUTTONDOWN__ = (aBoolean == true) ? 1 : 0;
- __debug_WM_KEYUP__ = (aBoolean == true) ? 1 : 0;
- __debug_WM_KEYDOWN__ = (aBoolean == true) ? 1 : 0;
- __debug_WM_CHAR__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_MOUSEENTER__ = (aBoolean == true);
+ __debug_WM_MOUSELEAVE__ = (aBoolean == true);
+ __debug_WM_MOUSEMOVE__ = (aBoolean == true);
+ __debug_WM_MOUSEACTIVATE__ = (aBoolean == true);
+ __debug_WM_BUTTONUP__ = (aBoolean == true);
+ __debug_WM_BUTTONDOWN__ = (aBoolean == true);
+ __debug_WM_KEYUP__ = (aBoolean == true);
+ __debug_WM_KEYDOWN__ = (aBoolean == true);
+ __debug_WM_CHAR__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_MOUSEENTER' ifTrue:[
%{
- __debug_WM_MOUSEENTER__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_MOUSEENTER__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_MOUSELEAVE' ifTrue:[
%{
- __debug_WM_MOUSELEAVE__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_MOUSELEAVE__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_MOUSEMOVE' ifTrue:[
%{
- __debug_WM_MOUSEMOVE__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_MOUSEMOVE__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_MOUSEACTIVATE' ifTrue:[
%{
- __debug_WM_MOUSEACTIVATE__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_MOUSEACTIVATE__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_BUTTONUP' ifTrue:[
%{
- __debug_WM_BUTTONUP__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_BUTTONUP__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_BUTTONDOWN' ifTrue:[
%{
- __debug_WM_BUTTONDOWN__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_BUTTONDOWN__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_KEYUP' ifTrue:[
%{
- __debug_WM_KEYUP__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_KEYUP__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_KEYDOWN' ifTrue:[
%{
- __debug_WM_KEYDOWN__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_KEYDOWN__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_CHAR' ifTrue:[
%{
- __debug_WM_CHAR__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_CHAR__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_PAINT' ifTrue:[
%{
- __debug_WM_PAINT__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_PAINT__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_MOVING' ifTrue:[
%{
- __debug_WM_MOVING__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_MOVING__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_ERASEBKGND' ifTrue:[
%{
- __debug_WM_ERASEBKGND__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_ERASEBKGND__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_SETTEXT' ifTrue:[
%{
- __debug_WM_SETTEXT__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_SETTEXT__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_COPYDATA' ifTrue:[
%{
- __debug_WM_COPYDATA__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_COPYDATA__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_DROPFILES' ifTrue:[
%{
- __debug_WM_DROPFILES__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_DROPFILES__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_SHOWWINDOW' ifTrue:[
%{
- __debug_WM_SHOWWINDOW__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_SHOWWINDOW__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_SETCURSOR' ifTrue:[
%{
- __debug_WM_SETCURSOR__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_SETCURSOR__ = (aBoolean == true);
RETURN (self);
%}
].
msg = 'WM_FOCUS' ifTrue:[
%{
- __debug_WM_FOCUS__ = (aBoolean == true) ? 1 : 0;
+ __debug_WM_FOCUS__ = (aBoolean == true);
RETURN (self);
%}
].
@@ -6434,7 +6396,7 @@
WinWorkstation debug:true message:'WM_KEYUP'
WinWorkstation debug:true message:'WM_KEYDOWN'
WinWorkstation debug:true message:'WM_CHAR'
- WinWorkstation debug:true message:'WM_BUTTONDOWN'
+ WinWorkstation debug:true message:'WM_COPYDATA'
"
!
@@ -6451,7 +6413,7 @@
debugNative:aBoolean
%{ /* NOCONTEXT */
- __debugNative__ = (aBoolean == true) ? 1 : 0;
+ __debugNative__ = (aBoolean == true);
%}
"
WinWorkstation debugNative:true
@@ -9703,44 +9665,49 @@
getScaledRGBFromName:colorName into:aBlock
"get scaled rgb components (0..16rFFFF) of color named colorName,
and evaluate the 3-arg block, aBlock with them.
- Return nil for unknown color names."
+ Return nil for unknown color names or invalid hex numbers."
|triple r g b found cName|
r := g := b := 0.
found := false.
(colorName startsWith:$#) ifTrue:[
- "/ color in r/g/b hex notation
- r := Integer readFrom:(colorName copyFrom:2 to:3) radix:16.
- g := Integer readFrom:(colorName copyFrom:4 to:5) radix:16.
- b := Integer readFrom:(colorName copyFrom:6 to:7) radix:16.
- found := true.
+ "/ color in r/g/b hex notation
+ colorName size == 7 ifTrue:[
+ r := Integer readFrom:(colorName copyFrom:2 to:3) radix:16 onError:[nil].
+ g := Integer readFrom:(colorName copyFrom:4 to:5) radix:16 onError:[nil].
+ b := Integer readFrom:(colorName copyFrom:6 to:7) radix:16 onError:[nil].
+ ].
+ (r isNil or:[g isNil or:[b isNil]]) ifTrue:[^ nil].
+ found := true.
] ifFalse:[
- cName := colorName asString.
- triple := StandardColorValues at:cName ifAbsent:nil.
- triple isNil ifTrue:[
- "/ try lowercase name
- cName := cName asLowercase.
- triple := StandardColorValues at:cName ifAbsent:nil.
- triple isNil ifTrue:[
- "/ try lowercase without intermixed spaces
- cName := cName asCollectionOfWords asStringWith:nil.
- triple := StandardColorValues at:cName ifAbsent:nil.
- ].
- ].
- triple notNil ifTrue:[
- r := triple at:1.
- g := triple at:2.
- b := triple at:3.
- found := true.
- ].
+ cName := colorName asString.
+ triple := StandardColorValues at:cName ifAbsent:nil.
+ triple isNil ifTrue:[
+ "/ try lowercase name
+ cName := cName asLowercase.
+ triple := StandardColorValues at:cName ifAbsent:nil.
+ triple isNil ifTrue:[
+ "/ try lowercase without intermixed spaces
+ cName := cName asCollectionOfWords asStringWith:nil.
+ triple := StandardColorValues at:cName ifAbsent:nil.
+ ].
+ ].
+ triple notNil ifTrue:[
+ r := triple at:1.
+ g := triple at:2.
+ b := triple at:3.
+ found := true.
+ ].
].
found ifFalse:[
- "/ ('WinWorkstation: unknown color: ' , colorName) infoPrintCR.
- ^ nil.
+ "/ ('WinWorkstation: unknown color: ' , colorName) infoPrintCR.
+ ^ nil.
].
^ aBlock value:((r * 256) + r) value:((g * 256) + g) value:((b * 256) + b)
+
+ "Modified (comment): / 14-11-2016 / 14:02:11 / cg"
!
listOfAvailableColors
@@ -12738,14 +12705,15 @@
/* message from another process */
case WM_COPYDATA:
- DPRINTF((">>> WM_COPYDATA\n"));
+ DPRINTF((">>> WM_COPYDATA"));
{
OBJ eventData;
void *data = (void *)(ev->ev_arg1);
- int nBytes = ev->ev_arg2;
-
- if (ev->ev_arg1) {
- eventData = __MKBYTEARRAY(data, nBytes);
+ DPRINTFIF((__debug_WM_COPYDATA__) , (">>> WM_COPYDATA %s (%d)\n", data, ev->ev_arg2));
+
+ if (data) {
+ eventData = __MKBYTEARRAY(data, (int)ev->ev_arg2);
+ free(data); // see winEventProcessing()
} else {
eventData = nil;
}
@@ -13736,9 +13704,9 @@
%{
if (__tmpDC) {
#ifdef USE_EnumFontFamiliesEx
- EnumFontFamiliesEx( __tmpDC, NULL, EnumFPTypeFaceProc, (INT)&(typeFaceList));
-#else
- EnumFontFamilies( __tmpDC, NULL, EnumFPTypeFaceProc, (INT)&(typeFaceList));
+ EnumFontFamiliesEx( __tmpDC, NULL, EnumFPTypeFaceProc, (INT)&typeFaceList);
+#else
+ EnumFontFamilies( __tmpDC, NULL, EnumFPTypeFaceProc, (INT)&typeFaceList);
#endif
}
%}
@@ -13751,9 +13719,9 @@
if (__isStringLike(typeFace)) {
if (__tmpDC) {
#ifdef USE_EnumFontFamiliesEx
- EnumFontFamiliesEx(__tmpDC, __stringVal(typeFace), EnumFontsProc, (INT)&(fontList));
-#else
- EnumFontFamilies(__tmpDC, __stringVal(typeFace), EnumFontsProc, (INT)&(fontList));
+ EnumFontFamiliesEx(__tmpDC, __stringVal(typeFace), EnumFontsProc, (INT)&fontList);
+#else
+ EnumFontFamilies(__tmpDC, __stringVal(typeFace), EnumFontsProc, (INT)&fontList);
#endif
}
}
@@ -15596,7 +15564,7 @@
data.hArray = handleArray;
data.index = 0;
- EnumDisplayMonitors(NULL, NULL, EnumDisplayMonitorsProc, (INT)(&data));
+ EnumDisplayMonitors(NULL, NULL, EnumDisplayMonitorsProc, (INT)&data);
%}.
^ handleArray
@@ -17756,13 +17724,13 @@
((lpClassName notNil and:[lpClassName isWideString])
or:[lpWindowName notNil and:[lpWindowName isWideString]]) ifTrue:[
- ^ self
- primFindWindowW:(lpClassName isNil
- ifTrue:[nil]
- ifFalse:[lpClassName asUnicode16StringZ])
- windowName:(lpWindowName isNil
- ifTrue:[nil]
- ifFalse:[lpWindowName asUnicode16StringZ])
+ ^ self
+ primFindWindowW:(lpClassName isNil
+ ifTrue:[nil]
+ ifFalse:[lpClassName asUnicode16StringZ])
+ windowName:(lpWindowName isNil
+ ifTrue:[nil]
+ ifFalse:[lpWindowName asUnicode16StringZ])
].
^ self primFindWindowA:lpClassName windowName:lpWindowName
@@ -18275,7 +18243,7 @@
<apicall: handle "FindWindowW" (pointer pointer) module: "user32.dll" >
"
- Display primFindWindowW: nil windowName: 'ST/X Launcher' asUnicode16String
+ Display primFindWindowW: nil windowName: 'ST/X Launcher' asUnicode16String
"
!
@@ -18646,9 +18614,9 @@
externalBytes := aByteArrayOrString asExternalBytesUnprotected.
copyDataStruct := CopyDataStructStructure new.
- copyDataStruct
- cbData:externalBytes size;
- lpData:externalBytes address.
+ copyDataStruct
+ cbData:externalBytes size;
+ lpData:externalBytes address.
lParam := copyDataStruct asExternalBytesUnprotected.
^ self primSendMessage:aWindowId message:messageType wParam:nil lParam:lParam.
@@ -19392,7 +19360,7 @@
sizeInBytes
ExternalAddress pointerSize == 8 ifTrue:[
- ^ 20.
+ ^ 24.
].
^ 12
! !
@@ -19408,46 +19376,46 @@
cbData
ExternalAddress pointerSize == 8 ifTrue:[
- ^ self unsignedInt32At: 8 + 1.
+ ^ self unsignedInt32At: 8 + 1.
].
^ self unsignedInt32At: 4 + 1.
!
cbData: cbData
ExternalAddress pointerSize == 8 ifTrue:[
- self unsignedInt32At: 8 + 1 put: cbData.
+ self unsignedInt32At: 8 + 1 put: cbData.
] ifFalse:[
- self unsignedInt32At: 4 + 1 put: cbData.
+ self unsignedInt32At: 4 + 1 put: cbData.
].
!
dwData
ExternalAddress pointerSize == 8 ifTrue:[
- ^ self unsignedInt64At: 0 + 1.
+ ^ self unsignedInt64At: 0 + 1.
].
^ self unsignedInt32At: 0 + 1.
!
dwData: dwData
ExternalAddress pointerSize == 8 ifTrue:[
- self unsignedInt64At: 0 + 1 put:dwData.
+ self unsignedInt64At: 0 + 1 put:dwData.
] ifFalse:[
- self unsignedInt32At: 0 + 1 put:dwData.
+ self unsignedInt32At: 0 + 1 put:dwData.
].
!
lpData
ExternalAddress pointerSize == 8 ifTrue:[
- ^ self unsignedInt64At: 12 + 1.
+ ^ self unsignedInt64At: 16 + 1.
].
^ self unsignedInt32At: 8 + 1.
!
lpData: lpData
ExternalAddress pointerSize == 8 ifTrue:[
- self unsignedInt64At: 12 + 1 put: lpData.
+ self unsignedInt64At: 16 + 1 put: lpData.
] ifFalse:[
- self unsignedInt32At: 8 + 1 put: lpData.
+ self unsignedInt32At: 8 + 1 put: lpData.
].
! !