1 // Copyright 2014 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 #include "xfa/fxfa/cxfa_ffsignature.h" 8 9 #include "xfa/fxfa/cxfa_ffdoc.h" 10 #include "xfa/fxfa/cxfa_fffield.h" 11 #include "xfa/fxfa/cxfa_ffpageview.h" 12 #include "xfa/fxfa/cxfa_ffwidget.h" 13 #include "xfa/fxfa/parser/cxfa_border.h" 14 15 CXFA_FFSignature::CXFA_FFSignature(CXFA_Node* pNode) : CXFA_FFField(pNode) {} 16 17 CXFA_FFSignature::~CXFA_FFSignature() {} 18 19 bool CXFA_FFSignature::LoadWidget() { 20 return CXFA_FFField::LoadWidget(); 21 } 22 23 void CXFA_FFSignature::RenderWidget(CXFA_Graphics* pGS, 24 const CFX_Matrix& matrix, 25 uint32_t dwStatus) { 26 if (!IsMatchVisibleStatus(dwStatus)) 27 return; 28 29 CFX_Matrix mtRotate = GetRotateMatrix(); 30 mtRotate.Concat(matrix); 31 32 CXFA_FFWidget::RenderWidget(pGS, mtRotate, dwStatus); 33 34 DrawBorder(pGS, m_pNode->GetWidgetAcc()->GetUIBorder(), m_rtUI, mtRotate); 35 RenderCaption(pGS, &mtRotate); 36 DrawHighlight(pGS, &mtRotate, dwStatus, false); 37 } 38 39 bool CXFA_FFSignature::OnMouseEnter() { 40 return false; 41 } 42 43 bool CXFA_FFSignature::OnMouseExit() { 44 return false; 45 } 46 47 bool CXFA_FFSignature::OnLButtonDown(uint32_t dwFlags, 48 const CFX_PointF& point) { 49 return false; 50 } 51 52 bool CXFA_FFSignature::OnLButtonUp(uint32_t dwFlags, const CFX_PointF& point) { 53 return false; 54 } 55 56 bool CXFA_FFSignature::OnLButtonDblClk(uint32_t dwFlags, 57 const CFX_PointF& point) { 58 return false; 59 } 60 61 bool CXFA_FFSignature::OnMouseMove(uint32_t dwFlags, const CFX_PointF& point) { 62 return false; 63 } 64 65 bool CXFA_FFSignature::OnMouseWheel(uint32_t dwFlags, 66 int16_t zDelta, 67 const CFX_PointF& point) { 68 return false; 69 } 70 71 bool CXFA_FFSignature::OnRButtonDown(uint32_t dwFlags, 72 const CFX_PointF& point) { 73 return false; 74 } 75 76 bool CXFA_FFSignature::OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) { 77 return false; 78 } 79 80 bool CXFA_FFSignature::OnRButtonDblClk(uint32_t dwFlags, 81 const CFX_PointF& point) { 82 return false; 83 } 84 85 bool CXFA_FFSignature::OnKeyDown(uint32_t dwKeyCode, uint32_t dwFlags) { 86 return false; 87 } 88 89 bool CXFA_FFSignature::OnKeyUp(uint32_t dwKeyCode, uint32_t dwFlags) { 90 return false; 91 } 92 93 bool CXFA_FFSignature::OnChar(uint32_t dwChar, uint32_t dwFlags) { 94 return false; 95 } 96 97 FWL_WidgetHit CXFA_FFSignature::OnHitTest(const CFX_PointF& point) { 98 if (m_pNormalWidget && 99 m_pNormalWidget->HitTest(FWLToClient(point)) != FWL_WidgetHit::Unknown) { 100 return FWL_WidgetHit::Client; 101 } 102 103 if (!GetRectWithoutRotate().Contains(point)) 104 return FWL_WidgetHit::Unknown; 105 if (m_rtCaption.Contains(point)) 106 return FWL_WidgetHit::Titlebar; 107 return FWL_WidgetHit::Client; 108 } 109 110 bool CXFA_FFSignature::OnSetCursor(const CFX_PointF& point) { 111 return false; 112 } 113 114 FormFieldType CXFA_FFSignature::GetFormFieldType() { 115 return FormFieldType::kXFA_Signature; 116 } 117