1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3 %% Purpose: wxPalette docs
8 %% Copyright: (c) wxWidgets
9 %% License: wxWindows license
10 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12 \section{\class{wxPalette
}}\label{wxpalette
}
14 A palette is a table that maps pixel values to RGB colours. It allows the
15 colours of a low-depth bitmap, for example, to be mapped to the available
16 colours in a display. The notion of palettes is becoming more and more
17 obsolete nowadays and only the MSW port is still using a native palette.
18 All other ports use generic code which is basically just an array of
21 It is likely that in the future the only use for palettes within wxWidgets
22 will be for representing colour indeces from images (such as GIF or PNG).
23 The image handlers for these formats have been modified to create a palette
24 if there is such information in the original image file (usually
256 or less
25 colour images). See
\helpref{wxImage
}{wximage
} for more information.
27 %TODO: topic overview for wxPalette.
28 \wxheading{Derived from
}
30 \helpref{wxGDIObject
}{wxgdiobject
}\\
31 \helpref{wxObject
}{wxobject
}
33 \wxheading{Include files
}
37 \wxheading{Predefined objects
}
45 \helpref{wxDC::SetPalette
}{wxdcsetpalette
},
\helpref{wxBitmap
}{wxbitmap
}
47 \latexignore{\rtfignore{\wxheading{Members
}}}
49 \membersection{wxPalette::wxPalette
}\label{wxpalettector
}
51 \func{}{wxPalette
}{\void}
55 \func{}{wxPalette
}{\param{const wxPalette\&
}{ palette
}}
57 Copy constructor. This uses reference counting so is a cheap operation.
59 \func{}{wxPalette
}{\param{int
}{ n
},
\param{const unsigned char*
}{red
},\\
60 \param{const unsigned char*
}{green
},
\param{const unsigned char*
}{blue
}}
62 Creates a palette from arrays of size
{\it n
}, one for each
63 red, blue or green component.
65 \wxheading{Parameters
}
67 \docparam{palette
}{A pointer or reference to the palette to copy.
}
69 \docparam{n
}{The number of indices in the palette.
}
71 \docparam{red
}{An array of red values.
}
73 \docparam{green
}{An array of green values.
}
75 \docparam{blue
}{An array of blue values.
}
79 \helpref{wxPalette::Create
}{wxpalettecreate
}
81 \perlnote{In wxPerl the third constructor form takes as parameters
82 3 array references ( they must be of the same length ).
}
84 \membersection{wxPalette::
\destruct{wxPalette
}}\label{wxpalettedtor
}
86 \func{}{\destruct{wxPalette
}}{\void}
90 \membersection{wxPalette::Create
}\label{wxpalettecreate
}
92 \func{bool
}{Create
}{\param{int
}{ n
},
\param{const unsigned char*
}{red
},
\rtfsp
93 \param{const unsigned char*
}{green
},
\param{const unsigned char*
}{blue
}}
95 Creates a palette from arrays of size
{\it n
}, one for each
96 red, blue or green component.
98 \wxheading{Parameters
}
100 \docparam{n
}{The number of indices in the palette.
}
102 \docparam{red
}{An array of red values.
}
104 \docparam{green
}{An array of green values.
}
106 \docparam{blue
}{An array of blue values.
}
108 \wxheading{Return value
}
110 true if the creation was successful, false otherwise.
114 \helpref{wxPalette::wxPalette
}{wxpalettector
}
116 \membersection{wxPalette::GetColoursCount
}\label{wxpalettegetcolourscount
}
118 \constfunc{int
}{GetColoursCount
}{\void}
120 Returns number of entries in palette.
122 \membersection{wxPalette::GetPixel
}\label{wxpalettegetpixel
}
124 \constfunc{int
}{GetPixel
}{\param{unsigned char
}{red
},
\param{unsigned char
}{green
},
\rtfsp
125 \param{unsigned char
}{blue
}}
127 Returns a pixel value (index into the palette) for the given RGB values.
129 \wxheading{Parameters
}
131 \docparam{red
}{Red value.
}
133 \docparam{green
}{Green value.
}
135 \docparam{blue
}{Blue value.
}
137 \wxheading{Return value
}
139 The nearest palette index or
{\tt wxNOT
\_FOUND} for unexpected errors.
143 \helpref{wxPalette::GetRGB
}{wxpalettegetrgb
}
145 \membersection{wxPalette::GetRGB
}\label{wxpalettegetrgb
}
147 \constfunc{bool
}{GetRGB
}{\param{int
}{ pixel
},
\param{const unsigned char*
}{red
},
\param{const unsigned char*
}{green
},
\rtfsp
148 \param{const unsigned char*
}{blue
}}
150 Returns RGB values for a given palette index.
152 \wxheading{Parameters
}
154 \docparam{pixel
}{The palette index.
}
156 \docparam{red
}{Receives the red value.
}
158 \docparam{green
}{Receives the green value.
}
160 \docparam{blue
}{Receives the blue value.
}
162 \wxheading{Return value
}
164 true if the operation was successful.
168 \helpref{wxPalette::GetPixel
}{wxpalettegetpixel
}
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 ).
}
173 \membersection{wxPalette::IsOk
}\label{wxpaletteisok
}
175 \constfunc{bool
}{IsOk
}{\void}
177 Returns true if palette data is present.
179 \membersection{wxPalette::operator $=$
}\label{wxpaletteassignment
}
181 \func{wxPalette\&
}{operator $=$
}{\param{const wxPalette\&
}{palette
}}
183 Assignment operator, using reference counting. Returns a reference
186 \membersection{wxPalette::operator $==$
}\label{wxpaletteequals
}
188 \func{bool
}{operator $==$
}{\param{const wxPalette\&
}{palette
}}
190 Equality operator. Two palettes are equal if they contain pointers
191 to the same underlying palette data. It does not compare each attribute,
192 so two independently-created palettes using the same parameters will
195 \membersection{wxPalette::operator $!=$
}\label{wxpalettenotequals
}
197 \func{bool
}{operator $!=$
}{\param{const wxPalette\&
}{palette
}}
199 Inequality operator. Two palettes are not equal if they contain pointers
200 to different underlying palette data. It does not compare each attribute.