| 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 "xfa/fwl/core/fwl_widgetimp.h" | 7 #include "xfa/fwl/core/fwl_widgetimp.h" |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 | 10 |
| (...skipping 30 matching lines...) Expand all Loading... |
| 41 | 41 |
| 42 FWL_Error IFWL_Widget::Initialize() { | 42 FWL_Error IFWL_Widget::Initialize() { |
| 43 return m_pImpl->Initialize(); | 43 return m_pImpl->Initialize(); |
| 44 } | 44 } |
| 45 | 45 |
| 46 FWL_Error IFWL_Widget::Finalize() { | 46 FWL_Error IFWL_Widget::Finalize() { |
| 47 return m_pImpl->Finalize(); | 47 return m_pImpl->Finalize(); |
| 48 } | 48 } |
| 49 | 49 |
| 50 FWL_Error IFWL_Widget::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) { | 50 FWL_Error IFWL_Widget::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) { |
| 51 return static_cast<CFWL_WidgetImp*>(GetImpl()) | 51 return GetImpl()->GetWidgetRect(rect, bAutoSize); |
| 52 ->GetWidgetRect(rect, bAutoSize); | |
| 53 } | 52 } |
| 54 FWL_Error IFWL_Widget::GetGlobalRect(CFX_RectF& rect) { | 53 FWL_Error IFWL_Widget::GetGlobalRect(CFX_RectF& rect) { |
| 55 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetGlobalRect(rect); | 54 return GetImpl()->GetGlobalRect(rect); |
| 56 } | 55 } |
| 57 FWL_Error IFWL_Widget::SetWidgetRect(const CFX_RectF& rect) { | 56 FWL_Error IFWL_Widget::SetWidgetRect(const CFX_RectF& rect) { |
| 58 return static_cast<CFWL_WidgetImp*>(GetImpl())->SetWidgetRect(rect); | 57 return GetImpl()->SetWidgetRect(rect); |
| 59 } | 58 } |
| 60 FWL_Error IFWL_Widget::GetClientRect(CFX_RectF& rect) { | 59 FWL_Error IFWL_Widget::GetClientRect(CFX_RectF& rect) { |
| 61 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetClientRect(rect); | 60 return GetImpl()->GetClientRect(rect); |
| 62 } | 61 } |
| 63 IFWL_Widget* IFWL_Widget::GetParent() { | 62 IFWL_Widget* IFWL_Widget::GetParent() { |
| 64 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetParent(); | 63 return GetImpl()->GetParent(); |
| 65 } | 64 } |
| 66 FWL_Error IFWL_Widget::SetParent(IFWL_Widget* pParent) { | 65 FWL_Error IFWL_Widget::SetParent(IFWL_Widget* pParent) { |
| 67 return static_cast<CFWL_WidgetImp*>(GetImpl())->SetParent(pParent); | 66 return GetImpl()->SetParent(pParent); |
| 68 } | 67 } |
| 69 IFWL_Widget* IFWL_Widget::GetOwner() { | 68 IFWL_Widget* IFWL_Widget::GetOwner() { |
| 70 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetOwner(); | 69 return GetImpl()->GetOwner(); |
| 71 } | 70 } |
| 72 FWL_Error IFWL_Widget::SetOwner(IFWL_Widget* pOwner) { | 71 FWL_Error IFWL_Widget::SetOwner(IFWL_Widget* pOwner) { |
| 73 return static_cast<CFWL_WidgetImp*>(GetImpl())->SetOwner(pOwner); | 72 return GetImpl()->SetOwner(pOwner); |
| 74 } | 73 } |
| 75 IFWL_Widget* IFWL_Widget::GetOuter() { | 74 IFWL_Widget* IFWL_Widget::GetOuter() { |
| 76 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetOuter(); | 75 return GetImpl()->GetOuter(); |
| 77 } | 76 } |
| 78 uint32_t IFWL_Widget::GetStyles() { | 77 uint32_t IFWL_Widget::GetStyles() { |
| 79 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetStyles(); | 78 return GetImpl()->GetStyles(); |
| 80 } | 79 } |
| 81 FWL_Error IFWL_Widget::ModifyStyles(uint32_t dwStylesAdded, | 80 FWL_Error IFWL_Widget::ModifyStyles(uint32_t dwStylesAdded, |
| 82 uint32_t dwStylesRemoved) { | 81 uint32_t dwStylesRemoved) { |
| 83 return static_cast<CFWL_WidgetImp*>(GetImpl()) | 82 return GetImpl()->ModifyStyles(dwStylesAdded, dwStylesRemoved); |
| 84 ->ModifyStyles(dwStylesAdded, dwStylesRemoved); | |
| 85 } | 83 } |
| 86 uint32_t IFWL_Widget::GetStylesEx() { | 84 uint32_t IFWL_Widget::GetStylesEx() { |
| 87 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetStylesEx(); | 85 return GetImpl()->GetStylesEx(); |
| 88 } | 86 } |
| 89 FWL_Error IFWL_Widget::ModifyStylesEx(uint32_t dwStylesExAdded, | 87 FWL_Error IFWL_Widget::ModifyStylesEx(uint32_t dwStylesExAdded, |
| 90 uint32_t dwStylesExRemoved) { | 88 uint32_t dwStylesExRemoved) { |
| 91 return static_cast<CFWL_WidgetImp*>(GetImpl()) | 89 return GetImpl()->ModifyStylesEx(dwStylesExAdded, dwStylesExRemoved); |
| 92 ->ModifyStylesEx(dwStylesExAdded, dwStylesExRemoved); | |
| 93 } | 90 } |
| 94 uint32_t IFWL_Widget::GetStates() { | 91 uint32_t IFWL_Widget::GetStates() { |
| 95 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetStates(); | 92 return GetImpl()->GetStates(); |
| 96 } | 93 } |
| 97 void IFWL_Widget::SetStates(uint32_t dwStates, FX_BOOL bSet) { | 94 void IFWL_Widget::SetStates(uint32_t dwStates, FX_BOOL bSet) { |
| 98 static_cast<CFWL_WidgetImp*>(GetImpl())->SetStates(dwStates, bSet); | 95 GetImpl()->SetStates(dwStates, bSet); |
| 99 } | 96 } |
| 97 |
| 98 uint32_t IFWL_Widget::GetEventKey() const { |
| 99 return GetImpl()->GetEventKey(); |
| 100 } |
| 101 |
| 102 void IFWL_Widget::SetEventKey(uint32_t key) { |
| 103 GetImpl()->SetEventKey(key); |
| 104 } |
| 105 |
| 100 FWL_Error IFWL_Widget::SetPrivateData(void* module_id, | 106 FWL_Error IFWL_Widget::SetPrivateData(void* module_id, |
| 101 void* pData, | 107 void* pData, |
| 102 PD_CALLBACK_FREEDATA callback) { | 108 PD_CALLBACK_FREEDATA callback) { |
| 103 return static_cast<CFWL_WidgetImp*>(GetImpl()) | 109 return GetImpl()->SetPrivateData(module_id, pData, callback); |
| 104 ->SetPrivateData(module_id, pData, callback); | |
| 105 } | 110 } |
| 106 void* IFWL_Widget::GetPrivateData(void* module_id) { | 111 void* IFWL_Widget::GetPrivateData(void* module_id) { |
| 107 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetPrivateData(module_id); | 112 return GetImpl()->GetPrivateData(module_id); |
| 108 } | 113 } |
| 109 FWL_Error IFWL_Widget::Update() { | 114 FWL_Error IFWL_Widget::Update() { |
| 110 return static_cast<CFWL_WidgetImp*>(GetImpl())->Update(); | 115 return GetImpl()->Update(); |
| 111 } | 116 } |
| 112 FWL_Error IFWL_Widget::LockUpdate() { | 117 FWL_Error IFWL_Widget::LockUpdate() { |
| 113 return static_cast<CFWL_WidgetImp*>(GetImpl())->LockUpdate(); | 118 return GetImpl()->LockUpdate(); |
| 114 } | 119 } |
| 115 FWL_Error IFWL_Widget::UnlockUpdate() { | 120 FWL_Error IFWL_Widget::UnlockUpdate() { |
| 116 return static_cast<CFWL_WidgetImp*>(GetImpl())->UnlockUpdate(); | 121 return GetImpl()->UnlockUpdate(); |
| 117 } | 122 } |
| 118 FWL_WidgetHit IFWL_Widget::HitTest(FX_FLOAT fx, FX_FLOAT fy) { | 123 FWL_WidgetHit IFWL_Widget::HitTest(FX_FLOAT fx, FX_FLOAT fy) { |
| 119 return static_cast<CFWL_WidgetImp*>(GetImpl())->HitTest(fx, fy); | 124 return GetImpl()->HitTest(fx, fy); |
| 120 } | 125 } |
| 121 FWL_Error IFWL_Widget::TransformTo(IFWL_Widget* pWidget, | 126 FWL_Error IFWL_Widget::TransformTo(IFWL_Widget* pWidget, |
| 122 FX_FLOAT& fx, | 127 FX_FLOAT& fx, |
| 123 FX_FLOAT& fy) { | 128 FX_FLOAT& fy) { |
| 124 return static_cast<CFWL_WidgetImp*>(GetImpl())->TransformTo(pWidget, fx, fy); | 129 return GetImpl()->TransformTo(pWidget, fx, fy); |
| 125 } | 130 } |
| 126 FWL_Error IFWL_Widget::TransformTo(IFWL_Widget* pWidget, CFX_RectF& rt) { | 131 FWL_Error IFWL_Widget::TransformTo(IFWL_Widget* pWidget, CFX_RectF& rt) { |
| 127 return static_cast<CFWL_WidgetImp*>(GetImpl())->TransformTo(pWidget, rt); | 132 return GetImpl()->TransformTo(pWidget, rt); |
| 128 } | 133 } |
| 129 FWL_Error IFWL_Widget::GetMatrix(CFX_Matrix& matrix, FX_BOOL bGlobal) { | 134 FWL_Error IFWL_Widget::GetMatrix(CFX_Matrix& matrix, FX_BOOL bGlobal) { |
| 130 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetMatrix(matrix, bGlobal); | 135 return GetImpl()->GetMatrix(matrix, bGlobal); |
| 131 } | 136 } |
| 132 FWL_Error IFWL_Widget::SetMatrix(const CFX_Matrix& matrix) { | 137 FWL_Error IFWL_Widget::SetMatrix(const CFX_Matrix& matrix) { |
| 133 return static_cast<CFWL_WidgetImp*>(GetImpl())->SetMatrix(matrix); | 138 return GetImpl()->SetMatrix(matrix); |
| 134 } | 139 } |
| 135 FWL_Error IFWL_Widget::DrawWidget(CFX_Graphics* pGraphics, | 140 FWL_Error IFWL_Widget::DrawWidget(CFX_Graphics* pGraphics, |
| 136 const CFX_Matrix* pMatrix) { | 141 const CFX_Matrix* pMatrix) { |
| 137 return static_cast<CFWL_WidgetImp*>(GetImpl()) | 142 return GetImpl()->DrawWidget(pGraphics, pMatrix); |
| 138 ->DrawWidget(pGraphics, pMatrix); | |
| 139 } | 143 } |
| 140 IFWL_ThemeProvider* IFWL_Widget::GetThemeProvider() { | 144 IFWL_ThemeProvider* IFWL_Widget::GetThemeProvider() { |
| 141 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetThemeProvider(); | 145 return GetImpl()->GetThemeProvider(); |
| 142 } | 146 } |
| 143 FWL_Error IFWL_Widget::SetThemeProvider(IFWL_ThemeProvider* pThemeProvider) { | 147 FWL_Error IFWL_Widget::SetThemeProvider(IFWL_ThemeProvider* pThemeProvider) { |
| 144 return static_cast<CFWL_WidgetImp*>(GetImpl()) | 148 return GetImpl()->SetThemeProvider(pThemeProvider); |
| 145 ->SetThemeProvider(pThemeProvider); | |
| 146 } | 149 } |
| 147 FWL_Error IFWL_Widget::SetDataProvider(IFWL_DataProvider* pDataProvider) { | 150 FWL_Error IFWL_Widget::SetDataProvider(IFWL_DataProvider* pDataProvider) { |
| 148 return static_cast<CFWL_WidgetImp*>(GetImpl()) | 151 return GetImpl()->SetDataProvider(pDataProvider); |
| 149 ->SetDataProvider(pDataProvider); | |
| 150 } | 152 } |
| 151 IFWL_WidgetDelegate* IFWL_Widget::SetDelegate(IFWL_WidgetDelegate* pDelegate) { | 153 IFWL_WidgetDelegate* IFWL_Widget::SetDelegate(IFWL_WidgetDelegate* pDelegate) { |
| 152 return static_cast<CFWL_WidgetImp*>(GetImpl())->SetDelegate(pDelegate); | 154 return GetImpl()->SetDelegate(pDelegate); |
| 153 } | 155 } |
| 154 IFWL_App* IFWL_Widget::GetOwnerApp() const { | 156 IFWL_App* IFWL_Widget::GetOwnerApp() const { |
| 155 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetOwnerApp(); | 157 return GetImpl()->GetOwnerApp(); |
| 156 } | 158 } |
| 157 CFX_SizeF IFWL_Widget::GetOffsetFromParent(IFWL_Widget* pParent) { | 159 CFX_SizeF IFWL_Widget::GetOffsetFromParent(IFWL_Widget* pParent) { |
| 158 return static_cast<CFWL_WidgetImp*>(GetImpl())->GetOffsetFromParent(pParent); | 160 return GetImpl()->GetOffsetFromParent(pParent); |
| 159 } | 161 } |
| 160 | 162 |
| 161 FWL_Error CFWL_WidgetImp::Initialize() { | 163 FWL_Error CFWL_WidgetImp::Initialize() { |
| 162 IFWL_App* pApp = FWL_GetApp(); | 164 IFWL_App* pApp = FWL_GetApp(); |
| 163 if (!pApp) | 165 if (!pApp) |
| 164 return FWL_Error::Indefinite; | 166 return FWL_Error::Indefinite; |
| 165 | 167 |
| 166 CXFA_FFApp* pAdapter = pApp->GetAdapterNative(); | 168 CXFA_FFApp* pAdapter = pApp->GetAdapterNative(); |
| 167 if (!pAdapter) | 169 if (!pAdapter) |
| 168 return FWL_Error::Indefinite; | 170 return FWL_Error::Indefinite; |
| (...skipping 330 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 499 FWL_Error CFWL_WidgetImp::SetOwnerApp(CFWL_AppImp* pOwnerApp) { | 501 FWL_Error CFWL_WidgetImp::SetOwnerApp(CFWL_AppImp* pOwnerApp) { |
| 500 m_pOwnerApp = pOwnerApp; | 502 m_pOwnerApp = pOwnerApp; |
| 501 return FWL_Error::Succeeded; | 503 return FWL_Error::Succeeded; |
| 502 } | 504 } |
| 503 IFWL_Widget* CFWL_WidgetImp::GetInterface() const { | 505 IFWL_Widget* CFWL_WidgetImp::GetInterface() const { |
| 504 return m_pInterface; | 506 return m_pInterface; |
| 505 } | 507 } |
| 506 void CFWL_WidgetImp::SetInterface(IFWL_Widget* pInterface) { | 508 void CFWL_WidgetImp::SetInterface(IFWL_Widget* pInterface) { |
| 507 m_pInterface = pInterface; | 509 m_pInterface = pInterface; |
| 508 } | 510 } |
| 511 |
| 512 uint32_t CFWL_WidgetImp::GetEventKey() const { |
| 513 return m_nEventKey; |
| 514 } |
| 515 |
| 516 void CFWL_WidgetImp::SetEventKey(uint32_t key) { |
| 517 m_nEventKey = key; |
| 518 } |
| 519 |
| 509 CFWL_WidgetImp::CFWL_WidgetImp(const CFWL_WidgetImpProperties& properties, | 520 CFWL_WidgetImp::CFWL_WidgetImp(const CFWL_WidgetImpProperties& properties, |
| 510 IFWL_Widget* pOuter) | 521 IFWL_Widget* pOuter) |
| 511 : m_pProperties(new CFWL_WidgetImpProperties), | 522 : m_pProperties(new CFWL_WidgetImpProperties), |
| 512 m_pPrivateData(NULL), | 523 m_pPrivateData(NULL), |
| 513 m_pDelegate(NULL), | 524 m_pDelegate(NULL), |
| 514 m_pCurDelegate(NULL), | 525 m_pCurDelegate(NULL), |
| 515 m_pOuter(pOuter), | 526 m_pOuter(pOuter), |
| 516 m_pInterface(NULL), | 527 m_pInterface(NULL), |
| 517 m_iLock(0) { | 528 m_iLock(0), |
| 529 m_nEventKey(0) { |
| 518 *m_pProperties = properties; | 530 *m_pProperties = properties; |
| 519 m_pWidgetMgr = CFWL_WidgetMgr::GetInstance(); | 531 m_pWidgetMgr = CFWL_WidgetMgr::GetInstance(); |
| 520 ASSERT(m_pWidgetMgr != NULL); | 532 ASSERT(m_pWidgetMgr != NULL); |
| 521 } | 533 } |
| 522 CFWL_WidgetImp::~CFWL_WidgetImp() { | 534 CFWL_WidgetImp::~CFWL_WidgetImp() { |
| 523 if (m_pPrivateData) { | 535 if (m_pPrivateData) { |
| 524 delete m_pPrivateData; | 536 delete m_pPrivateData; |
| 525 m_pPrivateData = NULL; | 537 m_pPrivateData = NULL; |
| 526 } | 538 } |
| 527 if (m_pProperties) { | 539 if (m_pProperties) { |
| (...skipping 495 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1023 } | 1035 } |
| 1024 } | 1036 } |
| 1025 | 1037 |
| 1026 void CFWL_WidgetImpDelegate::OnProcessEvent(CFWL_Event* pEvent) {} | 1038 void CFWL_WidgetImpDelegate::OnProcessEvent(CFWL_Event* pEvent) {} |
| 1027 | 1039 |
| 1028 void CFWL_WidgetImpDelegate::OnDrawWidget(CFX_Graphics* pGraphics, | 1040 void CFWL_WidgetImpDelegate::OnDrawWidget(CFX_Graphics* pGraphics, |
| 1029 const CFX_Matrix* pMatrix) { | 1041 const CFX_Matrix* pMatrix) { |
| 1030 CFWL_EvtDraw evt; | 1042 CFWL_EvtDraw evt; |
| 1031 evt.m_pGraphics = pGraphics; | 1043 evt.m_pGraphics = pGraphics; |
| 1032 } | 1044 } |
| OLD | NEW |