]>
Commit | Line | Data |
---|---|---|
a660d684 KB |
1 | \section{\class{wxBitmap}}\label{wxbitmap} |
2 | ||
3 | %\overview{Overview}{wxbitmapoverview} | |
4 | % | |
5 | This class encapsulates the concept of a platform-dependent bitmap, | |
6 | either monochrome or colour. | |
7 | ||
8 | \wxheading{Derived from} | |
9 | ||
10 | \helpref{wxGDIObject}{wxgdiobject}\\ | |
11 | \helpref{wxObject}{wxobject} | |
12 | ||
e3c10211 | 13 | \wxheading{Include file} |
954b8ae6 JS |
14 | |
15 | <wx/bitmap.h> | |
16 | ||
20e85460 JS |
17 | \wxheading{Predefined objects} |
18 | ||
19 | Objects: | |
20 | ||
21 | {\bf wxNullBitmap} | |
22 | ||
a660d684 KB |
23 | \wxheading{See also} |
24 | ||
06d20283 RD |
25 | \helpref{wxBitmap overview}{wxbitmapoverview}, |
26 | \helpref{supported bitmap file formats}{supportedbitmapformats}, | |
27 | \helpref{wxDC::Blit}{wxdcblit}, | |
28 | \helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor}, \helpref{wxBitmap}{wxbitmap}, | |
2fd284a4 | 29 | \helpref{wxMemoryDC}{wxmemorydc} |
a660d684 KB |
30 | |
31 | \latexignore{\rtfignore{\wxheading{Members}}} | |
32 | ||
33 | \membersection{wxBitmap::wxBitmap}\label{wxbitmapconstr} | |
34 | ||
35 | \func{}{wxBitmap}{\void} | |
36 | ||
37 | Default constructor. | |
38 | ||
39 | \func{}{wxBitmap}{\param{const wxBitmap\& }{bitmap}} | |
40 | ||
1e6d9499 | 41 | Copy constructor. |
a660d684 | 42 | |
eaaa6a06 | 43 | \func{}{wxBitmap}{\param{void*}{ data}, \param{int}{ type}, \param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}} |
a660d684 | 44 | |
0765adca VZ |
45 | Creates a bitmap from the given data which is interpreted in platform-dependent |
46 | manner. | |
a660d684 | 47 | |
eaaa6a06 JS |
48 | \func{}{wxBitmap}{\param{const char}{ bits[]}, \param{int}{ width}, \param{int}{ height}\\ |
49 | \param{int}{ depth = 1}} | |
a660d684 | 50 | |
dfa13ec8 | 51 | Creates a bitmap from an array of bits. |
2259e007 | 52 | |
0765adca VZ |
53 | You should only use this function for monochrome bitmaps ({\it depth} 1) in |
54 | portable programs: in this case the {\it bits} parameter should contain an XBM | |
55 | image. | |
56 | ||
57 | For other bit depths, the behaviour is platform dependent: under Windows, the | |
f6bcfd97 | 58 | data is passed without any changes to the underlying {\tt CreateBitmap()} API. |
0765adca VZ |
59 | Under other platforms, only monochrome bitmaps may be created using this |
60 | constructor and \helpref{wxImage}{wximage} should be used for creating colour | |
61 | bitmaps from static data. | |
a660d684 | 62 | |
eaaa6a06 | 63 | \func{}{wxBitmap}{\param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}} |
a660d684 | 64 | |
0765adca VZ |
65 | Creates a new bitmap. A depth of -1 indicates the depth of the current screen |
66 | or visual. Some platforms only support 1 for monochrome and -1 for the current | |
67 | colour setting. | |
a660d684 KB |
68 | |
69 | \func{}{wxBitmap}{\param{const char**}{ bits}} | |
70 | ||
71 | Creates a bitmap from XPM data. | |
72 | ||
eaaa6a06 | 73 | \func{}{wxBitmap}{\param{const wxString\& }{name}, \param{long}{ type}} |
a660d684 KB |
74 | |
75 | Loads a bitmap from a file or resource. | |
76 | ||
b06a6b20 VS |
77 | \func{}{wxBitmap}{\param{const wxImage\&}{ img}, \param{int}{ depth = -1}} |
78 | ||
79 | Creates bitmap object from the image. This has to be done | |
80 | to actually display an image as you cannot draw an image directly on a window. | |
81 | The resulting bitmap will use the provided colour depth (or that of the | |
82 | current system if depth is -1) which entails that a colour reduction has | |
83 | to take place. | |
84 | ||
85 | When in 8-bit mode (PseudoColour mode), the GTK port will use a color cube created | |
86 | on program start-up to look up colors. This ensures a very fast conversion, but | |
87 | the image quality won't be perfect (and could be better for photo images using more | |
88 | sophisticated dithering algorithms). | |
89 | ||
90 | On Windows, if there is a palette present (set with SetPalette), it will be used when | |
91 | creating the wxBitmap (most useful in 8-bit display mode). On other platforms, | |
92 | the palette is currently ignored. | |
93 | ||
a660d684 KB |
94 | \wxheading{Parameters} |
95 | ||
96 | \docparam{bits}{Specifies an array of pixel values.} | |
97 | ||
98 | \docparam{width}{Specifies the width of the bitmap.} | |
99 | ||
100 | \docparam{height}{Specifies the height of the bitmap.} | |
101 | ||
102 | \docparam{depth}{Specifies the depth of the bitmap. If this is omitted, the display depth of the | |
103 | screen is used.} | |
104 | ||
105 | \docparam{name}{This can refer to a resource name under MS Windows, or a filename under MS Windows and X. | |
1e6d9499 | 106 | Its meaning is determined by the {\it type} parameter.} |
a660d684 KB |
107 | |
108 | \docparam{type}{May be one of the following: | |
109 | ||
110 | \twocolwidtha{5cm} | |
111 | \begin{twocollist} | |
f690fb04 GT |
112 | \twocolitem{\indexit{wxBITMAP\_TYPE\_BMP}}{Load a Windows bitmap file.} |
113 | \twocolitem{\indexit{wxBITMAP\_TYPE\_BMP\_RESOURCE}}{Load a Windows bitmap from the resource database.} | |
114 | \twocolitem{\indexit{wxBITMAP\_TYPE\_GIF}}{Load a GIF bitmap file.} | |
115 | \twocolitem{\indexit{wxBITMAP\_TYPE\_XBM}}{Load an X bitmap file.} | |
116 | \twocolitem{\indexit{wxBITMAP\_TYPE\_XPM}}{Load an XPM bitmap file.} | |
117 | \twocolitem{\indexit{wxBITMAP\_TYPE\_RESOURCE}}{Load a Windows resource name.} | |
a660d684 KB |
118 | \end{twocollist} |
119 | ||
120 | The validity of these flags depends on the platform and wxWindows configuration. | |
2fd284a4 JS |
121 | If all possible wxWindows settings are used, the Windows platform supports BMP file, BMP resource, |
122 | XPM data, and XPM. Under wxGTK, the available formats are BMP file, XPM data, XPM file, and PNG file. | |
b75dd496 VS |
123 | Under wxMotif, the available formats are XBM data, XBM file, XPM data, XPM file. |
124 | ||
f9ee644e RR |
125 | In addition, wxBitmap can read all formats that \helpref{wxImage}{wximage} can, which currently include |
126 | wxBITMAP\_TYPE\_JPEG, wxBITMAP\_TYPE\_TIF, wxBITMAP\_TYPE\_PNG, wxBITMAP\_TYPE\_GIF, wxBITMAP\_TYPE\_PCX, | |
127 | and wxBITMAP\_TYPE\_PNM. Of course, you must have wxImage handlers loaded. } | |
a660d684 | 128 | |
b06a6b20 VS |
129 | \docparam{img}{Platform-independent wxImage object.} |
130 | ||
a660d684 KB |
131 | \wxheading{Remarks} |
132 | ||
133 | The first form constructs a bitmap object with no data; an assignment or another member function such as Create | |
134 | or LoadFile must be called subsequently. | |
135 | ||
136 | The second and third forms provide copy constructors. Note that these do not copy the | |
137 | bitmap data, but instead a pointer to the data, keeping a reference count. They are therefore | |
138 | very efficient operations. | |
139 | ||
140 | The fourth form constructs a bitmap from data whose type and value depends on | |
141 | the value of the {\it type} argument. | |
142 | ||
143 | The fifth form constructs a (usually monochrome) bitmap from an array of pixel values, under both | |
144 | X and Windows. | |
145 | ||
146 | The sixth form constructs a new bitmap. | |
147 | ||
148 | The seventh form constructs a bitmap from pixmap (XPM) data, if wxWindows has been configured | |
149 | to incorporate this feature. | |
150 | ||
151 | To use this constructor, you must first include an XPM file. For | |
152 | example, assuming that the file {\tt mybitmap.xpm} contains an XPM array | |
153 | of character pointers called mybitmap: | |
154 | ||
155 | \begin{verbatim} | |
156 | #include "mybitmap.xpm" | |
157 | ||
158 | ... | |
159 | ||
160 | wxBitmap *bitmap = new wxBitmap(mybitmap); | |
161 | \end{verbatim} | |
162 | ||
163 | The eighth form constructs a bitmap from a file or resource. {\it name} can refer | |
164 | to a resource name under MS Windows, or a filename under MS Windows and X. | |
165 | ||
166 | Under Windows, {\it type} defaults to wxBITMAP\_TYPE\_BMP\_RESOURCE. | |
2fd284a4 | 167 | Under X, {\it type} defaults to wxBITMAP\_TYPE\_XPM. |
a660d684 KB |
168 | |
169 | \wxheading{See also} | |
170 | ||
171 | \helpref{wxBitmap::LoadFile}{wxbitmaploadfile} | |
172 | ||
06d20283 RD |
173 | \pythonnote{Constructors supported by wxPython are:\par |
174 | \indented{2cm}{\begin{twocollist} | |
c9110876 VS |
175 | \twocolitem{{\bf wxBitmap(name, flag)}}{Loads a bitmap from a file} |
176 | \twocolitem{{\bf wxBitmapFromData(data, type, width, height, depth=1)}}{Creates | |
dfa13ec8 | 177 | a bitmap from the given data, which can be of arbitrary type.} |
c9110876 | 178 | \twocolitem{{\bf wxNoRefBitmap(name, flag)}}{This one won't own the |
06d20283 RD |
179 | reference, so Python won't call the destructor, this is good for toolbars |
180 | and such where the parent will manage the bitmap.} | |
c9110876 | 181 | \twocolitem{{\bf wxEmptyBitmap(width, height, depth = -1)}}{Creates an |
06d20283 RD |
182 | empty bitmap with the given specifications} |
183 | \end{twocollist}} | |
184 | } | |
185 | ||
5873607e VZ |
186 | \perlnote{Constructors supported by wxPerl are:\par |
187 | \begin{itemize} | |
188 | \item{Wx::Bitmap->new( width, height, depth = -1 )} | |
189 | \item{Wx::Bitmap->new( name, type )} | |
190 | \item{Wx::Bitmap->new( icon )} | |
191 | \end{itemize} | |
192 | } | |
193 | ||
a660d684 KB |
194 | \membersection{wxBitmap::\destruct{wxBitmap}} |
195 | ||
196 | \func{}{\destruct{wxBitmap}}{\void} | |
197 | ||
198 | Destroys the wxBitmap object and possibly the underlying bitmap data. | |
199 | Because reference counting is used, the bitmap may not actually be | |
200 | destroyed at this point - only when the reference count is zero will the | |
201 | data be deleted. | |
202 | ||
203 | If the application omits to delete the bitmap explicitly, the bitmap will be | |
204 | destroyed automatically by wxWindows when the application exits. | |
205 | ||
206 | Do not delete a bitmap that is selected into a memory device context. | |
207 | ||
208 | \membersection{wxBitmap::AddHandler}\label{wxbitmapaddhandler} | |
209 | ||
210 | \func{static void}{AddHandler}{\param{wxBitmapHandler*}{ handler}} | |
211 | ||
212 | Adds a handler to the end of the static list of format handlers. | |
213 | ||
214 | \docparam{handler}{A new bitmap format handler object. There is usually only one instance | |
215 | of a given handler class in an application session.} | |
216 | ||
217 | \wxheading{See also} | |
218 | ||
219 | \helpref{wxBitmapHandler}{wxbitmaphandler} | |
220 | ||
221 | \membersection{wxBitmap::CleanUpHandlers} | |
222 | ||
223 | \func{static void}{CleanUpHandlers}{\void} | |
224 | ||
225 | Deletes all bitmap handlers. | |
226 | ||
227 | This function is called by wxWindows on exit. | |
228 | ||
b06a6b20 VS |
229 | \membersection{wxBitmap::ConvertToImage}\label{wxbitmapconverttoimage} |
230 | ||
231 | \func{wxImage}{ConvertToImage}{\void} | |
232 | ||
233 | Creates an image from a platform-dependent bitmap. This preserves | |
234 | mask information so that bitmaps and images can be converted back | |
235 | and forth without loss in that respect. | |
236 | ||
c0bcc480 | 237 | \membersection{wxBitmap::Create}\label{wxbitmapcreate} |
a660d684 | 238 | |
eaaa6a06 | 239 | \func{virtual bool}{Create}{\param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}} |
a660d684 KB |
240 | |
241 | Creates a fresh bitmap. If the final argument is omitted, the display depth of | |
242 | the screen is used. | |
243 | ||
eaaa6a06 | 244 | \func{virtual bool}{Create}{\param{void*}{ data}, \param{int}{ type}, \param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}} |
a660d684 KB |
245 | |
246 | Creates a bitmap from the given data, which can be of arbitrary type. | |
247 | ||
248 | \wxheading{Parameters} | |
249 | ||
250 | \docparam{width}{The width of the bitmap in pixels.} | |
251 | ||
252 | \docparam{height}{The height of the bitmap in pixels.} | |
253 | ||
254 | \docparam{depth}{The depth of the bitmap in pixels. If this is -1, the screen depth is used.} | |
255 | ||
256 | \docparam{data}{Data whose type depends on the value of {\it type}.} | |
257 | ||
258 | \docparam{type}{A bitmap type identifier - see \helpref{wxBitmap::wxBitmap}{wxbitmapconstr} for a list | |
259 | of possible values.} | |
260 | ||
261 | \wxheading{Return value} | |
262 | ||
263 | TRUE if the call succeeded, FALSE otherwise. | |
264 | ||
265 | \wxheading{Remarks} | |
266 | ||
267 | The first form works on all platforms. The portability of the second form depends on the | |
268 | type of data. | |
269 | ||
270 | \wxheading{See also} | |
271 | ||
272 | \helpref{wxBitmap::wxBitmap}{wxbitmapconstr} | |
273 | ||
274 | \membersection{wxBitmap::FindHandler} | |
275 | ||
276 | \func{static wxBitmapHandler*}{FindHandler}{\param{const wxString\& }{name}} | |
277 | ||
278 | Finds the handler with the given name. | |
279 | ||
280 | \func{static wxBitmapHandler*}{FindHandler}{\param{const wxString\& }{extension}, \param{long}{ bitmapType}} | |
281 | ||
282 | Finds the handler associated with the given extension and type. | |
283 | ||
284 | \func{static wxBitmapHandler*}{FindHandler}{\param{long }{bitmapType}} | |
285 | ||
286 | Finds the handler associated with the given bitmap type. | |
287 | ||
288 | \docparam{name}{The handler name.} | |
289 | ||
290 | \docparam{extension}{The file extension, such as ``bmp".} | |
291 | ||
292 | \docparam{bitmapType}{The bitmap type, such as wxBITMAP\_TYPE\_BMP.} | |
293 | ||
294 | \wxheading{Return value} | |
295 | ||
296 | A pointer to the handler if found, NULL otherwise. | |
297 | ||
298 | \wxheading{See also} | |
299 | ||
300 | \helpref{wxBitmapHandler}{wxbitmaphandler} | |
301 | ||
302 | \membersection{wxBitmap::GetDepth} | |
303 | ||
304 | \constfunc{int}{GetDepth}{\void} | |
305 | ||
306 | Gets the colour depth of the bitmap. A value of 1 indicates a | |
307 | monochrome bitmap. | |
308 | ||
309 | \membersection{wxBitmap::GetHandlers} | |
310 | ||
311 | \func{static wxList\&}{GetHandlers}{\void} | |
312 | ||
313 | Returns the static list of bitmap format handlers. | |
314 | ||
315 | \wxheading{See also} | |
316 | ||
317 | \helpref{wxBitmapHandler}{wxbitmaphandler} | |
318 | ||
319 | \membersection{wxBitmap::GetHeight}\label{wxbitmapgetheight} | |
320 | ||
321 | \constfunc{int}{GetHeight}{\void} | |
322 | ||
323 | Gets the height of the bitmap in pixels. | |
324 | ||
325 | \membersection{wxBitmap::GetPalette}\label{wxbitmapgetpalette} | |
326 | ||
327 | \constfunc{wxPalette*}{GetPalette}{\void} | |
328 | ||
329 | Gets the associated palette (if any) which may have been loaded from a file | |
330 | or set for the bitmap. | |
331 | ||
332 | \wxheading{See also} | |
333 | ||
334 | \helpref{wxPalette}{wxpalette} | |
335 | ||
336 | \membersection{wxBitmap::GetMask}\label{wxbitmapgetmask} | |
337 | ||
338 | \constfunc{wxMask*}{GetMask}{\void} | |
339 | ||
1e6d9499 | 340 | Gets the associated mask (if any) which may have been loaded from a file |
a660d684 KB |
341 | or set for the bitmap. |
342 | ||
343 | \wxheading{See also} | |
344 | ||
345 | \helpref{wxBitmap::SetMask}{wxbitmapsetmask}, \helpref{wxMask}{wxmask} | |
346 | ||
347 | \membersection{wxBitmap::GetWidth}\label{wxbitmapgetwidth} | |
348 | ||
349 | \constfunc{int}{GetWidth}{\void} | |
350 | ||
351 | Gets the width of the bitmap in pixels. | |
352 | ||
353 | \wxheading{See also} | |
354 | ||
355 | \helpref{wxBitmap::GetHeight}{wxbitmapgetheight} | |
356 | ||
f9ee644e RR |
357 | \membersection{wxBitmap::GetSubBitmap}\label{wxbitmapgetsubbitmap} |
358 | ||
d17f05af | 359 | \constfunc{wxBitmap}{GetSubBitmap}{\param{const wxRect\&}{rect}} |
f9ee644e RR |
360 | |
361 | Returns a sub bitmap of the current one as long as the rect belongs entirely to | |
362 | the bitmap. This function preserves bit depth and mask information. | |
363 | ||
a660d684 KB |
364 | \membersection{wxBitmap::InitStandardHandlers} |
365 | ||
366 | \func{static void}{InitStandardHandlers}{\void} | |
367 | ||
368 | Adds the standard bitmap format handlers, which, depending on wxWindows | |
369 | configuration, can be handlers for Windows bitmap, Windows bitmap resource, and XPM. | |
370 | ||
371 | This function is called by wxWindows on startup. | |
372 | ||
373 | \wxheading{See also} | |
374 | ||
375 | \helpref{wxBitmapHandler}{wxbitmaphandler} | |
376 | ||
377 | \membersection{wxBitmap::InsertHandler} | |
378 | ||
379 | \func{static void}{InsertHandler}{\param{wxBitmapHandler*}{ handler}} | |
380 | ||
381 | Adds a handler at the start of the static list of format handlers. | |
382 | ||
383 | \docparam{handler}{A new bitmap format handler object. There is usually only one instance | |
384 | of a given handler class in an application session.} | |
385 | ||
386 | \wxheading{See also} | |
387 | ||
388 | \helpref{wxBitmapHandler}{wxbitmaphandler} | |
389 | ||
390 | \membersection{wxBitmap::LoadFile}\label{wxbitmaploadfile} | |
391 | ||
eaaa6a06 | 392 | \func{bool}{LoadFile}{\param{const wxString\&}{ name}, \param{long}{ type}} |
a660d684 KB |
393 | |
394 | Loads a bitmap from a file or resource. | |
395 | ||
396 | \wxheading{Parameters} | |
397 | ||
398 | \docparam{name}{Either a filename or a Windows resource name. | |
399 | The meaning of {\it name} is determined by the {\it type} parameter.} | |
400 | ||
401 | \docparam{type}{One of the following values: | |
402 | ||
403 | \twocolwidtha{5cm} | |
404 | \begin{twocollist} | |
405 | \twocolitem{{\bf wxBITMAP\_TYPE\_BMP}}{Load a Windows bitmap file.} | |
406 | \twocolitem{{\bf wxBITMAP\_TYPE\_BMP\_RESOURCE}}{Load a Windows bitmap from the resource database.} | |
407 | \twocolitem{{\bf wxBITMAP\_TYPE\_GIF}}{Load a GIF bitmap file.} | |
408 | \twocolitem{{\bf wxBITMAP\_TYPE\_XBM}}{Load an X bitmap file.} | |
409 | \twocolitem{{\bf wxBITMAP\_TYPE\_XPM}}{Load an XPM bitmap file.} | |
410 | \end{twocollist} | |
411 | ||
b75dd496 VS |
412 | The validity of these flags depends on the platform and wxWindows configuration. |
413 | ||
414 | In addition, wxBitmap can read all formats that \helpref{wxImage}{wximage} can | |
415 | (wxBITMAP\_TYPE\_JPEG, wxBITMAP\_TYPE\_PNG, wxBITMAP\_TYPE\_GIF, wxBITMAP\_TYPE\_PCX, wxBITMAP\_TYPE\_PNM). | |
416 | (Of course you must have wxImage handlers loaded.) } | |
a660d684 KB |
417 | |
418 | \wxheading{Return value} | |
419 | ||
420 | TRUE if the operation succeeded, FALSE otherwise. | |
421 | ||
422 | \wxheading{Remarks} | |
423 | ||
424 | A palette may be associated with the bitmap if one exists (especially for | |
425 | colour Windows bitmaps), and if the code supports it. You can check | |
426 | if one has been created by using the \helpref{GetPalette}{wxbitmapgetpalette} member. | |
427 | ||
428 | \wxheading{See also} | |
429 | ||
430 | \helpref{wxBitmap::SaveFile}{wxbitmapsavefile} | |
431 | ||
432 | \membersection{wxBitmap::Ok}\label{wxbitmapok} | |
433 | ||
434 | \constfunc{bool}{Ok}{\void} | |
435 | ||
436 | Returns TRUE if bitmap data is present. | |
437 | ||
438 | \membersection{wxBitmap::RemoveHandler} | |
439 | ||
440 | \func{static bool}{RemoveHandler}{\param{const wxString\& }{name}} | |
441 | ||
442 | Finds the handler with the given name, and removes it. The handler | |
443 | is not deleted. | |
444 | ||
445 | \docparam{name}{The handler name.} | |
446 | ||
447 | \wxheading{Return value} | |
448 | ||
449 | TRUE if the handler was found and removed, FALSE otherwise. | |
450 | ||
451 | \wxheading{See also} | |
452 | ||
453 | \helpref{wxBitmapHandler}{wxbitmaphandler} | |
454 | ||
455 | \membersection{wxBitmap::SaveFile}\label{wxbitmapsavefile} | |
456 | ||
457 | \func{bool}{SaveFile}{\param{const wxString\& }{name}, \param{int}{ type}, \param{wxPalette* }{palette = NULL}} | |
458 | ||
459 | Saves a bitmap in the named file. | |
460 | ||
461 | \wxheading{Parameters} | |
462 | ||
463 | \docparam{name}{A filename. The meaning of {\it name} is determined by the {\it type} parameter.} | |
464 | ||
465 | \docparam{type}{One of the following values: | |
466 | ||
467 | \twocolwidtha{5cm} | |
468 | \begin{twocollist} | |
469 | \twocolitem{{\bf wxBITMAP\_TYPE\_BMP}}{Save a Windows bitmap file.} | |
470 | \twocolitem{{\bf wxBITMAP\_TYPE\_GIF}}{Save a GIF bitmap file.} | |
471 | \twocolitem{{\bf wxBITMAP\_TYPE\_XBM}}{Save an X bitmap file.} | |
472 | \twocolitem{{\bf wxBITMAP\_TYPE\_XPM}}{Save an XPM bitmap file.} | |
473 | \end{twocollist} | |
474 | ||
b75dd496 VS |
475 | The validity of these flags depends on the platform and wxWindows configuration. |
476 | ||
477 | In addition, wxBitmap can save all formats that \helpref{wxImage}{wximage} can | |
478 | (wxBITMAP\_TYPE\_JPEG, wxBITMAP\_TYPE\_PNG). | |
479 | (Of course you must have wxImage handlers loaded.) } | |
a660d684 | 480 | |
5b6aa0ff JS |
481 | \docparam{palette}{An optional palette used for saving the bitmap.} |
482 | % TODO: this parameter should | |
483 | %probably be eliminated; instead the app should set the palette before saving. | |
a660d684 KB |
484 | |
485 | \wxheading{Return value} | |
486 | ||
487 | TRUE if the operation succeeded, FALSE otherwise. | |
488 | ||
489 | \wxheading{Remarks} | |
490 | ||
491 | Depending on how wxWindows has been configured, not all formats may be available. | |
492 | ||
493 | \wxheading{See also} | |
494 | ||
495 | \helpref{wxBitmap::LoadFile}{wxbitmaploadfile} | |
496 | ||
497 | \membersection{wxBitmap::SetDepth}\label{wxbitmapsetdepth} | |
498 | ||
499 | \func{void}{SetDepth}{\param{int }{depth}} | |
500 | ||
501 | Sets the depth member (does not affect the bitmap data). | |
502 | ||
503 | \wxheading{Parameters} | |
504 | ||
505 | \docparam{depth}{Bitmap depth.} | |
506 | ||
507 | \membersection{wxBitmap::SetHeight}\label{wxbitmapsetheight} | |
508 | ||
509 | \func{void}{SetHeight}{\param{int }{height}} | |
510 | ||
511 | Sets the height member (does not affect the bitmap data). | |
512 | ||
513 | \wxheading{Parameters} | |
514 | ||
515 | \docparam{height}{Bitmap height in pixels.} | |
516 | ||
517 | \membersection{wxBitmap::SetMask}\label{wxbitmapsetmask} | |
518 | ||
519 | \func{void}{SetMask}{\param{wxMask* }{mask}} | |
520 | ||
521 | Sets the mask for this bitmap. | |
522 | ||
523 | \wxheading{Remarks} | |
524 | ||
525 | The bitmap object owns the mask once this has been called. | |
526 | ||
527 | \wxheading{See also} | |
528 | ||
529 | \helpref{wxBitmap::GetMask}{wxbitmapgetmask}, \helpref{wxMask}{wxmask} | |
530 | ||
531 | \membersection{wxBitmap::SetOk} | |
532 | ||
533 | \func{void}{SetOk}{\param{int }{isOk}} | |
534 | ||
535 | Sets the validity member (does not affect the bitmap data). | |
536 | ||
537 | \wxheading{Parameters} | |
538 | ||
539 | \docparam{isOk}{Validity flag.} | |
540 | ||
541 | \membersection{wxBitmap::SetPalette}\label{wxbitmapsetpalette} | |
542 | ||
f6bcfd97 | 543 | \func{void}{SetPalette}{\param{const wxPalette\& }{palette}} |
a660d684 | 544 | |
f6bcfd97 | 545 | Sets the associated palette. |
a660d684 KB |
546 | |
547 | \wxheading{Parameters} | |
548 | ||
549 | \docparam{palette}{The palette to set.} | |
550 | ||
a660d684 KB |
551 | \wxheading{See also} |
552 | ||
553 | \helpref{wxPalette}{wxpalette} | |
554 | ||
555 | \membersection{wxBitmap::SetWidth} | |
556 | ||
557 | \func{void}{SetWidth}{\param{int }{width}} | |
558 | ||
559 | Sets the width member (does not affect the bitmap data). | |
560 | ||
561 | \wxheading{Parameters} | |
562 | ||
563 | \docparam{width}{Bitmap width in pixels.} | |
564 | ||
565 | \membersection{wxBitmap::operator $=$} | |
566 | ||
567 | \func{wxBitmap\& }{operator $=$}{\param{const wxBitmap\& }{bitmap}} | |
568 | ||
569 | Assignment operator. This operator does not copy any data, but instead | |
570 | passes a pointer to the data in {\it bitmap} and increments a reference | |
571 | counter. It is a fast operation. | |
572 | ||
573 | \wxheading{Parameters} | |
574 | ||
575 | \docparam{bitmap}{Bitmap to assign.} | |
576 | ||
577 | \wxheading{Return value} | |
578 | ||
579 | Returns 'this' object. | |
580 | ||
581 | \membersection{wxBitmap::operator $==$} | |
582 | ||
583 | \func{bool}{operator $==$}{\param{const wxBitmap\& }{bitmap}} | |
584 | ||
585 | Equality operator. This operator tests whether the internal data pointers are | |
586 | equal (a fast test). | |
587 | ||
588 | \wxheading{Parameters} | |
589 | ||
590 | \docparam{bitmap}{Bitmap to compare with 'this'} | |
591 | ||
592 | \wxheading{Return value} | |
593 | ||
594 | Returns TRUE if the bitmaps were effectively equal, FALSE otherwise. | |
595 | ||
596 | \membersection{wxBitmap::operator $!=$} | |
597 | ||
598 | \func{bool}{operator $!=$}{\param{const wxBitmap\& }{bitmap}} | |
599 | ||
600 | Inequality operator. This operator tests whether the internal data pointers are | |
601 | unequal (a fast test). | |
602 | ||
603 | \wxheading{Parameters} | |
604 | ||
605 | \docparam{bitmap}{Bitmap to compare with 'this'} | |
606 | ||
607 | \wxheading{Return value} | |
608 | ||
609 | Returns TRUE if the bitmaps were unequal, FALSE otherwise. | |
610 | ||
611 | \section{\class{wxBitmapHandler}}\label{wxbitmaphandler} | |
612 | ||
613 | \overview{Overview}{wxbitmapoverview} | |
614 | ||
615 | This is the base class for implementing bitmap file loading/saving, and bitmap creation from data. | |
616 | It is used within wxBitmap and is not normally seen by the application. | |
617 | ||
618 | If you wish to extend the capabilities of wxBitmap, derive a class from wxBitmapHandler | |
619 | and add the handler using \helpref{wxBitmap::AddHandler}{wxbitmapaddhandler} in your | |
620 | application initialisation. | |
621 | ||
622 | \wxheading{Derived from} | |
623 | ||
624 | \helpref{wxObject}{wxobject} | |
625 | ||
954b8ae6 JS |
626 | \wxheading{Include files} |
627 | ||
628 | <wx/bitmap.h> | |
629 | ||
a660d684 KB |
630 | \wxheading{See also} |
631 | ||
632 | \helpref{wxBitmap}{wxbitmap}, \helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor} | |
633 | ||
634 | \latexignore{\rtfignore{\wxheading{Members}}} | |
635 | ||
636 | \membersection{wxBitmapHandler::wxBitmapHandler}\label{wxbitmaphandlerconstr} | |
637 | ||
638 | \func{}{wxBitmapHandler}{\void} | |
639 | ||
640 | Default constructor. In your own default constructor, initialise the members | |
641 | m\_name, m\_extension and m\_type. | |
642 | ||
643 | \membersection{wxBitmapHandler::\destruct{wxBitmapHandler}} | |
644 | ||
645 | \func{}{\destruct{wxBitmapHandler}}{\void} | |
646 | ||
647 | Destroys the wxBitmapHandler object. | |
648 | ||
649 | \membersection{wxBitmapHandler::Create} | |
650 | ||
eaaa6a06 | 651 | \func{virtual bool}{Create}{\param{wxBitmap* }{bitmap}, \param{void*}{ data}, \param{int}{ type}, \param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}} |
a660d684 KB |
652 | |
653 | Creates a bitmap from the given data, which can be of arbitrary type. The wxBitmap object {\it bitmap} is | |
654 | manipulated by this function. | |
655 | ||
656 | \wxheading{Parameters} | |
657 | ||
658 | \docparam{bitmap}{The wxBitmap object.} | |
659 | ||
660 | \docparam{width}{The width of the bitmap in pixels.} | |
661 | ||
662 | \docparam{height}{The height of the bitmap in pixels.} | |
663 | ||
664 | \docparam{depth}{The depth of the bitmap in pixels. If this is -1, the screen depth is used.} | |
665 | ||
666 | \docparam{data}{Data whose type depends on the value of {\it type}.} | |
667 | ||
668 | \docparam{type}{A bitmap type identifier - see \helpref{wxBitmapHandler::wxBitmapHandler}{wxbitmapconstr} for a list | |
669 | of possible values.} | |
670 | ||
671 | \wxheading{Return value} | |
672 | ||
673 | TRUE if the call succeeded, FALSE otherwise (the default). | |
674 | ||
675 | \membersection{wxBitmapHandler::GetName} | |
676 | ||
677 | \constfunc{wxString}{GetName}{\void} | |
678 | ||
679 | Gets the name of this handler. | |
680 | ||
681 | \membersection{wxBitmapHandler::GetExtension} | |
682 | ||
683 | \constfunc{wxString}{GetExtension}{\void} | |
684 | ||
685 | Gets the file extension associated with this handler. | |
686 | ||
687 | \membersection{wxBitmapHandler::GetType} | |
688 | ||
689 | \constfunc{long}{GetType}{\void} | |
690 | ||
691 | Gets the bitmap type associated with this handler. | |
692 | ||
693 | \membersection{wxBitmapHandler::LoadFile}\label{wxbitmaphandlerloadfile} | |
694 | ||
eaaa6a06 | 695 | \func{bool}{LoadFile}{\param{wxBitmap* }{bitmap}, \param{const wxString\&}{ name}, \param{long}{ type}} |
a660d684 KB |
696 | |
697 | Loads a bitmap from a file or resource, putting the resulting data into {\it bitmap}. | |
698 | ||
699 | \wxheading{Parameters} | |
700 | ||
701 | \docparam{bitmap}{The bitmap object which is to be affected by this operation.} | |
702 | ||
703 | \docparam{name}{Either a filename or a Windows resource name. | |
704 | The meaning of {\it name} is determined by the {\it type} parameter.} | |
705 | ||
706 | \docparam{type}{See \helpref{wxBitmap::wxBitmap}{wxbitmapconstr} for values this can take.} | |
707 | ||
708 | \wxheading{Return value} | |
709 | ||
710 | TRUE if the operation succeeded, FALSE otherwise. | |
711 | ||
712 | \wxheading{See also} | |
713 | ||
714 | \helpref{wxBitmap::LoadFile}{wxbitmaploadfile}\\ | |
715 | \helpref{wxBitmap::SaveFile}{wxbitmapsavefile}\\ | |
716 | \helpref{wxBitmapHandler::SaveFile}{wxbitmaphandlersavefile} | |
717 | ||
718 | \membersection{wxBitmapHandler::SaveFile}\label{wxbitmaphandlersavefile} | |
719 | ||
720 | \func{bool}{SaveFile}{\param{wxBitmap* }{bitmap}, \param{const wxString\& }{name}, \param{int}{ type}, \param{wxPalette* }{palette = NULL}} | |
721 | ||
722 | Saves a bitmap in the named file. | |
723 | ||
724 | \wxheading{Parameters} | |
725 | ||
726 | \docparam{bitmap}{The bitmap object which is to be affected by this operation.} | |
727 | ||
728 | \docparam{name}{A filename. The meaning of {\it name} is determined by the {\it type} parameter.} | |
729 | ||
730 | \docparam{type}{See \helpref{wxBitmap::wxBitmap}{wxbitmapconstr} for values this can take.} | |
731 | ||
5b6aa0ff | 732 | \docparam{palette}{An optional palette used for saving the bitmap.} |
a660d684 KB |
733 | |
734 | \wxheading{Return value} | |
735 | ||
736 | TRUE if the operation succeeded, FALSE otherwise. | |
737 | ||
738 | \wxheading{See also} | |
739 | ||
740 | \helpref{wxBitmap::LoadFile}{wxbitmaploadfile}\\ | |
741 | \helpref{wxBitmap::SaveFile}{wxbitmapsavefile}\\ | |
742 | \helpref{wxBitmapHandler::LoadFile}{wxbitmaphandlerloadfile} | |
743 | ||
744 | \membersection{wxBitmapHandler::SetName} | |
745 | ||
746 | \func{void}{SetName}{\param{const wxString\& }{name}} | |
747 | ||
748 | Sets the handler name. | |
749 | ||
750 | \wxheading{Parameters} | |
751 | ||
752 | \docparam{name}{Handler name.} | |
753 | ||
754 | \membersection{wxBitmapHandler::SetExtension} | |
755 | ||
756 | \func{void}{SetExtension}{\param{const wxString\& }{extension}} | |
757 | ||
758 | Sets the handler extension. | |
759 | ||
760 | \wxheading{Parameters} | |
761 | ||
762 | \docparam{extension}{Handler extension.} | |
763 | ||
764 | \membersection{wxBitmapHandler::SetType} | |
765 | ||
766 | \func{void}{SetType}{\param{long }{type}} | |
767 | ||
768 | Sets the handler type. | |
769 | ||
770 | \wxheading{Parameters} | |
771 | ||
772 | \docparam{name}{Handler type.} | |
773 | ||
774 |