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..9a2d91a4597c9d487d54db8eecfe0a1a53792619 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,7 +15,9 @@ |
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_Edit(app, properties, nullptr), m_dwStatus(0), m_type(BC_UNKNOWN) { |
+ SetDelegate(pdfium::MakeUnique<CFWL_BarcodeImpDelegate>(this)); |
+} |
IFWL_Barcode::~IFWL_Barcode() {} |
@@ -22,20 +25,6 @@ FWL_Type IFWL_Barcode::GetClassID() const { |
return FWL_Type::Barcode; |
} |
-void IFWL_Barcode::Initialize() { |
- if (!m_pDelegate) |
- m_pDelegate = new CFWL_BarcodeImpDelegate(this); |
- |
- IFWL_Edit::Initialize(); |
-} |
- |
-void IFWL_Barcode::Finalize() { |
- delete m_pDelegate; |
- m_pDelegate = nullptr; |
- m_pBarcodeEngine.reset(); |
- IFWL_Edit::Finalize(); |
-} |
- |
FWL_Error IFWL_Barcode::Update() { |
if (IsLocked()) { |
return FWL_Error::Indefinite; |