| Index: xfa/fwl/core/fwl_widgetimp.cpp
|
| diff --git a/xfa/fwl/core/fwl_widgetimp.cpp b/xfa/fwl/core/fwl_widgetimp.cpp
|
| index e72a7f385a0b7fe4ef6223dbe8490e223574b507..f6e130b563645282736f17ad9714c1ffb2ba6a0b 100644
|
| --- a/xfa/fwl/core/fwl_widgetimp.cpp
|
| +++ b/xfa/fwl/core/fwl_widgetimp.cpp
|
| @@ -209,18 +209,20 @@ FWL_Error CFWL_WidgetImp::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) {
|
| }
|
| return FWL_Error::Succeeded;
|
| }
|
| +
|
| FWL_Error CFWL_WidgetImp::GetGlobalRect(CFX_RectF& rect) {
|
| - IFWL_Widget* pForm =
|
| - m_pWidgetMgr->GetWidget(m_pInterface, FWL_WGTRELATION_SystemForm);
|
| + IFWL_Widget* pForm = m_pWidgetMgr->GetSystemFormWidget(m_pInterface);
|
| if (!pForm)
|
| return FWL_Error::Indefinite;
|
| +
|
| rect.Set(0, 0, m_pProperties->m_rtWidget.width,
|
| m_pProperties->m_rtWidget.height);
|
| - if (pForm == m_pInterface) {
|
| + if (pForm == m_pInterface)
|
| return FWL_Error::Succeeded;
|
| - }
|
| +
|
| return TransformTo(pForm, rect);
|
| }
|
| +
|
| FWL_Error CFWL_WidgetImp::SetWidgetRect(const CFX_RectF& rect) {
|
| CFX_RectF rtOld = m_pProperties->m_rtWidget;
|
| m_pProperties->m_rtWidget = rect;
|
| @@ -250,7 +252,7 @@ FWL_Error CFWL_WidgetImp::GetClientRect(CFX_RectF& rect) {
|
| return FWL_Error::Succeeded;
|
| }
|
| IFWL_Widget* CFWL_WidgetImp::GetParent() {
|
| - return m_pWidgetMgr->GetWidget(m_pInterface, FWL_WGTRELATION_Parent);
|
| + return m_pWidgetMgr->GetParentWidget(m_pInterface);
|
| }
|
| FWL_Error CFWL_WidgetImp::SetParent(IFWL_Widget* pParent) {
|
| m_pProperties->m_pParent = pParent;
|
| @@ -258,7 +260,7 @@ FWL_Error CFWL_WidgetImp::SetParent(IFWL_Widget* pParent) {
|
| return FWL_Error::Succeeded;
|
| }
|
| IFWL_Widget* CFWL_WidgetImp::GetOwner() {
|
| - return m_pWidgetMgr->GetWidget(m_pInterface, FWL_WGTRELATION_Owner);
|
| + return m_pWidgetMgr->GetOwnerWidget(m_pInterface);
|
| }
|
| FWL_Error CFWL_WidgetImp::SetOwner(IFWL_Widget* pOwner) {
|
| m_pProperties->m_pOwner = pOwner;
|
| @@ -289,14 +291,14 @@ FWL_Error CFWL_WidgetImp::ModifyStylesEx(uint32_t dwStylesExAdded,
|
| uint32_t CFWL_WidgetImp::GetStates() {
|
| return m_pProperties->m_dwStates;
|
| }
|
| -static void NotifyHideChildWidget(IFWL_WidgetMgr* widgetMgr,
|
| +static void NotifyHideChildWidget(CFWL_WidgetMgr* widgetMgr,
|
| IFWL_Widget* widget,
|
| CFWL_NoteDriver* noteDriver) {
|
| - IFWL_Widget* child = widgetMgr->GetWidget(widget, FWL_WGTRELATION_FirstChild);
|
| + IFWL_Widget* child = widgetMgr->GetFirstChildWidget(widget);
|
| while (child) {
|
| noteDriver->NotifyTargetHide(child);
|
| NotifyHideChildWidget(widgetMgr, child, noteDriver);
|
| - child = widgetMgr->GetWidget(child, FWL_WGTRELATION_NextSibling);
|
| + child = widgetMgr->GetNextSiblingWidget(child);
|
| }
|
| }
|
|
|
| @@ -308,14 +310,13 @@ void CFWL_WidgetImp::SetStates(uint32_t dwStates, FX_BOOL bSet) {
|
|
|
| CFWL_NoteDriver* noteDriver =
|
| static_cast<CFWL_NoteDriver*>(GetOwnerApp()->GetNoteDriver());
|
| - IFWL_WidgetMgr* widgetMgr = FWL_GetWidgetMgr();
|
| + CFWL_WidgetMgr* widgetMgr = CFWL_WidgetMgr::GetInstance();
|
| noteDriver->NotifyTargetHide(m_pInterface);
|
| - IFWL_Widget* child =
|
| - widgetMgr->GetWidget(m_pInterface, FWL_WGTRELATION_FirstChild);
|
| + IFWL_Widget* child = widgetMgr->GetFirstChildWidget(m_pInterface);
|
| while (child) {
|
| noteDriver->NotifyTargetHide(child);
|
| NotifyHideChildWidget(widgetMgr, child, noteDriver);
|
| - child = widgetMgr->GetWidget(child, FWL_WGTRELATION_NextSibling);
|
| + child = widgetMgr->GetNextSiblingWidget(child);
|
| }
|
| return;
|
| }
|
| @@ -391,8 +392,7 @@ FWL_Error CFWL_WidgetImp::TransformTo(IFWL_Widget* pWidget,
|
| GetMatrix(m, TRUE);
|
| m.TransformPoint(fx, fy);
|
| }
|
| - IFWL_Widget* form1 =
|
| - m_pWidgetMgr->GetWidget(m_pInterface, FWL_WGTRELATION_SystemForm);
|
| + IFWL_Widget* form1 = m_pWidgetMgr->GetSystemFormWidget(m_pInterface);
|
| if (!form1)
|
| return FWL_Error::Indefinite;
|
| if (!pWidget) {
|
| @@ -401,8 +401,7 @@ FWL_Error CFWL_WidgetImp::TransformTo(IFWL_Widget* pWidget,
|
| fy += r.top;
|
| return FWL_Error::Succeeded;
|
| }
|
| - IFWL_Widget* form2 =
|
| - m_pWidgetMgr->GetWidget(pWidget, FWL_WGTRELATION_SystemForm);
|
| + IFWL_Widget* form2 = m_pWidgetMgr->GetSystemFormWidget(pWidget);
|
| if (!form2)
|
| return FWL_Error::Indefinite;
|
| if (form1 != form2) {
|
| @@ -517,7 +516,7 @@ CFWL_WidgetImp::CFWL_WidgetImp(const CFWL_WidgetImpProperties& properties,
|
| m_pInterface(NULL),
|
| m_iLock(0) {
|
| *m_pProperties = properties;
|
| - m_pWidgetMgr = static_cast<CFWL_WidgetMgr*>(FWL_GetWidgetMgr());
|
| + m_pWidgetMgr = CFWL_WidgetMgr::GetInstance();
|
| ASSERT(m_pWidgetMgr != NULL);
|
| }
|
| CFWL_WidgetImp::~CFWL_WidgetImp() {
|
| @@ -617,15 +616,13 @@ IFWL_ThemeProvider* CFWL_WidgetImp::GetAvailableTheme() {
|
| }
|
| IFWL_Widget* pUp = m_pInterface;
|
| do {
|
| - FWL_WGTRELATION relation = (pUp->GetStyles() & FWL_WGTSTYLE_Popup)
|
| - ? FWL_WGTRELATION_Owner
|
| - : FWL_WGTRELATION_Parent;
|
| - pUp = m_pWidgetMgr->GetWidget(pUp, relation);
|
| + pUp = (pUp->GetStyles() & FWL_WGTSTYLE_Popup)
|
| + ? m_pWidgetMgr->GetOwnerWidget(pUp)
|
| + : m_pWidgetMgr->GetParentWidget(pUp);
|
| if (pUp) {
|
| IFWL_ThemeProvider* pRet = pUp->GetThemeProvider();
|
| - if (pRet && pRet->IsValidWidget(m_pInterface)) {
|
| + if (pRet && pRet->IsValidWidget(m_pInterface))
|
| return pRet;
|
| - }
|
| }
|
| } while (pUp);
|
| return FWL_GetApp()->GetThemeProvider();
|
| @@ -929,7 +926,7 @@ CFX_SizeF CFWL_WidgetImp::GetOffsetFromParent(IFWL_Widget* pParent) {
|
| if (pParent == GetInterface())
|
| return CFX_SizeF();
|
|
|
| - IFWL_WidgetMgr* pWidgetMgr = FWL_GetWidgetMgr();
|
| + CFWL_WidgetMgr* pWidgetMgr = CFWL_WidgetMgr::GetInstance();
|
| if (!pWidgetMgr)
|
| return CFX_SizeF();
|
|
|
| @@ -941,7 +938,7 @@ CFX_SizeF CFWL_WidgetImp::GetOffsetFromParent(IFWL_Widget* pParent) {
|
| CFX_RectF rtDst;
|
| pDstWidget->GetWidgetRect(rtDst);
|
| szRet += CFX_SizeF(rtDst.left, rtDst.top);
|
| - pDstWidget = pWidgetMgr->GetWidget(pDstWidget, FWL_WGTRELATION_Parent);
|
| + pDstWidget = pWidgetMgr->GetParentWidget(pDstWidget);
|
| }
|
| return szRet;
|
| }
|
|
|