Explicitly include a boost "windows" folder even on linux
[supercollider.git] / HelpSource / Classes / QPalette.schelp
blob4106c0c88aa57595761f92e9add3a65fb0a27f95
1 class:: QPalette
2 summary:: Set of colors used by the GUI
3 categories::  GUI>Accessories
6 Description::
8 QPalette is a strong::set of colors:: that the GUI system uses to draw the views. The colors are organized into three strong::color groups:: (active, inactive and disabled) used according to the state of the views drawn, and each group containins one color assigned to each of the various strong::color roles:: (window, windowText, button, buttonText, etc.), used to draw distinct elements of the views. See link::Reference/palette_color_roles:: and link::Reference/palette_color_groups:: for details.
10 A palette can be assigned to the whole GUI using link::Classes/QtGUI#*palette::, or to a particular view using link::Classes/View#-palette::. Views will inherit a palette from their parent, and ultimately QtGUI, unless a palette is explicitely assigned to them. Moreover, when setting a palette on a view, it will be combined with the inherited one, overriding only those colors that have been explicitely set on the palette (see link::#-hasColor::). Hence, assigning a new and unmodified palette will reset all the colors to the inherited ones.
12 There are also two predefined palettes accessible using link::#*light:: and link::#*dark::. The light palette is assigned to QtGUI by default on startup. Should you wish to use a palette that matches the color scheme used natively on your platform, you can access such palette using link::#*system::.
14 If you wish to design your own palette, it is most convenient to use link::#*auto::, which will automatically derive a palette from only two colors, and then modify the details as you see fit.
16 Note that in Qt GUI most color-related methods of views (like link::Classes/Window#-background::, link::Classes/Slider#-knobColor::, etc.) actually modify the view's palette.
20 CLASSMETHODS::
22 METHOD:: new
23         Instantiates a new palette, equivalent to the global palette assigned to QtGUI. All colors are considered to not be set (see link::#-hasColor::).
25 METHOD:: auto
26         Instantiates a new palette, with colors automatically derived from the given colors for 'button' and 'window' color roles. All colors are considered to be set (see link::#-hasColor::).
28         argument:: buttonColor
29                 The Color assigned to the button role.
30         argument:: windowColor
31                 The Color assigned to the window role.
33 METHOD:: light
34         A predefined palette using light colors. All colors are considered to be set (see link::#-hasColor::).
36 METHOD:: dark
37         A predefined palette using dark colors. All colors are considered to be set (see link::#-hasColor::).
39 METHOD:: system
40         The native system palette. All colors are considered to be set (see link::#-hasColor::).
43 INSTANCEMETHODS::
46 PRIVATE:: prInit
47 PRIVATE:: prAuto
48 PRIVATE:: prSystem
49 PRIVATE:: prColor
50 PRIVATE:: prSetColor
51 PRIVATE:: prHasColor
53 METHOD:: color
54         Returns the color assigned to a color role within a color group.
55         argument:: role
56                 A symbol among link::Reference/palette_color_roles::.
57         argument:: group
58                 A symbol among link::Reference/palette_color_groups::, or nil, in which case the current color group is used.
60 METHOD:: setColor
61         Assigns a color to a color role within a color group.
63         argument:: color
64                 A Color.
65         argument:: role
66                 A symbol among link::Reference/palette_color_roles::.
67         argument:: group
68                 A symbol among link::Reference/palette_color_groups::, or nil, in which case the color will be assigned to all groups.
70 METHOD:: hasColor
71         Whether the color belonging to a color role and group has been set on this QPalette instance.
73         When setting a palette on a view, only colors for which this methods returns true will be changed, others will be inherited from the parent view (or QtGUI if this view has no parent).
75         argument:: role
76                 A symbol among link::Reference/palette_color_roles::.
77         argument:: group
78                 A symbol among link::Reference/palette_color_groups::.
80 METHOD:: window
81         Convenience method to get or set the color for the 'window' role.
83 METHOD:: windowText
84         Convenience method to get or set the color for the 'windowText' role.
86 METHOD:: button
87         Convenience method to get or set the color for the 'button' role.
89 METHOD:: buttonText
90         Convenience method to get or set the color for the 'buttonText' role.
92 METHOD:: base
93         Convenience method to get or set the color for the 'base' role.
95 METHOD:: baseText
96         Convenience method to get or set the color for the 'baseText' role.
98 METHOD:: highlight
99         Convenience method to get or set the color for the 'highlight' role.
101 METHOD:: highlightText
102         Convenience method to get or set the color for the 'highlightText' role.