diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2018-01-17 16:29:15 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-01-17 16:29:15 +0000 |
commit | f855489794ffd575d073eb575b04ac1ca1f286c2 (patch) | |
tree | 692d54fa51fa882873a9fbb296f0f031c92046ea /xfa/fxfa/parser/cxfa_fill.h | |
parent | 181ffee7dd19906f9eee175627a9e6d0abb2e881 (diff) | |
download | pdfium-f855489794ffd575d073eb575b04ac1ca1f286c2.tar.xz |
Move fill draw code to fill classes
This CL moves the code related to drawing fills and the various types of
fill to the specific fill classes.
Change-Id: Ie151089b00ca96c5fa88d22ab5f697d9425297cd
Reviewed-on: https://pdfium-review.googlesource.com/23071
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'xfa/fxfa/parser/cxfa_fill.h')
-rw-r--r-- | xfa/fxfa/parser/cxfa_fill.h | 42 |
1 files changed, 25 insertions, 17 deletions
diff --git a/xfa/fxfa/parser/cxfa_fill.h b/xfa/fxfa/parser/cxfa_fill.h index dc733f5a24..1ffdcdf2a3 100644 --- a/xfa/fxfa/parser/cxfa_fill.h +++ b/xfa/fxfa/parser/cxfa_fill.h @@ -7,9 +7,12 @@ #ifndef XFA_FXFA_PARSER_CXFA_FILL_H_ #define XFA_FXFA_PARSER_CXFA_FILL_H_ +#include "core/fxcrt/fx_coordinates.h" #include "core/fxge/fx_dib.h" #include "xfa/fxfa/parser/cxfa_node.h" +#include "xfa/fxgraphics/cxfa_gepath.h" +class CXFA_Graphics; class CXFA_Linear; class CXFA_Pattern; class CXFA_Radial; @@ -25,25 +28,30 @@ class CXFA_Fill : public CXFA_Node { FX_ARGB GetColor(bool bText); void SetColor(FX_ARGB color); - XFA_Element GetFillType() const; - - XFA_AttributeEnum GetPatternType(); - FX_ARGB GetPatternColor(); - - XFA_AttributeEnum GetLinearType(); - FX_ARGB GetLinearColor(); - - int32_t GetStippleRate(); - FX_ARGB GetStippleColor(); - - bool IsRadialToEdge(); - FX_ARGB GetRadialColor(); + void Draw(CXFA_Graphics* pGS, + CXFA_GEPath* fillPath, + const CFX_RectF& rtWidget, + const CFX_Matrix& matrix); private: - CXFA_Stipple* GetStippleIfExists(); - CXFA_Radial* GetRadialIfExists(); - CXFA_Linear* GetLinearIfExists(); - CXFA_Pattern* GetPatternIfExists(); + XFA_Element GetType() const; + + void DrawStipple(CXFA_Graphics* pGS, + CXFA_GEPath* fillPath, + const CFX_RectF& rtWidget, + const CFX_Matrix& matrix); + void DrawRadial(CXFA_Graphics* pGS, + CXFA_GEPath* fillPath, + const CFX_RectF& rtWidget, + const CFX_Matrix& matrix); + void DrawLinear(CXFA_Graphics* pGS, + CXFA_GEPath* fillPath, + const CFX_RectF& rtWidget, + const CFX_Matrix& matrix); + void DrawPattern(CXFA_Graphics* pGS, + CXFA_GEPath* fillPath, + const CFX_RectF& rtWidget, + const CFX_Matrix& matrix); }; #endif // XFA_FXFA_PARSER_CXFA_FILL_H_ |