SystemPalette class###################This object does all the handling for system attribute colors and systempalette management.Member Functions================_ Denotes a protected functionSystemPalette(void)-------------------1. Allocate the rgb_color[256] palette on the heap and call _GenerateSystemPalette()2. Initialize attribute variables to the defaults~SystemPalette(void)--------------------1) Free the palette arrayvoid SetPalette(uint8 index, RGBColor col), void SetPalette(uint8 index, rgb_color col)---------------------------------------------------------------------------------------Sets the said index to the passed color value.RGBColor GetPalette(uint8 index)--------------------------------Returns the color at said index in the palette.void SetGUIColor(color_which which, RGBColor col)-------------------------------------------------RGBColor GetGUIColor(color_which which)---------------------------------------color_set GetGUIColors(void)----------------------------void SetGUIColors(color_set cset)---------------------------------These tweak or return the system attribute colors, one at a time or all at once.protected: void \_GenerateSystemPalette(rgb_color \*palette)------------------------------------------------------------Sets the passed palette to the BeOS R5 system colors, which follows.Grays:......0,0,0 -> 248,248,248 by increments of 8Blues:......0,0,2550,0,2290,0,2040,0,1790,0,1540,0,1290,0,1050,0,800,0,550,0,30Reds:.....as per blues, but red values are 1 lessGreens:.......as per blues, but green values are 1 less0,152,51255,255,255The following sets use [255, 203, 152, 102, 51, 0] for the blue values,keeping the other colors the same:203,255, [value]152,255, [value]102,255, [value]51,255, [value]255,152, [value]0,102,2550,102,203203,203, [value]152,255, [value]102,255, [value]51,255, [value]255,102, [value]0,102,1520,102,102203,152, [value]152,152, [value]102,152, [value]51,152, [value]230,134,0255,51, [value excepting 255]0,102,510,102,0203,102, [value]152,102, [value]102,102, [value]51,102, [value]255,0, [value excepting 0]255,175,190,51,2550,51,203203,51, [value]152,51, [value]102,51, [value]51,51, [value]255,203,102 -> 255,203,255, stepping in the [value] increments0,51, [value, starting at 152]203,0, [value, excepting 0]255,227,70152,0, [value]102,0, [value]51,0, [value]255,203,51255,203,0255,255, [values in reverse]protected: void _SetDefaultGUIColors(void)-------------------------------------------Sets the internal color_set to the defaults, which is the following:- panel_background: 216,216, 216- panel_text: 0,0,0- document_background: 255,255,255- document_text: 0,0,0- control_background: 216,216,216- control_text: 0,0,0- control_border: 0,0,0- control_highlight: 0,0,255- tooltip_background:- tooltip_text: 0,0,0- menu_background: 216,216,216- menu_selected_background: 160,160,160- menu_text: 0,0,0- menu_selected_text: 0,0,0- menu_separator_high: 241,241,241- menu_separator_low: 186,186,186- menu_triggers: 0,0,0Structures==========.. code-block:: cppcolor_set {rgb_color panel_backgroundrgb_color panel_textrgb_color document_backgroundrgb_color document_textrgb_color control_backgroundrgb_color control_textrgb_color control_borderrgb_color control_highlightrgb_color tooltip_backgroundrgb_color tooltip_textrgb_color menu_backgroundrgb_color menu_selected_backgroundrgb_color menu_textrgb_color menu_selected_textrgb_color menu_separatorrgb_color menu_triggers}