summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Grandin <noel@peralex.com>2015-09-08 09:54:16 +0200
committerNoel Grandin <noel@peralex.com>2015-09-09 10:06:11 +0200
commit5906a2a6380dc8f748a3c6f4fa0778e237abdff2 (patch)
tree0c3f41c74e68229b1633973d25e96a8896d6e450
parent7a39ae04220d70caef0335ed47452b36cd2e98c7 (diff)
convert Link<> to typed
Change-Id: I184d836e944d6dcfd17233a7a83680f1c1bff9bf
-rw-r--r--basctl/source/dlged/dlgedfac.cxx4
-rw-r--r--basctl/source/inc/dlgedfac.hxx2
-rw-r--r--include/svx/fmobjfac.hxx2
-rw-r--r--include/svx/galmisc.hxx8
-rw-r--r--include/svx/objfac3d.hxx2
-rw-r--r--include/svx/svdetc.hxx13
-rw-r--r--include/svx/svdobj.hxx12
-rw-r--r--reportdesign/source/ui/inc/dlgedfac.hxx2
-rw-r--r--reportdesign/source/ui/report/dlgedfac.cxx6
-rw-r--r--sc/inc/userdat.hxx2
-rw-r--r--sc/source/core/data/userdat.cxx5
-rw-r--r--sd/inc/sdobjfac.hxx2
-rw-r--r--sd/source/core/sdobjfac.cxx6
-rw-r--r--svx/source/engine3d/objfac3d.cxx4
-rw-r--r--svx/source/form/fmobjfac.cxx6
-rw-r--r--svx/source/gallery2/galmisc.cxx6
-rw-r--r--svx/source/svdraw/svdetc.cxx16
-rw-r--r--svx/source/svdraw/svdobj.cxx10
-rw-r--r--sw/inc/dobjfac.hxx2
-rw-r--r--sw/source/core/draw/dobjfac.cxx5
20 files changed, 47 insertions, 68 deletions
diff --git a/basctl/source/dlged/dlgedfac.cxx b/basctl/source/dlged/dlgedfac.cxx
index 0d60dc0be7ed..b53572f83eeb 100644
--- a/basctl/source/dlged/dlgedfac.cxx
+++ b/basctl/source/dlged/dlgedfac.cxx
@@ -43,7 +43,7 @@ DlgEdFactory::~DlgEdFactory()
}
-IMPL_LINK( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
+IMPL_LINK_TYPED( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory, void )
{
static bool bNeedsInit = true;
static uno::Reference< lang::XMultiServiceFactory > xDialogSFact;
@@ -235,8 +235,6 @@ IMPL_LINK( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
break;
}
}
-
- return 0;
}
} // namespace basctl
diff --git a/basctl/source/inc/dlgedfac.hxx b/basctl/source/inc/dlgedfac.hxx
index 13656a86e6ee..d9079d9911ca 100644
--- a/basctl/source/inc/dlgedfac.hxx
+++ b/basctl/source/inc/dlgedfac.hxx
@@ -38,7 +38,7 @@ public:
DlgEdFactory( const css::uno::Reference< css::frame::XModel >& xModel );
~DlgEdFactory();
- DECL_LINK( MakeObject, SdrObjFactory * );
+ DECL_LINK_TYPED( MakeObject, SdrObjFactory *, void );
};
} // namespace basctl
diff --git a/include/svx/fmobjfac.hxx b/include/svx/fmobjfac.hxx
index 81b880102f10..c5eac5e51182 100644
--- a/include/svx/fmobjfac.hxx
+++ b/include/svx/fmobjfac.hxx
@@ -31,7 +31,7 @@ public:
FmFormObjFactory();
~FmFormObjFactory();
- DECL_STATIC_LINK(FmFormObjFactory, MakeObject, SdrObjFactory*);
+ DECL_STATIC_LINK_TYPED(FmFormObjFactory, MakeObject, SdrObjFactory*, void);
};
#endif // _FM_FMOBJFAC_HXX
diff --git a/include/svx/galmisc.hxx b/include/svx/galmisc.hxx
index dce7dfa6b80a..56ff7d31afc1 100644
--- a/include/svx/galmisc.hxx
+++ b/include/svx/galmisc.hxx
@@ -64,8 +64,6 @@ enum SgaObjKind
#define IV_IMAPINFO (sal_uInt32('S')*0x00000001+sal_uInt32('D')*0x00000100+sal_uInt32('U')*0x00010000+sal_uInt32('D')*0x01000000)
#define ID_IMAPINFO 2
-#define USERDATA_HDL() (LINK(this,SgaUserDataFactory,MakeUserData))
-
#define GAL_RES(nId) ResId(nId, *GetGalleryResMgr())
#define GAL_RESSTR(nId) GAL_RES(nId).toString()
#define STREAMBUF_SIZE 16384L
@@ -129,10 +127,10 @@ public:
class SgaUserDataFactory
{
public:
- SgaUserDataFactory() { SdrObjFactory::InsertMakeUserDataHdl( USERDATA_HDL() ); }
- ~SgaUserDataFactory() { SdrObjFactory::RemoveMakeUserDataHdl( USERDATA_HDL() ); }
+ SgaUserDataFactory() { SdrObjFactory::InsertMakeUserDataHdl( LINK(this,SgaUserDataFactory,MakeUserData) ); }
+ ~SgaUserDataFactory() { SdrObjFactory::RemoveMakeUserDataHdl( LINK(this,SgaUserDataFactory,MakeUserData) ); }
- DECL_STATIC_LINK( SgaUserDataFactory, MakeUserData, SdrObjFactory* );
+ DECL_STATIC_LINK_TYPED( SgaUserDataFactory, MakeUserData, SdrObjFactory*, void );
};
class GraphicFilter;
diff --git a/include/svx/objfac3d.hxx b/include/svx/objfac3d.hxx
index 734dc529cefd..5b625f91dd32 100644
--- a/include/svx/objfac3d.hxx
+++ b/include/svx/objfac3d.hxx
@@ -40,7 +40,7 @@ public:
E3dObjFactory();
~E3dObjFactory();
- DECL_STATIC_LINK(E3dObjFactory, MakeObject, SdrObjFactory*);
+ DECL_STATIC_LINK_TYPED(E3dObjFactory, MakeObject, SdrObjFactory*, void);
};
diff --git a/include/svx/svdetc.hxx b/include/svx/svdetc.hxx
index d69ea2a1146f..822a9be3e00f 100644
--- a/include/svx/svdetc.hxx
+++ b/include/svx/svdetc.hxx
@@ -173,21 +173,22 @@ public:
};
+class SdrObjFactory;
class SdrLinkList
{
- std::vector<Link<>*> aList;
+ std::vector<Link<SdrObjFactory*,void> > aList;
protected:
- unsigned FindEntry(const Link<>& rLink) const;
+ unsigned FindEntry(const Link<SdrObjFactory*,void>& rLink) const;
public:
SdrLinkList(): aList() {}
~SdrLinkList() { Clear(); }
SVX_DLLPUBLIC void Clear();
unsigned GetLinkCount() const { return (unsigned)aList.size(); }
- Link<>& GetLink(unsigned nNum) { return *aList[nNum]; }
- const Link<>& GetLink(unsigned nNum) const { return *aList[nNum]; }
- void InsertLink(const Link<>& rLink, unsigned nPos=0xFFFF);
- void RemoveLink(const Link<>& rLink);
+ Link<SdrObjFactory*,void>& GetLink(unsigned nNum) { return aList[nNum]; }
+ const Link<SdrObjFactory*,void>& GetLink(unsigned nNum) const { return aList[nNum]; }
+ void InsertLink(const Link<SdrObjFactory*,void>& rLink, unsigned nPos=0xFFFF);
+ void RemoveLink(const Link<SdrObjFactory*,void>& rLink);
};
SdrLinkList& ImpGetUserMakeObjHdl();
diff --git a/include/svx/svdobj.hxx b/include/svx/svdobj.hxx
index 830cfed95246..50bec71e3ecd 100644
--- a/include/svx/svdobj.hxx
+++ b/include/svx/svdobj.hxx
@@ -992,8 +992,8 @@ private:
class SVX_DLLPUBLIC SdrObjFactory
{
public:
- sal_uInt32 nInventor;
- sal_uInt16 nIdentifier;
+ sal_uInt32 nInventor;
+ sal_uInt16 nIdentifier;
// for MakeNewObj():
SdrPage* pPage;
@@ -1014,10 +1014,10 @@ private:
public:
static SdrObject* MakeNewObject(sal_uInt32 nInvent, sal_uInt16 nIdent, SdrPage* pPage, SdrModel* pModel=NULL);
static SdrObject* MakeNewObject( sal_uInt32 nInventor, sal_uInt16 nIdentifier, const Rectangle& rSnapRect, SdrPage* pPage );
- static void InsertMakeObjectHdl(const Link<>& rLink);
- static void RemoveMakeObjectHdl(const Link<>& rLink);
- static void InsertMakeUserDataHdl(const Link<>& rLink);
- static void RemoveMakeUserDataHdl(const Link<>& rLink);
+ static void InsertMakeObjectHdl(const Link<SdrObjFactory*,void>& rLink);
+ static void RemoveMakeObjectHdl(const Link<SdrObjFactory*,void>& rLink);
+ static void InsertMakeUserDataHdl(const Link<SdrObjFactory*,void>& rLink);
+ static void RemoveMakeUserDataHdl(const Link<SdrObjFactory*,void>& rLink);
};
typedef tools::WeakReference< SdrObject > SdrObjectWeakRef;
diff --git a/reportdesign/source/ui/inc/dlgedfac.hxx b/reportdesign/source/ui/inc/dlgedfac.hxx
index d9e6067fc38a..bdee50e2b2be 100644
--- a/reportdesign/source/ui/inc/dlgedfac.hxx
+++ b/reportdesign/source/ui/inc/dlgedfac.hxx
@@ -35,7 +35,7 @@ public:
DlgEdFactory();
~DlgEdFactory();
- DECL_STATIC_LINK( DlgEdFactory, MakeObject, SdrObjFactory * );
+ DECL_STATIC_LINK_TYPED( DlgEdFactory, MakeObject, SdrObjFactory *, void );
};
}
#endif // INCLUDED_REPORTDESIGN_SOURCE_UI_INC_DLGEDFAC_HXX
diff --git a/reportdesign/source/ui/report/dlgedfac.cxx b/reportdesign/source/ui/report/dlgedfac.cxx
index b9b4a02f0d5f..57d470256c8f 100644
--- a/reportdesign/source/ui/report/dlgedfac.cxx
+++ b/reportdesign/source/ui/report/dlgedfac.cxx
@@ -46,8 +46,8 @@ DlgEdFactory::~DlgEdFactory()
-IMPL_STATIC_LINK(
- DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
+IMPL_STATIC_LINK_TYPED(
+ DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory, void )
{
if ( pObjFactory->nInventor == ReportInventor )
{
@@ -96,8 +96,6 @@ IMPL_STATIC_LINK(
break;
}
}
-
- return 0;
}
}
diff --git a/sc/inc/userdat.hxx b/sc/inc/userdat.hxx
index c01cbf57be89..86e5a7af5a6b 100644
--- a/sc/inc/userdat.hxx
+++ b/sc/inc/userdat.hxx
@@ -35,7 +35,7 @@
class ScDrawObjFactory
{
- DECL_STATIC_LINK( ScDrawObjFactory, MakeUserData, SdrObjFactory * );
+ DECL_STATIC_LINK_TYPED( ScDrawObjFactory, MakeUserData, SdrObjFactory *, void );
public:
ScDrawObjFactory();
~ScDrawObjFactory();
diff --git a/sc/source/core/data/userdat.cxx b/sc/source/core/data/userdat.cxx
index 9cc9aeddec9d..d856e55d8768 100644
--- a/sc/source/core/data/userdat.cxx
+++ b/sc/source/core/data/userdat.cxx
@@ -31,8 +31,8 @@ ScDrawObjFactory::~ScDrawObjFactory()
SdrObjFactory::RemoveMakeUserDataHdl( LINK ( this, ScDrawObjFactory, MakeUserData ) );
}
-IMPL_STATIC_LINK(
- ScDrawObjFactory, MakeUserData, SdrObjFactory *, pObjFactory )
+IMPL_STATIC_LINK_TYPED(
+ ScDrawObjFactory, MakeUserData, SdrObjFactory *, pObjFactory, void )
{
if ( pObjFactory->nInventor == SC_DRAWLAYER )
{
@@ -47,7 +47,6 @@ IMPL_STATIC_LINK(
OSL_FAIL("MakeUserData: wrong ID");
}
}
- return 0;
}
ScDrawObjData::ScDrawObjData() :
diff --git a/sd/inc/sdobjfac.hxx b/sd/inc/sdobjfac.hxx
index cfca8b089f59..65e642a2410e 100644
--- a/sd/inc/sdobjfac.hxx
+++ b/sd/inc/sdobjfac.hxx
@@ -34,7 +34,7 @@ protected:
public:
SdObjectFactory() {}
- DECL_LINK( MakeUserData, SdrObjFactory * );
+ DECL_LINK_TYPED( MakeUserData, SdrObjFactory *, void );
};
extern SdObjectFactory aSdObjectFactory;
diff --git a/sd/source/core/sdobjfac.cxx b/sd/source/core/sdobjfac.cxx
index 90dbe551a17e..6a8b24d8dbe8 100644
--- a/sd/source/core/sdobjfac.cxx
+++ b/sd/source/core/sdobjfac.cxx
@@ -35,7 +35,7 @@ SdObjectFactory aSdObjectFactory;
|*
\************************************************************************/
-IMPL_LINK( SdObjectFactory, MakeUserData, SdrObjFactory *, pObjFactory )
+IMPL_LINK_TYPED( SdObjectFactory, MakeUserData, SdrObjFactory *, pObjFactory, void )
{
if ( pObjFactory->nInventor == SdUDInventor )
{
@@ -55,12 +55,10 @@ IMPL_LINK( SdObjectFactory, MakeUserData, SdrObjFactory *, pObjFactory )
}
if ( pObjFactory->pNewData )
- return 0;
+ return;
if( aOldMakeUserDataLink.IsSet() )
aOldMakeUserDataLink.Call( this );
-
- return 0;
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/source/engine3d/objfac3d.cxx b/svx/source/engine3d/objfac3d.cxx
index a494d897b4e7..197c77cd3739 100644
--- a/svx/source/engine3d/objfac3d.cxx
+++ b/svx/source/engine3d/objfac3d.cxx
@@ -45,8 +45,7 @@ E3dObjFactory::~E3dObjFactory()
// Generate chart internal objects
-IMPL_STATIC_LINK(
- E3dObjFactory, MakeObject, SdrObjFactory*, pObjFactory)
+IMPL_STATIC_LINK_TYPED( E3dObjFactory, MakeObject, SdrObjFactory*, pObjFactory, void )
{
if ( pObjFactory->nInventor == E3dInventor )
{
@@ -80,7 +79,6 @@ IMPL_STATIC_LINK(
break;
}
}
- return 0;
}
diff --git a/svx/source/form/fmobjfac.cxx b/svx/source/form/fmobjfac.cxx
index a5e370bc5d6f..894421729954 100644
--- a/svx/source/form/fmobjfac.cxx
+++ b/svx/source/form/fmobjfac.cxx
@@ -109,8 +109,8 @@ namespace
}
}
-IMPL_STATIC_LINK(
- FmFormObjFactory, MakeObject, SdrObjFactory*, pObjFactory)
+IMPL_STATIC_LINK_TYPED(
+ FmFormObjFactory, MakeObject, SdrObjFactory*, pObjFactory, void)
{
if (pObjFactory->nInventor == FmFormInventor)
{
@@ -232,8 +232,6 @@ IMPL_STATIC_LINK(
);
}
}
-
- return 0;
}
diff --git a/svx/source/gallery2/galmisc.cxx b/svx/source/gallery2/galmisc.cxx
index 368f955923e5..a602f8afe24b 100644
--- a/svx/source/gallery2/galmisc.cxx
+++ b/svx/source/gallery2/galmisc.cxx
@@ -76,13 +76,11 @@ BitmapEx GalleryResGetBitmapEx( sal_uInt32 nId )
return aBmpEx;
}
-IMPL_STATIC_LINK(
- SgaUserDataFactory, MakeUserData, SdrObjFactory*, pObjFactory )
+IMPL_STATIC_LINK_TYPED(
+ SgaUserDataFactory, MakeUserData, SdrObjFactory*, pObjFactory, void )
{
if ( pObjFactory->nInventor == IV_IMAPINFO && pObjFactory->nIdentifier == ID_IMAPINFO )
pObjFactory->pNewData = new SgaIMapInfo;
-
- return 0L;
}
GalleryGraphicImportRet GalleryGraphicImport( const INetURLObject& rURL, Graphic& rGraphic,
diff --git a/svx/source/svdraw/svdetc.cxx b/svx/source/svdraw/svdetc.cxx
index e69fe4b5ae6a..3227bf331889 100644
--- a/svx/source/svdraw/svdetc.cxx
+++ b/svx/source/svdraw/svdetc.cxx
@@ -260,14 +260,10 @@ IMPL_LINK_NOARG_TYPED(OLEObjCache, UnloadCheckHdl, Timer*, void)
void SdrLinkList::Clear()
{
- unsigned nAnz=GetLinkCount();
- for (unsigned i=0; i<nAnz; i++) {
- delete aList[i];
- }
aList.clear();
}
-unsigned SdrLinkList::FindEntry(const Link<>& rLink) const
+unsigned SdrLinkList::FindEntry(const Link<SdrObjFactory*,void>& rLink) const
{
unsigned nAnz=GetLinkCount();
for (unsigned i=0; i<nAnz; i++) {
@@ -276,15 +272,15 @@ unsigned SdrLinkList::FindEntry(const Link<>& rLink) const
return 0xFFFF;
}
-void SdrLinkList::InsertLink(const Link<>& rLink, unsigned nPos)
+void SdrLinkList::InsertLink(const Link<SdrObjFactory*,void>& rLink, unsigned nPos)
{
unsigned nFnd=FindEntry(rLink);
if (nFnd==0xFFFF) {
if (rLink.IsSet()) {
if(nPos==0xFFFF)
- aList.push_back(new Link<>(rLink));
+ aList.push_back(rLink);
else
- aList.insert(aList.begin() + nPos, new Link<>(rLink));
+ aList.insert(aList.begin() + nPos, rLink);
} else {
OSL_FAIL("SdrLinkList::InsertLink(): Tried to insert a link that was not set already.");
}
@@ -293,13 +289,11 @@ void SdrLinkList::InsertLink(const Link<>& rLink, unsigned nPos)
}
}
-void SdrLinkList::RemoveLink(const Link<>& rLink)
+void SdrLinkList::RemoveLink(const Link<SdrObjFactory*,void>& rLink)
{
unsigned nFnd=FindEntry(rLink);
if (nFnd!=0xFFFF) {
- Link<>* pLink = aList[nFnd];
aList.erase( aList.begin() + nFnd );
- delete pLink;
} else {
OSL_FAIL("SdrLinkList::RemoveLink(): Link not found.");
}
diff --git a/svx/source/svdraw/svdobj.cxx b/svx/source/svdraw/svdobj.cxx
index 42042d5b6832..6b8c00d23a42 100644
--- a/svx/source/svdraw/svdobj.cxx
+++ b/svx/source/svdraw/svdobj.cxx
@@ -3171,7 +3171,7 @@ SdrObject* SdrObjFactory::CreateObjectFromFactory( sal_uInt32 nInventor, sal_uIn
SdrObject* pObj = NULL;
while (i < n && !pObj)
{
- rLL.GetLink(i).Call(static_cast<void*>(pFact.get()));
+ rLL.GetLink(i).Call(pFact.get());
pObj = pFact->pNewObj;
i++;
}
@@ -3331,25 +3331,25 @@ SdrObject* SdrObjFactory::MakeNewObject(
return pObj;
}
-void SdrObjFactory::InsertMakeObjectHdl(const Link<>& rLink)
+void SdrObjFactory::InsertMakeObjectHdl(const Link<SdrObjFactory*,void>& rLink)
{
SdrLinkList& rLL=ImpGetUserMakeObjHdl();
rLL.InsertLink(rLink);
}
-void SdrObjFactory::RemoveMakeObjectHdl(const Link<>& rLink)
+void SdrObjFactory::RemoveMakeObjectHdl(const Link<SdrObjFactory*,void>& rLink)
{
SdrLinkList& rLL=ImpGetUserMakeObjHdl();
rLL.RemoveLink(rLink);
}
-void SdrObjFactory::InsertMakeUserDataHdl(const Link<>& rLink)
+void SdrObjFactory::InsertMakeUserDataHdl(const Link<SdrObjFactory*,void>& rLink)
{
SdrLinkList& rLL=ImpGetUserMakeObjUserDataHdl();
rLL.InsertLink(rLink);
}
-void SdrObjFactory::RemoveMakeUserDataHdl(const Link<>& rLink)
+void SdrObjFactory::RemoveMakeUserDataHdl(const Link<SdrObjFactory*,void>& rLink)
{
SdrLinkList& rLL=ImpGetUserMakeObjUserDataHdl();
rLL.RemoveLink(rLink);
diff --git a/sw/inc/dobjfac.hxx b/sw/inc/dobjfac.hxx
index 2ea3247c8e3d..52fb8bc6773d 100644
--- a/sw/inc/dobjfac.hxx
+++ b/sw/inc/dobjfac.hxx
@@ -26,7 +26,7 @@ class SdrObjFactory;
class SwObjectFactory
{
public:
- DECL_STATIC_LINK( SwObjectFactory, MakeObject, SdrObjFactory * );
+ DECL_STATIC_LINK_TYPED( SwObjectFactory, MakeObject, SdrObjFactory *, void );
};
extern SwObjectFactory aSwObjectFactory;
diff --git a/sw/source/core/draw/dobjfac.cxx b/sw/source/core/draw/dobjfac.cxx
index 9a870e946584..25d96fbe0d91 100644
--- a/sw/source/core/draw/dobjfac.cxx
+++ b/sw/source/core/draw/dobjfac.cxx
@@ -23,8 +23,8 @@
SwObjectFactory aSwObjectFactory;
-IMPL_STATIC_LINK(
- SwObjectFactory, MakeObject, SdrObjFactory*, pObjFactory )
+IMPL_STATIC_LINK_TYPED(
+ SwObjectFactory, MakeObject, SdrObjFactory*, pObjFactory, void )
{
if ( pObjFactory->nInventor == SWGInventor )
{
@@ -33,7 +33,6 @@ IMPL_STATIC_LINK(
"Wrong inventor or identifier" );
pObjFactory->pNewObj = new SwFlyDrawObj();
}
- return 0;
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */