]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/bitmap.tex
Cured memory leak report in wxDateTime; wxGLCanvas corrections
[wxWidgets.git] / docs / latex / wx / bitmap.tex
index f18676eb781f854384cb063c7b95aee8a01ad551..1739b0443985c6fa62e65a5a92f889021f8e8295 100644 (file)
@@ -10,9 +10,23 @@ either monochrome or colour.
 \helpref{wxGDIObject}{wxgdiobject}\\
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<wx/bitmap.h>
+
+\wxheading{Predefined objects}
+
+Objects:
+
+{\bf wxNullBitmap}
+
 \wxheading{See also}
 
-\helpref{wxBitmap overview}{wxbitmapoverview}, \helpref{wxDC::Blit}{wxdcblit}, \helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor}, \helpref{wxMemoryDC}{wxmemorydc}
+\helpref{wxBitmap overview}{wxbitmapoverview},
+\helpref{supported bitmap file formats}{supportedbitmapformats},
+\helpref{wxDC::Blit}{wxdcblit},
+\helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor}, \helpref{wxBitmap}{wxbitmap},
+\helpref{wxMemoryDC}{wxmemorydc}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
@@ -24,22 +38,33 @@ Default constructor.
 
 \func{}{wxBitmap}{\param{const wxBitmap\& }{bitmap}}
 
-\func{}{wxBitmap}{\param{const wxBitmap* }{bitmap}}
-
-Copy constructors.
+Copy constructor.
 
 \func{}{wxBitmap}{\param{void*}{ data}, \param{int}{ type}, \param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
 
-Creates a bitmap from the given data, which can be of arbitrary type.
+Creates a bitmap from the given data which is interpreted in platform-dependent
+manner.
 
 \func{}{wxBitmap}{\param{const char}{ bits[]}, \param{int}{ width}, \param{int}{ height}\\
   \param{int}{ depth = 1}}
 
 Creates a bitmap from an array of bits.
 
+You should only use this function for monochrome bitmaps ({\it depth} 1) in
+portable programs: in this case the {\it bits} parameter should contain an XBM
+image.
+
+For other bit depths, the behaviour is platform dependent: under Windows, the
+data is passed withotu any changes to the underlying {\tt CreateBitmap()} API.
+Under other platforms, only monochrome bitmaps may be created using this
+constructor and \helpref{wxImage}{wximage} should be used for creating colour
+bitmaps from static data.
+
 \func{}{wxBitmap}{\param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
 
-Creates a new bitmap.
+Creates a new bitmap. A depth of -1 indicates the depth of the current screen
+or visual. Some platforms only support 1 for monochrome and -1 for the current
+colour setting.
 
 \func{}{wxBitmap}{\param{const char**}{ bits}}
 
@@ -61,7 +86,7 @@ Loads a bitmap from a file or resource.
 screen is used.}
 
 \docparam{name}{This can refer to a resource name under MS Windows, or a filename under MS Windows and X.
-Its meaning is determined by the {\it flags} parameter.}
+Its meaning is determined by the {\it type} parameter.}
 
 \docparam{type}{May be one of the following:
 
@@ -76,8 +101,13 @@ Its meaning is determined by the {\it flags} parameter.}
 \end{twocollist}
 
 The validity of these flags depends on the platform and wxWindows configuration.
-If all possible wxWindows settings are used, the Windows platform supports BMP, BMP\_RESOURCE,
-XPM\_DATA, and XPM. Under X, the available formats are BMP, GIF, XBM, and XPM.}
+If all possible wxWindows settings are used, the Windows platform supports BMP file, BMP resource,
+XPM data, and XPM. Under wxGTK, the available formats are BMP file, XPM data, XPM file, and PNG file.
+Under wxMotif, the available formats are XBM data, XBM file, XPM data, XPM file.
+
+In addition, wxBitmap can read all formats that \helpref{wxImage}{wximage} can, which currently include 
+wxBITMAP\_TYPE\_JPEG, wxBITMAP\_TYPE\_TIF, wxBITMAP\_TYPE\_PNG, wxBITMAP\_TYPE\_GIF, wxBITMAP\_TYPE\_PCX, 
+and wxBITMAP\_TYPE\_PNM. Of course, you must have wxImage handlers loaded. }
 
 \wxheading{Remarks}
 
@@ -115,12 +145,25 @@ The eighth form constructs a bitmap from a file or resource. {\it name} can refe
 to a resource name under MS Windows, or a filename under MS Windows and X.
 
 Under Windows, {\it type} defaults to wxBITMAP\_TYPE\_BMP\_RESOURCE.
