]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/tbitmap.tex
Small mods
[wxWidgets.git] / docs / latex / wx / tbitmap.tex
index bb9fa8717e25a337817c0ce34dd89c296a03705e..8b45fe14787c8f8313054921a54a31070573e131 100644 (file)
@@ -30,7 +30,7 @@ XPM icon file to be available at run-time.
 #endif
 \end{verbatim}
 
-A macro, wxICON, is available which creates an icon using an XPM
+A macro, \helpref{wxICON}{wxiconmacro}, is available which creates an icon using an XPM
 on the appropriate platform, or an icon resource on Windows.
 
 \begin{verbatim}
@@ -47,12 +47,41 @@ wxIcon icon("mondrian");
 #endif
 \end{verbatim}
 
+There is also a corresponding \helpref{wxBITMAP}{wxbitmapmacro} macro which allows
+to create the bitmaps in much the same way as \helpref{wxICON}{wxiconmacro} creates
+icons. It assumes that bitmaps live in resources under Windows or OS2 and XPM
+files under all other platforms (for XPMs, the corresponding file must be
+included before this macro is used, of course, and the name of the bitmap
+should be the same as the resource name under Windows with {\tt \_xpm}
+suffix). For example:
+
+\begin{verbatim}
+// an easy and portable way to create a bitmap
+wxBitmap bmp(wxBITMAP(bmpname));
+
+// which is roughly equivalent to the following
+#if defined(__WXMSW__) || defined(__WXPM__)
+    wxBitmap bmp("bmpname", wxBITMAP_TYPE_RESOURCE);
+#else // Unix
+    wxBitmap bmp(bmpname_xpm, wxBITMAP_TYPE_XPM);
+#endif
+\end{verbatim}
+
+You should always use wxICON and wxBITMAP macros because they work for any
+platform (unlike the code above which doesn't deal with wxMac, wxBe, ...) and
+are more short and clear than versions with {\tt \#ifdef}s.
+
 \subsection{Supported bitmap file formats}\label{supportedbitmapformats}
 
 The following lists the formats handled on different platforms. Note
-that missing or partially-implemented formats can be supplemented
-by using \helpref{wxImage}{wximage} to load the data, and then converting
-it to wxBitmap form.
+that missing or partially-implemented formats are automatically supplemented
+by the \helpref{wxImage}{wximage} to load the data, and then converting
+it to wxBitmap form. Note that using wxImage is the preferred way to
+load images in wxWindows, with the exception of resources (XPM-files or
+native Windows resources). Writing an image format handler for wxImage
+is also far easier than writing one for wxBitmap, because wxImage has
+exactly one format on all platforms whereas wxBitmap can store pixel data
+very differently, depending on colour depths and platform.
 
 \wxheading{wxBitmap}
 
@@ -61,25 +90,23 @@ Under Windows, wxBitmap may load the following formats:
 \begin{itemize}\itemsep=0pt
 \item Windows bitmap resource (wxBITMAP\_TYPE\_BMP\_RESOURCE)
 \item Windows bitmap file (wxBITMAP\_TYPE\_BMP)
-\item PNG file (wxBITMAP\_TYPE\_PNG). Currently 4-bit (16-colour) PNG files do not load properly.
 \item XPM data and file (wxBITMAP\_TYPE\_XPM)
+\item All formats that are supported by the \helpref{wxImage}{wximage} class.
 \end{itemize}
 
 Under wxGTK, wxBitmap may load the following formats:
 
 \begin{itemize}\itemsep=0pt
-\item Windows bitmap file (wxBITMAP\_TYPE\_BMP)
-\item PNG (wxBITMAP\_TYPE\_PNG).
 \item XPM data and file (wxBITMAP\_TYPE\_XPM)
+\item All formats that are supported by the \helpref{wxImage}{wximage} class.
 \end{itemize}
 
 Under wxMotif, wxBitmap may load the following formats:
 
 \begin{itemize}\itemsep=0pt
-%\item Windows bitmap file (wxBITMAP\_TYPE\_BMP)
-%\item PNG (wxBITMAP\_TYPE\_PNG).
 \item XBM data and file (wxBITMAP\_TYPE\_XBM)
 \item XPM data and file (wxBITMAP\_TYPE\_XPM)
+\item All formats that are supported by the \helpref{wxImage}{wximage} class.
 \end{itemize}
 
 \wxheading{wxIcon}
@@ -95,17 +122,16 @@ Under Windows, wxIcon may load the following formats:
 Under wxGTK, wxIcon may load the following formats:
 
 \begin{itemize}\itemsep=0pt
-\item PNG (wxBITMAP\_TYPE\_PNG).
 \item XPM data and file (wxBITMAP\_TYPE\_XPM)
+\item All formats that are supported by the \helpref{wxImage}{wximage} class.
 \end{itemize}
 
 Under wxMotif, wxIcon may load the following formats:
 
 \begin{itemize}\itemsep=0pt
-%\item Windows bitmap file (wxBITMAP\_TYPE\_BMP)
-%\item PNG (wxBITMAP\_TYPE\_PNG).
 \item XBM data and file (wxBITMAP\_TYPE\_XBM)
 \item XPM data and file (wxBITMAP\_TYPE\_XPM)
+\item All formats that are supported by the \helpref{wxImage}{wximage} class (?).
 \end{itemize}
 
 \wxheading{wxCursor}