diff options
author | Wei Li <weili@chromium.org> | 2016-02-19 11:53:03 -0800 |
---|---|---|
committer | Wei Li <weili@chromium.org> | 2016-02-19 11:53:03 -0800 |
commit | 7cf13c9c8b9b69b01e5debb5e8dc8b265983dfa8 (patch) | |
tree | 3a5b016ba365f11d775df0009c51b5a554ec302e /fpdfsdk/src/fpdfeditpage.cpp | |
parent | 31c7b73b71bd7352f96a82716b5e81d7fa24f37f (diff) | |
download | pdfium-7cf13c9c8b9b69b01e5debb5e8dc8b265983dfa8.tar.xz |
Remove PageObject's m_Type and add As<Type> functions
For CPDF_PageObject and its subclasses, remove m_Type and use GetType() instead. Also, add As<Type> functions to avoid casting all over the places.
BUG=pdfium:397
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1709393002 .
Diffstat (limited to 'fpdfsdk/src/fpdfeditpage.cpp')
-rw-r--r-- | fpdfsdk/src/fpdfeditpage.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/fpdfsdk/src/fpdfeditpage.cpp b/fpdfsdk/src/fpdfeditpage.cpp index 6c14079131..b833a61c02 100644 --- a/fpdfsdk/src/fpdfeditpage.cpp +++ b/fpdfsdk/src/fpdfeditpage.cpp @@ -140,9 +140,9 @@ DLLEXPORT void STDCALL FPDFPage_InsertObject(FPDF_PAGE page, pPage->GetPageObjectList()->push_back( std::unique_ptr<CPDF_PageObject>(pPageObj)); - switch (pPageObj->m_Type) { + switch (pPageObj->GetType()) { case FPDF_PAGEOBJ_PATH: { - CPDF_PathObject* pPathObj = (CPDF_PathObject*)pPageObj; + CPDF_PathObject* pPathObj = pPageObj->AsPath(); pPathObj->CalcBoundingBox(); break; } @@ -150,17 +150,17 @@ DLLEXPORT void STDCALL FPDFPage_InsertObject(FPDF_PAGE page, break; } case FPDF_PAGEOBJ_IMAGE: { - CPDF_ImageObject* pImageObj = (CPDF_ImageObject*)pPageObj; + CPDF_ImageObject* pImageObj = pPageObj->AsImage(); pImageObj->CalcBoundingBox(); break; } case FPDF_PAGEOBJ_SHADING: { - CPDF_ShadingObject* pShadingObj = (CPDF_ShadingObject*)pPageObj; + CPDF_ShadingObject* pShadingObj = pPageObj->AsShading(); pShadingObj->CalcBoundingBox(); break; } case FPDF_PAGEOBJ_FORM: { - CPDF_FormObject* pFormObj = (CPDF_FormObject*)pPageObj; + CPDF_FormObject* pFormObj = pPageObj->AsForm(); pFormObj->CalcBoundingBox(); break; } @@ -216,13 +216,13 @@ FPDFPageObj_HasTransparency(FPDF_PAGEOBJECT pageObject) { if (pGeneralState && pGeneralState->m_FillAlpha != 1.0f) return TRUE; - if (pPageObj->m_Type == CPDF_PageObject::PATH) { + if (pPageObj->IsPath()) { if (pGeneralState && pGeneralState->m_StrokeAlpha != 1.0f) return TRUE; } - if (pPageObj->m_Type == CPDF_PageObject::FORM) { - CPDF_FormObject* pFormObj = (CPDF_FormObject*)pPageObj; + if (pPageObj->IsForm()) { + CPDF_FormObject* pFormObj = pPageObj->AsForm(); if (pFormObj->m_pForm && (pFormObj->m_pForm->m_Transparency & PDFTRANS_ISOLATED)) return TRUE; |