Make RenderDeviceDriverIface more const-correct
Change SetDIBits(), StretchDIBits(), and StartDIBits() to have truly
const bitmap parameters. Then change all the RenderDeviceDriverIface
implementations and associated code to use const bitmaps as well.
Bug: pdfium:2115
Change-Id: I07d6d6ed50ad6de14f3b228d3f3d0f7f11d70ca5
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/115411
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fxcodec/fax/faxmodule.cpp b/core/fxcodec/fax/faxmodule.cpp
index a904186..df97129 100644
--- a/core/fxcodec/fax/faxmodule.cpp
+++ b/core/fxcodec/fax/faxmodule.cpp
@@ -688,7 +688,7 @@
class FaxEncoder {
public:
- explicit FaxEncoder(RetainPtr<CFX_DIBBase> src);
+ explicit FaxEncoder(RetainPtr<const CFX_DIBBase> src);
~FaxEncoder();
DataVector<uint8_t> Encode();
@@ -698,7 +698,7 @@
void AddBitStream(int data, int bitlen);
// Must outlive `m_RefLineSpan`.
- RetainPtr<CFX_DIBBase> const m_Src;
+ RetainPtr<const CFX_DIBBase> const m_Src;
int m_DestBitpos = 0;
const int m_Cols;
const int m_Rows;
@@ -710,7 +710,7 @@
pdfium::span<const uint8_t> m_RefLineSpan;
};
-FaxEncoder::FaxEncoder(RetainPtr<CFX_DIBBase> src)
+FaxEncoder::FaxEncoder(RetainPtr<const CFX_DIBBase> src)
: m_Src(std::move(src)),
m_Cols(m_Src->GetWidth()),
m_Rows(m_Src->GetHeight()),
@@ -825,7 +825,7 @@
} // namespace
// static
-DataVector<uint8_t> FaxModule::FaxEncode(RetainPtr<CFX_DIBBase> src) {
+DataVector<uint8_t> FaxModule::FaxEncode(RetainPtr<const CFX_DIBBase> src) {
DCHECK_EQ(1, src->GetBPP());
FaxEncoder encoder(std::move(src));
return encoder.Encode();
diff --git a/core/fxcodec/fax/faxmodule.h b/core/fxcodec/fax/faxmodule.h
index 2e7f5be..acc62d8 100644
--- a/core/fxcodec/fax/faxmodule.h
+++ b/core/fxcodec/fax/faxmodule.h
@@ -49,7 +49,7 @@
#if BUILDFLAG(IS_WIN)
// `src` must have a BPP value of 1.
- static DataVector<uint8_t> FaxEncode(RetainPtr<CFX_DIBBase> src);
+ static DataVector<uint8_t> FaxEncode(RetainPtr<const CFX_DIBBase> src);
#endif // BUILDFLAG(IS_WIN)
FaxModule() = delete;
diff --git a/core/fxcodec/jpeg/jpegmodule.cpp b/core/fxcodec/jpeg/jpegmodule.cpp
index 83f3e0b..7daefac 100644
--- a/core/fxcodec/jpeg/jpegmodule.cpp
+++ b/core/fxcodec/jpeg/jpegmodule.cpp
@@ -403,7 +403,7 @@
}
#if BUILDFLAG(IS_WIN)
-bool JpegModule::JpegEncode(const RetainPtr<CFX_DIBBase>& pSource,
+bool JpegModule::JpegEncode(const RetainPtr<const CFX_DIBBase>& pSource,
uint8_t** dest_buf,
size_t* dest_size) {
jpeg_error_mgr jerr;
diff --git a/core/fxcodec/jpeg/jpegmodule.h b/core/fxcodec/jpeg/jpegmodule.h
index 0f61765..ac54fa8 100644
--- a/core/fxcodec/jpeg/jpegmodule.h
+++ b/core/fxcodec/jpeg/jpegmodule.h
@@ -46,7 +46,7 @@
pdfium::span<const uint8_t> src_span);
#if BUILDFLAG(IS_WIN)
- static bool JpegEncode(const RetainPtr<CFX_DIBBase>& pSource,
+ static bool JpegEncode(const RetainPtr<const CFX_DIBBase>& pSource,
uint8_t** dest_buf,
size_t* dest_size);
#endif // BUILDFLAG(IS_WIN)
diff --git a/core/fxge/agg/fx_agg_driver.cpp b/core/fxge/agg/fx_agg_driver.cpp
index 70159ea..27515d1 100644
--- a/core/fxge/agg/fx_agg_driver.cpp
+++ b/core/fxge/agg/fx_agg_driver.cpp
@@ -1300,7 +1300,7 @@
return m_pBackdropBitmap;
}
-bool CFX_AggDeviceDriver::SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+bool CFX_AggDeviceDriver::SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t argb,
const FX_RECT& src_rect,
int left,
@@ -1320,15 +1320,16 @@
src_rect.top, blend_type, m_pClipRgn.get(), m_bRgbByteOrder);
}
-bool CFX_AggDeviceDriver::StretchDIBits(const RetainPtr<CFX_DIBBase>& pSource,
- uint32_t argb,
- int dest_left,
- int dest_top,
- int dest_width,
- int dest_height,
- const FX_RECT* pClipRect,
- const FXDIB_ResampleOptions& options,
- BlendMode blend_type) {
+bool CFX_AggDeviceDriver::StretchDIBits(
+ const RetainPtr<const CFX_DIBBase>& pSource,
+ uint32_t argb,
+ int dest_left,
+ int dest_top,
+ int dest_width,
+ int dest_height,
+ const FX_RECT* pClipRect,
+ const FXDIB_ResampleOptions& options,
+ BlendMode blend_type) {
if (m_pBitmap->GetBuffer().empty())
return true;
@@ -1354,7 +1355,7 @@
}
bool CFX_AggDeviceDriver::StartDIBits(
- const RetainPtr<CFX_DIBBase>& pSource,
+ const RetainPtr<const CFX_DIBBase>& pSource,
int bitmap_alpha,
uint32_t argb,
const CFX_Matrix& matrix,
diff --git a/core/fxge/agg/fx_agg_driver.h b/core/fxge/agg/fx_agg_driver.h
index 523bb0c..1908691 100644
--- a/core/fxge/agg/fx_agg_driver.h
+++ b/core/fxge/agg/fx_agg_driver.h
@@ -67,13 +67,13 @@
int left,
int top) override;
RetainPtr<CFX_DIBitmap> GetBackDrop() override;
- bool SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t argb,
const FX_RECT& src_rect,
int left,
int top,
BlendMode blend_type) override;
- bool StretchDIBits(const RetainPtr<CFX_DIBBase>& pSource,
+ bool StretchDIBits(const RetainPtr<const CFX_DIBBase>& pSource,
uint32_t argb,
int dest_left,
int dest_top,
@@ -82,7 +82,7 @@
const FX_RECT* pClipRect,
const FXDIB_ResampleOptions& options,
BlendMode blend_type) override;
- bool StartDIBits(const RetainPtr<CFX_DIBBase>& pSource,
+ bool StartDIBits(const RetainPtr<const CFX_DIBBase>& pSource,
int bitmap_alpha,
uint32_t argb,
const CFX_Matrix& matrix,
diff --git a/core/fxge/cfx_renderdevice.cpp b/core/fxge/cfx_renderdevice.cpp
index e0025de..0fec8e9 100644
--- a/core/fxge/cfx_renderdevice.cpp
+++ b/core/fxge/cfx_renderdevice.cpp
@@ -888,10 +888,11 @@
return m_pDeviceDriver->GetBackDrop();
}
-bool CFX_RenderDevice::SetDIBitsWithBlend(const RetainPtr<CFX_DIBBase>& pBitmap,
- int left,
- int top,
- BlendMode blend_mode) {
+bool CFX_RenderDevice::SetDIBitsWithBlend(
+ const RetainPtr<const CFX_DIBBase>& pBitmap,
+ int left,
+ int top,
+ BlendMode blend_mode) {
DCHECK(!pBitmap->IsMaskFormat());
FX_RECT dest_rect(left, top, left + pBitmap->GetWidth(),
top + pBitmap->GetHeight());
@@ -931,7 +932,7 @@
}
bool CFX_RenderDevice::StretchDIBitsWithFlagsAndBlend(
- const RetainPtr<CFX_DIBBase>& pBitmap,
+ const RetainPtr<const CFX_DIBBase>& pBitmap,
int left,
int top,
int dest_width,
diff --git a/core/fxge/cfx_renderdevice.h b/core/fxge/cfx_renderdevice.h
index fdc577d..4e24b23 100644
--- a/core/fxge/cfx_renderdevice.h
+++ b/core/fxge/cfx_renderdevice.h
@@ -95,14 +95,16 @@
RetainPtr<CFX_DIBitmap> GetBackDrop();
bool GetDIBits(const RetainPtr<CFX_DIBitmap>& pBitmap, int left, int top);
- bool SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap, int left, int top) {
+ bool SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
+ int left,
+ int top) {
return SetDIBitsWithBlend(pBitmap, left, top, BlendMode::kNormal);
}
- bool SetDIBitsWithBlend(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool SetDIBitsWithBlend(const RetainPtr<const CFX_DIBBase>& pBitmap,
int left,
int top,
BlendMode blend_mode);
- bool StretchDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StretchDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
int left,
int top,
int dest_width,
@@ -111,13 +113,14 @@
dest_height, FXDIB_ResampleOptions(),
BlendMode::kNormal);
}
- bool StretchDIBitsWithFlagsAndBlend(const RetainPtr<CFX_DIBBase>& pBitmap,
- int left,
- int top,
- int dest_width,
- int dest_height,
- const FXDIB_ResampleOptions& options,
- BlendMode blend_mode);
+ bool StretchDIBitsWithFlagsAndBlend(
+ const RetainPtr<const CFX_DIBBase>& pBitmap,
+ int left,
+ int top,
+ int dest_width,
+ int dest_height,
+ const FXDIB_ResampleOptions& options,
+ BlendMode blend_mode);
bool SetBitMask(const RetainPtr<CFX_DIBBase>& pBitmap,
int left,
int top,
diff --git a/core/fxge/dib/cfx_dibitmap.cpp b/core/fxge/dib/cfx_dibitmap.cpp
index e4bb777..0d5c4d7 100644
--- a/core/fxge/dib/cfx_dibitmap.cpp
+++ b/core/fxge/dib/cfx_dibitmap.cpp
@@ -769,7 +769,7 @@
int dest_top,
int width,
int height,
- const RetainPtr<CFX_DIBBase>& pMask,
+ const RetainPtr<const CFX_DIBBase>& pMask,
uint32_t color,
int src_left,
int src_top,
diff --git a/core/fxge/dib/cfx_dibitmap.h b/core/fxge/dib/cfx_dibitmap.h
index ee3b202..e19d32a 100644
--- a/core/fxge/dib/cfx_dibitmap.h
+++ b/core/fxge/dib/cfx_dibitmap.h
@@ -91,7 +91,7 @@
int dest_top,
int width,
int height,
- const RetainPtr<CFX_DIBBase>& pMask,
+ const RetainPtr<const CFX_DIBBase>& pMask,
uint32_t color,
int src_left,
int src_top,
diff --git a/core/fxge/dib/cfx_imagerenderer.cpp b/core/fxge/dib/cfx_imagerenderer.cpp
index 2e7f496..5abd96c 100644
--- a/core/fxge/dib/cfx_imagerenderer.cpp
+++ b/core/fxge/dib/cfx_imagerenderer.cpp
@@ -15,14 +15,15 @@
#include "core/fxge/dib/cfx_imagestretcher.h"
#include "core/fxge/dib/cfx_imagetransformer.h"
-CFX_ImageRenderer::CFX_ImageRenderer(const RetainPtr<CFX_DIBitmap>& pDevice,
- const CFX_ClipRgn* pClipRgn,
- const RetainPtr<CFX_DIBBase>& pSource,
- int bitmap_alpha,
- uint32_t mask_color,
- const CFX_Matrix& matrix,
- const FXDIB_ResampleOptions& options,
- bool bRgbByteOrder)
+CFX_ImageRenderer::CFX_ImageRenderer(
+ const RetainPtr<CFX_DIBitmap>& pDevice,
+ const CFX_ClipRgn* pClipRgn,
+ const RetainPtr<const CFX_DIBBase>& pSource,
+ int bitmap_alpha,
+ uint32_t mask_color,
+ const CFX_Matrix& matrix,
+ const FXDIB_ResampleOptions& options,
+ bool bRgbByteOrder)
: m_pDevice(pDevice),
m_pClipRgn(pClipRgn),
m_Matrix(matrix),
diff --git a/core/fxge/dib/cfx_imagerenderer.h b/core/fxge/dib/cfx_imagerenderer.h
index 9c31e05..c851017 100644
--- a/core/fxge/dib/cfx_imagerenderer.h
+++ b/core/fxge/dib/cfx_imagerenderer.h
@@ -24,7 +24,7 @@
public:
CFX_ImageRenderer(const RetainPtr<CFX_DIBitmap>& pDevice,
const CFX_ClipRgn* pClipRgn,
- const RetainPtr<CFX_DIBBase>& pSource,
+ const RetainPtr<const CFX_DIBBase>& pSource,
int bitmap_alpha,
uint32_t mask_color,
const CFX_Matrix& matrix,
diff --git a/core/fxge/renderdevicedriver_iface.h b/core/fxge/renderdevicedriver_iface.h
index bfa4fb7..eb942e0 100644
--- a/core/fxge/renderdevicedriver_iface.h
+++ b/core/fxge/renderdevicedriver_iface.h
@@ -72,13 +72,13 @@
int left,
int top);
virtual RetainPtr<CFX_DIBitmap> GetBackDrop();
- virtual bool SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ virtual bool SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
const FX_RECT& src_rect,
int dest_left,
int dest_top,
BlendMode blend_type) = 0;
- virtual bool StretchDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ virtual bool StretchDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
int dest_left,
int dest_top,
@@ -87,7 +87,7 @@
const FX_RECT* pClipRect,
const FXDIB_ResampleOptions& options,
BlendMode blend_type) = 0;
- virtual bool StartDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ virtual bool StartDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
diff --git a/core/fxge/skia/fx_skia_device.cpp b/core/fxge/skia/fx_skia_device.cpp
index 7c31bcf..d533d4d 100644
--- a/core/fxge/skia/fx_skia_device.cpp
+++ b/core/fxge/skia/fx_skia_device.cpp
@@ -1383,12 +1383,13 @@
return m_pBackdropBitmap;
}
-bool CFX_SkiaDeviceDriver::SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
- uint32_t color,
- const FX_RECT& src_rect,
- int left,
- int top,
- BlendMode blend_type) {
+bool CFX_SkiaDeviceDriver::SetDIBits(
+ const RetainPtr<const CFX_DIBBase>& pBitmap,
+ uint32_t color,
+ const FX_RECT& src_rect,
+ int left,
+ int top,
+ BlendMode blend_type) {
if (m_pBitmap->GetBuffer().empty()) {
return true;
}
@@ -1404,15 +1405,16 @@
blend_type);
}
-bool CFX_SkiaDeviceDriver::StretchDIBits(const RetainPtr<CFX_DIBBase>& pSource,
- uint32_t color,
- int dest_left,
- int dest_top,
- int dest_width,
- int dest_height,
- const FX_RECT* pClipRect,
- const FXDIB_ResampleOptions& options,
- BlendMode blend_type) {
+bool CFX_SkiaDeviceDriver::StretchDIBits(
+ const RetainPtr<const CFX_DIBBase>& pSource,
+ uint32_t color,
+ int dest_left,
+ int dest_top,
+ int dest_width,
+ int dest_height,
+ const FX_RECT* pClipRect,
+ const FXDIB_ResampleOptions& options,
+ BlendMode blend_type) {
if (m_pBitmap->GetBuffer().empty())
return true;
@@ -1433,7 +1435,7 @@
}
bool CFX_SkiaDeviceDriver::StartDIBits(
- const RetainPtr<CFX_DIBBase>& pSource,
+ const RetainPtr<const CFX_DIBBase>& pSource,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
@@ -1568,7 +1570,7 @@
}
bool CFX_SkiaDeviceDriver::StartDIBitsSkia(
- const RetainPtr<CFX_DIBBase>& pSource,
+ const RetainPtr<const CFX_DIBBase>& pSource,
const FX_RECT& src_rect,
int bitmap_alpha,
uint32_t color,
diff --git a/core/fxge/skia/fx_skia_device.h b/core/fxge/skia/fx_skia_device.h
index 9d32931..81ab061 100644
--- a/core/fxge/skia/fx_skia_device.h
+++ b/core/fxge/skia/fx_skia_device.h
@@ -95,7 +95,7 @@
RetainPtr<CFX_DIBitmap> GetBackDrop() override;
- bool SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
const FX_RECT& src_rect,
int dest_left,
@@ -110,7 +110,7 @@
void SetGroupKnockout(bool group_knockout) override;
bool SyncInternalBitmaps() override;
- bool StretchDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StretchDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
int dest_left,
int dest_top,
@@ -120,7 +120,7 @@
const FXDIB_ResampleOptions& options,
BlendMode blend_type) override;
- bool StartDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StartDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
@@ -207,7 +207,7 @@
uint32_t color,
const CFX_TextRenderOptions& options);
- bool StartDIBitsSkia(const RetainPtr<CFX_DIBBase>& pSource,
+ bool StartDIBitsSkia(const RetainPtr<const CFX_DIBBase>& pSource,
const FX_RECT& src_rect,
int bitmap_alpha,
uint32_t color,
diff --git a/core/fxge/win32/cfx_psrenderer.cpp b/core/fxge/win32/cfx_psrenderer.cpp
index 2815d28..e8068bd 100644
--- a/core/fxge/win32/cfx_psrenderer.cpp
+++ b/core/fxge/win32/cfx_psrenderer.cpp
@@ -478,7 +478,7 @@
WriteStream(buf);
}
-bool CFX_PSRenderer::SetDIBits(const RetainPtr<CFX_DIBBase>& pSource,
+bool CFX_PSRenderer::SetDIBits(const RetainPtr<const CFX_DIBBase>& pSource,
uint32_t color,
int left,
int top) {
@@ -488,7 +488,7 @@
return DrawDIBits(pSource, color, matrix, FXDIB_ResampleOptions());
}
-bool CFX_PSRenderer::StretchDIBits(const RetainPtr<CFX_DIBBase>& pSource,
+bool CFX_PSRenderer::StretchDIBits(const RetainPtr<const CFX_DIBBase>& pSource,
uint32_t color,
int dest_left,
int dest_top,
@@ -501,7 +501,7 @@
return DrawDIBits(pSource, color, matrix, options);
}
-bool CFX_PSRenderer::DrawDIBits(const RetainPtr<CFX_DIBBase>& pSource,
+bool CFX_PSRenderer::DrawDIBits(const RetainPtr<const CFX_DIBBase>& pSource,
uint32_t color,
const CFX_Matrix& matrix,
const FXDIB_ResampleOptions& options) {
@@ -553,7 +553,7 @@
WriteStream(buf);
WritePSBinary(compress_result.data);
} else {
- RetainPtr<CFX_DIBBase> pConverted = pSource;
+ RetainPtr<const CFX_DIBBase> pConverted = pSource;
switch (pSource->GetFormat()) {
case FXDIB_Format::k1bppRgb:
case FXDIB_Format::kRgb32:
@@ -837,7 +837,7 @@
}
CFX_PSRenderer::FaxCompressResult CFX_PSRenderer::FaxCompressData(
- RetainPtr<CFX_DIBBase> src) const {
+ RetainPtr<const CFX_DIBBase> src) const {
DCHECK_EQ(1, src->GetBPP());
FaxCompressResult result;
diff --git a/core/fxge/win32/cfx_psrenderer.h b/core/fxge/win32/cfx_psrenderer.h
index ad914be..aa73abb 100644
--- a/core/fxge/win32/cfx_psrenderer.h
+++ b/core/fxge/win32/cfx_psrenderer.h
@@ -37,9 +37,9 @@
struct EncoderIface {
DataVector<uint8_t> (*pA85EncodeFunc)(pdfium::span<const uint8_t> src_span);
- DataVector<uint8_t> (*pFaxEncodeFunc)(RetainPtr<CFX_DIBBase> src);
+ DataVector<uint8_t> (*pFaxEncodeFunc)(RetainPtr<const CFX_DIBBase> src);
DataVector<uint8_t> (*pFlateEncodeFunc)(pdfium::span<const uint8_t> src_span);
- bool (*pJpegEncodeFunc)(const RetainPtr<CFX_DIBBase>& pSource,
+ bool (*pJpegEncodeFunc)(const RetainPtr<const CFX_DIBBase>& pSource,
uint8_t** dest_buf,
size_t* dest_size);
DataVector<uint8_t> (*pRunLengthEncodeFunc)(
@@ -77,18 +77,18 @@
uint32_t fill_color,
uint32_t stroke_color,
const CFX_FillRenderOptions& fill_options);
- bool SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
int dest_left,
int dest_top);
- bool StretchDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StretchDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
int dest_left,
int dest_top,
int dest_width,
int dest_height,
const FXDIB_ResampleOptions& options);
- bool DrawDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool DrawDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
const CFX_Matrix& matrix,
const FXDIB_ResampleOptions& options);
@@ -156,7 +156,7 @@
CFX_Font* font,
float font_size,
fxcrt::ostringstream& buf);
- FaxCompressResult FaxCompressData(RetainPtr<CFX_DIBBase> src) const;
+ FaxCompressResult FaxCompressData(RetainPtr<const CFX_DIBBase> src) const;
absl::optional<PSCompressResult> PSCompressData(
pdfium::span<const uint8_t> src_span) const;
void WritePreambleString(ByteStringView str);
diff --git a/core/fxge/win32/cgdi_device_driver.cpp b/core/fxge/win32/cgdi_device_driver.cpp
index b315a09..1c836cb 100644
--- a/core/fxge/win32/cgdi_device_driver.cpp
+++ b/core/fxge/win32/cgdi_device_driver.cpp
@@ -389,7 +389,7 @@
SaveDC(m_hDC);
}
-bool CGdiDeviceDriver::GDI_SetDIBits(const RetainPtr<CFX_DIBBase>& source,
+bool CGdiDeviceDriver::GDI_SetDIBits(const RetainPtr<const CFX_DIBBase>& source,
const FX_RECT& src_rect,
int left,
int top) {
@@ -427,12 +427,13 @@
return true;
}
-bool CGdiDeviceDriver::GDI_StretchDIBits(const RetainPtr<CFX_DIBBase>& source,
- int dest_left,
- int dest_top,
- int dest_width,
- int dest_height,
- const FXDIB_ResampleOptions& options) {
+bool CGdiDeviceDriver::GDI_StretchDIBits(
+ const RetainPtr<const CFX_DIBBase>& source,
+ int dest_left,
+ int dest_top,
+ int dest_width,
+ int dest_height,
+ const FXDIB_ResampleOptions& options) {
if (!source || dest_width == 0 || dest_height == 0) {
return false;
}
@@ -467,12 +468,13 @@
return true;
}
-bool CGdiDeviceDriver::GDI_StretchBitMask(const RetainPtr<CFX_DIBBase>& source,
- int dest_left,
- int dest_top,
- int dest_width,
- int dest_height,
- uint32_t bitmap_color) {
+bool CGdiDeviceDriver::GDI_StretchBitMask(
+ const RetainPtr<const CFX_DIBBase>& source,
+ int dest_left,
+ int dest_top,
+ int dest_width,
+ int dest_height,
+ uint32_t bitmap_color) {
if (!source || dest_width == 0 || dest_height == 0) {
return false;
}
diff --git a/core/fxge/win32/cgdi_device_driver.h b/core/fxge/win32/cgdi_device_driver.h
index de8c41e..ee67cbd 100644
--- a/core/fxge/win32/cgdi_device_driver.h
+++ b/core/fxge/win32/cgdi_device_driver.h
@@ -52,17 +52,17 @@
void DrawLine(float x1, float y1, float x2, float y2);
- bool GDI_SetDIBits(const RetainPtr<CFX_DIBBase>& source,
+ bool GDI_SetDIBits(const RetainPtr<const CFX_DIBBase>& source,
const FX_RECT& src_rect,
int left,
int top);
- bool GDI_StretchDIBits(const RetainPtr<CFX_DIBBase>& source,
+ bool GDI_StretchDIBits(const RetainPtr<const CFX_DIBBase>& source,
int dest_left,
int dest_top,
int dest_width,
int dest_height,
const FXDIB_ResampleOptions& options);
- bool GDI_StretchBitMask(const RetainPtr<CFX_DIBBase>& source,
+ bool GDI_StretchBitMask(const RetainPtr<const CFX_DIBBase>& source,
int dest_left,
int dest_top,
int dest_width,
diff --git a/core/fxge/win32/cgdi_display_driver.cpp b/core/fxge/win32/cgdi_display_driver.cpp
index 763e300..a9f2434 100644
--- a/core/fxge/win32/cgdi_display_driver.cpp
+++ b/core/fxge/win32/cgdi_display_driver.cpp
@@ -73,7 +73,7 @@
return ret;
}
-bool CGdiDisplayDriver::SetDIBits(const RetainPtr<CFX_DIBBase>& pSource,
+bool CGdiDisplayDriver::SetDIBits(const RetainPtr<const CFX_DIBBase>& pSource,
uint32_t color,
const FX_RECT& src_rect,
int left,
@@ -119,7 +119,7 @@
}
bool CGdiDisplayDriver::UseFoxitStretchEngine(
- const RetainPtr<CFX_DIBBase>& pSource,
+ const RetainPtr<const CFX_DIBBase>& pSource,
uint32_t color,
int dest_left,
int dest_top,
@@ -145,15 +145,16 @@
BlendMode::kNormal);
}
-bool CGdiDisplayDriver::StretchDIBits(const RetainPtr<CFX_DIBBase>& pSource,
- uint32_t color,
- int dest_left,
- int dest_top,
- int dest_width,
- int dest_height,
- const FX_RECT* pClipRect,
- const FXDIB_ResampleOptions& options,
- BlendMode blend_type) {
+bool CGdiDisplayDriver::StretchDIBits(
+ const RetainPtr<const CFX_DIBBase>& pSource,
+ uint32_t color,
+ int dest_left,
+ int dest_top,
+ int dest_width,
+ int dest_height,
+ const FX_RECT* pClipRect,
+ const FXDIB_ResampleOptions& options,
+ BlendMode blend_type) {
DCHECK(pSource);
DCHECK(pClipRect);
@@ -207,7 +208,7 @@
dest_height, FXDIB_ResampleOptions());
}
-bool CGdiDisplayDriver::StartDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+bool CGdiDisplayDriver::StartDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
diff --git a/core/fxge/win32/cgdi_display_driver.h b/core/fxge/win32/cgdi_display_driver.h
index 2e43194..a3e544d 100644
--- a/core/fxge/win32/cgdi_display_driver.h
+++ b/core/fxge/win32/cgdi_display_driver.h
@@ -30,13 +30,13 @@
bool GetDIBits(const RetainPtr<CFX_DIBitmap>& pBitmap,
int left,
int top) override;
- bool SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
const FX_RECT& src_rect,
int left,
int top,
BlendMode blend_type) override;
- bool StretchDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StretchDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
int dest_left,
int dest_top,
@@ -45,7 +45,7 @@
const FX_RECT* pClipRect,
const FXDIB_ResampleOptions& options,
BlendMode blend_type) override;
- bool StartDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StartDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
@@ -53,7 +53,7 @@
std::unique_ptr<CFX_ImageRenderer>* handle,
BlendMode blend_type) override;
- bool UseFoxitStretchEngine(const RetainPtr<CFX_DIBBase>& pSource,
+ bool UseFoxitStretchEngine(const RetainPtr<const CFX_DIBBase>& pSource,
uint32_t color,
int dest_left,
int dest_top,
diff --git a/core/fxge/win32/cgdi_plus_ext.cpp b/core/fxge/win32/cgdi_plus_ext.cpp
index c491350..00d6319 100644
--- a/core/fxge/win32/cgdi_plus_ext.cpp
+++ b/core/fxge/win32/cgdi_plus_ext.cpp
@@ -204,7 +204,7 @@
}
void OutputImage(Gdiplus::GpGraphics* pGraphics,
- const RetainPtr<CFX_DIBBase>& source,
+ const RetainPtr<const CFX_DIBBase>& source,
const FX_RECT& src_rect,
int dest_left,
int dest_top,
@@ -588,7 +588,7 @@
}
bool CGdiplusExt::StretchDIBits(HDC hDC,
- const RetainPtr<CFX_DIBBase>& source,
+ const RetainPtr<const CFX_DIBBase>& source,
int dest_left,
int dest_top,
int dest_width,
diff --git a/core/fxge/win32/cgdi_plus_ext.h b/core/fxge/win32/cgdi_plus_ext.h
index 6a93179..339e10b 100644
--- a/core/fxge/win32/cgdi_plus_ext.h
+++ b/core/fxge/win32/cgdi_plus_ext.h
@@ -31,7 +31,7 @@
void Load();
bool IsAvailable() { return !!gdiplus_module_; }
bool StretchDIBits(HDC hDC,
- const RetainPtr<CFX_DIBBase>& source,
+ const RetainPtr<const CFX_DIBBase>& source,
int dest_left,
int dest_top,
int dest_width,
diff --git a/core/fxge/win32/cgdi_printer_driver.cpp b/core/fxge/win32/cgdi_printer_driver.cpp
index 28bc516..3e6b41c 100644
--- a/core/fxge/win32/cgdi_printer_driver.cpp
+++ b/core/fxge/win32/cgdi_printer_driver.cpp
@@ -39,7 +39,7 @@
return CGdiDeviceDriver::GetDeviceCaps(caps_id);
}
-bool CGdiPrinterDriver::SetDIBits(const RetainPtr<CFX_DIBBase>& pSource,
+bool CGdiPrinterDriver::SetDIBits(const RetainPtr<const CFX_DIBBase>& pSource,
uint32_t color,
const FX_RECT& src_rect,
int left,
@@ -62,15 +62,16 @@
return GDI_SetDIBits(pSource, src_rect, left, top);
}
-bool CGdiPrinterDriver::StretchDIBits(const RetainPtr<CFX_DIBBase>& pSource,
- uint32_t color,
- int dest_left,
- int dest_top,
- int dest_width,
- int dest_height,
- const FX_RECT* pClipRect,
- const FXDIB_ResampleOptions& options,
- BlendMode blend_type) {
+bool CGdiPrinterDriver::StretchDIBits(
+ const RetainPtr<const CFX_DIBBase>& pSource,
+ uint32_t color,
+ int dest_left,
+ int dest_top,
+ int dest_width,
+ int dest_height,
+ const FX_RECT* pClipRect,
+ const FXDIB_ResampleOptions& options,
+ BlendMode blend_type) {
if (pSource->IsMaskFormat()) {
int alpha = FXARGB_A(color);
if (pSource->GetBPP() != 1 || alpha != 255)
@@ -117,7 +118,7 @@
dest_height, options);
}
-bool CGdiPrinterDriver::StartDIBits(const RetainPtr<CFX_DIBBase>& pSource,
+bool CGdiPrinterDriver::StartDIBits(const RetainPtr<const CFX_DIBBase>& pSource,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
diff --git a/core/fxge/win32/cgdi_printer_driver.h b/core/fxge/win32/cgdi_printer_driver.h
index 5c4cfc0..2477399 100644
--- a/core/fxge/win32/cgdi_printer_driver.h
+++ b/core/fxge/win32/cgdi_printer_driver.h
@@ -21,13 +21,13 @@
private:
// CGdiPrinterDriver:
int GetDeviceCaps(int caps_id) const override;
- bool SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
const FX_RECT& src_rect,
int left,
int top,
BlendMode blend_type) override;
- bool StretchDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StretchDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
int dest_left,
int dest_top,
@@ -36,7 +36,7 @@
const FX_RECT* pClipRect,
const FXDIB_ResampleOptions& options,
BlendMode blend_type) override;
- bool StartDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StartDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
diff --git a/core/fxge/win32/cps_printer_driver.cpp b/core/fxge/win32/cps_printer_driver.cpp
index f30b80d..6f03b2c 100644
--- a/core/fxge/win32/cps_printer_driver.cpp
+++ b/core/fxge/win32/cps_printer_driver.cpp
@@ -157,7 +157,7 @@
return true;
}
-bool CPSPrinterDriver::SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+bool CPSPrinterDriver::SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
const FX_RECT& src_rect,
int left,
@@ -168,22 +168,23 @@
return m_PSRenderer.SetDIBits(pBitmap, color, left, top);
}
-bool CPSPrinterDriver::StretchDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
- uint32_t color,
- int dest_left,
- int dest_top,
- int dest_width,
- int dest_height,
- const FX_RECT* pClipRect,
- const FXDIB_ResampleOptions& options,
- BlendMode blend_type) {
+bool CPSPrinterDriver::StretchDIBits(
+ const RetainPtr<const CFX_DIBBase>& pBitmap,
+ uint32_t color,
+ int dest_left,
+ int dest_top,
+ int dest_width,
+ int dest_height,
+ const FX_RECT* pClipRect,
+ const FXDIB_ResampleOptions& options,
+ BlendMode blend_type) {
if (blend_type != BlendMode::kNormal)
return false;
return m_PSRenderer.StretchDIBits(pBitmap, color, dest_left, dest_top,
dest_width, dest_height, options);
}
-bool CPSPrinterDriver::StartDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+bool CPSPrinterDriver::StartDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
diff --git a/core/fxge/win32/cps_printer_driver.h b/core/fxge/win32/cps_printer_driver.h
index 4e28497..d709c5d 100644
--- a/core/fxge/win32/cps_printer_driver.h
+++ b/core/fxge/win32/cps_printer_driver.h
@@ -45,13 +45,13 @@
const CFX_FillRenderOptions& fill_options,
BlendMode blend_type) override;
bool GetClipBox(FX_RECT* pRect) override;
- bool SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
const FX_RECT& src_rect,
int left,
int top,
BlendMode blend_type) override;
- bool StretchDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StretchDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
int dest_left,
int dest_top,
@@ -60,7 +60,7 @@
const FX_RECT* pClipRect,
const FXDIB_ResampleOptions& options,
BlendMode blend_type) override;
- bool StartDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StartDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
diff --git a/core/fxge/win32/ctext_only_printer_driver.cpp b/core/fxge/win32/ctext_only_printer_driver.cpp
index 7689f3f..3e0fe61 100644
--- a/core/fxge/win32/ctext_only_printer_driver.cpp
+++ b/core/fxge/win32/ctext_only_printer_driver.cpp
@@ -83,12 +83,13 @@
return false;
}
-bool CTextOnlyPrinterDriver::SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
- uint32_t color,
- const FX_RECT& src_rect,
- int left,
- int top,
- BlendMode blend_type) {
+bool CTextOnlyPrinterDriver::SetDIBits(
+ const RetainPtr<const CFX_DIBBase>& pBitmap,
+ uint32_t color,
+ const FX_RECT& src_rect,
+ int left,
+ int top,
+ BlendMode blend_type) {
return false;
}
@@ -101,7 +102,7 @@
}
bool CTextOnlyPrinterDriver::StretchDIBits(
- const RetainPtr<CFX_DIBBase>& pBitmap,
+ const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
int dest_left,
int dest_top,
@@ -114,7 +115,7 @@
}
bool CTextOnlyPrinterDriver::StartDIBits(
- const RetainPtr<CFX_DIBBase>& pBitmap,
+ const RetainPtr<const CFX_DIBBase>& pBitmap,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,
diff --git a/core/fxge/win32/ctext_only_printer_driver.h b/core/fxge/win32/ctext_only_printer_driver.h
index e029a7c..67264aa 100644
--- a/core/fxge/win32/ctext_only_printer_driver.h
+++ b/core/fxge/win32/ctext_only_printer_driver.h
@@ -36,13 +36,13 @@
const CFX_FillRenderOptions& fill_options,
BlendMode blend_type) override;
bool GetClipBox(FX_RECT* pRect) override;
- bool SetDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool SetDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
const FX_RECT& src_rect,
int left,
int top,
BlendMode blend_type) override;
- bool StretchDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StretchDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
uint32_t color,
int dest_left,
int dest_top,
@@ -51,7 +51,7 @@
const FX_RECT* pClipRect,
const FXDIB_ResampleOptions& options,
BlendMode blend_type) override;
- bool StartDIBits(const RetainPtr<CFX_DIBBase>& pBitmap,
+ bool StartDIBits(const RetainPtr<const CFX_DIBBase>& pBitmap,
int bitmap_alpha,
uint32_t color,
const CFX_Matrix& matrix,