summaryrefslogtreecommitdiff
path: root/starmath
diff options
context:
space:
mode:
authorTakeshi Abe <tabe@fixedpoint.jp>2015-03-15 01:35:35 +0900
committerNoel Grandin <noelgrandin@gmail.com>2015-03-16 06:59:42 +0000
commit6492b83c2149419cf2c0012f64d91017f5844f5f (patch)
tree9c2eb58139d5b96603512f3421df29989f05bc77 /starmath
parentfc2b4401b758816275e77ab20a10560ce1a615de (diff)
use std::unique_ptr for Sm*Dialog
Change-Id: I676ed68108cafe8bb0e67eb208f08a0bc91be5c6 Reviewed-on: https://gerrit.libreoffice.org/14874 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
Diffstat (limited to 'starmath')
-rw-r--r--starmath/inc/dialog.hxx5
-rw-r--r--starmath/source/dialog.cxx24
2 files changed, 11 insertions, 18 deletions
diff --git a/starmath/inc/dialog.hxx b/starmath/inc/dialog.hxx
index 0f8fd6bc20b7..bddec2d746e8 100644
--- a/starmath/inc/dialog.hxx
+++ b/starmath/inc/dialog.hxx
@@ -39,6 +39,7 @@
#include "utility.hxx"
#include "format.hxx"
#include "symbol.hxx"
+#include <memory>
class SubsetMap;
#define CATEGORY_NONE 0xFFFF
@@ -408,9 +409,9 @@ class SmSymDefineDialog : public ModalDialog
SmSymbolManager aSymbolMgrCopy,
&rSymbolMgr;
- const SmSym *pOrigSymbol;
+ std::unique_ptr<SmSym> pOrigSymbol;
- const SubsetMap *pSubsetMap;
+ std::unique_ptr<SubsetMap> pSubsetMap;
FontList *pFontList;
DECL_LINK(OldSymbolChangeHdl, ComboBox *);
diff --git a/starmath/source/dialog.cxx b/starmath/source/dialog.cxx
index a5f59e0dd6a9..a656db854430 100644
--- a/starmath/source/dialog.cxx
+++ b/starmath/source/dialog.cxx
@@ -496,12 +496,11 @@ IMPL_LINK( SmFontTypeDialog, MenuSelectHdl, Menu *, pMenu )
if (pActiveListBox)
{
- SmFontDialog *pFontDialog = new SmFontDialog(this, pFontListDev, bHideCheckboxes);
+ std::unique_ptr<SmFontDialog> pFontDialog(new SmFontDialog(this, pFontListDev, bHideCheckboxes));
pActiveListBox->WriteTo(*pFontDialog);
if (pFontDialog->Execute() == RET_OK)
pActiveListBox->ReadFrom(*pFontDialog);
- delete pFontDialog;
}
return 0;
}
@@ -1380,7 +1379,7 @@ IMPL_LINK_NOARG( SmSymbolDialog, SymbolChangeHdl )
IMPL_LINK_NOARG(SmSymbolDialog, EditClickHdl)
{
- SmSymDefineDialog *pDialog = new SmSymDefineDialog(this, pFontListDev, rSymbolMgr);
+ std::unique_ptr<SmSymDefineDialog> pDialog(new SmSymDefineDialog(this, pFontListDev, rSymbolMgr));
// set current symbol and SymbolSet for the new dialog
const OUString aSymSetName (m_pSymbolSets->GetSelectEntry()),
@@ -1417,7 +1416,6 @@ IMPL_LINK_NOARG(SmSymbolDialog, EditClickHdl)
nSymPos = static_cast< sal_uInt16 >(aSymbolSet.size()) - 1;
SelectSymbol( nSymPos );
- delete pDialog;
return 0;
}
@@ -1959,7 +1957,7 @@ void SmSymDefineDialog::UpdateButtons()
bAdd = aSymbolMgrCopy.GetSymbolByName(aTmpSymbolName) == NULL;
// only delete it if all settings are equal
- bDelete = pOrigSymbol != NULL;
+ bDelete = bool(pOrigSymbol);
// only change it if the old symbol exists and the new one is different
bChange = pOrigSymbol && !bEqual;
@@ -1974,7 +1972,8 @@ SmSymDefineDialog::SmSymDefineDialog(vcl::Window * pParent,
OutputDevice *pFntListDevice, SmSymbolManager &rMgr) :
ModalDialog (pParent, "EditSymbols", "modules/smath/ui/symdefinedialog.ui"),
rSymbolMgr (rMgr),
- pSubsetMap (NULL),
+ pOrigSymbol (),
+ pSubsetMap (),
pFontList (NULL)
{
get(pOldSymbols, "oldSymbols");
@@ -1997,8 +1996,6 @@ SmSymDefineDialog::SmSymDefineDialog(vcl::Window * pParent,
pFontList = new FontList( pFntListDevice );
- pOrigSymbol = 0;
-
// auto completion is troublesome since that symbols character also gets automatically selected in the
// display and if the user previously selected a character to define/redefine that one this is bad
pOldSymbols->EnableAutocomplete( false, true );
@@ -2035,8 +2032,6 @@ SmSymDefineDialog::SmSymDefineDialog(vcl::Window * pParent,
SmSymDefineDialog::~SmSymDefineDialog()
{
- delete pSubsetMap;
- delete pOrigSymbol;
}
void SmSymDefineDialog::InitColor_Impl()
@@ -2168,15 +2163,14 @@ void SmSymDefineDialog::SetOrigSymbol(const SmSym *pSymbol,
const OUString &rSymbolSetName)
{
// clear old symbol
- delete pOrigSymbol;
- pOrigSymbol = 0;
+ pOrigSymbol.reset();
OUString aSymName,
aSymSetName;
if (pSymbol)
{
// set new symbol
- pOrigSymbol = new SmSym( *pSymbol );
+ pOrigSymbol.reset(new SmSym( *pSymbol ));
aSymName = pSymbol->GetName();
aSymSetName = rSymbolSetName;
@@ -2279,9 +2273,7 @@ void SmSymDefineDialog::SetFont(const OUString &rFontName, const OUString &rStyl
// update subset listbox for new font's unicode subsets
FontCharMapPtr pFontCharMap;
pCharsetDisplay->GetFontCharMap( pFontCharMap );
- if (pSubsetMap)
- delete pSubsetMap;
- pSubsetMap = new SubsetMap( pFontCharMap );
+ pSubsetMap.reset(new SubsetMap( pFontCharMap ));
pFontsSubsetLB->Clear();
bool bFirst = true;