Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(217)

Unified Diff: xfa/fwl/lightwidget/cfwl_widget.cpp

Issue 2209153002: Use virtual function to retrieve interface pointer (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: address comment Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « xfa/fwl/lightwidget/cfwl_widget.h ('k') | xfa/fxfa/app/xfa_ffcheckbutton.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: xfa/fwl/lightwidget/cfwl_widget.cpp
diff --git a/xfa/fwl/lightwidget/cfwl_widget.cpp b/xfa/fwl/lightwidget/cfwl_widget.cpp
index 8022f0afb046dcc4ebca545dbbb2f86572c462ca..3a5478a433c2ddc41633811bf02c5b1a2bbdbea5 100644
--- a/xfa/fwl/lightwidget/cfwl_widget.cpp
+++ b/xfa/fwl/lightwidget/cfwl_widget.cpp
@@ -20,7 +20,11 @@
#define FWL_WGT_CalcMultiLineDefWidth 120.0f
IFWL_Widget* CFWL_Widget::GetWidget() {
- return m_pIface;
+ return m_pIface.get();
+}
+
+const IFWL_Widget* CFWL_Widget::GetWidget() const {
+ return m_pIface.get();
}
FWL_Error CFWL_Widget::GetClassName(CFX_WideString& wsClass) const {
@@ -208,18 +212,15 @@ IFWL_WidgetDelegate* CFWL_Widget::SetDelegate(IFWL_WidgetDelegate* pDelegate) {
}
CFWL_Widget::CFWL_Widget()
- : m_pIface(nullptr), m_pDelegate(nullptr), m_pProperties(nullptr) {
- m_pProperties = new CFWL_WidgetProperties;
- m_pWidgetMgr = CFWL_WidgetMgr::GetInstance();
+ : m_pDelegate(nullptr),
+ m_pWidgetMgr(CFWL_WidgetMgr::GetInstance()),
+ m_pProperties(new CFWL_WidgetProperties) {
ASSERT(m_pWidgetMgr);
}
CFWL_Widget::~CFWL_Widget() {
- delete m_pProperties;
- if (m_pIface) {
+ if (m_pIface)
m_pIface->Finalize();
- delete m_pIface;
- }
}
FWL_Error CFWL_Widget::Repaint(const CFX_RectF* pRect) {
@@ -233,7 +234,7 @@ FWL_Error CFWL_Widget::Repaint(const CFX_RectF* pRect) {
m_pIface->GetWidgetRect(rect);
rect.left = rect.top = 0;
}
- return m_pWidgetMgr->RepaintWidget(m_pIface, &rect);
+ return m_pWidgetMgr->RepaintWidget(m_pIface.get(), &rect);
}
FWL_Error CFWL_Widget::SetFocus(FX_BOOL bFocus) {
@@ -249,9 +250,9 @@ FWL_Error CFWL_Widget::SetFocus(FX_BOOL bFocus) {
return FWL_Error::Indefinite;
if (bFocus) {
- pDriver->SetFocus(m_pIface);
+ pDriver->SetFocus(m_pIface.get());
} else {
- if (pDriver->GetFocus() == m_pIface) {
+ if (pDriver->GetFocus() == m_pIface.get()) {
pDriver->SetFocus(nullptr);
}
}
@@ -270,7 +271,7 @@ FWL_Error CFWL_Widget::SetGrab(FX_BOOL bSet) {
if (!pDriver)
return FWL_Error::Indefinite;
- pDriver->SetGrab(m_pIface, bSet);
+ pDriver->SetGrab(m_pIface.get(), bSet);
return FWL_Error::Succeeded;
}
@@ -320,7 +321,7 @@ CFX_SizeF CFWL_Widget::CalcTextSize(const CFX_WideString& wsText,
return CFX_SizeF();
CFWL_ThemeText calPart;
- calPart.m_pWidget = m_pIface;
+ calPart.m_pWidget = m_pIface.get();
calPart.m_wsText = wsText;
calPart.m_dwTTOStyles =
bMultiLine ? FDE_TTOSTYLE_LineWrap : FDE_TTOSTYLE_SingleLine;
« no previous file with comments | « xfa/fwl/lightwidget/cfwl_widget.h ('k') | xfa/fxfa/app/xfa_ffcheckbutton.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698