summaryrefslogtreecommitdiff
path: root/sfx2/source/appl
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2015-04-30 10:20:00 +0200
committerStephan Bergmann <sbergman@redhat.com>2015-04-30 10:20:00 +0200
commit3ead3ad52f9bb2f9d1d6cf8dfc73a0a25e6778ed (patch)
treebdfd28afe5a452060e3d985c5f01b45f4b7bc2cd /sfx2/source/appl
parent57d254d42b6e1d836bd21e6fb2e968af2b511c7d (diff)
Gradually typed Link
Turn the Link class into a template abstracting over the link's argument and return types, but provide default template arguments that keep the generic, unsafe "void* in, sal_IntPtr out" behvior. That way, individual uses of the Link class can be updated over time. All the related macros are duplicated with ..._TYPED counterparts, that additionally take the RetType (except for LINK_TYPED, which manages to infer the relevant types from the supplied Member). (It would have been attractive to change the "untyped" LinkStubs from taking a void* to a properly typed ArgType parameter, too, but that would cause -fsanitize=function to flag uses of "untyped" Link::Call.) Change-Id: I3b0140378bad99abbf240140ebb4a46a05d2d2f8
Diffstat (limited to 'sfx2/source/appl')
-rw-r--r--sfx2/source/appl/fileobj.cxx6
-rw-r--r--sfx2/source/appl/fileobj.hxx4
-rw-r--r--sfx2/source/appl/helpinterceptor.hxx4
-rw-r--r--sfx2/source/appl/impldde.cxx2
-rw-r--r--sfx2/source/appl/impldde.hxx2
-rw-r--r--sfx2/source/appl/linksrc.cxx2
-rw-r--r--sfx2/source/appl/lnkbase2.cxx6
-rw-r--r--sfx2/source/appl/newhelp.cxx12
-rw-r--r--sfx2/source/appl/newhelp.hxx30
9 files changed, 34 insertions, 34 deletions
diff --git a/sfx2/source/appl/fileobj.cxx b/sfx2/source/appl/fileobj.cxx
index 278034ceee0c..deaedf5876f6 100644
--- a/sfx2/source/appl/fileobj.cxx
+++ b/sfx2/source/appl/fileobj.cxx
@@ -68,7 +68,7 @@ SvFileObject::~SvFileObject()
{
if (xMed.Is())
{
- xMed->SetDoneLink( Link() );
+ xMed->SetDoneLink( Link<>() );
xMed.Clear();
}
if (nPostUserEventId)
@@ -392,7 +392,7 @@ OUString impl_getFilter( const OUString& _rURL )
return sFilter;
}
-void SvFileObject::Edit( vcl::Window* pParent, sfx2::SvBaseLink* pLink, const Link& rEndEditHdl )
+void SvFileObject::Edit( vcl::Window* pParent, sfx2::SvBaseLink* pLink, const Link<>& rEndEditHdl )
{
aEndEditLink = rEndEditHdl;
OUString sFile, sRange, sTmpFilter;
@@ -485,7 +485,7 @@ IMPL_STATIC_LINK( SvFileObject, LoadGrfReady_Impl, void*, EMPTYARG )
pThis->bLoadAgain = true;
if( pThis->xMed.Is() )
{
- pThis->xMed->SetDoneLink( Link() );
+ pThis->xMed->SetDoneLink( Link<>() );
pThis->pDelMed = new SfxMediumRef(pThis->xMed);
pThis->nPostUserEventId = Application::PostUserEvent(
LINK( pThis, SvFileObject, DelMedium_Impl ),
diff --git a/sfx2/source/appl/fileobj.hxx b/sfx2/source/appl/fileobj.hxx
index 5e2a5fddfcc1..7e0c72bb56eb 100644
--- a/sfx2/source/appl/fileobj.hxx
+++ b/sfx2/source/appl/fileobj.hxx
@@ -31,7 +31,7 @@ class SvFileObject : public sfx2::SvLinkSource
OUString sFileNm;
OUString sFilter;
OUString sReferer;
- Link aEndEditLink;
+ Link<> aEndEditLink;
SfxMediumRef xMed;
ImplSVEvent* nPostUserEventId;
SfxMediumRef* pDelMed;
@@ -69,7 +69,7 @@ public:
bool bSynchron = false ) SAL_OVERRIDE;
virtual bool Connect( sfx2::SvBaseLink* ) SAL_OVERRIDE;
- virtual void Edit( vcl::Window *, sfx2::SvBaseLink *, const Link& rEndEditHdl ) SAL_OVERRIDE;
+ virtual void Edit( vcl::Window *, sfx2::SvBaseLink *, const Link<>& rEndEditHdl ) SAL_OVERRIDE;
// Ask whether you can access data directly or whether it has to be triggered
virtual bool IsPending() const SAL_OVERRIDE;
diff --git a/sfx2/source/appl/helpinterceptor.hxx b/sfx2/source/appl/helpinterceptor.hxx
index a990518bc7a4..f5ce4bb9d1ac 100644
--- a/sfx2/source/appl/helpinterceptor.hxx
+++ b/sfx2/source/appl/helpinterceptor.hxx
@@ -120,7 +120,7 @@ class HelpListener_Impl : public ::cppu::WeakImplHelper1< ::com::sun::star::fram
{
private:
HelpInterceptor_Impl* pInterceptor;
- Link aChangeLink;
+ Link<> aChangeLink;
OUString aFactory;
public:
@@ -131,7 +131,7 @@ public:
virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& obj )
throw( ::com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE;
- void SetChangeHdl( const Link& rLink ) { aChangeLink = rLink; }
+ void SetChangeHdl( const Link<>& rLink ) { aChangeLink = rLink; }
OUString GetFactory() const { return aFactory; }
};
// HelpStatusListener_Impl -----------------------------------------------------
diff --git a/sfx2/source/appl/impldde.cxx b/sfx2/source/appl/impldde.cxx
index 110fe238dc9f..2d375fa22109 100644
--- a/sfx2/source/appl/impldde.cxx
+++ b/sfx2/source/appl/impldde.cxx
@@ -269,7 +269,7 @@ bool SvDDEObject::Connect( SvBaseLink * pSvLink )
return true;
}
-void SvDDEObject::Edit( vcl::Window* pParent, sfx2::SvBaseLink* pBaseLink, const Link& rEndEditHdl )
+void SvDDEObject::Edit( vcl::Window* pParent, sfx2::SvBaseLink* pBaseLink, const Link<>& rEndEditHdl )
{
ScopedVclPtrInstance< SvDDELinkEditDialog > aDlg(pParent, pBaseLink);
if ( RET_OK == aDlg->Execute() && rEndEditHdl.IsSet() )
diff --git a/sfx2/source/appl/impldde.hxx b/sfx2/source/appl/impldde.hxx
index 3ce245452b94..b6c66eadf966 100644
--- a/sfx2/source/appl/impldde.hxx
+++ b/sfx2/source/appl/impldde.hxx
@@ -59,7 +59,7 @@ public:
bool bSynchron = false ) SAL_OVERRIDE;
virtual bool Connect( SvBaseLink * ) SAL_OVERRIDE;
- virtual void Edit( vcl::Window* pParent, sfx2::SvBaseLink* pBaseLink, const Link& rEndEditHdl ) SAL_OVERRIDE;
+ virtual void Edit( vcl::Window* pParent, sfx2::SvBaseLink* pBaseLink, const Link<>& rEndEditHdl ) SAL_OVERRIDE;
virtual bool IsPending() const SAL_OVERRIDE;
virtual bool IsDataComplete() const SAL_OVERRIDE;
diff --git a/sfx2/source/appl/linksrc.cxx b/sfx2/source/appl/linksrc.cxx
index ecd06b3bc5b8..fb0dad6ff795 100644
--- a/sfx2/source/appl/linksrc.cxx
+++ b/sfx2/source/appl/linksrc.cxx
@@ -435,7 +435,7 @@ bool SvLinkSource::GetData( ::com::sun::star::uno::Any &, const OUString &, bool
return false;
}
-void SvLinkSource::Edit( vcl::Window *, SvBaseLink *, const Link& )
+void SvLinkSource::Edit( vcl::Window *, SvBaseLink *, const Link<>& )
{
}
diff --git a/sfx2/source/appl/lnkbase2.cxx b/sfx2/source/appl/lnkbase2.cxx
index 8834962b8762..3c899b35c91e 100644
--- a/sfx2/source/appl/lnkbase2.cxx
+++ b/sfx2/source/appl/lnkbase2.cxx
@@ -44,7 +44,7 @@ class ImplDdeItem;
struct BaseLink_Impl
{
- Link m_aEndEditLink;
+ Link<> m_aEndEditLink;
LinkManager* m_pLinkMgr;
VclPtr<vcl::Window> m_pParentWin;
FileDialogHelper* m_pFileDlg;
@@ -475,7 +475,7 @@ SvBaseLink::UpdateResult SvBaseLink::DataChanged( const OUString &, const ::com:
return SUCCESS;
}
-void SvBaseLink::Edit( vcl::Window* pParent, const Link& rEndEditHdl )
+void SvBaseLink::Edit( vcl::Window* pParent, const Link<>& rEndEditHdl )
{
pImpl->m_pParentWin = pParent;
pImpl->m_aEndEditLink = rEndEditHdl;
@@ -484,7 +484,7 @@ void SvBaseLink::Edit( vcl::Window* pParent, const Link& rEndEditHdl )
_GetRealObject( xObj.Is() );
bool bAsync = false;
- Link aLink = LINK( this, SvBaseLink, EndEditHdl );
+ Link<> aLink = LINK( this, SvBaseLink, EndEditHdl );
if( OBJECT_CLIENT_SO & nObjType && pImplData->ClientType.bIntrnlLnk )
{
diff --git a/sfx2/source/appl/newhelp.cxx b/sfx2/source/appl/newhelp.cxx
index 25a45ce97baf..a1e8f4ccdb1e 100644
--- a/sfx2/source/appl/newhelp.cxx
+++ b/sfx2/source/appl/newhelp.cxx
@@ -565,7 +565,7 @@ IndexTabPage_Impl::IndexTabPage_Impl(vcl::Window* pParent, SfxHelpIndexWindow_Im
get(m_pOpenBtn, "display");
m_pOpenBtn->SetClickHdl( LINK( this, IndexTabPage_Impl, OpenHdl ) );
- Link aTimeoutLink = LINK( this, IndexTabPage_Impl, TimeoutHdl );
+ Link<> aTimeoutLink = LINK( this, IndexTabPage_Impl, TimeoutHdl );
aFactoryIdle.SetIdleHdl( LINK(this, IndexTabPage_Impl, IdleHdl ));
aFactoryIdle.SetPriority(SchedulerPriority::LOWER);
aKeywordTimer.SetTimeoutHdl( aTimeoutLink );
@@ -774,7 +774,7 @@ Control* IndexTabPage_Impl::GetLastFocusControl()
return m_pOpenBtn;
}
-void IndexTabPage_Impl::SetDoubleClickHdl( const Link& rLink )
+void IndexTabPage_Impl::SetDoubleClickHdl( const Link<>& rLink )
{
m_pIndexCB->SetDoubleClickHdl( rLink );
}
@@ -950,7 +950,7 @@ SearchTabPage_Impl::SearchTabPage_Impl(vcl::Window* pParent, SfxHelpIndexWindow_
m_pResultsLB->set_height_request(aSize.Height());
get(m_pOpenBtn, "display");
- Link aLink = LINK( this, SearchTabPage_Impl, SearchHdl );
+ Link<> aLink = LINK( this, SearchTabPage_Impl, SearchHdl );
m_pSearchED->SetSearchLink( aLink );
m_pSearchBtn->SetClickHdl(aLink);
m_pSearchED->SetModifyHdl( LINK( this, SearchTabPage_Impl, ModifyHdl ) );
@@ -1110,7 +1110,7 @@ Control* SearchTabPage_Impl::GetLastFocusControl()
return m_pOpenBtn;
}
-void SearchTabPage_Impl::SetDoubleClickHdl( const Link& rLink )
+void SearchTabPage_Impl::SetDoubleClickHdl( const Link<>& rLink )
{
m_pResultsLB->SetDoubleClickHdl( rLink );
}
@@ -1356,7 +1356,7 @@ Control* BookmarksTabPage_Impl::GetLastFocusControl()
return m_pBookmarksPB;
}
-void BookmarksTabPage_Impl::SetDoubleClickHdl( const Link& rLink )
+void BookmarksTabPage_Impl::SetDoubleClickHdl( const Link<>& rLink )
{
m_pBookmarksBox->SetDoubleClickHdl(rLink);
}
@@ -1734,7 +1734,7 @@ void SfxHelpIndexWindow_Impl::DataChanged( const DataChangedEvent& rDCEvt )
-void SfxHelpIndexWindow_Impl::SetDoubleClickHdl( const Link& rLink )
+void SfxHelpIndexWindow_Impl::SetDoubleClickHdl( const Link<>& rLink )
{
aPageDoubleClickLink = rLink;
if ( pCPage )
diff --git a/sfx2/source/appl/newhelp.hxx b/sfx2/source/appl/newhelp.hxx
index add82d178f9b..bf87d9226c96 100644
--- a/sfx2/source/appl/newhelp.hxx
+++ b/sfx2/source/appl/newhelp.hxx
@@ -65,7 +65,7 @@ public:
virtual void RequestingChildren( SvTreeListEntry* pParent ) SAL_OVERRIDE;
virtual bool Notify( NotifyEvent& rNEvt ) SAL_OVERRIDE;
- inline void SetOpenHdl( const Link& rLink ) { SetDoubleClickHdl( rLink ); }
+ inline void SetOpenHdl( const Link<>& rLink ) { SetDoubleClickHdl( rLink ); }
OUString GetSelectEntry() const;
};
@@ -102,7 +102,7 @@ public:
virtual void ActivatePage() SAL_OVERRIDE;
virtual Control* GetLastFocusControl() SAL_OVERRIDE;
- void SetOpenHdl( const Link& rLink ) { m_pContentBox->SetOpenHdl( rLink ); }
+ void SetOpenHdl( const Link<>& rLink ) { m_pContentBox->SetOpenHdl( rLink ); }
OUString GetSelectEntry() const { return m_pContentBox->GetSelectEntry(); }
void SetFocusOnBox() { m_pContentBox->GrabFocus(); }
};
@@ -128,7 +128,7 @@ private:
Idle aFactoryIdle;
Timer aKeywordTimer;
- Link aKeywordLink;
+ Link<> aKeywordLink;
OUString sFactory;
OUString sKeyword;
@@ -150,14 +150,14 @@ public:
virtual void ActivatePage() SAL_OVERRIDE;
virtual Control* GetLastFocusControl() SAL_OVERRIDE;
- void SetDoubleClickHdl( const Link& rLink );
+ void SetDoubleClickHdl( const Link<>& rLink );
void SetFactory( const OUString& rFactory );
inline OUString GetFactory() const { return sFactory; }
OUString GetSelectEntry() const;
inline void SetFocusOnBox() { m_pIndexCB->GrabFocus(); }
inline bool HasFocusOnEdit() const { return m_pIndexCB->HasChildPathFocus(); }
- inline void SetKeywordHdl( const Link& rLink ) { aKeywordLink = rLink; }
+ inline void SetKeywordHdl( const Link<>& rLink ) { aKeywordLink = rLink; }
void SetKeyword( const OUString& rKeyword );
bool HasKeyword() const;
bool HasKeywordIgnoreCase();
@@ -171,7 +171,7 @@ public:
class SearchBox_Impl : public ComboBox
{
private:
- Link aSearchLink;
+ Link<> aSearchLink;
public:
SearchBox_Impl(vcl::Window* pParent, WinBits nStyle)
@@ -183,7 +183,7 @@ public:
virtual bool PreNotify( NotifyEvent& rNEvt ) SAL_OVERRIDE;
virtual void Select() SAL_OVERRIDE;
- inline void SetSearchLink( const Link& rLink ) { aSearchLink = rLink; }
+ inline void SetSearchLink( const Link<>& rLink ) { aSearchLink = rLink; }
};
class SearchResultsBox_Impl : public ListBox
@@ -227,7 +227,7 @@ public:
virtual void ActivatePage() SAL_OVERRIDE;
virtual Control* GetLastFocusControl() SAL_OVERRIDE;
- void SetDoubleClickHdl( const Link& rLink );
+ void SetDoubleClickHdl( const Link<>& rLink );
inline void SetFactory( const OUString& rFactory ) { aFactory = rFactory; }
OUString GetSelectEntry() const;
void ClearPage();
@@ -269,7 +269,7 @@ public:
virtual void ActivatePage() SAL_OVERRIDE;
virtual Control* GetLastFocusControl() SAL_OVERRIDE;
- void SetDoubleClickHdl( const Link& rLink );
+ void SetDoubleClickHdl( const Link<>& rLink );
OUString GetSelectEntry() const;
void AddBookmarks( const OUString& rTitle, const OUString& rURL );
void SetFocusOnBox() { m_pBookmarksBox->GrabFocus(); }
@@ -287,9 +287,9 @@ private:
Idle aIdle;
- Link aSelectFactoryLink;
- Link aPageDoubleClickLink;
- Link aIndexKeywordLink;
+ Link<> aSelectFactoryLink;
+ Link<> aPageDoubleClickLink;
+ Link<> aIndexKeywordLink;
OUString sKeyword;
VclPtr<SfxHelpWindow_Impl> pParentWin;
@@ -328,8 +328,8 @@ public:
virtual bool PreNotify( NotifyEvent& rNEvt ) SAL_OVERRIDE;
virtual void DataChanged( const DataChangedEvent& rDCEvt ) SAL_OVERRIDE;
- void SetDoubleClickHdl( const Link& rLink );
- inline void SetSelectFactoryHdl( const Link& rLink ) { aSelectFactoryLink = rLink; }
+ void SetDoubleClickHdl( const Link<>& rLink );
+ inline void SetSelectFactoryHdl( const Link<>& rLink ) { aSelectFactoryLink = rLink; }
void SetFactory( const OUString& rFactory, bool bActive );
inline OUString GetFactory() const { return pIPage->GetFactory(); }
OUString GetSelectEntry() const;
@@ -470,7 +470,7 @@ public:
inline ::com::sun::star::uno::Reference < ::com::sun::star::frame::XFrame2 >
getFrame() const { return xFrame; }
- inline void SetSelectHdl( const Link& rLink ) { aToolBox->SetSelectHdl( rLink ); }
+ inline void SetSelectHdl( const Link<>& rLink ) { aToolBox->SetSelectHdl( rLink ); }
void ToggleIndex( bool bOn );
void SelectSearchText( const OUString& rSearchText, bool _bIsFullWordSearch );
void SetPageStyleHeaderOff() const;