#endif
#ifndef WX_PRECOMP
+#include "wx/utils.h"
#endif
-#include "wx/dcmemory.h"
+#include "wx/msw/private.h"
-#include <windows.h>
+#include "wx/dcmemory.h"
#if !USE_SHARED_LIBRARY
IMPLEMENT_DYNAMIC_CLASS(wxMemoryDC, wxDC)
wxMemoryDC::wxMemoryDC(void)
{
- m_hDC = (WXHDC) ::CreateCompatibleDC(NULL);
+ m_hDC = (WXHDC) ::CreateCompatibleDC((HDC) NULL);
m_ok = (m_hDC != 0);
m_bOwnsDC = TRUE;
SetBrush(*wxWHITE_BRUSH);
SetPen(*wxBLACK_PEN);
+
+ // the background mode is only used for text background
+ // and is set in DrawText() to OPAQUE as required, other-
+ // wise always TRANSPARENT, RR
+ ::SetBkMode( GetHdc(), TRANSPARENT );
+
}
wxMemoryDC::wxMemoryDC(wxDC *old_dc)
SetBrush(*wxWHITE_BRUSH);
SetPen(*wxBLACK_PEN);
+
+ // the background mode is only used for text background
+ // and is set in DrawText() to OPAQUE as required, other-
+ // wise always TRANSPARENT, RR
+ ::SetBkMode( GetHdc(), TRANSPARENT );
+
}
wxMemoryDC::~wxMemoryDC(void)
// a device context
if (bitmap.GetSelectedInto() && (bitmap.GetSelectedInto() != this))
{
- wxFatalError("Error in wxMemoryDC::SelectObject\nBitmap is selected in another wxMemoryDC.\nDelete the first wxMemoryDC or use SelectObject(NULL)");
+ wxFatalError(_T("Error in wxMemoryDC::SelectObject\nBitmap is selected in another wxMemoryDC.\nDelete the first wxMemoryDC or use SelectObject(NULL)"));
return;
}
// JACS 11/12/98: disabling this since the Forty Thieves sample
// shows this not working properly. In fact, if loading from a resource,
// the depth should become the screen depth, so why was it being called?
- if (0)
- {
- // Make a new bitmap that has the correct depth.
- wxBitmap newBitmap = bitmap.GetBitmapForDC(* this);
-
- m_selectedBitmap = newBitmap ;
- }
- else
- {
+// if (0)
+// {
+// // Make a new bitmap that has the correct depth.
+// wxBitmap newBitmap = bitmap.GetBitmapForDC(* this);
+//
+// m_selectedBitmap = newBitmap ;
+// }
+// else
+// {
m_selectedBitmap = bitmap;
- }
+// }
if (!m_selectedBitmap.Ok())
return;
if (bm == ERROR)
{
- wxFatalError("Error in wxMemoryDC::SelectObject\nBitmap may not be loaded, or may be selected in another wxMemoryDC.\nDelete the first wxMemoryDC to deselect bitmap.");
+ wxFatalError(_T("Error in wxMemoryDC::SelectObject\nBitmap may not be loaded, or may be selected in another wxMemoryDC.\nDelete the first wxMemoryDC to deselect bitmap."));
}
else if (!m_oldBitmap)
m_oldBitmap = (WXHBITMAP) bm;
}
-void wxMemoryDC::GetSize(int *width, int *height) const
+void wxMemoryDC::DoGetSize(int *width, int *height) const
{
if (!m_selectedBitmap.Ok())
{