| Index: xfa/src/fwl/src/core/fwl_panelimp.cpp
|
| diff --git a/xfa/src/fwl/src/core/fwl_panelimp.cpp b/xfa/src/fwl/src/core/fwl_panelimp.cpp
|
| index 6c0ba87182d4ddab651a8b5e16ddf2893d1fa8d1..f252ccb36f352a349e6efe065b9f7cb7c9c6e49e 100644
|
| --- a/xfa/src/fwl/src/core/fwl_panelimp.cpp
|
| +++ b/xfa/src/fwl/src/core/fwl_panelimp.cpp
|
| @@ -1,148 +1,148 @@
|
| -// Copyright 2014 PDFium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
|
| -
|
| -#include "xfa/src/foxitlib.h"
|
| -#include "xfa/src/fwl/src/core/include/fwl_targetimp.h"
|
| -#include "xfa/src/fwl/src/core/include/fwl_noteimp.h"
|
| -#include "xfa/src/fwl/src/core/include/fwl_widgetimp.h"
|
| -#include "xfa/src/fwl/src/core/include/fwl_panelimp.h"
|
| -
|
| -// static
|
| -IFWL_Panel* IFWL_Panel::Create(CFWL_WidgetImpProperties& properties,
|
| - IFWL_Widget* pOuter) {
|
| - IFWL_Panel* pPanel = new IFWL_Panel;
|
| - CFWL_PanelImp* pPanelImpl = new CFWL_PanelImp(properties, pOuter);
|
| - pPanel->SetImpl(pPanelImpl);
|
| - pPanelImpl->SetInterface(pPanel);
|
| - return pPanel;
|
| -}
|
| -IFWL_Panel::IFWL_Panel() {}
|
| -IFWL_Content* IFWL_Panel::GetContent() {
|
| - return static_cast<CFWL_PanelImp*>(GetImpl())->GetContent();
|
| -}
|
| -FWL_ERR IFWL_Panel::SetContent(IFWL_Content* pContent) {
|
| - return static_cast<CFWL_PanelImp*>(GetImpl())->SetContent(pContent);
|
| -}
|
| -
|
| -CFWL_PanelImp::CFWL_PanelImp(const CFWL_WidgetImpProperties& properties,
|
| - IFWL_Widget* pOuter)
|
| - : CFWL_WidgetImp(properties, pOuter), m_pContent(nullptr) {}
|
| -CFWL_PanelImp::~CFWL_PanelImp() {}
|
| -FWL_ERR CFWL_PanelImp::GetClassName(CFX_WideString& wsClass) const {
|
| - wsClass = FWL_CLASS_Panel;
|
| - return FWL_ERR_Succeeded;
|
| -}
|
| -FX_DWORD CFWL_PanelImp::GetClassID() const {
|
| - return FWL_CLASSHASH_Panel;
|
| -}
|
| -FWL_ERR CFWL_PanelImp::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) {
|
| - if (bAutoSize) {
|
| - if (m_pContent) {
|
| - m_pContent->GetWidgetRect(rect, TRUE);
|
| - }
|
| - } else {
|
| - rect = m_pProperties->m_rtWidget;
|
| - }
|
| - return FWL_ERR_Succeeded;
|
| -}
|
| -FWL_ERR CFWL_PanelImp::Update() {
|
| - if (m_pContent) {
|
| - CFX_RectF rtClient;
|
| - GetClientRect(rtClient);
|
| - FWL_GRIDUNIT eWidth = FWL_GRIDUNIT_Fixed, eHeight = FWL_GRIDUNIT_Fixed;
|
| - IFWL_WidgetMgr* pWidgetMgr = FWL_GetWidgetMgr();
|
| - if (!pWidgetMgr)
|
| - return FWL_ERR_Indefinite;
|
| - IFWL_Widget* pParent =
|
| - pWidgetMgr->GetWidget(GetInterface(), FWL_WGTRELATION_Parent);
|
| - if (pParent && pParent->GetClassID() == FWL_CLASSHASH_Grid) {
|
| - IFWL_Grid* pGrid = static_cast<IFWL_Grid*>(pParent);
|
| - pGrid->GetWidgetSize(GetInterface(), FWL_GRIDSIZE_Width, eWidth);
|
| - pGrid->GetWidgetSize(GetInterface(), FWL_GRIDSIZE_Height, eHeight);
|
| - }
|
| - m_pContent->SetWidgetRect(rtClient);
|
| - m_pContent->Update();
|
| - }
|
| - return FWL_ERR_Succeeded;
|
| -}
|
| -IFWL_Content* CFWL_PanelImp::GetContent() {
|
| - return m_pContent;
|
| -}
|
| -FWL_ERR CFWL_PanelImp::SetContent(IFWL_Content* pContent) {
|
| - if (!pContent)
|
| - return FWL_ERR_Indefinite;
|
| - m_pContent = pContent;
|
| - return pContent->SetParent(m_pInterface);
|
| -}
|
| -class CFWL_CustomPanelImp : public CFWL_WidgetImp {
|
| - public:
|
| - CFWL_CustomPanelImp(const CFWL_WidgetImpProperties& properties,
|
| - IFWL_Widget* pOuter);
|
| - virtual ~CFWL_CustomPanelImp();
|
| - virtual FWL_ERR GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize = FALSE);
|
| - virtual FWL_ERR Update();
|
| - virtual IFWL_Content* GetContent();
|
| - virtual FWL_ERR SetContent(IFWL_Content* pContent);
|
| - FWL_ERR SetProxy(IFWL_Proxy* pProxy);
|
| -
|
| - protected:
|
| - IFWL_Content* m_pContent;
|
| - IFWL_Proxy* m_pProxy;
|
| -};
|
| -CFWL_CustomPanelImp::CFWL_CustomPanelImp(
|
| - const CFWL_WidgetImpProperties& properties,
|
| - IFWL_Widget* pOuter)
|
| - : CFWL_WidgetImp(properties, pOuter),
|
| - m_pContent(nullptr),
|
| - m_pProxy(nullptr) {}
|
| -CFWL_CustomPanelImp::~CFWL_CustomPanelImp() {}
|
| -FWL_ERR CFWL_CustomPanelImp::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) {
|
| - if (bAutoSize && m_pProxy &&
|
| - (m_pProxy->GetWidgetRect(rect, bAutoSize) == FWL_ERR_Succeeded)) {
|
| - return FWL_ERR_Succeeded;
|
| - }
|
| - return CFWL_WidgetImp::GetWidgetRect(rect, bAutoSize);
|
| -}
|
| -FWL_ERR CFWL_CustomPanelImp::Update() {
|
| - if (m_pProxy) {
|
| - return m_pProxy->Update();
|
| - }
|
| - return CFWL_WidgetImp::Update();
|
| -}
|
| -IFWL_Content* CFWL_CustomPanelImp::GetContent() {
|
| - return m_pContent;
|
| -}
|
| -FWL_ERR CFWL_CustomPanelImp::SetContent(IFWL_Content* pContent) {
|
| - if (!pContent)
|
| - return FWL_ERR_Indefinite;
|
| - m_pContent = pContent;
|
| - return pContent->SetParent(m_pInterface);
|
| -}
|
| -FWL_ERR CFWL_CustomPanelImp::SetProxy(IFWL_Proxy* pProxy) {
|
| - m_pProxy = pProxy;
|
| - return FWL_ERR_Succeeded;
|
| -}
|
| -
|
| -// statuc
|
| -IFWL_CustomPanel* IFWL_CustomPanel::Create(CFWL_WidgetImpProperties& properties,
|
| - IFWL_Widget* pOuter) {
|
| - IFWL_CustomPanel* pCustomPanel = new IFWL_CustomPanel;
|
| - CFWL_CustomPanelImp* pCustomPanelImpl =
|
| - new CFWL_CustomPanelImp(properties, pOuter);
|
| - pCustomPanel->SetImpl(pCustomPanelImpl);
|
| - pCustomPanelImpl->SetInterface(pCustomPanel);
|
| - return pCustomPanel;
|
| -}
|
| -IFWL_CustomPanel::IFWL_CustomPanel() {}
|
| -IFWL_Content* IFWL_CustomPanel::GetContent() {
|
| - return static_cast<CFWL_CustomPanelImp*>(GetImpl())->GetContent();
|
| -}
|
| -FWL_ERR IFWL_CustomPanel::SetContent(IFWL_Content* pContent) {
|
| - return static_cast<CFWL_CustomPanelImp*>(GetImpl())->SetContent(pContent);
|
| -}
|
| -FWL_ERR IFWL_CustomPanel::SetProxy(IFWL_Proxy* pProxy) {
|
| - return static_cast<CFWL_CustomPanelImp*>(GetImpl())->SetProxy(pProxy);
|
| -}
|
| +// Copyright 2014 PDFium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
|
| +
|
| +#include "xfa/src/foxitlib.h"
|
| +#include "xfa/src/fwl/src/core/include/fwl_targetimp.h"
|
| +#include "xfa/src/fwl/src/core/include/fwl_noteimp.h"
|
| +#include "xfa/src/fwl/src/core/include/fwl_widgetimp.h"
|
| +#include "xfa/src/fwl/src/core/include/fwl_panelimp.h"
|
| +
|
| +// static
|
| +IFWL_Panel* IFWL_Panel::Create(CFWL_WidgetImpProperties& properties,
|
| + IFWL_Widget* pOuter) {
|
| + IFWL_Panel* pPanel = new IFWL_Panel;
|
| + CFWL_PanelImp* pPanelImpl = new CFWL_PanelImp(properties, pOuter);
|
| + pPanel->SetImpl(pPanelImpl);
|
| + pPanelImpl->SetInterface(pPanel);
|
| + return pPanel;
|
| +}
|
| +IFWL_Panel::IFWL_Panel() {}
|
| +IFWL_Content* IFWL_Panel::GetContent() {
|
| + return static_cast<CFWL_PanelImp*>(GetImpl())->GetContent();
|
| +}
|
| +FWL_ERR IFWL_Panel::SetContent(IFWL_Content* pContent) {
|
| + return static_cast<CFWL_PanelImp*>(GetImpl())->SetContent(pContent);
|
| +}
|
| +
|
| +CFWL_PanelImp::CFWL_PanelImp(const CFWL_WidgetImpProperties& properties,
|
| + IFWL_Widget* pOuter)
|
| + : CFWL_WidgetImp(properties, pOuter), m_pContent(nullptr) {}
|
| +CFWL_PanelImp::~CFWL_PanelImp() {}
|
| +FWL_ERR CFWL_PanelImp::GetClassName(CFX_WideString& wsClass) const {
|
| + wsClass = FWL_CLASS_Panel;
|
| + return FWL_ERR_Succeeded;
|
| +}
|
| +FX_DWORD CFWL_PanelImp::GetClassID() const {
|
| + return FWL_CLASSHASH_Panel;
|
| +}
|
| +FWL_ERR CFWL_PanelImp::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) {
|
| + if (bAutoSize) {
|
| + if (m_pContent) {
|
| + m_pContent->GetWidgetRect(rect, TRUE);
|
| + }
|
| + } else {
|
| + rect = m_pProperties->m_rtWidget;
|
| + }
|
| + return FWL_ERR_Succeeded;
|
| +}
|
| +FWL_ERR CFWL_PanelImp::Update() {
|
| + if (m_pContent) {
|
| + CFX_RectF rtClient;
|
| + GetClientRect(rtClient);
|
| + FWL_GRIDUNIT eWidth = FWL_GRIDUNIT_Fixed, eHeight = FWL_GRIDUNIT_Fixed;
|
| + IFWL_WidgetMgr* pWidgetMgr = FWL_GetWidgetMgr();
|
| + if (!pWidgetMgr)
|
| + return FWL_ERR_Indefinite;
|
| + IFWL_Widget* pParent =
|
| + pWidgetMgr->GetWidget(GetInterface(), FWL_WGTRELATION_Parent);
|
| + if (pParent && pParent->GetClassID() == FWL_CLASSHASH_Grid) {
|
| + IFWL_Grid* pGrid = static_cast<IFWL_Grid*>(pParent);
|
| + pGrid->GetWidgetSize(GetInterface(), FWL_GRIDSIZE_Width, eWidth);
|
| + pGrid->GetWidgetSize(GetInterface(), FWL_GRIDSIZE_Height, eHeight);
|
| + }
|
| + m_pContent->SetWidgetRect(rtClient);
|
| + m_pContent->Update();
|
| + }
|
| + return FWL_ERR_Succeeded;
|
| +}
|
| +IFWL_Content* CFWL_PanelImp::GetContent() {
|
| + return m_pContent;
|
| +}
|
| +FWL_ERR CFWL_PanelImp::SetContent(IFWL_Content* pContent) {
|
| + if (!pContent)
|
| + return FWL_ERR_Indefinite;
|
| + m_pContent = pContent;
|
| + return pContent->SetParent(m_pInterface);
|
| +}
|
| +class CFWL_CustomPanelImp : public CFWL_WidgetImp {
|
| + public:
|
| + CFWL_CustomPanelImp(const CFWL_WidgetImpProperties& properties,
|
| + IFWL_Widget* pOuter);
|
| + virtual ~CFWL_CustomPanelImp();
|
| + virtual FWL_ERR GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize = FALSE);
|
| + virtual FWL_ERR Update();
|
| + virtual IFWL_Content* GetContent();
|
| + virtual FWL_ERR SetContent(IFWL_Content* pContent);
|
| + FWL_ERR SetProxy(IFWL_Proxy* pProxy);
|
| +
|
| + protected:
|
| + IFWL_Content* m_pContent;
|
| + IFWL_Proxy* m_pProxy;
|
| +};
|
| +CFWL_CustomPanelImp::CFWL_CustomPanelImp(
|
| + const CFWL_WidgetImpProperties& properties,
|
| + IFWL_Widget* pOuter)
|
| + : CFWL_WidgetImp(properties, pOuter),
|
| + m_pContent(nullptr),
|
| + m_pProxy(nullptr) {}
|
| +CFWL_CustomPanelImp::~CFWL_CustomPanelImp() {}
|
| +FWL_ERR CFWL_CustomPanelImp::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) {
|
| + if (bAutoSize && m_pProxy &&
|
| + (m_pProxy->GetWidgetRect(rect, bAutoSize) == FWL_ERR_Succeeded)) {
|
| + return FWL_ERR_Succeeded;
|
| + }
|
| + return CFWL_WidgetImp::GetWidgetRect(rect, bAutoSize);
|
| +}
|
| +FWL_ERR CFWL_CustomPanelImp::Update() {
|
| + if (m_pProxy) {
|
| + return m_pProxy->Update();
|
| + }
|
| + return CFWL_WidgetImp::Update();
|
| +}
|
| +IFWL_Content* CFWL_CustomPanelImp::GetContent() {
|
| + return m_pContent;
|
| +}
|
| +FWL_ERR CFWL_CustomPanelImp::SetContent(IFWL_Content* pContent) {
|
| + if (!pContent)
|
| + return FWL_ERR_Indefinite;
|
| + m_pContent = pContent;
|
| + return pContent->SetParent(m_pInterface);
|
| +}
|
| +FWL_ERR CFWL_CustomPanelImp::SetProxy(IFWL_Proxy* pProxy) {
|
| + m_pProxy = pProxy;
|
| + return FWL_ERR_Succeeded;
|
| +}
|
| +
|
| +// statuc
|
| +IFWL_CustomPanel* IFWL_CustomPanel::Create(CFWL_WidgetImpProperties& properties,
|
| + IFWL_Widget* pOuter) {
|
| + IFWL_CustomPanel* pCustomPanel = new IFWL_CustomPanel;
|
| + CFWL_CustomPanelImp* pCustomPanelImpl =
|
| + new CFWL_CustomPanelImp(properties, pOuter);
|
| + pCustomPanel->SetImpl(pCustomPanelImpl);
|
| + pCustomPanelImpl->SetInterface(pCustomPanel);
|
| + return pCustomPanel;
|
| +}
|
| +IFWL_CustomPanel::IFWL_CustomPanel() {}
|
| +IFWL_Content* IFWL_CustomPanel::GetContent() {
|
| + return static_cast<CFWL_CustomPanelImp*>(GetImpl())->GetContent();
|
| +}
|
| +FWL_ERR IFWL_CustomPanel::SetContent(IFWL_Content* pContent) {
|
| + return static_cast<CFWL_CustomPanelImp*>(GetImpl())->SetContent(pContent);
|
| +}
|
| +FWL_ERR IFWL_CustomPanel::SetProxy(IFWL_Proxy* pProxy) {
|
| + return static_cast<CFWL_CustomPanelImp*>(GetImpl())->SetProxy(pProxy);
|
| +}
|
|
|