diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2016-03-17 08:59:42 -0400 |
---|---|---|
committer | Dan Sinclair <dsinclair@chromium.org> | 2016-03-17 08:59:42 -0400 |
commit | 811b8a4f4482bb5c11ac7610e70a4c8fd34c2907 (patch) | |
tree | cafa17bad705518693c0a2ba9d8df9d50af2101e /xfa/fxgraphics/cfx_path_generator.h | |
parent | a03c343b47938fcb1b562741ff05252b01a4e39d (diff) | |
download | pdfium-811b8a4f4482bb5c11ac7610e70a4c8fd34c2907.tar.xz |
Move xfa/include/fxgraphics/fx_graphics.h to xfa/fxgraphics.
This Cl moves and splits apart the fx_graphics.h file into individual classes.
The .cpp files are renamed to match the .h files. pre.h was removed at the
same time and its contents moved to the correct places as needed.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1810563002 .
Diffstat (limited to 'xfa/fxgraphics/cfx_path_generator.h')
-rw-r--r-- | xfa/fxgraphics/cfx_path_generator.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/xfa/fxgraphics/cfx_path_generator.h b/xfa/fxgraphics/cfx_path_generator.h new file mode 100644 index 0000000000..efe316697d --- /dev/null +++ b/xfa/fxgraphics/cfx_path_generator.h @@ -0,0 +1,67 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FXGRAPHICS_CFX_PATH_GENERATOR_H_ +#define XFA_FXGRAPHICS_CFX_PATH_GENERATOR_H_ + +#include "core/include/fxge/fx_ge.h" + +class CFX_PathGenerator { + public: + CFX_PathGenerator(); + ~CFX_PathGenerator(); + + void Create(); + CFX_PathData* GetPathData() const { return m_pPathData; } + + void AddPathData(CFX_PathData* path_data); + void AddPathData(FX_PATHPOINT* points, int count); + + void MoveTo(FX_FLOAT x, FX_FLOAT y); + void LineTo(FX_FLOAT x, FX_FLOAT y); + void BezierTo(FX_FLOAT ctrl_x1, + FX_FLOAT ctrl_y1, + FX_FLOAT ctrl_x2, + FX_FLOAT ctrl_y2, + FX_FLOAT to_x, + FX_FLOAT to_y); + void Close(); + void ArcTo(FX_FLOAT x, + FX_FLOAT y, + FX_FLOAT width, + FX_FLOAT height, + FX_FLOAT start_angle, + FX_FLOAT sweep_angle); + + void AddLine(FX_FLOAT x1, FX_FLOAT y1, FX_FLOAT x2, FX_FLOAT y2); + void AddBezier(FX_FLOAT start_x, + FX_FLOAT start_y, + FX_FLOAT ctrl_x1, + FX_FLOAT ctrl_y1, + FX_FLOAT ctrl_x2, + FX_FLOAT ctrl_y2, + FX_FLOAT end_x, + FX_FLOAT end_y); + void AddRectangle(FX_FLOAT x1, FX_FLOAT y1, FX_FLOAT x2, FX_FLOAT y2); + void AddEllipse(FX_FLOAT x, FX_FLOAT y, FX_FLOAT width, FX_FLOAT height); + void AddArc(FX_FLOAT x, + FX_FLOAT y, + FX_FLOAT width, + FX_FLOAT height, + FX_FLOAT start_angle, + FX_FLOAT sweep_angle); + void AddPie(FX_FLOAT x, + FX_FLOAT y, + FX_FLOAT width, + FX_FLOAT height, + FX_FLOAT start_angle, + FX_FLOAT sweep_angle); + + protected: + CFX_PathData* m_pPathData; +}; + +#endif // XFA_FXGRAPHICS_CFX_PATH_GENERATOR_H_ |