func init // adds using namespace sys.add_use('System.Drawing') // initialize instance sys.add_var(this.name, 'Color') // initialize instance of the custom color if(not isdef("Color")) sys.add_use('System.Runtime.InteropServices') sys.LoadMethod("ColorToRGB") c = this.props("Color").value if(c < 0) blk_init.println(this.codename, ' = ColorToRGB(', (c _and_ 16777215), ');') else r = c _and_ 255 g = (c >> 8) _and_ 255 b = (c >> 16) _and_ 255 blk_init.println(this.codename, ' = Color.FromArgb(', r, ',', g, ',', b, ');') end end // makes implementation methods for properties sys._prop_init('A', 1, 0, 0) sys._prop_init('AliceBlue', 1, 0, 0, 'Color') sys._prop_init('AntiqueWhite', 1, 0, 0, 'Color') sys._prop_init('Aqua', 1, 0, 0, 'Color') sys._prop_init('Aquamarine', 1, 0, 0, 'Color') sys._prop_init('Azure', 1, 0, 0, 'Color') sys._prop_init('B', 1, 0, 0) sys._prop_init('Beige', 1, 0, 0, 'Color') sys._prop_init('Bisque', 1, 0, 0, 'Color') sys._prop_init('Black', 1, 0, 0, 'Color') sys._prop_init('BlanchedAlmond', 1, 0, 0, 'Color') sys._prop_init('Blue', 1, 0, 0, 'Color') sys._prop_init('BlueViolet', 1, 0, 0, 'Color') sys._prop_init('Brown', 1, 0, 0, 'Color') sys._prop_init('BurlyWood', 1, 0, 0, 'Color') sys._prop_init('CadetBlue', 1, 0, 0, 'Color') sys._prop_init('Chartreuse', 1, 0, 0, 'Color') sys._prop_init('Chocolate', 1, 0, 0, 'Color') sys._prop_init('Coral', 1, 0, 0, 'Color') sys._prop_init('CornflowerBlue', 1, 0, 0, 'Color') sys._prop_init('Cornsilk', 1, 0, 0, 'Color') sys._prop_init('Crimson', 1, 0, 0, 'Color') sys._prop_init('Cyan', 1, 0, 0, 'Color') sys._prop_init('DarkBlue', 1, 0, 0, 'Color') sys._prop_init('DarkCyan', 1, 0, 0, 'Color') sys._prop_init('DarkGoldenrod', 1, 0, 0, 'Color') sys._prop_init('DarkGray', 1, 0, 0, 'Color') sys._prop_init('DarkGreen', 1, 0, 0, 'Color') sys._prop_init('DarkKhaki', 1, 0, 0, 'Color') sys._prop_init('DarkMagenta', 1, 0, 0, 'Color') sys._prop_init('DarkOliveGreen', 1, 0, 0, 'Color') sys._prop_init('DarkOrange', 1, 0, 0, 'Color') sys._prop_init('DarkOrchid', 1, 0, 0, 'Color') sys._prop_init('DarkRed', 1, 0, 0, 'Color') sys._prop_init('DarkSalmon', 1, 0, 0, 'Color') sys._prop_init('DarkSeaGreen', 1, 0, 0, 'Color') sys._prop_init('DarkSlateBlue', 1, 0, 0, 'Color') sys._prop_init('DarkSlateGray', 1, 0, 0, 'Color') sys._prop_init('DarkTurquoise', 1, 0, 0, 'Color') sys._prop_init('DarkViolet', 1, 0, 0, 'Color') sys._prop_init('DeepPink', 1, 0, 0, 'Color') sys._prop_init('DeepSkyBlue', 1, 0, 0, 'Color') sys._prop_init('DimGray', 1, 0, 0, 'Color') sys._prop_init('DodgerBlue', 1, 0, 0, 'Color') sys._prop_init('Firebrick', 1, 0, 0, 'Color') sys._prop_init('FloralWhite', 1, 0, 0, 'Color') sys._prop_init('ForestGreen', 1, 0, 0, 'Color') sys._prop_init('Fuchsia', 1, 0, 0, 'Color') sys._prop_init('G', 1, 0, 0) sys._prop_init('Gainsboro', 1, 0, 0, 'Color') sys._prop_init('GhostWhite', 1, 0, 0, 'Color') sys._prop_init('Gold', 1, 0, 0, 'Color') sys._prop_init('Goldenrod', 1, 0, 0, 'Color') sys._prop_init('Gray', 1, 0, 0, 'Color') sys._prop_init('Green', 1, 0, 0, 'Color') sys._prop_init('GreenYellow', 1, 0, 0, 'Color') sys._prop_init('Honeydew', 1, 0, 0, 'Color') sys._prop_init('HotPink', 1, 0, 0, 'Color') sys._prop_init('IndianRed', 1, 0, 0, 'Color') sys._prop_init('Indigo', 1, 0, 0, 'Color') sys._prop_init('IsEmpty', 1, 0, 104) sys._prop_init('IsKnownColor', 1, 0, 104) sys._prop_init('IsNamedColor', 1, 0, 104) sys._prop_init('IsSystemColor', 1, 0, 104) sys._prop_init('Ivory', 1, 0, 0, 'Color') sys._prop_init('Khaki', 1, 0, 0, 'Color') sys._prop_init('Lavender', 1, 0, 0, 'Color') sys._prop_init('LavenderBlush', 1, 0, 0, 'Color') sys._prop_init('LawnGreen', 1, 0, 0, 'Color') sys._prop_init('LemonChiffon', 1, 0, 0, 'Color') sys._prop_init('LightBlue', 1, 0, 0, 'Color') sys._prop_init('LightCoral', 1, 0, 0, 'Color') sys._prop_init('LightCyan', 1, 0, 0, 'Color') sys._prop_init('LightGoldenrodYellow', 1, 0, 0, 'Color') sys._prop_init('LightGray', 1, 0, 0, 'Color') sys._prop_init('LightGreen', 1, 0, 0, 'Color') sys._prop_init('LightPink', 1, 0, 0, 'Color') sys._prop_init('LightSalmon', 1, 0, 0, 'Color') sys._prop_init('LightSeaGreen', 1, 0, 0, 'Color') sys._prop_init('LightSkyBlue', 1, 0, 0, 'Color') sys._prop_init('LightSlateGray', 1, 0, 0, 'Color') sys._prop_init('LightSteelBlue', 1, 0, 0, 'Color') sys._prop_init('LightYellow', 1, 0, 0, 'Color') sys._prop_init('Lime', 1, 0, 0, 'Color') sys._prop_init('LimeGreen', 1, 0, 0, 'Color') sys._prop_init('Linen', 1, 0, 0, 'Color') sys._prop_init('Magenta', 1, 0, 0, 'Color') sys._prop_init('Maroon', 1, 0, 0, 'Color') sys._prop_init('MediumAquamarine', 1, 0, 0, 'Color') sys._prop_init('MediumBlue', 1, 0, 0, 'Color') sys._prop_init('MediumOrchid', 1, 0, 0, 'Color') sys._prop_init('MediumPurple', 1, 0, 0, 'Color') sys._prop_init('MediumSeaGreen', 1, 0, 0, 'Color') sys._prop_init('MediumSlateBlue', 1, 0, 0, 'Color') sys._prop_init('MediumSpringGreen', 1, 0, 0, 'Color') sys._prop_init('MediumTurquoise', 1, 0, 0, 'Color') sys._prop_init('MediumVioletRed', 1, 0, 0, 'Color') sys._prop_init('MidnightBlue', 1, 0, 0, 'Color') sys._prop_init('MintCream', 1, 0, 0, 'Color') sys._prop_init('MistyRose', 1, 0, 0, 'Color') sys._prop_init('Moccasin', 1, 0, 0, 'Color') sys._prop_init('NavajoWhite', 1, 0, 0, 'Color') sys._prop_init('Navy', 1, 0, 0, 'Color') sys._prop_init('OldLace', 1, 0, 0, 'Color') sys._prop_init('Olive', 1, 0, 0, 'Color') sys._prop_init('OliveDrab', 1, 0, 0, 'Color') sys._prop_init('Orange', 1, 0, 0, 'Color') sys._prop_init('OrangeRed', 1, 0, 0, 'Color') sys._prop_init('Orchid', 1, 0, 0, 'Color') sys._prop_init('PaleGoldenrod', 1, 0, 0, 'Color') sys._prop_init('PaleGreen', 1, 0, 0, 'Color') sys._prop_init('PaleTurquoise', 1, 0, 0, 'Color') sys._prop_init('PaleVioletRed', 1, 0, 0, 'Color') sys._prop_init('PapayaWhip', 1, 0, 0, 'Color') sys._prop_init('PeachPuff', 1, 0, 0, 'Color') sys._prop_init('Peru', 1, 0, 0, 'Color') sys._prop_init('Pink', 1, 0, 0, 'Color') sys._prop_init('Plum', 1, 0, 0, 'Color') sys._prop_init('PowderBlue', 1, 0, 0, 'Color') sys._prop_init('Purple', 1, 0, 0, 'Color') sys._prop_init('R', 1, 0, 0) sys._prop_init('Red', 1, 0, 0, 'Color') sys._prop_init('RosyBrown', 1, 0, 0, 'Color') sys._prop_init('RoyalBlue', 1, 0, 0, 'Color') sys._prop_init('SaddleBrown', 1, 0, 0, 'Color') sys._prop_init('Salmon', 1, 0, 0, 'Color') sys._prop_init('SandyBrown', 1, 0, 0, 'Color') sys._prop_init('SeaGreen', 1, 0, 0, 'Color') sys._prop_init('SeaShell', 1, 0, 0, 'Color') sys._prop_init('Sienna', 1, 0, 0, 'Color') sys._prop_init('Silver', 1, 0, 0, 'Color') sys._prop_init('SkyBlue', 1, 0, 0, 'Color') sys._prop_init('SlateBlue', 1, 0, 0, 'Color') sys._prop_init('SlateGray', 1, 0, 0, 'Color') sys._prop_init('Snow', 1, 0, 0, 'Color') sys._prop_init('SpringGreen', 1, 0, 0, 'Color') sys._prop_init('SteelBlue', 1, 0, 0, 'Color') sys._prop_init('Tan', 1, 0, 0, 'Color') sys._prop_init('Teal', 1, 0, 0, 'Color') sys._prop_init('Thistle', 1, 0, 0, 'Color') sys._prop_init('Tomato', 1, 0, 0, 'Color') sys._prop_init('Transparent', 1, 0, 0, 'Color') sys._prop_init('Turquoise', 1, 0, 0, 'Color') sys._prop_init('Violet', 1, 0, 0, 'Color') sys._prop_init('Wheat', 1, 0, 0, 'Color') sys._prop_init('White', 1, 0, 0, 'Color') sys._prop_init('WhiteSmoke', 1, 0, 0, 'Color') sys._prop_init('Yellow', 1, 0, 0, 'Color') sys._prop_init('YellowGreen', 1, 0, 0, 'Color') // makes implementation of methods as properties sys._mtd_as_prop_init('GetBrightness()') sys._mtd_as_prop_init('GetHashCode()') sys._mtd_as_prop_init('GetHue()') sys._mtd_as_prop_init('GetSaturation()') sys._mtd_as_prop_init('ToArgb()') sys._mtd_as_prop_init('ToKnownColor()') sys._mtd_as_prop_init('ToString()') sys._mtd_as_prop_init('Color') end func CustomColor c = this.props("CustomColor").value if(c < 0) return('ColorToRGB(' + (c _and_ 16777215) + ')') else r = c _and_ 255 g = (c >> 8) _and_ 255 b = (c >> 16) _and_ 255 return('Color.FromArgb(' + r + ',' + g + ',' + b + ')') end end func Empty return('Color.Empty') end func doEquals(obj) if(linked("onEquals")) event("onEquals", this.codename + '.Equals(' + d("obj") + ')') else blk.println(this.codename, '.Equals(', d("obj"), ');') end end func doFromArgb(argb) blk.println(this.codename, ' = Color.FromArgb(', d("argb"), ');') event("onFromArgb", this.codename) end func doFromArgb2(alpha, baseColor) blk.println(this.codename, ' = Color.FromArgb(', d("alpha"), ', ', d("baseColor"), ');') event("onFromArgb", this.codename) end func doFromArgb3(red, green, blue) blk.println(this.codename, ' = Color.FromArgb(', d("red_"), ', ', d("green_"), ', ', d("blue_"), ');') event("onFromArgb", this.codename) end func doFromArgb4(alpha, red, green, blue) blk.println(this.codename, ' = Color.FromArgb(', d("alpha"), ', ', d("red_"), ', ', d("green_"), ', ', d("blue_"), ');') event("onFromArgb", this.codename) end func doFromKnownColor(color) blk.println(this.codename, ' = Color.FromKnownColor(', d("knowncolor"), ');') event("onFromKnownColor", this.codename) end func doFromName(name) blk.println(this.codename, ' = Color.FromName(', d("colorname"), ');') event("onFromName", this.codename) end