.TH wxMemoryDC 3erl "wx 2.2.2.1" "wxWidgets team." "Erlang Module Definition" .SH NAME wxMemoryDC \- Functions for wxMemoryDC class .SH DESCRIPTION .LP A memory device context provides a means to draw graphics onto a bitmap\&. When drawing in to a mono-bitmap, using \fIwxWHITE\fR\&, \fIwxWHITE_PEN\fR\& and \fIwxWHITE_BRUSH\fR\& will draw the background colour (i\&.e\&. 0) whereas all other colours will draw the foreground colour (i\&.e\&. 1)\&. .LP A bitmap must be selected into the new memory DC before it may be used for anything\&. Typical usage is as follows: .LP Note that the memory DC must be deleted (or the bitmap selected out of it) before a bitmap can be reselected into another memory DC\&. .LP And, before performing any other operations on the bitmap data, the bitmap must be selected out of the memory DC: .LP This happens automatically when \fIwxMemoryDC\fR\& object goes out of scope\&. .LP See: \fIwxBitmap\fR\&, \fIwxDC\fR\& .LP This class is derived (and can use functions) from: \fIwxDC\fR\& .LP wxWidgets docs: wxMemoryDC .SH DATA TYPES .nf \fBwxMemoryDC()\fR\& = wx:wx_object() .br .fi .SH EXPORTS .LP .nf .B new() -> wxMemoryDC() .br .fi .br .RS .LP Constructs a new memory device context\&. .LP Use the \fIwxDC:isOk/1\fR\& member to test whether the constructor was successful in creating a usable device context\&. Don\&'t forget to select a bitmap into the DC before drawing on it\&. .RE .LP .nf .B new(Dc) -> wxMemoryDC() .br .fi .br .RS .LP Types: .RS 3 Dc = wxDC:wxDC() | wxBitmap:wxBitmap() .br .RE .RE .RS .LP Constructs a new memory device context having the same characteristics as the given existing device context\&. .LP This constructor creates a memory device context \fIcompatible\fR\& with \fIdc\fR\& in wxMSW, the argument is ignored in the other ports\&. If \fIdc\fR\& is NULL, a device context compatible with the screen is created, just as with the default constructor\&. .RE .LP .nf .B selectObject(This, Bitmap) -> ok .br .fi .br .RS .LP Types: .RS 3 This = wxMemoryDC() .br Bitmap = wxBitmap:wxBitmap() .br .RE .RE .RS .LP Works exactly like \fIselectObjectAsSource/2\fR\& but this is the function you should use when you select a bitmap because you want to modify it, e\&.g\&. .LP drawing on this DC\&. .LP Using \fIselectObjectAsSource/2\fR\& when modifying the bitmap may incur some problems related to \fIwxBitmap\fR\& being a reference counted object (see overview_refcount)\&. .LP Before using the updated bitmap data, make sure to select it out of context first either by selecting ?wxNullBitmap into the device context or destroying the device context entirely\&. .LP If the bitmap is already selected in this device context, nothing is done\&. If it is selected in another context, the function asserts and drawing on the bitmap won\&'t work correctly\&. .LP See: \fIwxDC:drawBitmap/4\fR\& .RE .LP .nf .B selectObjectAsSource(This, Bitmap) -> ok .br .fi .br .RS .LP Types: .RS 3 This = wxMemoryDC() .br Bitmap = wxBitmap:wxBitmap() .br .RE .RE .RS .LP Selects the given bitmap into the device context, to use as the memory bitmap\&. .LP Selecting the bitmap into a memory DC allows you to draw into the DC (and therefore the bitmap) and also to use \fIwxDC:blit/6\fR\& to copy the bitmap to a window\&. For this purpose, you may find \fIwxDC:drawIcon/3\fR\& easier to use instead\&. .LP If the argument is ?wxNullBitmap (or some other uninitialised \fIwxBitmap\fR\&) the current bitmap is selected out of the device context, and the original bitmap restored, allowing the current bitmap to be destroyed safely\&. .RE .LP .nf .B destroy(This :: wxMemoryDC()) -> ok .br .fi .br .RS .LP Destroys the object\&. .RE