Index: xfa/fwl/core/ifwl_barcode.cpp |
diff --git a/xfa/fwl/core/ifwl_barcode.cpp b/xfa/fwl/core/ifwl_barcode.cpp |
index 779b44ab3e123882e841aab224d2c6c7adfcf2bd..cda020d7ca6fadfb494f6818b3629e16293ca329 100644 |
--- a/xfa/fwl/core/ifwl_barcode.cpp |
+++ b/xfa/fwl/core/ifwl_barcode.cpp |
@@ -6,6 +6,7 @@ |
#include "xfa/fwl/core/ifwl_barcode.h" |
+#include "third_party/base/ptr_util.h" |
#include "xfa/fgas/font/fgas_gefont.h" |
#include "xfa/fwl/core/cfwl_themepart.h" |
#include "xfa/fwl/core/cfx_barcode.h" |
@@ -14,26 +15,16 @@ |
IFWL_Barcode::IFWL_Barcode(const IFWL_App* app, |
const CFWL_WidgetImpProperties& properties) |
- : IFWL_Edit(app, properties, nullptr), m_dwStatus(0), m_type(BC_UNKNOWN) {} |
- |
-IFWL_Barcode::~IFWL_Barcode() {} |
- |
-FWL_Type IFWL_Barcode::GetClassID() const { |
- return FWL_Type::Barcode; |
+ : IFWL_Edit(app, properties, nullptr), m_dwStatus(0), m_type(BC_UNKNOWN) { |
+ SetDelegate(pdfium::MakeUnique<CFWL_BarcodeImpDelegate>(this)); |
} |
-void IFWL_Barcode::Initialize() { |
- if (!m_pDelegate) |
- m_pDelegate = new CFWL_BarcodeImpDelegate(this); |
- |
- IFWL_Edit::Initialize(); |
+IFWL_Barcode::~IFWL_Barcode() { |
+ m_pBarcodeEngine.reset(); |
Tom Sepez
2016/10/31 20:26:11
does deletion order matter? Is there a reason we
dsinclair
2016/11/01 15:39:45
Nope, as far as I know we can just get it get dest
|
} |
-void IFWL_Barcode::Finalize() { |
- delete m_pDelegate; |
- m_pDelegate = nullptr; |
- m_pBarcodeEngine.reset(); |
- IFWL_Edit::Finalize(); |
+FWL_Type IFWL_Barcode::GetClassID() const { |
+ return FWL_Type::Barcode; |
} |
FWL_Error IFWL_Barcode::Update() { |