diff options
author | tsepez <tsepez@chromium.org> | 2016-08-26 15:17:12 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-08-26 15:17:13 -0700 |
commit | 987f3ee94c3cb8e4a6113ad05453a2948469386c (patch) | |
tree | fbd1fdc800c2510c89ae043331a799a42c3251af /core/fpdfapi/fpdf_page/include/cpdf_path.h | |
parent | 83d2351fd64128156c9abfb70266133d58a5e525 (diff) | |
download | pdfium-987f3ee94c3cb8e4a6113ad05453a2948469386c.tar.xz |
Make CFX_CountRef<>::m_pObject private, add accessors, fix const-ness.
Hide the CountedObj class from the rest of the code.
Rename GetModify() to GetPrivateCopy(), since it turns out
there are places where we modify a potentially-shared copy.
Add non-const version of GetObject() to permit these.
Review-Url: https://codereview.chromium.org/2287633002
Diffstat (limited to 'core/fpdfapi/fpdf_page/include/cpdf_path.h')
-rw-r--r-- | core/fpdfapi/fpdf_page/include/cpdf_path.h | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/core/fpdfapi/fpdf_page/include/cpdf_path.h b/core/fpdfapi/fpdf_page/include/cpdf_path.h index 0e8c491f9e..98de696004 100644 --- a/core/fpdfapi/fpdf_page/include/cpdf_path.h +++ b/core/fpdfapi/fpdf_page/include/cpdf_path.h @@ -14,28 +14,30 @@ class CPDF_Path : public CFX_CountRef<CFX_PathData> { public: - int GetPointCount() const { return m_pObject->GetPointCount(); } - int GetFlag(int index) const { return m_pObject->GetFlag(index); } - FX_FLOAT GetPointX(int index) const { return m_pObject->GetPointX(index); } - FX_FLOAT GetPointY(int index) const { return m_pObject->GetPointY(index); } - FX_PATHPOINT* GetPoints() const { return m_pObject->GetPoints(); } - CFX_FloatRect GetBoundingBox() const { return m_pObject->GetBoundingBox(); } + int GetPointCount() const { return GetObject()->GetPointCount(); } + int GetFlag(int index) const { return GetObject()->GetFlag(index); } + FX_FLOAT GetPointX(int index) const { return GetObject()->GetPointX(index); } + FX_FLOAT GetPointY(int index) const { return GetObject()->GetPointY(index); } + FX_PATHPOINT* GetPoints() const { return GetObject()->GetPoints(); } + CFX_FloatRect GetBoundingBox() const { return GetObject()->GetBoundingBox(); } CFX_FloatRect GetBoundingBox(FX_FLOAT line_width, FX_FLOAT miter_limit) const { - return m_pObject->GetBoundingBox(line_width, miter_limit); + return GetObject()->GetBoundingBox(line_width, miter_limit); } - FX_BOOL IsRect() const { return m_pObject->IsRect(); } - void Transform(const CFX_Matrix* pMatrix) { GetModify()->Transform(pMatrix); } + FX_BOOL IsRect() const { return GetObject()->IsRect(); } + void Transform(const CFX_Matrix* pMatrix) { + GetPrivateCopy()->Transform(pMatrix); + } void Append(const CPDF_Path& other, const CFX_Matrix* pMatrix) { - m_pObject->Append(other.GetObject(), pMatrix); + GetObject()->Append(other.GetObject(), pMatrix); } void AppendRect(FX_FLOAT left, FX_FLOAT bottom, FX_FLOAT right, FX_FLOAT top) { - m_pObject->AppendRect(left, bottom, right, top); + GetObject()->AppendRect(left, bottom, right, top); } }; |