diff options
author | weili <weili@chromium.org> | 2016-08-04 16:37:48 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-08-04 16:37:48 -0700 |
commit | 1b4f6b36b3ed8d1f6cea96bc32c1b376f4a499bc (patch) | |
tree | aa3ba6730495096411f2a3555c74e83f5d1fca11 /xfa/fwl/core/fwl_formimp.cpp | |
parent | 52a5005c453a9e08384e375ae51c5f1ad628fe86 (diff) | |
download | pdfium-1b4f6b36b3ed8d1f6cea96bc32c1b376f4a499bc.tar.xz |
Use smart pointers for class owned pointers
For classes under xfa/fgas, xfa/fwl/basewidget, and xfa/fwl/core,
use smart pointers instead of raw pointer to make memory management
easier.
BUG=pdfium:518
Review-Url: https://codereview.chromium.org/2207093005
Diffstat (limited to 'xfa/fwl/core/fwl_formimp.cpp')
-rw-r--r-- | xfa/fwl/core/fwl_formimp.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/xfa/fwl/core/fwl_formimp.cpp b/xfa/fwl/core/fwl_formimp.cpp index a3fc6be816..1b82ff59f8 100644 --- a/xfa/fwl/core/fwl_formimp.cpp +++ b/xfa/fwl/core/fwl_formimp.cpp @@ -75,7 +75,6 @@ CFWL_FormImp::CFWL_FormImp(const CFWL_WidgetImpProperties& properties, m_pMinBox(nullptr), m_pMaxBox(nullptr), m_pCaptionBox(nullptr), - m_pNoteLoop(nullptr), m_pSubFocus(nullptr), m_fCXBorder(0), m_fCYBorder(0), @@ -100,7 +99,6 @@ CFWL_FormImp::CFWL_FormImp(const CFWL_WidgetImpProperties& properties, CFWL_FormImp::~CFWL_FormImp() { RemoveSysButtons(); - delete m_pNoteLoop; } FWL_Error CFWL_FormImp::GetClassName(CFX_WideString& wsClass) const { @@ -371,13 +369,16 @@ FWL_Error CFWL_FormImp::DrawWidget(CFX_Graphics* pGraphics, #endif return FWL_Error::Succeeded; } + FWL_FORMSIZE CFWL_FormImp::GetFormSize() { return m_eFormSize; } + FWL_Error CFWL_FormImp::SetFormSize(FWL_FORMSIZE eFormSize) { m_eFormSize = eFormSize; return FWL_Error::Succeeded; } + IFWL_Widget* CFWL_FormImp::DoModal() { IFWL_App* pApp = GetOwnerApp(); if (!pApp) @@ -387,8 +388,8 @@ IFWL_Widget* CFWL_FormImp::DoModal() { if (!pDriver) return nullptr; - m_pNoteLoop = new CFWL_NoteLoop(this); - pDriver->PushNoteLoop(m_pNoteLoop); + m_pNoteLoop.reset(new CFWL_NoteLoop(this)); + pDriver->PushNoteLoop(m_pNoteLoop.get()); m_bDoModalFlag = TRUE; SetStates(FWL_WGTSTATE_Invisible, FALSE); pDriver->Run(); @@ -396,13 +397,14 @@ IFWL_Widget* CFWL_FormImp::DoModal() { #else pDriver->PopNoteLoop(); #endif - delete m_pNoteLoop; - m_pNoteLoop = nullptr; + m_pNoteLoop.reset(); return nullptr; } + IFWL_Widget* CFWL_FormImp::DoModal(uint32_t& dwCommandID) { return DoModal(); } + FWL_Error CFWL_FormImp::EndDoModal() { if (!m_pNoteLoop) return FWL_Error::Indefinite; @@ -426,6 +428,7 @@ FWL_Error CFWL_FormImp::EndDoModal() { return m_pNoteLoop->EndModalLoop(); #endif } + FWL_Error CFWL_FormImp::SetBorderRegion(CFX_Path* pPath) { return FWL_Error::Succeeded; } |