Mark overriding BitmapCanvasBase class template member funs as SAL_OVERRIDE

...which reveals that SpriteCanvasBase is not derived from XBitmapCanvas, so
split up BitmapCanvasBase (just XBitmap) and BitmapCanvasBase2 (plus
XBitmapCanvas) and make IntegerBitmapBase directly abstract over those two as
arguments.

Change-Id: Ieae87fe466bb9f1a861c8a95162ef25235ae5799
Mark overriding IntegerBitmapBase class template member funs as SAL_OVERRIDE

Change-Id: I484ef5c4b31122605287b8e1a5f33108f7b22ea2
Mark overriding SpriteCanvasBase class template member funs as SAL_OVERRIDE

Change-Id: Ie01ae7e29f22fbb2f627a9c671f48bb1c19c5f56
Mark overriding DisambiguationHelper class template mem funs as SAL_OVERRIDE

...which reveals that some uses are not derived from XEventListener, so re-
introduce BaseMutexHelper as an alternative (which originally got superseded by
DisambiguationHelper in 09b546cf9c1d0d9f78066e70a0348c7678cdcb14 "Fix
overloaded-virtual warning in canvas").

Change-Id: I1418370733b72526ec481b70fa69f03e7c28b7ce
Mark overriding GraphicDeviceBase class template member funs as SAL_OVERRIDE

Change-Id: Idfac26bb0f436799c3431062238e46b1a50d9f14
Mark overriding BufferedGraphicDeviceBase class templ mem funs as SAL_OVERRIDE

Change-Id: I707fea8100c686ab8232eaf6e4d9a348abdb5236
Mark overriding CanvasCustomSpriteBase class template mem funs as SAL_OVERRIDE

Change-Id: I6c64d1b1caae27a1e1eac3a743aec078bc652d96
Mark overriding OwnServiceImpl class template member functions as SAL_OVERRIDE

Change-Id: I767c60733b39de02935de8be8dd9d3e351a38cab
No need for isKindOf to be SAL_CALL

Change-Id: Ia58af7d32904de01fdb5291203938c748cae94c6
loplugin:literaltoboolconversion

Change-Id: I513aeeabbb4d6fc48b6a95e034c311a454dd5ca7
No need for Invocation_Impl::setMaterial to be virtual

Change-Id: I5f78d97bcd55c0db71d7c5e3383678586c2cf392
Remove unused HelpCloseListener

Change-Id: I9040a1262b31f8d0f19594b6efcf12b2c38be7be
coverity#1158232 Fix ownership of NamedDBs::insert argument

f70d03436b7b501e0ed1d745935a204b9b97b855 "coverity#1158232 have a stab at
silencing warning with function markup" claimed that NamedDBs::insert always
takes ownerhip of its argument, but boost::ptr_set::insert(std::auto_ptr<U> x)
simply calls insert(x.release()), so only takes ownership when it returns true.

ScDBDocFunc::AddDBRange (sc/source/ui/docshell/dbdocfun.cxx) relies on this
behavior, deleting the argument when insert failed.

ScDBDocFunc::RenameDBRange (sc/source/ui/docshell/dbdocfun.cxx) relied on this
behavior, deleting the argument when insert failed, until
f55cc330dec0dec60c755e2ce28a840c7fca1956 "Fixed the fallout of the changes in
ScDBCollection" removed the delete (presumably in error?).  I put it back in
now.

All other uses of NamedDBs::insert ignored the return value (witnessed with
SAL_WARN_UNUSED_RESULT).  Some are insert-if-not-found cases, where I added
asserts now (Sc10Import::LoadDataBaseCollection,
sc/source/filter/starcalc/scflt.cxx, is not entirely clear to me, so I added a
TODO), while others would have potentially leaked the argument, in which cases I
fixed the code.

Change-Id: Iad40fbeb625c8ce6b0a61cbf16298d71cdc7de80