summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2018-04-23 09:04:04 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2018-04-24 08:21:24 +0200
commita11b9c00b84474e1e37fa8abdfd50df87a674cf1 (patch)
tree7ebcac2ba6744dcf7b3377d9c61333d62888bdda
parent6325d571cae03357ea13354deea9df279377c730 (diff)
loplugin:useuniqueptr in Edit
Change-Id: Ia73a8d5be15dde1bc04a7acfdbc5712d7a77b59d Reviewed-on: https://gerrit.libreoffice.org/53342 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r--include/vcl/edit.hxx6
-rw-r--r--vcl/source/control/edit.cxx32
2 files changed, 14 insertions, 24 deletions
diff --git a/include/vcl/edit.hxx b/include/vcl/edit.hxx
index a29a0f21ec33..0d353c379f35 100644
--- a/include/vcl/edit.hxx
+++ b/include/vcl/edit.hxx
@@ -71,10 +71,10 @@ class VCL_DLLPUBLIC Edit : public Control, public vcl::unohelper::DragAndDropCli
{
private:
VclPtr<Edit> mpSubEdit;
- Timer* mpUpdateDataTimer;
+ std::unique_ptr<Timer> mpUpdateDataTimer;
TextFilter* mpFilterText;
- DDInfo* mpDDInfo;
- Impl_IMEInfos* mpIMEInfos;
+ std::unique_ptr<DDInfo> mpDDInfo;
+ std::unique_ptr<Impl_IMEInfos> mpIMEInfos;
OUStringBuffer maText;
OUString maPlaceholderText;
OUString maSaveValue;
diff --git a/vcl/source/control/edit.cxx b/vcl/source/control/edit.cxx
index a1671d70bb59..2effdcd3594a 100644
--- a/vcl/source/control/edit.cxx
+++ b/vcl/source/control/edit.cxx
@@ -227,9 +227,7 @@ Edit::~Edit()
void Edit::dispose()
{
mpUIBuilder.reset();
-
- delete mpDDInfo;
- mpDDInfo = nullptr;
+ mpDDInfo.reset();
vcl::Cursor* pCursor = GetCursor();
if ( pCursor )
@@ -238,11 +236,8 @@ void Edit::dispose()
delete pCursor;
}
- delete mpIMEInfos;
- mpIMEInfos = nullptr;
-
- delete mpUpdateDataTimer;
- mpUpdateDataTimer = nullptr;
+ mpIMEInfos.reset();
+ mpUpdateDataTimer.reset();
if ( mxDnDListener.is() )
{
@@ -2039,16 +2034,14 @@ void Edit::Command( const CommandEvent& rCEvt )
else if ( rCEvt.GetCommand() == CommandEventId::StartExtTextInput )
{
DeleteSelected();
- delete mpIMEInfos;
sal_Int32 nPos = static_cast<sal_Int32>(maSelection.Max());
- mpIMEInfos = new Impl_IMEInfos( nPos, OUString(maText.getStr() + nPos ) );
+ mpIMEInfos.reset(new Impl_IMEInfos( nPos, OUString(maText.getStr() + nPos ) ));
mpIMEInfos->bWasCursorOverwrite = !IsInsertMode();
}
else if ( rCEvt.GetCommand() == CommandEventId::EndExtTextInput )
{
bool bInsertMode = !mpIMEInfos->bWasCursorOverwrite;
- delete mpIMEInfos;
- mpIMEInfos = nullptr;
+ mpIMEInfos.reset();
SetInsertMode(bInsertMode);
ImplModified();
@@ -2390,7 +2383,7 @@ void Edit::EnableUpdateData( sal_uLong nTimeout )
{
if ( !mpUpdateDataTimer )
{
- mpUpdateDataTimer = new Timer("UpdateDataTimer");
+ mpUpdateDataTimer.reset(new Timer("UpdateDataTimer"));
mpUpdateDataTimer->SetInvokeHandler( LINK( this, Edit, ImplUpdateDataHdl ) );
mpUpdateDataTimer->SetDebugName( "vcl::Edit mpUpdateDataTimer" );
}
@@ -2401,8 +2394,7 @@ void Edit::EnableUpdateData( sal_uLong nTimeout )
void Edit::DisableUpdateData()
{
- delete mpUpdateDataTimer;
- mpUpdateDataTimer = nullptr;
+ mpUpdateDataTimer.reset();
}
void Edit::SetEchoChar( sal_Unicode c )
@@ -2830,7 +2822,7 @@ void Edit::dragGestureRecognized( const css::datatransfer::dnd::DragGestureEvent
if ( (nCharPos >= aSel.Min()) && (nCharPos < aSel.Max()) )
{
if ( !mpDDInfo )
- mpDDInfo = new DDInfo;
+ mpDDInfo.reset(new DDInfo);
mpDDInfo->bStarterOfDD = true;
mpDDInfo->aDndStartSel = aSel;
@@ -2872,8 +2864,7 @@ void Edit::dragDropEnd( const css::datatransfer::dnd::DragSourceDropEvent& rDSDE
}
ImplHideDDCursor();
- delete mpDDInfo;
- mpDDInfo = nullptr;
+ mpDDInfo.reset();
}
// css::datatransfer::dnd::XDropTargetListener
@@ -2916,8 +2907,7 @@ void Edit::drop( const css::datatransfer::dnd::DropTargetDropEvent& rDTDE )
if ( !mpDDInfo->bStarterOfDD )
{
- delete mpDDInfo;
- mpDDInfo = nullptr;
+ mpDDInfo.reset();
}
}
@@ -2928,7 +2918,7 @@ void Edit::dragEnter( const css::datatransfer::dnd::DropTargetDragEnterEvent& rD
{
if ( !mpDDInfo )
{
- mpDDInfo = new DDInfo;
+ mpDDInfo.reset(new DDInfo);
}
// search for string data type
const Sequence< css::datatransfer::DataFlavor >& rFlavors( rDTDE.SupportedDataFlavors );