summaryrefslogtreecommitdiff
path: root/vcl/win
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2015-11-17 13:03:23 +0000
committerCaolán McNamara <caolanm@redhat.com>2015-11-23 14:25:59 +0000
commitc43a3a58677b467274ce6c21d7db1a6c0cc65cb4 (patch)
tree3bb61dc498bd5ff72df4be4e0003ab284b0cc655 /vcl/win
parentb0f5416d7ee7c988d316df7ffa0318fa6514e4de (diff)
establish that Virtual Devices either match Physical Device depth or ...
are 1 or (rarely) 8 bit and lock that down. Change-Id: I3d946ebef34ffb71c5adea7aa420af50e9584e05
Diffstat (limited to 'vcl/win')
-rw-r--r--vcl/win/source/gdi/salvd.cxx16
1 files changed, 15 insertions, 1 deletions
diff --git a/vcl/win/source/gdi/salvd.cxx b/vcl/win/source/gdi/salvd.cxx
index 2a492b83413b..9b2136c0a0ca 100644
--- a/vcl/win/source/gdi/salvd.cxx
+++ b/vcl/win/source/gdi/salvd.cxx
@@ -68,11 +68,25 @@ HBITMAP WinSalVirtualDevice::ImplCreateVirDevBitmap(HDC hDC, long nDX, long nDY,
SalVirtualDevice* WinSalInstance::CreateVirtualDevice( SalGraphics* pSGraphics,
long &nDX, long &nDY,
- sal_uInt16 nBitCount,
+ DeviceFormat eFormat,
const SystemGraphicsData* pData )
{
WinSalGraphics* pGraphics = static_cast<WinSalGraphics*>(pSGraphics);
+ sal_uInt16 nBitCount;
+ switch (eFormat)
+ {
+ case DeviceFormat::BITMASK:
+ nBitCount = 1;
+ break;
+ case DeviceFormat::GRAYSCALE:
+ nBitCount = 8;
+ break;
+ default:
+ nBitCount = 0;
+ break;
+ }
+
HDC hDC = NULL;
HBITMAP hBmp = NULL;
bool bOk = FALSE;