Index: xfa/fxgraphics/cfx_color.h |
diff --git a/xfa/fxgraphics/cfx_color.h b/xfa/fxgraphics/cfx_color.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..5ab99d8d87f9aa815b68e55759f1bcc6a43953b3 |
--- /dev/null |
+++ b/xfa/fxgraphics/cfx_color.h |
@@ -0,0 +1,45 @@ |
+// 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_COLOR_H_ |
+#define XFA_FXGRAPHICS_CFX_COLOR_H_ |
+ |
+#include "core/include/fxge/fx_dib.h" |
+#include "xfa/fxgraphics/include/cfx_graphics.h" |
+ |
+class CFX_Pattern; |
+class CFX_Shading; |
+ |
+enum { FX_COLOR_None = 0, FX_COLOR_Solid, FX_COLOR_Pattern, FX_COLOR_Shading }; |
+ |
+class CFX_Color { |
+ public: |
+ CFX_Color(); |
+ // TODO(weili): Remove implicit conversions. Make this explicit. |
+ CFX_Color(const FX_ARGB argb); |
+ |
+ explicit CFX_Color(CFX_Pattern* pattern, const FX_ARGB argb = 0x0); |
+ explicit CFX_Color(CFX_Shading* shading); |
+ virtual ~CFX_Color(); |
+ |
+ FX_ERR Set(const FX_ARGB argb); |
+ FX_ERR Set(CFX_Pattern* pattern, const FX_ARGB argb = 0x0); |
+ FX_ERR Set(CFX_Shading* shading); |
+ |
+ private: |
+ friend class CFX_Graphics; |
+ |
+ int32_t m_type; |
+ union { |
+ struct { |
+ FX_ARGB argb; |
+ CFX_Pattern* pattern; |
+ } m_info; |
+ CFX_Shading* m_shading; |
+ }; |
+}; |
+ |
+#endif // XFA_FXGRAPHICS_CFX_COLOR_H_ |