]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/dcmemory.h
Make storing non-trivial data in wxThreadSpecificInfo possible.
[wxWidgets.git] / interface / wx / dcmemory.h
index e1e6a998eb6e2eb7fceafe75b35d100f2594d307..33691620ea3aa11bcbb058610ce1c0b3a32d1405 100644 (file)
@@ -2,13 +2,11 @@
 // Name:        dcmemory.h
 // Purpose:     interface of wxMemoryDC
 // Author:      wxWidgets team
 // Name:        dcmemory.h
 // Purpose:     interface of wxMemoryDC
 // Author:      wxWidgets team
-// RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
     @class wxMemoryDC
 /////////////////////////////////////////////////////////////////////////////
 
 /**
     @class wxMemoryDC
-    @wxheader{dcmemory.h}
 
     A memory device context provides a means to draw graphics onto a bitmap.
     When drawing in to a mono-bitmap, using @c wxWHITE, @c wxWHITE_PEN and
 
     A memory device context provides a means to draw graphics onto a bitmap.
     When drawing in to a mono-bitmap, using @c wxWHITE, @c wxWHITE_PEN and
@@ -51,16 +49,28 @@ public:
     /**
         Constructs a new memory device context.
 
     /**
         Constructs a new memory device context.
 
-        Use the wxDC::Ok() member to test whether the constructor was
+        Use the wxDC::IsOk() 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.
     */
     wxMemoryDC();
         successful in creating a usable device context. Don't forget to select
         a bitmap into the DC before drawing on it.
     */
     wxMemoryDC();
+
+    /**
+        Constructs a new memory device context having the same characteristics
+        as the given existing device context.
+
+        This constructor creates a memory device context @e compatible with @a
+        dc in wxMSW, the argument is ignored in the other ports. If @a dc is
+        @NULL, a device context compatible with the screen is created, just as
+        with the default constructor.
+     */
+    wxMemoryDC(wxDC *dc);
+
     /**
         Constructs a new memory device context and calls SelectObject() with
         the given bitmap.
 
     /**
         Constructs a new memory device context and calls SelectObject() with
         the given bitmap.
 
-        Use the wxDC::Ok() member to test whether the constructor was
+        Use the wxDC::IsOk() member to test whether the constructor was
         successful in creating a usable device context.
     */
     wxMemoryDC(wxBitmap& bitmap);
         successful in creating a usable device context.
     */
     wxMemoryDC(wxBitmap& bitmap);
@@ -70,13 +80,17 @@ public:
         should use when you select a bitmap because you want to modify it, e.g.
         drawing on this DC.
 
         should use when you select a bitmap because you want to modify it, e.g.
         drawing on this DC.
 
-        Using SelectObjectAsSource() when modifying the bitmap may incurr some
+        Using SelectObjectAsSource() when modifying the bitmap may incur some
         problems related to wxBitmap being a reference counted object (see
         @ref overview_refcount).
 
         problems related to wxBitmap being a reference counted object (see
         @ref overview_refcount).
 
-        Also, before using the updated bitmap data, make sure to select it out
-        of context first (for example by selecting wxNullBitmap into the device
-        context).
+        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.
+
+        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.
 
         @see wxDC::DrawBitmap()
     */
 
         @see wxDC::DrawBitmap()
     */
@@ -89,7 +103,7 @@ public:
         the bitmap to a window. For this purpose, you may find wxDC::DrawIcon()
         easier to use instead.
 
         the bitmap to a window. For this purpose, you may find wxDC::DrawIcon()
         easier to use instead.
 
-        If the argument is wxNullBitmap (or some other uninitialised wxBitmap)
+        If the argument is ::wxNullBitmap (or some other uninitialised wxBitmap)
         the current bitmap is selected out of the device context, and the
         original bitmap restored, allowing the current bitmap to be destroyed
         safely.
         the current bitmap is selected out of the device context, and the
         original bitmap restored, allowing the current bitmap to be destroyed
         safely.