1 // Copyright 2016 PDFium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6 7 #ifndef CORE_FXGE_CFX_GRAPHSTATEDATA_H_ 8 #define CORE_FXGE_CFX_GRAPHSTATEDATA_H_ 9 10 #include "core/fxcrt/fx_system.h" 11 #include "core/fxcrt/retain_ptr.h" 12 13 class CFX_GraphStateData : public Retainable { 14 public: 15 enum LineCap { LineCapButt = 0, LineCapRound = 1, LineCapSquare = 2 }; 16 17 CFX_GraphStateData(); 18 CFX_GraphStateData(const CFX_GraphStateData& src); 19 ~CFX_GraphStateData() override; 20 21 void Copy(const CFX_GraphStateData& src); 22 void SetDashCount(int count); 23 24 LineCap m_LineCap; 25 int m_DashCount; 26 float* m_DashArray; 27 float m_DashPhase; 28 29 enum LineJoin { 30 LineJoinMiter = 0, 31 LineJoinRound = 1, 32 LineJoinBevel = 2, 33 }; 34 LineJoin m_LineJoin; 35 float m_MiterLimit; 36 float m_LineWidth; 37 }; 38 39 #endif // CORE_FXGE_CFX_GRAPHSTATEDATA_H_ 40