diff options
Diffstat (limited to 'xfa/fxfa/app/cxfa_fwladapterwidgetmgr.cpp')
-rw-r--r-- | xfa/fxfa/app/cxfa_fwladapterwidgetmgr.cpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/xfa/fxfa/app/cxfa_fwladapterwidgetmgr.cpp b/xfa/fxfa/app/cxfa_fwladapterwidgetmgr.cpp new file mode 100644 index 0000000000..42362d858a --- /dev/null +++ b/xfa/fxfa/app/cxfa_fwladapterwidgetmgr.cpp @@ -0,0 +1,38 @@ +// 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/fxfa/app/cxfa_fwladapterwidgetmgr.h" + +#include "xfa/fxfa/app/cxfa_fffield.h" +#include "xfa/fxfa/cxfa_ffdoc.h" + +CXFA_FWLAdapterWidgetMgr::CXFA_FWLAdapterWidgetMgr() {} + +CXFA_FWLAdapterWidgetMgr::~CXFA_FWLAdapterWidgetMgr() {} + +void CXFA_FWLAdapterWidgetMgr::RepaintWidget(CFWL_Widget* pWidget) { + if (!pWidget) + return; + + CXFA_FFWidget* pFFWidget = pWidget->GetLayoutItem(); + if (!pFFWidget) + return; + + pFFWidget->AddInvalidateRect(nullptr); +} + +bool CXFA_FWLAdapterWidgetMgr::GetPopupPos(CFWL_Widget* pWidget, + float fMinHeight, + float fMaxHeight, + const CFX_RectF& rtAnchor, + CFX_RectF& rtPopup) { + CXFA_FFWidget* pFFWidget = pWidget->GetLayoutItem(); + CFX_RectF rtRotateAnchor(rtAnchor); + pFFWidget->GetRotateMatrix().TransformRect(rtRotateAnchor); + pFFWidget->GetDoc()->GetDocEnvironment()->GetPopupPos( + pFFWidget, fMinHeight, fMaxHeight, rtRotateAnchor, rtPopup); + return true; +} |