]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/palette.tex
Move reentrance guard down.
[wxWidgets.git] / docs / latex / wx / palette.tex
CommitLineData
88ef3a57
WS
1%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2%% Name: palette.tex
3%% Purpose: wxPalette docs
4%% Author:
5%% Modified by:
6%% Created:
7%% RCS-ID: $Id$
8%% Copyright: (c) wxWidgets
9%% License: wxWindows license
10%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11
a660d684
KB
12\section{\class{wxPalette}}\label{wxpalette}
13
df816ad9
RR
14A palette is a table that maps pixel values to RGB colours. It allows the
15colours of a low-depth bitmap, for example, to be mapped to the available
16colours in a display. The notion of palettes is becoming more and more
17obsolete nowadays and only the MSW port is still using a native palette.
18All other ports use generic code which is basically just an array of
19colours.
20
21It is likely that in the future the only use for palettes within wxWidgets
22will be for representing colour indeces from images (such as GIF or PNG).
23The image handlers for these formats have been modified to create a palette
24if there is such information in the original image file (usually 256 or less
25colour images). See \helpref{wxImage}{wximage} for more information.
a660d684 26
5b6aa0ff 27%TODO: topic overview for wxPalette.
a660d684
KB
28\wxheading{Derived from}
29
30\helpref{wxGDIObject}{wxgdiobject}\\
31\helpref{wxObject}{wxobject}
32
954b8ae6
JS
33\wxheading{Include files}
34
35<wx/palette.h>
36
20e85460
JS
37\wxheading{Predefined objects}
38
39Objects:
40
41{\bf wxNullPalette}
42
a660d684
KB
43\wxheading{See also}
44
45\helpref{wxDC::SetPalette}{wxdcsetpalette}, \helpref{wxBitmap}{wxbitmap}
46
47\latexignore{\rtfignore{\wxheading{Members}}}
48
dcbd177f 49\membersection{wxPalette::wxPalette}\label{wxpalettector}
a660d684
KB
50
51\func{}{wxPalette}{\void}
52
53Default constructor.
54
55\func{}{wxPalette}{\param{const wxPalette\&}{ palette}}
56
57Copy constructor. This uses reference counting so is a cheap operation.
58
eaaa6a06 59\func{}{wxPalette}{\param{int}{ n}, \param{const unsigned char* }{red},\\
a660d684
KB
60 \param{const unsigned char* }{green}, \param{const unsigned char* }{blue}}
61
62Creates a palette from arrays of size {\it n}, one for each
63red, blue or green component.
64
65\wxheading{Parameters}
66
67\docparam{palette}{A pointer or reference to the palette to copy.}
68
69\docparam{n}{The number of indices in the palette.}
70
71\docparam{red}{An array of red values.}
72
73\docparam{green}{An array of green values.}
74
75\docparam{blue}{An array of blue values.}
76
77\wxheading{See also}
78
79\helpref{wxPalette::Create}{wxpalettecreate}
80
f3539882
VZ
81\perlnote{In wxPerl the third constructor form takes as parameters
82 3 array references ( they must be of the same length ).}
83
dcbd177f 84\membersection{wxPalette::\destruct{wxPalette}}\label{wxpalettedtor}
a660d684
KB
85
86\func{}{\destruct{wxPalette}}{\void}
87
88Destructor.
89
90\membersection{wxPalette::Create}\label{wxpalettecreate}
91
eaaa6a06 92\func{bool}{Create}{\param{int}{ n}, \param{const unsigned char* }{red},\rtfsp
a660d684
KB
93 \param{const unsigned char* }{green}, \param{const unsigned char* }{blue}}
94
95Creates a palette from arrays of size {\it n}, one for each
96red, blue or green component.
97
98\wxheading{Parameters}
99
100\docparam{n}{The number of indices in the palette.}
101
102\docparam{red}{An array of red values.}
103
104\docparam{green}{An array of green values.}
105
106\docparam{blue}{An array of blue values.}
107
108\wxheading{Return value}
109
cc81d32f 110true if the creation was successful, false otherwise.
a660d684
KB
111
112\wxheading{See also}
113
dcbd177f 114\helpref{wxPalette::wxPalette}{wxpalettector}
a660d684 115
917be7ed
WS
116\membersection{wxPalette::GetColoursCount}\label{wxpalettegetcolourscount}
117
118\constfunc{int}{GetColoursCount}{\void}
119
120Returns number of entries in palette.
121
a660d684
KB
122\membersection{wxPalette::GetPixel}\label{wxpalettegetpixel}
123
88ef3a57
WS
124\constfunc{int}{GetPixel}{\param{unsigned char }{red}, \param{unsigned char }{green},\rtfsp
125 \param{unsigned char }{blue}}
a660d684
KB
126
127Returns a pixel value (index into the palette) for the given RGB values.
128
129\wxheading{Parameters}
130
131\docparam{red}{Red value.}
132
133\docparam{green}{Green value.}
134
135\docparam{blue}{Blue value.}
136
137\wxheading{Return value}
138
88ef3a57 139The nearest palette index or {\tt wxNOT\_FOUND} for unexpected errors.
a660d684
KB
140
141\wxheading{See also}
142
143\helpref{wxPalette::GetRGB}{wxpalettegetrgb}
144
145\membersection{wxPalette::GetRGB}\label{wxpalettegetrgb}
146
0f353563 147\constfunc{bool}{GetRGB}{\param{int}{ pixel}, \param{const unsigned char* }{red}, \param{const unsigned char* }{green},\rtfsp
a660d684
KB
148 \param{const unsigned char* }{blue}}
149
150Returns RGB values for a given palette index.
151
152\wxheading{Parameters}
153
154\docparam{pixel}{The palette index.}
155
156\docparam{red}{Receives the red value.}
157
158\docparam{green}{Receives the green value.}
159
160\docparam{blue}{Receives the blue value.}
161
162\wxheading{Return value}
163
cc81d32f 164true if the operation was successful.
a660d684
KB
165
166\wxheading{See also}
167
168\helpref{wxPalette::GetPixel}{wxpalettegetpixel}
169
f3539882
VZ
170\perlnote{In wxPerl this method takes only the {\tt pixel} parameter and
171 returns a 3-element list ( or the empty list upon failure ).}
172
b7cacb43 173\membersection{wxPalette::IsOk}\label{wxpaletteisok}
a660d684 174
b7cacb43 175\constfunc{bool}{IsOk}{\void}
a660d684 176
cc81d32f 177Returns true if palette data is present.
a660d684
KB
178
179\membersection{wxPalette::operator $=$}\label{wxpaletteassignment}
180
181\func{wxPalette\&}{operator $=$}{\param{const wxPalette\& }{palette}}
182
183Assignment operator, using reference counting. Returns a reference
184to `this'.
185
186\membersection{wxPalette::operator $==$}\label{wxpaletteequals}
187
188\func{bool}{operator $==$}{\param{const wxPalette\& }{palette}}
189
190Equality operator. Two palettes are equal if they contain pointers
191to the same underlying palette data. It does not compare each attribute,
192so two independently-created palettes using the same parameters will
193fail the test.
194
195\membersection{wxPalette::operator $!=$}\label{wxpalettenotequals}
196
197\func{bool}{operator $!=$}{\param{const wxPalette\& }{palette}}
198
199Inequality operator. Two palettes are not equal if they contain pointers
200to different underlying palette data. It does not compare each attribute.