summaryrefslogtreecommitdiff
path: root/xfa/fxgraphics/cfx_shading.h
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2016-03-17 08:59:42 -0400
committerDan Sinclair <dsinclair@chromium.org>2016-03-17 08:59:42 -0400
commit811b8a4f4482bb5c11ac7610e70a4c8fd34c2907 (patch)
treecafa17bad705518693c0a2ba9d8df9d50af2101e /xfa/fxgraphics/cfx_shading.h
parenta03c343b47938fcb1b562741ff05252b01a4e39d (diff)
downloadpdfium-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_shading.h')
-rw-r--r--xfa/fxgraphics/cfx_shading.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/xfa/fxgraphics/cfx_shading.h b/xfa/fxgraphics/cfx_shading.h
new file mode 100644
index 0000000000..d56807616a
--- /dev/null
+++ b/xfa/fxgraphics/cfx_shading.h
@@ -0,0 +1,56 @@
+// Copyright 2016 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_SHADING_H_
+#define XFA_FXGRAPHICS_CFX_SHADING_H_
+
+#include "core/include/fxcrt/fx_coordinates.h"
+#include "core/include/fxcrt/fx_system.h"
+#include "core/include/fxge/fx_dib.h"
+
+#define FX_SHADING_Steps 256
+
+enum CFX_Shading_Type { FX_SHADING_Axial = 1, FX_SHADING_Radial };
+
+class CFX_Shading {
+ public:
+ // Axial shading.
+ CFX_Shading(const CFX_PointF& beginPoint,
+ const CFX_PointF& endPoint,
+ FX_BOOL isExtendedBegin,
+ FX_BOOL isExtendedEnd,
+ const FX_ARGB beginArgb,
+ const FX_ARGB endArgb);
+
+ // Radial shading.
+ CFX_Shading(const CFX_PointF& beginPoint,
+ const CFX_PointF& endPoint,
+ const FX_FLOAT beginRadius,
+ const FX_FLOAT endRadius,
+ FX_BOOL isExtendedBegin,
+ FX_BOOL isExtendedEnd,
+ const FX_ARGB beginArgb,
+ const FX_ARGB endArgb);
+ virtual ~CFX_Shading();
+
+ private:
+ friend class CFX_Graphics;
+
+ void InitArgbArray();
+
+ const CFX_Shading_Type m_type;
+ const CFX_PointF m_beginPoint;
+ const CFX_PointF m_endPoint;
+ const FX_FLOAT m_beginRadius;
+ const FX_FLOAT m_endRadius;
+ const FX_BOOL m_isExtendedBegin;
+ const FX_BOOL m_isExtendedEnd;
+ const FX_ARGB m_beginArgb;
+ const FX_ARGB m_endArgb;
+ FX_ARGB m_argbArray[FX_SHADING_Steps];
+};
+
+#endif // XFA_FXGRAPHICS_CFX_SHADING_H_