| OLD | NEW | 
|    1 // Copyright 2014 PDFium Authors. All rights reserved. |    1 // Copyright 2014 PDFium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |    5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 
|    6  |    6  | 
|    7 #include "fpdfsdk/formfiller/cffl_formfiller.h" |    7 #include "fpdfsdk/formfiller/cffl_formfiller.h" | 
|    8  |    8  | 
|    9 #include "core/fpdfapi/fpdf_page/include/cpdf_page.h" |    9 #include "core/fpdfapi/fpdf_page/include/cpdf_page.h" | 
|   10 #include "core/fxge/include/cfx_renderdevice.h" |   10 #include "core/fxge/include/cfx_renderdevice.h" | 
|   11 #include "fpdfsdk/formfiller/cba_fontmap.h" |   11 #include "fpdfsdk/formfiller/cba_fontmap.h" | 
|   12 #include "fpdfsdk/include/cpdfsdk_document.h" |   12 #include "fpdfsdk/include/cpdfsdk_document.h" | 
|   13 #include "fpdfsdk/include/cpdfsdk_environment.h" |   13 #include "fpdfsdk/include/cpdfsdk_environment.h" | 
|   14 #include "fpdfsdk/include/cpdfsdk_pageview.h" |   14 #include "fpdfsdk/include/cpdfsdk_pageview.h" | 
|   15 #include "fpdfsdk/include/cpdfsdk_widget.h" |   15 #include "fpdfsdk/include/cpdfsdk_widget.h" | 
|   16 #include "fpdfsdk/include/fsdk_common.h" |   16 #include "fpdfsdk/include/fsdk_common.h" | 
|   17 #include "fpdfsdk/pdfwindow/PWL_Utils.h" |   17 #include "fpdfsdk/pdfwindow/PWL_Utils.h" | 
|   18  |   18  | 
|   19 #define GetRed(rgb) ((uint8_t)(rgb)) |   19 #define GetRed(rgb) ((uint8_t)(rgb)) | 
|   20 #define GetGreen(rgb) ((uint8_t)(((uint16_t)(rgb)) >> 8)) |   20 #define GetGreen(rgb) ((uint8_t)(((uint16_t)(rgb)) >> 8)) | 
|   21 #define GetBlue(rgb) ((uint8_t)((rgb) >> 16)) |   21 #define GetBlue(rgb) ((uint8_t)((rgb) >> 16)) | 
|   22  |   22  | 
|   23 #define FFL_HINT_ELAPSE 800 |   23 #define FFL_HINT_ELAPSE 800 | 
|   24  |   24  | 
|   25 CFFL_FormFiller::CFFL_FormFiller(CPDFSDK_Environment* pApp, |   25 CFFL_FormFiller::CFFL_FormFiller(CPDFSDK_Environment* pEnv, | 
|   26                                  CPDFSDK_Annot* pAnnot) |   26                                  CPDFSDK_Annot* pAnnot) | 
|   27     : m_pApp(pApp), m_pAnnot(pAnnot), m_bValid(FALSE) { |   27     : m_pEnv(pEnv), m_pAnnot(pAnnot), m_bValid(FALSE) { | 
|   28   m_pWidget = static_cast<CPDFSDK_Widget*>(pAnnot); |   28   m_pWidget = static_cast<CPDFSDK_Widget*>(pAnnot); | 
|   29 } |   29 } | 
|   30  |   30  | 
|   31 CFFL_FormFiller::~CFFL_FormFiller() { |   31 CFFL_FormFiller::~CFFL_FormFiller() { | 
|   32   DestroyWindows(); |   32   DestroyWindows(); | 
|   33 } |   33 } | 
|   34  |   34  | 
|   35 void CFFL_FormFiller::DestroyWindows() { |   35 void CFFL_FormFiller::DestroyWindows() { | 
|   36   for (const auto& it : m_Maps) { |   36   for (const auto& it : m_Maps) { | 
|   37     CPWL_Wnd* pWnd = it.second; |   37     CPWL_Wnd* pWnd = it.second; | 
| (...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  244       return pWnd->OnChar(nChar, nFlags); |  244       return pWnd->OnChar(nChar, nFlags); | 
|  245     } |  245     } | 
|  246   } |  246   } | 
|  247  |  247  | 
|  248   return FALSE; |  248   return FALSE; | 
|  249 } |  249 } | 
|  250  |  250  | 
|  251 void CFFL_FormFiller::SetFocusForAnnot(CPDFSDK_Annot* pAnnot, uint32_t nFlag) { |  251 void CFFL_FormFiller::SetFocusForAnnot(CPDFSDK_Annot* pAnnot, uint32_t nFlag) { | 
|  252   CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)pAnnot; |  252   CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)pAnnot; | 
|  253   UnderlyingPageType* pPage = pWidget->GetUnderlyingPage(); |  253   UnderlyingPageType* pPage = pWidget->GetUnderlyingPage(); | 
|  254   CPDFSDK_Document* pDoc = m_pApp->GetSDKDocument(); |  254   CPDFSDK_Document* pDoc = m_pEnv->GetSDKDocument(); | 
|  255   CPDFSDK_PageView* pPageView = pDoc->GetPageView(pPage, true); |  255   CPDFSDK_PageView* pPageView = pDoc->GetPageView(pPage, true); | 
|  256   if (CPWL_Wnd* pWnd = GetPDFWindow(pPageView, TRUE)) |  256   if (CPWL_Wnd* pWnd = GetPDFWindow(pPageView, TRUE)) | 
|  257     pWnd->SetFocus(); |  257     pWnd->SetFocus(); | 
|  258  |  258  | 
|  259   m_bValid = TRUE; |  259   m_bValid = TRUE; | 
|  260   FX_RECT rcRect = GetViewBBox(pPageView, pAnnot); |  260   FX_RECT rcRect = GetViewBBox(pPageView, pAnnot); | 
|  261   InvalidateRect(rcRect.left, rcRect.top, rcRect.right, rcRect.bottom); |  261   InvalidateRect(rcRect.left, rcRect.top, rcRect.right, rcRect.bottom); | 
|  262 } |  262 } | 
|  263  |  263  | 
|  264 void CFFL_FormFiller::KillFocusForAnnot(CPDFSDK_Annot* pAnnot, uint32_t nFlag) { |  264 void CFFL_FormFiller::KillFocusForAnnot(CPDFSDK_Annot* pAnnot, uint32_t nFlag) { | 
| (...skipping 21 matching lines...) Expand all  Loading... | 
|  286       break; |  286       break; | 
|  287   } |  287   } | 
|  288   EscapeFiller(pPageView, bDestroyPDFWindow); |  288   EscapeFiller(pPageView, bDestroyPDFWindow); | 
|  289 } |  289 } | 
|  290  |  290  | 
|  291 FX_BOOL CFFL_FormFiller::IsValid() const { |  291 FX_BOOL CFFL_FormFiller::IsValid() const { | 
|  292   return m_bValid; |  292   return m_bValid; | 
|  293 } |  293 } | 
|  294  |  294  | 
|  295 PWL_CREATEPARAM CFFL_FormFiller::GetCreateParam() { |  295 PWL_CREATEPARAM CFFL_FormFiller::GetCreateParam() { | 
|  296   ASSERT(m_pApp); |  296   ASSERT(m_pEnv); | 
|  297  |  297  | 
|  298   PWL_CREATEPARAM cp; |  298   PWL_CREATEPARAM cp; | 
|  299   cp.pParentWnd = nullptr; |  299   cp.pParentWnd = nullptr; | 
|  300   cp.pProvider = this; |  300   cp.pProvider = this; | 
|  301   cp.rcRectWnd = GetPDFWindowRect(); |  301   cp.rcRectWnd = GetPDFWindowRect(); | 
|  302  |  302  | 
|  303   uint32_t dwCreateFlags = PWS_BORDER | PWS_BACKGROUND | PWS_VISIBLE; |  303   uint32_t dwCreateFlags = PWS_BORDER | PWS_BACKGROUND | PWS_VISIBLE; | 
|  304   uint32_t dwFieldFlag = m_pWidget->GetFieldFlags(); |  304   uint32_t dwFieldFlag = m_pWidget->GetFieldFlags(); | 
|  305   if (dwFieldFlag & FIELDFLAG_READONLY) { |  305   if (dwFieldFlag & FIELDFLAG_READONLY) { | 
|  306     dwCreateFlags |= PWS_READONLY; |  306     dwCreateFlags |= PWS_READONLY; | 
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  338       cp.dwBorderWidth *= 2; |  338       cp.dwBorderWidth *= 2; | 
|  339       break; |  339       break; | 
|  340     default: |  340     default: | 
|  341       break; |  341       break; | 
|  342   } |  342   } | 
|  343  |  343  | 
|  344   if (cp.fFontSize <= 0) |  344   if (cp.fFontSize <= 0) | 
|  345     dwCreateFlags |= PWS_AUTOFONTSIZE; |  345     dwCreateFlags |= PWS_AUTOFONTSIZE; | 
|  346  |  346  | 
|  347   cp.dwFlags = dwCreateFlags; |  347   cp.dwFlags = dwCreateFlags; | 
|  348   cp.pSystemHandler = m_pApp->GetSysHandler(); |  348   cp.pSystemHandler = m_pEnv->GetSysHandler(); | 
|  349   return cp; |  349   return cp; | 
|  350 } |  350 } | 
|  351  |  351  | 
|  352 CPWL_Wnd* CFFL_FormFiller::GetPDFWindow(CPDFSDK_PageView* pPageView, |  352 CPWL_Wnd* CFFL_FormFiller::GetPDFWindow(CPDFSDK_PageView* pPageView, | 
|  353                                         FX_BOOL bNew) { |  353                                         FX_BOOL bNew) { | 
|  354   ASSERT(pPageView); |  354   ASSERT(pPageView); | 
|  355  |  355  | 
|  356   auto it = m_Maps.find(pPageView); |  356   auto it = m_Maps.find(pPageView); | 
|  357   const bool found = it != m_Maps.end(); |  357   const bool found = it != m_Maps.end(); | 
|  358   CPWL_Wnd* pWnd = found ? it->second : nullptr; |  358   CPWL_Wnd* pWnd = found ? it->second : nullptr; | 
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  433       mt = CFX_Matrix(0, -1, 1, 0, 0, rcDA.top - rcDA.bottom); |  433       mt = CFX_Matrix(0, -1, 1, 0, 0, rcDA.top - rcDA.bottom); | 
|  434       break; |  434       break; | 
|  435   } |  435   } | 
|  436   mt.e += rcDA.left; |  436   mt.e += rcDA.left; | 
|  437   mt.f += rcDA.bottom; |  437   mt.f += rcDA.bottom; | 
|  438  |  438  | 
|  439   return mt; |  439   return mt; | 
|  440 } |  440 } | 
|  441  |  441  | 
|  442 CFX_WideString CFFL_FormFiller::LoadPopupMenuString(int nIndex) { |  442 CFX_WideString CFFL_FormFiller::LoadPopupMenuString(int nIndex) { | 
|  443   ASSERT(m_pApp); |  443   ASSERT(m_pEnv); | 
|  444  |  444  | 
|  445   return L""; |  445   return L""; | 
|  446 } |  446 } | 
|  447  |  447  | 
|  448 CFX_FloatRect CFFL_FormFiller::GetPDFWindowRect() const { |  448 CFX_FloatRect CFFL_FormFiller::GetPDFWindowRect() const { | 
|  449   CFX_FloatRect rectAnnot = m_pWidget->GetPDFAnnot()->GetRect(); |  449   CFX_FloatRect rectAnnot = m_pWidget->GetPDFAnnot()->GetRect(); | 
|  450  |  450  | 
|  451   FX_FLOAT fWidth = rectAnnot.right - rectAnnot.left; |  451   FX_FLOAT fWidth = rectAnnot.right - rectAnnot.left; | 
|  452   FX_FLOAT fHeight = rectAnnot.top - rectAnnot.bottom; |  452   FX_FLOAT fHeight = rectAnnot.top - rectAnnot.bottom; | 
|  453   if ((m_pWidget->GetRotate() / 90) & 0x01) |  453   if ((m_pWidget->GetRotate() / 90) & 0x01) | 
|  454     return CFX_FloatRect(0, 0, fHeight, fWidth); |  454     return CFX_FloatRect(0, 0, fHeight, fWidth); | 
|  455  |  455  | 
|  456   return CFX_FloatRect(0, 0, fWidth, fHeight); |  456   return CFX_FloatRect(0, 0, fWidth, fHeight); | 
|  457 } |  457 } | 
|  458  |  458  | 
|  459 CPDFSDK_PageView* CFFL_FormFiller::GetCurPageView(bool renew) { |  459 CPDFSDK_PageView* CFFL_FormFiller::GetCurPageView(bool renew) { | 
|  460   UnderlyingPageType* pPage = m_pAnnot->GetUnderlyingPage(); |  460   UnderlyingPageType* pPage = m_pAnnot->GetUnderlyingPage(); | 
|  461   CPDFSDK_Document* pSDKDoc = m_pApp->GetSDKDocument(); |  461   CPDFSDK_Document* pSDKDoc = m_pEnv->GetSDKDocument(); | 
|  462   return pSDKDoc ? pSDKDoc->GetPageView(pPage, renew) : nullptr; |  462   return pSDKDoc ? pSDKDoc->GetPageView(pPage, renew) : nullptr; | 
|  463 } |  463 } | 
|  464  |  464  | 
|  465 CFX_FloatRect CFFL_FormFiller::GetFocusBox(CPDFSDK_PageView* pPageView) { |  465 CFX_FloatRect CFFL_FormFiller::GetFocusBox(CPDFSDK_PageView* pPageView) { | 
|  466   if (CPWL_Wnd* pWnd = GetPDFWindow(pPageView, FALSE)) { |  466   if (CPWL_Wnd* pWnd = GetPDFWindow(pPageView, FALSE)) { | 
|  467     CFX_FloatRect rcFocus = FFLtoWnd(pPageView, PWLtoFFL(pWnd->GetFocusRect())); |  467     CFX_FloatRect rcFocus = FFLtoWnd(pPageView, PWLtoFFL(pWnd->GetFocusRect())); | 
|  468     CFX_FloatRect rcPage = pPageView->GetPDFPage()->GetPageBBox(); |  468     CFX_FloatRect rcPage = pPageView->GetPDFPage()->GetPageBBox(); | 
|  469     if (rcPage.Contains(rcFocus)) |  469     if (rcPage.Contains(rcFocus)) | 
|  470       return rcFocus; |  470       return rcFocus; | 
|  471   } |  471   } | 
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  518 CFX_FloatRect CFFL_FormFiller::FFLtoWnd(CPDFSDK_PageView* pPageView, |  518 CFX_FloatRect CFFL_FormFiller::FFLtoWnd(CPDFSDK_PageView* pPageView, | 
|  519                                         const CFX_FloatRect& rect) { |  519                                         const CFX_FloatRect& rect) { | 
|  520   return rect; |  520   return rect; | 
|  521 } |  521 } | 
|  522  |  522  | 
|  523 FX_BOOL CFFL_FormFiller::CommitData(CPDFSDK_PageView* pPageView, |  523 FX_BOOL CFFL_FormFiller::CommitData(CPDFSDK_PageView* pPageView, | 
|  524                                     uint32_t nFlag) { |  524                                     uint32_t nFlag) { | 
|  525   if (IsDataChanged(pPageView)) { |  525   if (IsDataChanged(pPageView)) { | 
|  526     FX_BOOL bRC = TRUE; |  526     FX_BOOL bRC = TRUE; | 
|  527     FX_BOOL bExit = FALSE; |  527     FX_BOOL bExit = FALSE; | 
|  528     CFFL_IFormFiller* pIFormFiller = m_pApp->GetIFormFiller(); |  528     CFFL_IFormFiller* pIFormFiller = m_pEnv->GetIFormFiller(); | 
|  529     pIFormFiller->OnKeyStrokeCommit(m_pWidget, pPageView, bRC, bExit, nFlag); |  529     pIFormFiller->OnKeyStrokeCommit(m_pWidget, pPageView, bRC, bExit, nFlag); | 
|  530     if (bExit) |  530     if (bExit) | 
|  531       return TRUE; |  531       return TRUE; | 
|  532     if (!bRC) { |  532     if (!bRC) { | 
|  533       ResetPDFWindow(pPageView, FALSE); |  533       ResetPDFWindow(pPageView, FALSE); | 
|  534       return TRUE; |  534       return TRUE; | 
|  535     } |  535     } | 
|  536  |  536  | 
|  537     pIFormFiller->OnValidate(m_pWidget, pPageView, bRC, bExit, nFlag); |  537     pIFormFiller->OnValidate(m_pWidget, pPageView, bRC, bExit, nFlag); | 
|  538     if (bExit) |  538     if (bExit) | 
| (...skipping 19 matching lines...) Expand all  Loading... | 
|  558  |  558  | 
|  559 void CFFL_FormFiller::SaveData(CPDFSDK_PageView* pPageView) {} |  559 void CFFL_FormFiller::SaveData(CPDFSDK_PageView* pPageView) {} | 
|  560  |  560  | 
|  561 #ifdef PDF_ENABLE_XFA |  561 #ifdef PDF_ENABLE_XFA | 
|  562 FX_BOOL CFFL_FormFiller::IsFieldFull(CPDFSDK_PageView* pPageView) { |  562 FX_BOOL CFFL_FormFiller::IsFieldFull(CPDFSDK_PageView* pPageView) { | 
|  563   return FALSE; |  563   return FALSE; | 
|  564 } |  564 } | 
|  565 #endif  // PDF_ENABLE_XFA |  565 #endif  // PDF_ENABLE_XFA | 
|  566  |  566  | 
|  567 void CFFL_FormFiller::SetChangeMark() { |  567 void CFFL_FormFiller::SetChangeMark() { | 
|  568   m_pApp->OnChange(); |  568   m_pEnv->OnChange(); | 
|  569 } |  569 } | 
|  570  |  570  | 
|  571 void CFFL_FormFiller::GetActionData(CPDFSDK_PageView* pPageView, |  571 void CFFL_FormFiller::GetActionData(CPDFSDK_PageView* pPageView, | 
|  572                                     CPDF_AAction::AActionType type, |  572                                     CPDF_AAction::AActionType type, | 
|  573                                     PDFSDK_FieldAction& fa) { |  573                                     PDFSDK_FieldAction& fa) { | 
|  574   fa.sValue = m_pWidget->GetValue(); |  574   fa.sValue = m_pWidget->GetValue(); | 
|  575 } |  575 } | 
|  576  |  576  | 
|  577 void CFFL_FormFiller::SetActionData(CPDFSDK_PageView* pPageView, |  577 void CFFL_FormFiller::SetActionData(CPDFSDK_PageView* pPageView, | 
|  578                                     CPDF_AAction::AActionType type, |  578                                     CPDF_AAction::AActionType type, | 
| (...skipping 10 matching lines...) Expand all  Loading... | 
|  589 void CFFL_FormFiller::RestoreState(CPDFSDK_PageView* pPageView) {} |  589 void CFFL_FormFiller::RestoreState(CPDFSDK_PageView* pPageView) {} | 
|  590  |  590  | 
|  591 CPWL_Wnd* CFFL_FormFiller::ResetPDFWindow(CPDFSDK_PageView* pPageView, |  591 CPWL_Wnd* CFFL_FormFiller::ResetPDFWindow(CPDFSDK_PageView* pPageView, | 
|  592                                           FX_BOOL bRestoreValue) { |  592                                           FX_BOOL bRestoreValue) { | 
|  593   return GetPDFWindow(pPageView, FALSE); |  593   return GetPDFWindow(pPageView, FALSE); | 
|  594 } |  594 } | 
|  595  |  595  | 
|  596 void CFFL_FormFiller::TimerProc() {} |  596 void CFFL_FormFiller::TimerProc() {} | 
|  597  |  597  | 
|  598 CFX_SystemHandler* CFFL_FormFiller::GetSystemHandler() const { |  598 CFX_SystemHandler* CFFL_FormFiller::GetSystemHandler() const { | 
|  599   return m_pApp->GetSysHandler(); |  599   return m_pEnv->GetSysHandler(); | 
|  600 } |  600 } | 
|  601  |  601  | 
|  602 void CFFL_FormFiller::EscapeFiller(CPDFSDK_PageView* pPageView, |  602 void CFFL_FormFiller::EscapeFiller(CPDFSDK_PageView* pPageView, | 
|  603                                    FX_BOOL bDestroyPDFWindow) { |  603                                    FX_BOOL bDestroyPDFWindow) { | 
|  604   m_bValid = FALSE; |  604   m_bValid = FALSE; | 
|  605  |  605  | 
|  606   FX_RECT rcRect = GetViewBBox(pPageView, m_pWidget); |  606   FX_RECT rcRect = GetViewBBox(pPageView, m_pWidget); | 
|  607   InvalidateRect(rcRect.left, rcRect.top, rcRect.right, rcRect.bottom); |  607   InvalidateRect(rcRect.left, rcRect.top, rcRect.right, rcRect.bottom); | 
|  608  |  608  | 
|  609   if (bDestroyPDFWindow) |  609   if (bDestroyPDFWindow) | 
|  610     DestroyPDFWindow(pPageView); |  610     DestroyPDFWindow(pPageView); | 
|  611 } |  611 } | 
|  612  |  612  | 
|  613 void CFFL_FormFiller::InvalidateRect(double left, |  613 void CFFL_FormFiller::InvalidateRect(double left, | 
|  614                                      double top, |  614                                      double top, | 
|  615                                      double right, |  615                                      double right, | 
|  616                                      double bottom) { |  616                                      double bottom) { | 
|  617   UnderlyingPageType* pPage = m_pWidget->GetUnderlyingPage(); |  617   UnderlyingPageType* pPage = m_pWidget->GetUnderlyingPage(); | 
|  618   m_pApp->Invalidate(pPage, left, top, right, bottom); |  618   m_pEnv->Invalidate(pPage, left, top, right, bottom); | 
|  619 } |  619 } | 
|  620  |  620  | 
|  621 CFFL_Button::CFFL_Button(CPDFSDK_Environment* pApp, CPDFSDK_Annot* pWidget) |  621 CFFL_Button::CFFL_Button(CPDFSDK_Environment* pApp, CPDFSDK_Annot* pWidget) | 
|  622     : CFFL_FormFiller(pApp, pWidget), m_bMouseIn(FALSE), m_bMouseDown(FALSE) {} |  622     : CFFL_FormFiller(pApp, pWidget), m_bMouseIn(FALSE), m_bMouseDown(FALSE) {} | 
|  623  |  623  | 
|  624 CFFL_Button::~CFFL_Button() {} |  624 CFFL_Button::~CFFL_Button() {} | 
|  625  |  625  | 
|  626 void CFFL_Button::OnMouseEnter(CPDFSDK_PageView* pPageView, |  626 void CFFL_Button::OnMouseEnter(CPDFSDK_PageView* pPageView, | 
|  627                                CPDFSDK_Annot* pAnnot) { |  627                                CPDFSDK_Annot* pAnnot) { | 
|  628   m_bMouseIn = TRUE; |  628   m_bMouseIn = TRUE; | 
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  668  |  668  | 
|  669   FX_RECT rect = GetViewBBox(pPageView, pAnnot); |  669   FX_RECT rect = GetViewBBox(pPageView, pAnnot); | 
|  670   InvalidateRect(rect.left, rect.top, rect.right, rect.bottom); |  670   InvalidateRect(rect.left, rect.top, rect.right, rect.bottom); | 
|  671   return TRUE; |  671   return TRUE; | 
|  672 } |  672 } | 
|  673  |  673  | 
|  674 FX_BOOL CFFL_Button::OnMouseMove(CPDFSDK_PageView* pPageView, |  674 FX_BOOL CFFL_Button::OnMouseMove(CPDFSDK_PageView* pPageView, | 
|  675                                  CPDFSDK_Annot* pAnnot, |  675                                  CPDFSDK_Annot* pAnnot, | 
|  676                                  uint32_t nFlags, |  676                                  uint32_t nFlags, | 
|  677                                  const CFX_FloatPoint& point) { |  677                                  const CFX_FloatPoint& point) { | 
|  678   ASSERT(m_pApp); |  678   ASSERT(m_pEnv); | 
|  679  |  679  | 
|  680   return TRUE; |  680   return TRUE; | 
|  681 } |  681 } | 
|  682  |  682  | 
|  683 void CFFL_Button::OnDraw(CPDFSDK_PageView* pPageView, |  683 void CFFL_Button::OnDraw(CPDFSDK_PageView* pPageView, | 
|  684                          CPDFSDK_Annot* pAnnot, |  684                          CPDFSDK_Annot* pAnnot, | 
|  685                          CFX_RenderDevice* pDevice, |  685                          CFX_RenderDevice* pDevice, | 
|  686                          CFX_Matrix* pUser2Device) { |  686                          CFX_Matrix* pUser2Device) { | 
|  687   ASSERT(pPageView); |  687   ASSERT(pPageView); | 
|  688   CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)pAnnot; |  688   CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)pAnnot; | 
| (...skipping 22 matching lines...) Expand all  Loading... | 
|  711     pWidget->DrawAppearance(pDevice, pUser2Device, CPDF_Annot::Normal, nullptr); |  711     pWidget->DrawAppearance(pDevice, pUser2Device, CPDF_Annot::Normal, nullptr); | 
|  712   } |  712   } | 
|  713 } |  713 } | 
|  714  |  714  | 
|  715 void CFFL_Button::OnDrawDeactive(CPDFSDK_PageView* pPageView, |  715 void CFFL_Button::OnDrawDeactive(CPDFSDK_PageView* pPageView, | 
|  716                                  CPDFSDK_Annot* pAnnot, |  716                                  CPDFSDK_Annot* pAnnot, | 
|  717                                  CFX_RenderDevice* pDevice, |  717                                  CFX_RenderDevice* pDevice, | 
|  718                                  CFX_Matrix* pUser2Device) { |  718                                  CFX_Matrix* pUser2Device) { | 
|  719   OnDraw(pPageView, pAnnot, pDevice, pUser2Device); |  719   OnDraw(pPageView, pAnnot, pDevice, pUser2Device); | 
|  720 } |  720 } | 
| OLD | NEW |