1*3ac0a46fSAndroid Build Coastguard Worker // Copyright 2017 The PDFium Authors 2*3ac0a46fSAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*3ac0a46fSAndroid Build Coastguard Worker // found in the LICENSE file. 4*3ac0a46fSAndroid Build Coastguard Worker 5*3ac0a46fSAndroid Build Coastguard Worker // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6*3ac0a46fSAndroid Build Coastguard Worker 7*3ac0a46fSAndroid Build Coastguard Worker #include "xfa/fxfa/cxfa_ffarc.h" 8*3ac0a46fSAndroid Build Coastguard Worker 9*3ac0a46fSAndroid Build Coastguard Worker #include "xfa/fxfa/parser/cxfa_arc.h" 10*3ac0a46fSAndroid Build Coastguard Worker #include "xfa/fxfa/parser/cxfa_value.h" 11*3ac0a46fSAndroid Build Coastguard Worker CXFA_FFArc(CXFA_Node * pNode)12*3ac0a46fSAndroid Build Coastguard WorkerCXFA_FFArc::CXFA_FFArc(CXFA_Node* pNode) : CXFA_FFWidget(pNode) {} 13*3ac0a46fSAndroid Build Coastguard Worker 14*3ac0a46fSAndroid Build Coastguard Worker CXFA_FFArc::~CXFA_FFArc() = default; 15*3ac0a46fSAndroid Build Coastguard Worker RenderWidget(CFGAS_GEGraphics * pGS,const CFX_Matrix & matrix,HighlightOption highlight)16*3ac0a46fSAndroid Build Coastguard Workervoid CXFA_FFArc::RenderWidget(CFGAS_GEGraphics* pGS, 17*3ac0a46fSAndroid Build Coastguard Worker const CFX_Matrix& matrix, 18*3ac0a46fSAndroid Build Coastguard Worker HighlightOption highlight) { 19*3ac0a46fSAndroid Build Coastguard Worker if (!HasVisibleStatus()) 20*3ac0a46fSAndroid Build Coastguard Worker return; 21*3ac0a46fSAndroid Build Coastguard Worker 22*3ac0a46fSAndroid Build Coastguard Worker CXFA_Value* value = m_pNode->GetFormValueIfExists(); 23*3ac0a46fSAndroid Build Coastguard Worker if (!value) 24*3ac0a46fSAndroid Build Coastguard Worker return; 25*3ac0a46fSAndroid Build Coastguard Worker 26*3ac0a46fSAndroid Build Coastguard Worker CFX_RectF rtArc = GetRectWithoutRotate(); 27*3ac0a46fSAndroid Build Coastguard Worker CXFA_Margin* margin = m_pNode->GetMarginIfExists(); 28*3ac0a46fSAndroid Build Coastguard Worker XFA_RectWithoutMargin(&rtArc, margin); 29*3ac0a46fSAndroid Build Coastguard Worker 30*3ac0a46fSAndroid Build Coastguard Worker CFX_Matrix mtRotate = GetRotateMatrix(); 31*3ac0a46fSAndroid Build Coastguard Worker mtRotate.Concat(matrix); 32*3ac0a46fSAndroid Build Coastguard Worker DrawBorder(pGS, value->GetArcIfExists(), rtArc, mtRotate); 33*3ac0a46fSAndroid Build Coastguard Worker } 34