#include "wx/log.h"
#include "wx/icon.h"
#include "wx/msgdlg.h"
+ #include "wx/module.h"
#endif
#include "wx/dcprint.h"
, int nHeight
)
{
- int nDepth = 24 // we'll fix this later ::GetDeviceCaps((HDC) dc, PLANES) * ::GetDeviceCaps((HDC) dc, BITSPIXEL);
+ int nDepth = 24; // we'll fix this later ::GetDeviceCaps((HDC) dc, PLANES) * ::GetDeviceCaps((HDC) dc, BITSPIXEL);
wxNode* pNode = m_svBitmapCache.First();
BITMAPINFOHEADER2 vBmpHdr;
void wxDC::Clear()
{
+ //
+ // If this is a canvas DC then just fill with the background color
+ // Otherwise purge the whole thing
+ //
+ if (m_pCanvas)
+ {
+ RECTL vRect;
+
+ ::GpiQueryClipBox(m_hPS, &vRect);
+ ::WinFillRect(m_hPS, &vRect, ::GpiQueryBackColor(m_hPS));
+ }
+ else
::GpiErase(m_hPS);
} // end of wxDC::Clear
ulOptions = PU_ARBITRARY | GPIF_DEFAULT;
::GpiSetPS(m_hPS, &vSize, ulOptions);
}
- m_nWindowExtX = (int)MS_XDEV2LOGREL(VIEWPORT_EXTENT);
- m_nWindowExtY = (int)MS_YDEV2LOGREL(VIEWPORT_EXTENT);
+ m_nWindowExtX = (int)MS_XDEV2LOG(VIEWPORT_EXTENT);
+ m_nWindowExtY = (int)MS_YDEV2LOG(VIEWPORT_EXTENT);
// ????
}; // end of wxDC::SetMapMode
wxCoord wxDCBase::DeviceToLogicalXRel(wxCoord x) const
{
- return (wxCoord) ((x)/(m_logicalScaleX*m_userScaleX*m_signX*m_scaleX));
+ // axis orientation is not taken into account for conversion of a distance
+ return (wxCoord) ((x)/(m_logicalScaleX*m_userScaleX*m_scaleX));
}
wxCoord wxDCBase::DeviceToLogicalY(wxCoord y) const
wxCoord wxDCBase::DeviceToLogicalYRel(wxCoord y) const
{
- return (wxCoord) ((y)/(m_logicalScaleY*m_userScaleY*m_signY*m_scaleY));
+ // axis orientation is not taken into account for conversion of a distance
+ return (wxCoord) ((y)/(m_logicalScaleY*m_userScaleY*m_scaleY));
}
wxCoord wxDCBase::LogicalToDeviceX(wxCoord x) const
wxCoord wxDCBase::LogicalToDeviceXRel(wxCoord x) const
{
- return (wxCoord) (x*m_logicalScaleX*m_userScaleX*m_signX*m_scaleX);
+ // axis orientation is not taken into account for conversion of a distance
+ return (wxCoord) (x*m_logicalScaleX*m_userScaleX*m_scaleX);
}
wxCoord wxDCBase::LogicalToDeviceY(wxCoord y) const
wxCoord wxDCBase::LogicalToDeviceYRel(wxCoord y) const
{
- return (wxCoord) (y*m_logicalScaleY*m_userScaleY*m_signY*m_scaleY);
+ // axis orientation is not taken into account for conversion of a distance
+ return (wxCoord) (y*m_logicalScaleY*m_userScaleY*m_scaleY);
}
// ---------------------------------------------------------------------------