-Under X, {\it type} defaults to wxBITMAP\_TYPE\_XBM.
+Under X, {\it type} defaults to wxBITMAP\_TYPE\_XPM.
 
 \wxheading{See also}
 
 \helpref{wxBitmap::LoadFile}{wxbitmaploadfile}
 
+\pythonnote{Constructors supported by wxPython are:\par
+\indented{2cm}{\begin{twocollist}
+\twocolitem{{\bf wxBitmap(name, flag)}}{Loads a bitmap from a file}
+\twocolitem{{\bf wxBitmapFromData(data, type, width, height, depth=1)}}{Creates
+a bitmap from the given data, which can be of arbitrary type.}
+\twocolitem{{\bf wxNoRefBitmap(name, flag)}}{This one won't own the
+reference, so Python won't call the destructor, this is good for toolbars
+and such where the parent will manage the bitmap.}
+\twocolitem{{\bf wxEmptyBitmap(width, height, depth = -1)}}{Creates an
+empty bitmap with the given specifications}
+\end{twocollist}}
+}
+
 \membersection{wxBitmap::\destruct{wxBitmap}}
 
 \func{}{\destruct{wxBitmap}}{\void}
@@ -259,7 +302,7 @@ or set for the bitmap.
 
 \constfunc{wxMask*}{GetMask}{\void}
 
-Gets the associated mask if any) which may have been loaded from a file
+Gets the associated mask (if any) which may have been loaded from a file
 or set for the bitmap.
 
 \wxheading{See also}
@@ -276,6 +319,13 @@ Gets the width of the bitmap in pixels.
 
 \helpref{wxBitmap::GetHeight}{wxbitmapgetheight}
 
+\membersection{wxBitmap::GetSubBitmap}\label{wxbitmapgetsubbitmap}
+
+\constfunc{wxBitmap}{GetSubBitmap}{\param{const wxRect&}{rect}}
+
+Returns a sub bitmap of the current one as long as the rect belongs entirely to 
+the bitmap. This function preserves bit depth and mask information.
+
 \membersection{wxBitmap::InitStandardHandlers}
 
 \func{static void}{InitStandardHandlers}{\void}
@@ -324,7 +374,11 @@ The meaning of {\it name} is determined by the {\it type} parameter.}
 \twocolitem{{\bf wxBITMAP\_TYPE\_XPM}}{Load an XPM bitmap file.}
 \end{twocollist}
 
-The validity of these flags depends on the platform and wxWindows configuration.}
+The validity of these flags depends on the platform and wxWindows configuration.
+
+In addition, wxBitmap can read all formats that \helpref{wxImage}{wximage} can 
+(wxBITMAP\_TYPE\_JPEG, wxBITMAP\_TYPE\_PNG, wxBITMAP\_TYPE\_GIF, wxBITMAP\_TYPE\_PCX, wxBITMAP\_TYPE\_PNM).
+(Of course you must have wxImage handlers loaded.) }
 
 \wxheading{Return value}
 
@@ -383,10 +437,15 @@ Saves a bitmap in the named file.
 \twocolitem{{\bf wxBITMAP\_TYPE\_XPM}}{Save an XPM bitmap file.}
 \end{twocollist}
 
-The validity of these flags depends on the platform and wxWindows configuration.}
+The validity of these flags depends on the platform and wxWindows configuration.
+
+In addition, wxBitmap can save all formats that \helpref{wxImage}{wximage} can 
+(wxBITMAP\_TYPE\_JPEG, wxBITMAP\_TYPE\_PNG).
+(Of course you must have wxImage handlers loaded.) }
 
-\docparam{palette}{An optional palette used for saving the bitmap. TODO: this parameter should
-probably be eliminated; instead the app should set the palette before saving.}
+\docparam{palette}{An optional palette used for saving the bitmap.}
+% TODO: this parameter should
+%probably be eliminated; instead the app should set the palette before saving.
 
 \wxheading{Return value}
 
@@ -535,6 +594,10 @@ application initialisation.
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<wx/bitmap.h>
+
 \wxheading{See also}
 
 \helpref{wxBitmap}{wxbitmap}, \helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor}
@@ -637,8 +700,7 @@ Saves a bitmap in the named file.
 
 \docparam{type}{See \helpref{wxBitmap::wxBitmap}{wxbitmapconstr} for values this can take.}
 
-\docparam{palette}{An optional palette used for saving the bitmap. TODO: this parameter should
-probably be eliminated; instead the app should set the palette before saving.}
+\docparam{palette}{An optional palette used for saving the bitmap.}
 
 \wxheading{Return value}