summaryrefslogtreecommitdiff
path: root/core/fpdfapi/page/cpdf_colorstate.cpp
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2018-04-13 15:44:36 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-04-13 15:44:36 +0000
commit996c93068bfc8b443c77b735bc6400285bc8a407 (patch)
tree13b6d18f62f15c4ba04edec3dd2349f7ae3c1d54 /core/fpdfapi/page/cpdf_colorstate.cpp
parent7afdad5ab7a1bd54ddf6f2a823be30d4b8e39567 (diff)
downloadpdfium-996c93068bfc8b443c77b735bc6400285bc8a407.tar.xz
Rename the other CPDF_Color::SetValue() variant.
Rename it to SetValueForNonePattern() and combine the components parameters into a std::vector. Fix the callers to use std::vector as well. Change-Id: I0edd7e7876e47b56821e63cc5073fc21fd4098ee Reviewed-on: https://pdfium-review.googlesource.com/30470 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Diffstat (limited to 'core/fpdfapi/page/cpdf_colorstate.cpp')
-rw-r--r--core/fpdfapi/page/cpdf_colorstate.cpp36
1 files changed, 18 insertions, 18 deletions
diff --git a/core/fpdfapi/page/cpdf_colorstate.cpp b/core/fpdfapi/page/cpdf_colorstate.cpp
index 16d2770600..492114ab00 100644
--- a/core/fpdfapi/page/cpdf_colorstate.cpp
+++ b/core/fpdfapi/page/cpdf_colorstate.cpp
@@ -70,18 +70,15 @@ bool CPDF_ColorState::HasStrokeColor() const {
}
void CPDF_ColorState::SetFillColor(CPDF_ColorSpace* pCS,
- float* pValue,
- uint32_t nValues) {
+ const std::vector<float>& values) {
ColorData* pData = m_Ref.GetPrivateCopy();
- SetColor(pData->m_FillColor, &pData->m_FillColorRef, pCS, pValue, nValues);
+ SetColor(pCS, values, &pData->m_FillColor, &pData->m_FillColorRef);
}
void CPDF_ColorState::SetStrokeColor(CPDF_ColorSpace* pCS,
- float* pValue,
- uint32_t nValues) {
+ const std::vector<float>& values) {
ColorData* pData = m_Ref.GetPrivateCopy();
- SetColor(pData->m_StrokeColor, &pData->m_StrokeColorRef, pCS, pValue,
- nValues);
+ SetColor(pCS, values, &pData->m_StrokeColor, &pData->m_StrokeColorRef);
}
void CPDF_ColorState::SetFillPattern(CPDF_Pattern* pPattern,
@@ -119,24 +116,27 @@ void CPDF_ColorState::SetStrokePattern(CPDF_Pattern* pPattern,
pData->m_StrokeColor.GetRGB(&R, &G, &B) ? FXSYS_BGR(B, G, R) : 0xFFFFFFFF;
}
-void CPDF_ColorState::SetColor(CPDF_Color& color,
- FX_COLORREF* colorref,
- CPDF_ColorSpace* pCS,
- float* pValue,
- uint32_t nValues) {
+void CPDF_ColorState::SetColor(CPDF_ColorSpace* pCS,
+ const std::vector<float>& values,
+ CPDF_Color* color,
+ FX_COLORREF* colorref) {
+ ASSERT(color);
+ ASSERT(colorref);
+
if (pCS)
- color.SetColorSpace(pCS);
- else if (color.IsNull())
- color.SetColorSpace(CPDF_ColorSpace::GetStockCS(PDFCS_DEVICEGRAY));
+ color->SetColorSpace(pCS);
+ else if (color->IsNull())
+ color->SetColorSpace(CPDF_ColorSpace::GetStockCS(PDFCS_DEVICEGRAY));
- if (color.GetColorSpace()->CountComponents() > nValues)
+ if (color->GetColorSpace()->CountComponents() > values.size())
return;
- color.SetValue(pValue);
+ if (!color->IsPattern())
+ color->SetValueForNonPattern(values);
int R;
int G;
int B;
- *colorref = color.GetRGB(&R, &G, &B) ? FXSYS_BGR(B, G, R) : 0xFFFFFFFF;
+ *colorref = color->GetRGB(&R, &G, &B) ? FXSYS_BGR(B, G, R) : 0xFFFFFFFF;
}
CPDF_ColorState::ColorData::ColorData()