summaryrefslogtreecommitdiff
path: root/xfa/src/fde/fde_pen.h
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2016-03-09 15:33:14 -0500
committerDan Sinclair <dsinclair@chromium.org>2016-03-09 15:33:14 -0500
commit2e95951e06bd4d11459fb257c7c2b8fc881854e8 (patch)
tree742484ab5d944d9c2c930133cc5968d6c6a5678d /xfa/src/fde/fde_pen.h
parentea2a252c40f95616eb0f03318222f0c32ef90eff (diff)
downloadpdfium-2e95951e06bd4d11459fb257c7c2b8fc881854e8.tar.xz
Cleanup the xfa/src/fdp directory.
This CL renames xfa/src/fdp to xfa/src/fde to better match all of the content (nothing mentions fdp other then the directory name). The inner src/ and include/ folders are collapsed up a level and xfa/src/fdp/src/fde is moved up to xfa/src/fde. Some of the header moves conflicted with existing headers. In that case, the existing header had the content moved into the .cpp file and we replaced the existing header with the one from include/. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1784543002 .
Diffstat (limited to 'xfa/src/fde/fde_pen.h')
-rw-r--r--xfa/src/fde/fde_pen.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/xfa/src/fde/fde_pen.h b/xfa/src/fde/fde_pen.h
new file mode 100644
index 0000000000..adaa2da256
--- /dev/null
+++ b/xfa/src/fde/fde_pen.h
@@ -0,0 +1,70 @@
+// 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_SRC_FDE_FDE_PEN_H_
+#define XFA_SRC_FDE_FDE_PEN_H_
+
+class IFDE_Pen;
+
+#define FDE_PENTYPE_Unknown FDE_BRUSHTYPE_Unknown
+#define FDE_PENTYPE_SolidColor FDE_BRUSHTYPE_Solid
+#define FDE_PENTYPE_HatchBrush FDE_BRUSHTYPE_Hatch
+#define FDE_PENTYPE_TextureBrush FDE_BRUSHTYPE_Texture
+#define FDE_PENTYPE_LinearGradient FDE_BRUSHTYPE_LinearGradient
+#define FDE_PENTYPE_MAX FDE_BRUSHTYPE_MAX
+
+#define FDE_DASHSTYLE_Solid 0
+#define FDE_DASHSTYLE_Dash 1
+#define FDE_DASHSTYLE_Dot 2
+#define FDE_DASHSTYLE_DashDot 3
+#define FDE_DASHSTYLE_DashDotDot 4
+#define FDE_DASHSTYLE_Customized 5
+
+#define FDE_LINEJOIN_Miter 0
+#define FDE_LINEJOIN_Round 1
+#define FDE_LINEJOIN_Bevel 2
+
+#define FDE_LINECAP_Flat 0
+#define FDE_LINECAP_Round 1
+#define FDE_LINECAP_Square 2
+
+struct FDE_COMPOUNDPATTERN {
+ FX_FLOAT pos;
+ FX_FLOAT width;
+};
+typedef CFX_ArrayTemplate<FDE_COMPOUNDPATTERN> CFDE_CompoundPatterns;
+
+class IFDE_Pen {
+ public:
+ static IFDE_Pen* Create();
+ virtual ~IFDE_Pen() {}
+ virtual void Release() = 0;
+ virtual int32_t GetType() const = 0;
+ virtual FX_ARGB GetColor() const = 0;
+ virtual void SetColor(FX_ARGB color) = 0;
+ virtual IFDE_Brush* GetBrush() const = 0;
+ virtual void SetBrush(IFDE_Brush* pBrush, FX_BOOL bAutoRelease) = 0;
+ virtual int32_t GetLineCap() const = 0;
+ virtual void SetLineCap(int32_t iLineCap) = 0;
+ virtual int32_t GetDashStyle() const = 0;
+ virtual void SetDashStyle(int32_t iDashStyle) = 0;
+ virtual FX_FLOAT GetDashPhase() const = 0;
+ virtual void SetDashPhase(FX_FLOAT fPhase) = 0;
+ virtual int32_t CountDashArray() const = 0;
+ virtual int32_t GetDashArray(CFX_FloatArray& dashArray) const = 0;
+ virtual void SetDashArray(const CFX_FloatArray& dashArray) = 0;
+ virtual int32_t GetLineJoin() const = 0;
+ virtual void SetLineJoin(int32_t iLineJoin) = 0;
+ virtual FX_FLOAT GetMiterLimit() const = 0;
+ virtual void SetMiterLimit(FX_FLOAT fMiterLimit) = 0;
+ virtual int32_t CountCompoundPatterns() const = 0;
+ virtual FX_BOOL GetCompoundPatterns(
+ CFDE_CompoundPatterns& compoundPatterns) const = 0;
+ virtual FX_BOOL SetCompoundPatterns(
+ const CFDE_CompoundPatterns& compoundPatterns) = 0;
+};
+
+#endif // XFA_SRC_FDE_FDE_PEN_H_