include/svtools/fmtfield.hxx | 11 +++-------- svtools/source/control/fmtfield.cxx | 14 +++++--------- 2 files changed, 8 insertions(+), 17 deletions(-)
New commits: commit d77d0d8e2fabc9dfc9eef3e532c31351632fb7b7 Author: Takeshi Abe <t...@fixedpoint.jp> Date: Wed Dec 27 14:02:17 2017 +0900 svtools: Simplify DoubleNumericField with std::unique_ptr Change-Id: I25df3a06afa5e1eb2fa282f2be2ae1ea69aa0ab5 Reviewed-on: https://gerrit.libreoffice.org/47077 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/include/svtools/fmtfield.hxx b/include/svtools/fmtfield.hxx index e8d794fd76f6..6be6e44c59b0 100644 --- a/include/svtools/fmtfield.hxx +++ b/include/svtools/fmtfield.hxx @@ -23,6 +23,7 @@ #include <svtools/svtdllapi.h> #include <vcl/spinfld.hxx> #include <svl/zforlist.hxx> +#include <memory> namespace validation { class NumberValidator; } @@ -255,15 +256,9 @@ protected: class SVT_DLLPUBLIC DoubleNumericField final : public FormattedField { public: - DoubleNumericField(vcl::Window* pParent, WinBits nStyle) - :FormattedField(pParent, nStyle) - ,m_pNumberValidator( nullptr ) - { - ResetConformanceTester(); - } + DoubleNumericField(vcl::Window* pParent, WinBits nStyle); virtual ~DoubleNumericField() override; - virtual void dispose() override; private: virtual bool CheckText(const OUString& sText) const override; @@ -271,7 +266,7 @@ private: virtual void FormatChanged(FORMAT_CHANGE_TYPE nWhat) override; void ResetConformanceTester(); - validation::NumberValidator* m_pNumberValidator; + std::unique_ptr<validation::NumberValidator> m_pNumberValidator; }; diff --git a/svtools/source/control/fmtfield.cxx b/svtools/source/control/fmtfield.cxx index 3b47e08c938b..20770f95569b 100644 --- a/svtools/source/control/fmtfield.cxx +++ b/svtools/source/control/fmtfield.cxx @@ -1007,16 +1007,13 @@ void FormattedField::UseInputStringForFormatting() } -DoubleNumericField::~DoubleNumericField() +DoubleNumericField::DoubleNumericField(vcl::Window* pParent, WinBits nStyle) + : FormattedField(pParent, nStyle) { - disposeOnce(); + ResetConformanceTester(); } -void DoubleNumericField::dispose() -{ - delete m_pNumberValidator; - FormattedField::dispose(); -} +DoubleNumericField::~DoubleNumericField() = default; void DoubleNumericField::FormatChanged(FORMAT_CHANGE_TYPE nWhat) { @@ -1052,8 +1049,7 @@ void DoubleNumericField::ResetConformanceTester() cSeparatorDecimal = sSeparator[0]; } - delete m_pNumberValidator; - m_pNumberValidator = new validation::NumberValidator( cSeparatorThousand, cSeparatorDecimal ); + m_pNumberValidator.reset(new validation::NumberValidator( cSeparatorThousand, cSeparatorDecimal )); } DoubleCurrencyField::DoubleCurrencyField(vcl::Window* pParent, WinBits nStyle) _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits