diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2015-04-30 10:20:00 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2015-04-30 10:20:00 +0200 |
commit | 3ead3ad52f9bb2f9d1d6cf8dfc73a0a25e6778ed (patch) | |
tree | bdfd28afe5a452060e3d985c5f01b45f4b7bc2cd /sd | |
parent | 57d254d42b6e1d836bd21e6fb2e968af2b511c7d (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 'sd')
64 files changed, 200 insertions, 201 deletions
diff --git a/sd/inc/sdobjfac.hxx b/sd/inc/sdobjfac.hxx index 6bcb1071f789..5e42f93ee0f3 100644 --- a/sd/inc/sdobjfac.hxx +++ b/sd/inc/sdobjfac.hxx @@ -28,15 +28,15 @@ class SdrObjFactory; class SdObjectFactory { protected: - Link aOldMakeObjLink; - Link aOldMakeUserDataLink; + Link<> aOldMakeObjLink; + Link<> aOldMakeUserDataLink; public: SdObjectFactory() {} - void SetOldMakeUserDataHdl( const Link& rLink ) + void SetOldMakeUserDataHdl( const Link<>& rLink ) { aOldMakeUserDataLink = rLink; } - Link GetOldMakeUserDataHdl() const { return aOldMakeUserDataLink; } + Link<> GetOldMakeUserDataHdl() const { return aOldMakeUserDataLink; } DECL_LINK( MakeUserData, SdrObjFactory * ); }; diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx index 76f9d384d877..1abbd8e136ad 100644 --- a/sd/source/core/drawdoc4.cxx +++ b/sd/source/core/drawdoc4.cxx @@ -884,7 +884,7 @@ void SdDrawDocument::SpellObject(SdrTextObj* pObj) mbHasOnlineSpellErrors = false; ::sd::Outliner* pOutl = GetInternalOutliner(true); pOutl->SetUpdateMode(true); - Link aEvtHdl = pOutl->GetStatusEventHdl(); + Link<> aEvtHdl = pOutl->GetStatusEventHdl(); pOutl->SetStatusEventHdl(LINK(this, SdDrawDocument, OnlineSpellEventHdl)); sal_uInt16 nOldOutlMode = pOutl->GetMode(); diff --git a/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx b/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx index f21dfdb03544..fac2dfc0f88e 100644 --- a/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx +++ b/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx @@ -177,7 +177,7 @@ IMPL_LINK(AccessibleDocumentViewBase, WindowChildEventListener, if (pWindow==pDyingWindow && pWindow!=NULL && maWindowLink.IsSet()) { pWindow->RemoveChildEventListener (maWindowLink); - maWindowLink = Link(); + maWindowLink = Link<>(); } } break; @@ -484,7 +484,7 @@ void AccessibleDocumentViewBase::impl_dispose() { if (pWindow) pWindow->RemoveChildEventListener (maWindowLink); - maWindowLink = Link(); + maWindowLink = Link<>(); } else { diff --git a/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx b/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx index 90e907c489e2..7528ccb19b68 100644 --- a/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx +++ b/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx @@ -48,7 +48,7 @@ namespace accessibility AccessibleOutlineEditSource::~AccessibleOutlineEditSource() { if( mpOutliner ) - mpOutliner->SetNotifyHdl( Link() ); + mpOutliner->SetNotifyHdl( Link<>() ); Broadcast( TextHint( SFX_HINT_DYING ) ); } @@ -196,7 +196,7 @@ namespace accessibility if( bDispose ) { if( mpOutliner ) - mpOutliner->SetNotifyHdl( Link() ); + mpOutliner->SetNotifyHdl( Link<>() ); mpOutliner = NULL; mpOutlinerView = NULL; Broadcast( TextHint( SFX_HINT_DYING ) ); diff --git a/sd/source/ui/animations/CustomAnimationCreateDialog.cxx b/sd/source/ui/animations/CustomAnimationCreateDialog.cxx index 59bcdecaceb0..6ab163cbb26f 100644 --- a/sd/source/ui/animations/CustomAnimationCreateDialog.cxx +++ b/sd/source/ui/animations/CustomAnimationCreateDialog.cxx @@ -73,14 +73,14 @@ public: sal_Int32 InsertCategory( const OUString& rStr, sal_Int32 nPos = LISTBOX_APPEND ); - void SetDoubleClickLink( const Link& rDoubleClickHdl ) { maDoubleClickHdl = rDoubleClickHdl; } + void SetDoubleClickLink( const Link<>& rDoubleClickHdl ) { maDoubleClickHdl = rDoubleClickHdl; } DECL_LINK(implDoubleClickHdl, void *); private: virtual void UserDraw( const UserDrawEvent& rUDEvt ) SAL_OVERRIDE; - Link maDoubleClickHdl; + Link<> maDoubleClickHdl; }; CategoryListBox::CategoryListBox( vcl::Window* pParent ) diff --git a/sd/source/ui/animations/CustomAnimationDialog.cxx b/sd/source/ui/animations/CustomAnimationDialog.cxx index c2bd3292e100..0e06814de8ed 100644 --- a/sd/source/ui/animations/CustomAnimationDialog.cxx +++ b/sd/source/ui/animations/CustomAnimationDialog.cxx @@ -98,7 +98,7 @@ namespace sd { class PresetPropertyBox : public PropertySubControl { public: - PresetPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const OUString& aPresetId, const Link& rModifyHdl ); + PresetPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const OUString& aPresetId, const Link<>& rModifyHdl ); virtual ~PresetPropertyBox(); virtual Any getValue() SAL_OVERRIDE; @@ -110,7 +110,7 @@ private: VclPtr<ListBox> mpControl; }; -PresetPropertyBox::PresetPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const OUString& aPresetId, const Link& rModifyHdl ) +PresetPropertyBox::PresetPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const OUString& aPresetId, const Link<>& rModifyHdl ) : PropertySubControl( nControlType ) { mpControl = VclPtr<ListBox>::Create( pParent, WB_BORDER|WB_TABSTOP|WB_DROPDOWN ); @@ -175,7 +175,7 @@ Control* PresetPropertyBox::getControl() class ColorPropertyBox : public PropertySubControl { public: - ColorPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ); + ColorPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ); virtual ~ColorPropertyBox(); virtual Any getValue() SAL_OVERRIDE; @@ -186,7 +186,7 @@ private: VclPtr<ColorListBox> mpControl; }; -ColorPropertyBox::ColorPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ) +ColorPropertyBox::ColorPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ) : PropertySubControl( nControlType ) { mpControl = VclPtr<ColorListBox>::Create( pParent, WB_BORDER|WB_TABSTOP|WB_DROPDOWN ); @@ -247,7 +247,7 @@ Control* ColorPropertyBox::getControl() class FontPropertyBox : public PropertySubControl { public: - FontPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ); + FontPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ); virtual ~FontPropertyBox(); virtual Any getValue() SAL_OVERRIDE; @@ -259,7 +259,7 @@ private: VclPtr<FontNameBox> mpControl; }; -FontPropertyBox::FontPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ) +FontPropertyBox::FontPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ) : PropertySubControl( nControlType ) { mpControl = VclPtr<FontNameBox>::Create( pParent, WB_BORDER|WB_TABSTOP|WB_DROPDOWN ); @@ -327,7 +327,7 @@ public: void Resize() SAL_OVERRIDE; bool PreNotify( NotifyEvent& rNEvt ) SAL_OVERRIDE; - void SetMenuSelectHdl( const Link& rLink ) { mpDropdownButton->SetSelectHdl( rLink ); } + void SetMenuSelectHdl( const Link<>& rLink ) { mpDropdownButton->SetSelectHdl( rLink ); } private: VclPtr<Edit> mpSubControl; @@ -401,7 +401,7 @@ bool DropdownMenuBox::PreNotify( NotifyEvent& rNEvt ) class CharHeightPropertyBox : public PropertySubControl { public: - CharHeightPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ); + CharHeightPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ); virtual ~CharHeightPropertyBox(); virtual Any getValue() SAL_OVERRIDE; @@ -417,7 +417,7 @@ private: VclPtr<MetricField> mpMetric; }; -CharHeightPropertyBox::CharHeightPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ) +CharHeightPropertyBox::CharHeightPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ) : PropertySubControl( nControlType ) { mpMetric.set( VclPtr<MetricField>::Create( pParent, WB_TABSTOP|WB_IGNORETAB| WB_NOBORDER) ); @@ -478,7 +478,7 @@ Control* CharHeightPropertyBox::getControl() class TransparencyPropertyBox : public PropertySubControl { public: - TransparencyPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ); + TransparencyPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ); virtual ~TransparencyPropertyBox(); virtual Any getValue() SAL_OVERRIDE; @@ -495,10 +495,10 @@ private: VclPtr<DropdownMenuBox> mpControl; PopupMenu* mpMenu; VclPtr<MetricField> mpMetric; - Link maModifyHdl; + Link<> maModifyHdl; }; -TransparencyPropertyBox::TransparencyPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ) +TransparencyPropertyBox::TransparencyPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ) : PropertySubControl( nControlType ) , maModifyHdl( rModifyHdl ) { @@ -519,7 +519,7 @@ TransparencyPropertyBox::TransparencyPropertyBox( sal_Int32 nControlType, vcl::W mpControl->SetMenuSelectHdl( LINK( this, TransparencyPropertyBox, implMenuSelectHdl )); mpControl->SetHelpId( HID_SD_CUSTOMANIMATIONPANE_TRANSPARENCYPROPERTYBOX ); - Link aLink( LINK( this, TransparencyPropertyBox, implModifyHdl ) ); + Link<> aLink( LINK( this, TransparencyPropertyBox, implModifyHdl ) ); mpControl->SetModifyHdl( aLink ); OUString aPresetId; @@ -582,7 +582,7 @@ Control* TransparencyPropertyBox::getControl() class RotationPropertyBox : public PropertySubControl { public: - RotationPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ); + RotationPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ); virtual ~RotationPropertyBox(); virtual Any getValue() SAL_OVERRIDE; @@ -599,10 +599,10 @@ private: VclPtr<DropdownMenuBox> mpControl; PopupMenu* mpMenu; VclPtr<MetricField> mpMetric; - Link maModifyHdl; + Link<> maModifyHdl; }; -RotationPropertyBox::RotationPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ) +RotationPropertyBox::RotationPropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ) : PropertySubControl( nControlType ) , maModifyHdl( rModifyHdl ) { @@ -617,7 +617,7 @@ RotationPropertyBox::RotationPropertyBox( sal_Int32 nControlType, vcl::Window* p mpControl->SetMenuSelectHdl( LINK( this, RotationPropertyBox, implMenuSelectHdl )); mpControl->SetHelpId( HID_SD_CUSTOMANIMATIONPANE_ROTATIONPROPERTYBOX ); - Link aLink( LINK( this, RotationPropertyBox, implModifyHdl ) ); + Link<> aLink( LINK( this, RotationPropertyBox, implModifyHdl ) ); mpControl->SetModifyHdl( aLink ); OUString aPresetId; @@ -707,7 +707,7 @@ Control* RotationPropertyBox::getControl() class ScalePropertyBox : public PropertySubControl { public: - ScalePropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ); + ScalePropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ); virtual ~ScalePropertyBox(); virtual Any getValue() SAL_OVERRIDE; @@ -724,11 +724,11 @@ private: VclPtr<DropdownMenuBox> mpControl; PopupMenu* mpMenu; VclPtr<MetricField> mpMetric; - Link maModifyHdl; + Link<> maModifyHdl; int mnDirection; }; -ScalePropertyBox::ScalePropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ) +ScalePropertyBox::ScalePropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ) : PropertySubControl( nControlType ) , maModifyHdl( rModifyHdl ) { @@ -742,7 +742,7 @@ ScalePropertyBox::ScalePropertyBox( sal_Int32 nControlType, vcl::Window* pParent mpControl->SetMenuSelectHdl( LINK( this, ScalePropertyBox, implMenuSelectHdl )); mpControl->SetHelpId( HID_SD_CUSTOMANIMATIONPANE_SCALEPROPERTYBOX ); - Link aLink( LINK( this, ScalePropertyBox, implModifyHdl ) ); + Link<> aLink( LINK( this, ScalePropertyBox, implModifyHdl ) ); mpControl->SetModifyHdl( aLink ); OUString aPresetId; @@ -870,7 +870,7 @@ Control* ScalePropertyBox::getControl() class FontStylePropertyBox : public PropertySubControl { public: - FontStylePropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ); + FontStylePropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ); virtual ~FontStylePropertyBox(); virtual Any getValue() SAL_OVERRIDE; @@ -886,14 +886,14 @@ private: VclPtr<DropdownMenuBox> mpControl; PopupMenu* mpMenu; VclPtr<Edit> mpEdit; - Link maModifyHdl; + Link<> maModifyHdl; float mfFontWeight; awt::FontSlant meFontSlant; sal_Int16 mnFontUnderline; }; -FontStylePropertyBox::FontStylePropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link& rModifyHdl ) +FontStylePropertyBox::FontStylePropertyBox( sal_Int32 nControlType, vcl::Window* pParent, const Any& rValue, const Link<>& rModifyHdl ) : PropertySubControl( nControlType ) , maModifyHdl( rModifyHdl ) { @@ -1110,7 +1110,7 @@ CustomAnimationEffectTabPage::CustomAnimationEffectTabPage( vcl::Window* pParent // get property value const Any aValue( pSet->getPropertyValue( nHandleProperty1Value ) ); - Link aModifyLink; + Link<> aModifyLink; // create property sub control mpLBProperty1->setSubControl( PropertySubControl::create( nType, mpPlaceholderBox, aValue, aPresetId, aModifyLink )); } @@ -2342,7 +2342,7 @@ PropertySubControl::~PropertySubControl() { } -PropertySubControl* PropertySubControl::create( sal_Int32 nType, vcl::Window* pParent, const Any& rValue, const OUString& rPresetId, const Link& rModifyHdl ) +PropertySubControl* PropertySubControl::create( sal_Int32 nType, vcl::Window* pParent, const Any& rValue, const OUString& rPresetId, const Link<>& rModifyHdl ) { PropertySubControl* pSubControl = NULL; switch( nType ) diff --git a/sd/source/ui/animations/CustomAnimationDialog.hxx b/sd/source/ui/animations/CustomAnimationDialog.hxx index 3754d93ffdbf..4a082c36b780 100644 --- a/sd/source/ui/animations/CustomAnimationDialog.hxx +++ b/sd/source/ui/animations/CustomAnimationDialog.hxx @@ -110,7 +110,7 @@ public: vcl::Window* pParent, const ::com::sun::star::uno::Any& rValue, const OUString& rPresetId, - const Link& rModifyHdl ); + const Link<>& rModifyHdl ); sal_Int32 getControlType() const { return mnType; } diff --git a/sd/source/ui/animations/CustomAnimationPane.cxx b/sd/source/ui/animations/CustomAnimationPane.cxx index da9ba62eeb82..43da01c86479 100644 --- a/sd/source/ui/animations/CustomAnimationPane.cxx +++ b/sd/source/ui/animations/CustomAnimationPane.cxx @@ -287,7 +287,7 @@ void CustomAnimationPane::KeyInput( const KeyEvent& rKEvt ) void CustomAnimationPane::addListener() { - Link aLink( LINK(this,CustomAnimationPane,EventMultiplexerListener) ); + Link<> aLink( LINK(this,CustomAnimationPane,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->AddEventListener ( aLink, tools::EventMultiplexerEvent::EID_EDIT_VIEW_SELECTION @@ -300,7 +300,7 @@ void CustomAnimationPane::addListener() void CustomAnimationPane::removeListener() { - Link aLink( LINK(this,CustomAnimationPane,EventMultiplexerListener) ); + Link<> aLink( LINK(this,CustomAnimationPane,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->RemoveEventListener( aLink ); } diff --git a/sd/source/ui/animations/SlideTransitionPane.cxx b/sd/source/ui/animations/SlideTransitionPane.cxx index 274929e44409..4a0419b08b73 100644 --- a/sd/source/ui/animations/SlideTransitionPane.cxx +++ b/sd/source/ui/animations/SlideTransitionPane.cxx @@ -910,7 +910,7 @@ void SlideTransitionPane::stopEffects() void SlideTransitionPane::addListener() { - Link aLink( LINK(this,SlideTransitionPane,EventMultiplexerListener) ); + Link<> aLink( LINK(this,SlideTransitionPane,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->AddEventListener ( aLink, tools::EventMultiplexerEvent::EID_EDIT_VIEW_SELECTION @@ -923,7 +923,7 @@ void SlideTransitionPane::addListener() void SlideTransitionPane::removeListener() { - Link aLink( LINK(this,SlideTransitionPane,EventMultiplexerListener) ); + Link<> aLink( LINK(this,SlideTransitionPane,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->RemoveEventListener( aLink ); } diff --git a/sd/source/ui/annotations/annotationmanager.cxx b/sd/source/ui/annotations/annotationmanager.cxx index 21614cd73662..1835d444bc3a 100644 --- a/sd/source/ui/annotations/annotationmanager.cxx +++ b/sd/source/ui/annotations/annotationmanager.cxx @@ -864,7 +864,7 @@ void AnnotationManagerImpl::DisposeTags() void AnnotationManagerImpl::addListener() { - Link aLink( LINK(this,AnnotationManagerImpl,EventMultiplexerListener) ); + Link<> aLink( LINK(this,AnnotationManagerImpl,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->AddEventListener ( aLink, tools::EventMultiplexerEvent::EID_EDIT_VIEW_SELECTION @@ -875,7 +875,7 @@ void AnnotationManagerImpl::addListener() void AnnotationManagerImpl::removeListener() { - Link aLink( LINK(this,AnnotationManagerImpl,EventMultiplexerListener) ); + Link<> aLink( LINK(this,AnnotationManagerImpl,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->RemoveEventListener( aLink ); } diff --git a/sd/source/ui/annotations/annotationwindow.cxx b/sd/source/ui/annotations/annotationwindow.cxx index d48fbae53d3b..c593325a9bd8 100644 --- a/sd/source/ui/annotations/annotationwindow.cxx +++ b/sd/source/ui/annotations/annotationwindow.cxx @@ -355,7 +355,7 @@ void AnnotationWindow::InitControls() nCntrl |= EEControlBits::PASTESPECIAL | EEControlBits::AUTOCORRECT | EEControlBits::USECHARATTRIBS | EEControlBits::NOCOLORS; mpOutliner->SetControlWord(nCntrl); - Engine()->SetModifyHdl( Link() ); + Engine()->SetModifyHdl( Link<>() ); Engine()->EnableUndo( false ); Engine()->ClearModifyFlag(); @@ -476,7 +476,7 @@ void AnnotationWindow::ResizeIfNecessary(long aOldHeight, long aNewHeight) void AnnotationWindow::SetLanguage(const SvxLanguageItem &aNewItem) { - Engine()->SetModifyHdl( Link() ); + Engine()->SetModifyHdl( Link<>() ); ESelection aOld = getView()->GetSelection(); ESelection aNewSelection( 0, 0, Engine()->GetParagraphCount()-1, EE_TEXTPOS_ALL ); diff --git a/sd/source/ui/dlg/RemoteDialogClientBox.hxx b/sd/source/ui/dlg/RemoteDialogClientBox.hxx index c763e023c70e..f27d159ad4ae 100644 --- a/sd/source/ui/dlg/RemoteDialogClientBox.hxx +++ b/sd/source/ui/dlg/RemoteDialogClientBox.hxx @@ -98,8 +98,8 @@ class ClientBox: long m_nActiveHeight; long m_nExtraHeight; Size m_aOutputSize; - Link m_aClickHdl; - Link m_aDeauthoriseHdl; + Link<> m_aClickHdl; + Link<> m_aDeauthoriseHdl; VclPtr<NumericBox> m_aPinBox; VclPtr<PushButton> m_aDeauthoriseButton; @@ -153,9 +153,9 @@ public: Rectangle GetEntryRect( const long nPos ) const; bool HasActive() { return m_bHasActive; } long PointToPos( const Point& rPos ); - void SetScrollHdl( const Link& rLink ); + void SetScrollHdl( const Link<>& rLink ); void DoScroll( long nDelta ); - void SetHyperlinkHdl( const Link& rLink ){ m_aClickHdl = rLink; } + void SetHyperlinkHdl( const Link<>& rLink ){ m_aClickHdl = rLink; } void RecalcAll(); void RemoveUnlocked(); diff --git a/sd/source/ui/dlg/custsdlg.cxx b/sd/source/ui/dlg/custsdlg.cxx index 8de00aa58c42..bbb49c6e6af9 100644 --- a/sd/source/ui/dlg/custsdlg.cxx +++ b/sd/source/ui/dlg/custsdlg.cxx @@ -52,7 +52,7 @@ SdCustomShowDlg::SdCustomShowDlg( vcl::Window* pWindow, m_pLbCustomShows->set_width_request(m_pLbCustomShows->approximate_char_width() * 32); m_pLbCustomShows->SetDropDownLineCount(8); - Link aLink( LINK( this, SdCustomShowDlg, ClickButtonHdl ) ); + Link<> aLink( LINK( this, SdCustomShowDlg, ClickButtonHdl ) ); m_pBtnNew->SetClickHdl( aLink ); m_pBtnEdit->SetClickHdl( aLink ); m_pBtnRemove->SetClickHdl( aLink ); @@ -292,7 +292,7 @@ SdDefineCustomShowDlg::SdDefineCustomShowDlg( vcl::Window* pWindow, get( m_pBtnCancel, "cancel" ); get( m_pBtnHelp, "help" ); - Link aLink = LINK( this, SdDefineCustomShowDlg, ClickButtonHdl ); + Link<> aLink = LINK( this, SdDefineCustomShowDlg, ClickButtonHdl ); m_pBtnAdd->SetClickHdl( aLink ); m_pBtnRemove->SetClickHdl( aLink ); m_pEdtName->SetModifyHdl( aLink ); diff --git a/sd/source/ui/dlg/dlgass.cxx b/sd/source/ui/dlg/dlgass.cxx index d6f35d109473..759a26cc7542 100644 --- a/sd/source/ui/dlg/dlgass.cxx +++ b/sd/source/ui/dlg/dlgass.cxx @@ -96,7 +96,7 @@ public: NextButton (vcl::Window* pParent); void ForceFocusEventBroadcast(); - void SetClickHdl (const Link& rLink); + void SetClickHdl (const Link<>& rLink); bool IsEnabled(); void Enable (bool bEnable); @@ -109,7 +109,7 @@ private: class AssistentDlgImpl : public SfxListener { public: - AssistentDlgImpl( vcl::Window* pWindow, const Link& rFinishLink, bool bAutoPilot ); + AssistentDlgImpl( vcl::Window* pWindow, const Link<>& rFinishLink, bool bAutoPilot ); virtual ~AssistentDlgImpl(); /// Local mutex used to serialize concurrent method calls. @@ -318,7 +318,7 @@ public: }; -AssistentDlgImpl::AssistentDlgImpl( vcl::Window* pWindow, const Link& rFinishLink, bool bAutoPilot ) : +AssistentDlgImpl::AssistentDlgImpl( vcl::Window* pWindow, const Link<>& rFinishLink, bool bAutoPilot ) : mpTemplateRegion(NULL), mpLayoutRegion(NULL), mbUserDataDirty(false), @@ -1724,7 +1724,7 @@ Image AssistentDlgImpl::GetUiIconForCommand (const OUString& sCommandURL) AssistentDlg::AssistentDlg(vcl::Window* pParent, bool bAutoPilot) : ModalDialog(pParent, "Assistent", "modules/simpress/ui/assistentdialog.ui") { - Link aFinishLink = LINK(this,AssistentDlg, FinishHdl); + Link<> aFinishLink = LINK(this,AssistentDlg, FinishHdl); mpImpl = new AssistentDlgImpl( this, aFinishLink, bAutoPilot ); // button assigmnent @@ -1861,7 +1861,7 @@ void NextButton::ForceFocusEventBroadcast() } } -void NextButton::SetClickHdl (const Link& rLink) +void NextButton::SetClickHdl (const Link<>& rLink) { // Forward the setting of the click handler to the two buttons // regardless of which one is currently visible. diff --git a/sd/source/ui/dlg/present.cxx b/sd/source/ui/dlg/present.cxx index bd635ad96676..3c0d92667303 100644 --- a/sd/source/ui/dlg/present.cxx +++ b/sd/source/ui/dlg/present.cxx @@ -72,7 +72,7 @@ SdStartPresentationDlg::SdStartPresentationDlg( vcl::Window* pWindow, get( msMonitor, "monitor_str" ); get( msAllMonitors, "allmonitors_str" ); - Link aLink( LINK( this, SdStartPresentationDlg, ChangeRangeHdl ) ); + Link<> aLink( LINK( this, SdStartPresentationDlg, ChangeRangeHdl ) ); aRbtAll->SetClickHdl( aLink ); aRbtAtDia->SetClickHdl( aLink ); diff --git a/sd/source/ui/dlg/prntopts.cxx b/sd/source/ui/dlg/prntopts.cxx index 3785de353d1f..2b44f51b3599 100644 --- a/sd/source/ui/dlg/prntopts.cxx +++ b/sd/source/ui/dlg/prntopts.cxx @@ -52,7 +52,7 @@ SdPrintOptions::SdPrintOptions( vcl::Window* pParent, const SfxItemSet& rInAttrs get( m_pCbxBack , "backcb" ); get( m_pCbxPaperbin , "papertryfrmprntrcb" ); - Link aLink = LINK( this, SdPrintOptions, ClickBookletHdl ); + Link<> aLink = LINK( this, SdPrintOptions, ClickBookletHdl ); m_pRbtDefault->SetClickHdl( aLink ); m_pRbtPagesize->SetClickHdl( aLink ); m_pRbtPagetile->SetClickHdl( aLink ); diff --git a/sd/source/ui/dlg/vectdlg.cxx b/sd/source/ui/dlg/vectdlg.cxx index d7cde0582f7e..36847a80638f 100644 --- a/sd/source/ui/dlg/vectdlg.cxx +++ b/sd/source/ui/dlg/vectdlg.cxx @@ -158,7 +158,7 @@ void SdVectorizeDlg::Calculate( Bitmap& rBmp, GDIMetaFile& rMtf ) if( !!aTmp ) { - const Link aPrgsHdl( LINK( this, SdVectorizeDlg, ProgressHdl ) ); + const Link<> aPrgsHdl( LINK( this, SdVectorizeDlg, ProgressHdl ) ); aTmp.Vectorize( rMtf, (sal_uInt8) m_pMtReduce->GetValue(), BMP_VECTORIZE_OUTER | BMP_VECTORIZE_REDUCE_EDGES, &aPrgsHdl ); if( m_pCbFillHoles->IsChecked() ) diff --git a/sd/source/ui/framework/factories/FullScreenPane.cxx b/sd/source/ui/framework/factories/FullScreenPane.cxx index ba793b25961c..746be6603db2 100644 --- a/sd/source/ui/framework/factories/FullScreenPane.cxx +++ b/sd/source/ui/framework/factories/FullScreenPane.cxx @@ -72,7 +72,7 @@ FullScreenPane::FullScreenPane ( // afterwards may or may not work. // Add resize listener at the work window. - Link aWindowEventHandler (LINK(this, FullScreenPane, WindowEventHandler)); + Link<> aWindowEventHandler (LINK(this, FullScreenPane, WindowEventHandler)); mpWorkWindow->AddEventListener(aWindowEventHandler); // Set title and icon of the new window to those of the current window @@ -108,7 +108,7 @@ void SAL_CALL FullScreenPane::disposing() if (mpWorkWindow.get() != NULL) { - Link aWindowEventHandler (LINK(this, FullScreenPane, WindowEventHandler)); + Link<> aWindowEventHandler (LINK(this, FullScreenPane, WindowEventHandler)); mpWorkWindow->RemoveEventListener(aWindowEventHandler); mpWorkWindow.reset(); } diff --git a/sd/source/ui/func/fuinsfil.cxx b/sd/source/ui/func/fuinsfil.cxx index c0bbd9f3deeb..414ea1ac7ba5 100644 --- a/sd/source/ui/func/fuinsfil.cxx +++ b/sd/source/ui/func/fuinsfil.cxx @@ -694,19 +694,19 @@ bool FuInsertFile::InsSDDinOlMode(SfxMedium* pMedium) ::Outliner* pOutliner = pOlView->GetViewByWindow(mpWindow)->GetOutliner(); // cut notification links temporarily - Link aOldParagraphInsertedHdl = pOutliner->GetParaInsertedHdl(); - pOutliner->SetParaInsertedHdl( Link(NULL, NULL)); - Link aOldParagraphRemovingHdl = pOutliner->GetParaRemovingHdl(); - pOutliner->SetParaRemovingHdl( Link(NULL, NULL)); - Link aOldDepthChangedHdl = pOutliner->GetDepthChangedHdl(); - pOutliner->SetDepthChangedHdl( Link(NULL, NULL)); - Link aOldBeginMovingHdl = pOutliner->GetBeginMovingHdl(); - pOutliner->SetBeginMovingHdl( Link(NULL, NULL)); - Link aOldEndMovingHdl = pOutliner->GetEndMovingHdl(); - pOutliner->SetEndMovingHdl( Link(NULL, NULL)); - - Link aOldStatusEventHdl = pOutliner->GetStatusEventHdl(); - pOutliner->SetStatusEventHdl(Link(NULL, NULL)); + Link<> aOldParagraphInsertedHdl = pOutliner->GetParaInsertedHdl(); + pOutliner->SetParaInsertedHdl( Link<>(NULL, NULL)); + Link<> aOldParagraphRemovingHdl = pOutliner->GetParaRemovingHdl(); + pOutliner->SetParaRemovingHdl( Link<>(NULL, NULL)); + Link<> aOldDepthChangedHdl = pOutliner->GetDepthChangedHdl(); + pOutliner->SetDepthChangedHdl( Link<>(NULL, NULL)); + Link<> aOldBeginMovingHdl = pOutliner->GetBeginMovingHdl(); + pOutliner->SetBeginMovingHdl( Link<>(NULL, NULL)); + Link<> aOldEndMovingHdl = pOutliner->GetEndMovingHdl(); + pOutliner->SetEndMovingHdl( Link<>(NULL, NULL)); + + Link<> aOldStatusEventHdl = pOutliner->GetStatusEventHdl(); + pOutliner->SetStatusEventHdl(Link<>(NULL, NULL)); pOutliner->Clear(); pOlView->FillOutliner(); diff --git a/sd/source/ui/inc/AccessibleDocumentViewBase.hxx b/sd/source/ui/inc/AccessibleDocumentViewBase.hxx index ac49bd266c27..1bfbd129cf8f 100644 --- a/sd/source/ui/inc/AccessibleDocumentViewBase.hxx +++ b/sd/source/ui/inc/AccessibleDocumentViewBase.hxx @@ -305,7 +305,7 @@ protected: ::com::sun::star::accessibility::XAccessible> mxAccessibleOLEObject; - Link maWindowLink; + Link<> maWindowLink; // This method is called from the component helper base class while // disposing. diff --git a/sd/source/ui/inc/BreakDlg.hxx b/sd/source/ui/inc/BreakDlg.hxx index 40c650c5ee7f..6be181af2cad 100644 --- a/sd/source/ui/inc/BreakDlg.hxx +++ b/sd/source/ui/inc/BreakDlg.hxx @@ -69,7 +69,7 @@ private: Idle aIdle; SvdProgressInfo *pProgrInfo; - Link aLink; + Link<> aLink; SfxProgress *mpProgress; DECL_LINK( CancelButtonHdl, void* ); diff --git a/sd/source/ui/inc/EventMultiplexer.hxx b/sd/source/ui/inc/EventMultiplexer.hxx index 68ee23083ca4..50ad82333628 100644 --- a/sd/source/ui/inc/EventMultiplexer.hxx +++ b/sd/source/ui/inc/EventMultiplexer.hxx @@ -21,12 +21,11 @@ #define INCLUDED_SD_SOURCE_UI_INC_EVENTMULTIPLEXER_HXX #include <svl/lstner.hxx> +#include <tools/link.hxx> #include <set> #include <memory> -class Link; - namespace sd { class ViewShellBase; } @@ -177,7 +176,7 @@ public: be informed about. */ void AddEventListener ( - Link& rCallback, + Link<>& rCallback, EventMultiplexerEvent::EventId aEventTypeSet); /** Remove an event listener for the specified event types. @@ -188,7 +187,7 @@ public: for. */ void RemoveEventListener ( - Link& rCallback, + Link<>& rCallback, EventMultiplexerEvent::EventId aEventTypeSet = EID_FULL_SET); /** This method is used for out-of-line events. An event of the diff --git a/sd/source/ui/inc/MasterPageObserver.hxx b/sd/source/ui/inc/MasterPageObserver.hxx index 41d454665103..8ac9096e2394 100644 --- a/sd/source/ui/inc/MasterPageObserver.hxx +++ b/sd/source/ui/inc/MasterPageObserver.hxx @@ -61,7 +61,7 @@ public: The event listener to call for future events. Call RemoveEventListener() before the listener is destroyed. */ - void AddEventListener (const Link& rEventListener); + void AddEventListener (const Link<>& rEventListener); /** Remove the given listener from the list of listeners. @param rEventListener @@ -69,7 +69,7 @@ public: from this object. Passing a listener that has not been registered before is safe and is silently ignored. */ - void RemoveEventListener (const Link& rEventListener); + void RemoveEventListener (const Link<>& rEventListener); private: static ::osl::Mutex maMutex; diff --git a/sd/source/ui/inc/SlideSorterViewShell.hxx b/sd/source/ui/inc/SlideSorterViewShell.hxx index dd382c39a414..52fd77e283ad 100644 --- a/sd/source/ui/inc/SlideSorterViewShell.hxx +++ b/sd/source/ui/inc/SlideSorterViewShell.hxx @@ -148,7 +148,7 @@ public: the second and all following calls are ignored. Each listener is added only once. */ - void AddSelectionChangeListener (const Link& rListener); + void AddSelectionChangeListener (const Link<>& rListener); /** Remove a listener that was called when the selection of the slide sorter changes. @@ -156,7 +156,7 @@ public: It is save to pass a listener that was not added are has been removed previously. Such calls are ignored. */ - void RemoveSelectionChangeListener (const Link& rListener); + void RemoveSelectionChangeListener (const Link<>& rListener); virtual css::uno::Reference<css::drawing::XDrawSubController> CreateSubController() SAL_OVERRIDE; diff --git a/sd/source/ui/inc/docprev.hxx b/sd/source/ui/inc/docprev.hxx index a5403c7759f7..ff1f4b97c778 100644 --- a/sd/source/ui/inc/docprev.hxx +++ b/sd/source/ui/inc/docprev.hxx @@ -43,7 +43,7 @@ class SD_DLLPUBLIC SdDocPreviewWin : public Control, public SfxListener protected: GDIMetaFile* pMetaFile; bool bInEffect; - Link aClickHdl; + Link<> aClickHdl; SfxObjectShell* mpObj; sal_uInt16 mnShowPage; Color maDocumentColor; @@ -72,8 +72,8 @@ public: virtual bool Notify( NotifyEvent& rNEvt ) SAL_OVERRIDE; - void SetClickHdl( const Link& rLink ) { aClickHdl = rLink; } - const Link& GetClickHdl() const { return aClickHdl; } + void SetClickHdl( const Link<>& rLink ) { aClickHdl = rLink; } + const Link<>& GetClickHdl() const { return aClickHdl; } virtual void DataChanged( const DataChangedEvent& rDCEvt ) SAL_OVERRIDE; diff --git a/sd/source/ui/inc/futext.hxx b/sd/source/ui/inc/futext.hxx index 4a1180b8e95e..5e1dd66bf729 100644 --- a/sd/source/ui/inc/futext.hxx +++ b/sd/source/ui/inc/futext.hxx @@ -81,7 +81,7 @@ protected: virtual void disposing() SAL_OVERRIDE; SdrObjectWeakRef mxTextObj; - Link aOldLink; + Link<> aOldLink; bool bFirstObjCreated; bool bJustEndedEdit; diff --git a/sd/source/ui/inc/taskpane/TaskPaneTreeNode.hxx b/sd/source/ui/inc/taskpane/TaskPaneTreeNode.hxx index 8b4056c7eb22..2971d996c09e 100644 --- a/sd/source/ui/inc/taskpane/TaskPaneTreeNode.hxx +++ b/sd/source/ui/inc/taskpane/TaskPaneTreeNode.hxx @@ -155,7 +155,7 @@ public: children as well as focus, visibility, and expansion state. Multiple calls are ignored. Each listener is added only once. */ - void AddStateChangeListener (const Link& rListener); + void AddStateChangeListener (const Link<>& rListener); /** Call the state change listeners and pass a state change event with the specified event id. The source field is set to this. @@ -172,7 +172,7 @@ protected: private: TreeNode* mpParent; - typedef ::std::vector<Link> StateChangeListenerContainer; + typedef ::std::vector<Link<>> StateChangeListenerContainer; StateChangeListenerContainer maStateChangeListeners; }; diff --git a/sd/source/ui/inc/tools/SlotStateListener.hxx b/sd/source/ui/inc/tools/SlotStateListener.hxx index 64045d50509e..1837996cc4dd 100644 --- a/sd/source/ui/inc/tools/SlotStateListener.hxx +++ b/sd/source/ui/inc/tools/SlotStateListener.hxx @@ -51,7 +51,7 @@ public: explanations about the parameters. */ SlotStateListener ( - Link& rCallback, + Link<>& rCallback, const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchProvider>& rxDispatchProvider, const OUString& rSlotName); @@ -66,7 +66,7 @@ public: Changing the callback does not release the listeners. @throws DisposedException */ - void SetCallback (const Link& rCallback); + void SetCallback (const Link<>& rCallback); /** Set the frame whose slots shall be observed. When an object of this class is already observing slots of another frame then these @@ -111,7 +111,7 @@ protected: virtual void SAL_CALL disposing() SAL_OVERRIDE; private: - Link maCallback; + Link<> maCallback; /** Remember the URLs that describe slots whose state changes we are listening to. diff --git a/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx b/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx index de51f263dbf4..c9009629c24d 100644 --- a/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx +++ b/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx @@ -79,7 +79,7 @@ CurrentMasterPagesSelector::CurrentMasterPagesSelector ( // left clicks. mnDefaultClickAction = SID_TP_APPLY_TO_SELECTED_SLIDES; - Link aLink (LINK(this,CurrentMasterPagesSelector,EventMultiplexerListener)); + Link<> aLink (LINK(this,CurrentMasterPagesSelector,EventMultiplexerListener)); rBase.GetEventMultiplexer()->AddEventListener(aLink, sd::tools::EventMultiplexerEvent::EID_CURRENT_PAGE | sd::tools::EventMultiplexerEvent::EID_EDIT_MODE_NORMAL @@ -106,7 +106,7 @@ void CurrentMasterPagesSelector::dispose() OSL_ASSERT(mrDocument.GetDocSh() != NULL); } - Link aLink (LINK(this,CurrentMasterPagesSelector,EventMultiplexerListener)); + Link<> aLink (LINK(this,CurrentMasterPagesSelector,EventMultiplexerListener)); mrBase.GetEventMultiplexer()->RemoveEventListener(aLink); MasterPagesSelector::dispose(); diff --git a/sd/source/ui/sidebar/LayoutMenu.cxx b/sd/source/ui/sidebar/LayoutMenu.cxx index 65ce70fa7e04..53a66c8fa52b 100644 --- a/sd/source/ui/sidebar/LayoutMenu.cxx +++ b/sd/source/ui/sidebar/LayoutMenu.cxx @@ -168,7 +168,7 @@ void LayoutMenu::implConstruct( DrawDocShell& rDocumentShell ) SetSelectHdl (LINK(this, LayoutMenu, ClickHandler)); InvalidateContent(); - Link aEventListenerLink (LINK(this,LayoutMenu,EventMultiplexerListener)); + Link<> aEventListenerLink (LINK(this,LayoutMenu,EventMultiplexerListener)); mrBase.GetEventMultiplexer()->AddEventListener(aEventListenerLink, ::sd::tools::EventMultiplexerEvent::EID_CURRENT_PAGE | ::sd::tools::EventMultiplexerEvent::EID_SLIDE_SORTER_SELECTION @@ -181,14 +181,14 @@ void LayoutMenu::implConstruct( DrawDocShell& rDocumentShell ) Window::SetHelpId(HID_SD_TASK_PANE_PREVIEW_LAYOUTS); SetAccessibleName(SdResId(STR_TASKPANEL_LAYOUT_MENU_TITLE)); - Link aStateChangeLink (LINK(this,LayoutMenu,StateChangeHandler)); + Link<> aStateChangeLink (LINK(this,LayoutMenu,StateChangeHandler)); mxListener = new ::sd::tools::SlotStateListener( aStateChangeLink, Reference<frame::XDispatchProvider>(mrBase.GetController()->getFrame(), UNO_QUERY), ".uno:VerticalTextState"); SetSizePixel(GetParent()->GetSizePixel()); - Link aWindowEventHandlerLink (LINK(this,LayoutMenu,WindowEventHandler)); + Link<> aWindowEventHandlerLink (LINK(this,LayoutMenu,WindowEventHandler)); GetParent()->AddEventListener(aWindowEventHandlerLink); } @@ -218,10 +218,10 @@ void LayoutMenu::Dispose() xComponent->dispose(); Clear(); - Link aLink (LINK(this,LayoutMenu,EventMultiplexerListener)); + Link<> aLink (LINK(this,LayoutMenu,EventMultiplexerListener)); mrBase.GetEventMultiplexer()->RemoveEventListener (aLink); - Link aWindowEventHandlerLink (LINK(this,LayoutMenu,WindowEventHandler)); + Link<> aWindowEventHandlerLink (LINK(this,LayoutMenu,WindowEventHandler)); GetParent()->RemoveEventListener(aWindowEventHandlerLink); } diff --git a/sd/source/ui/sidebar/MasterPageContainer.cxx b/sd/source/ui/sidebar/MasterPageContainer.cxx index 0a6c697fa6d1..3cce7291df9c 100644 --- a/sd/source/ui/sidebar/MasterPageContainer.cxx +++ b/sd/source/ui/sidebar/MasterPageContainer.cxx @@ -84,8 +84,8 @@ public: static ::boost::shared_ptr<Implementation> Instance(); void LateInit(); - void AddChangeListener (const Link& rLink); - void RemoveChangeListener (const Link& rLink); + void AddChangeListener (const Link<>& rLink); + void RemoveChangeListener (const Link<>& rLink); void UpdatePreviewSizePixel(); Size GetPreviewSizePixel (PreviewSize eSize) const; @@ -158,7 +158,7 @@ private: Image maLargePreviewNotAvailable; Image maSmallPreviewNotAvailable; - ::std::vector<Link> maChangeListeners; + ::std::vector<Link<>> maChangeListeners; // We have to remember the tasks for initialization and filling in case // a MasterPageContainer object is destroyed before these tasks have @@ -228,12 +228,12 @@ MasterPageContainer::~MasterPageContainer() { } -void MasterPageContainer::AddChangeListener (const Link& rLink) +void MasterPageContainer::AddChangeListener (const Link<>& rLink) { mpImpl->AddChangeListener(rLink); } -void MasterPageContainer::RemoveChangeListener (const Link& rLink) +void MasterPageContainer::RemoveChangeListener (const Link<>& rLink) { mpImpl->RemoveChangeListener(rLink); } @@ -548,22 +548,22 @@ void MasterPageContainer::Implementation::LateInit() } } -void MasterPageContainer::Implementation::AddChangeListener (const Link& rLink) +void MasterPageContainer::Implementation::AddChangeListener (const Link<>& rLink) { const ::osl::MutexGuard aGuard (maMutex); - ::std::vector<Link>::iterator iListener ( + ::std::vector<Link<>>::iterator iListener ( ::std::find(maChangeListeners.begin(),maChangeListeners.end(),rLink)); if (iListener == maChangeListeners.end()) maChangeListeners.push_back(rLink); } -void MasterPageContainer::Implementation::RemoveChangeListener (const Link& rLink) +void MasterPageContainer::Implementation::RemoveChangeListener (const Link<>& rLink) { const ::osl::MutexGuard aGuard (maMutex); - ::std::vector<Link>::iterator iListener ( + ::std::vector<Link<>>::iterator iListener ( ::std::find(maChangeListeners.begin(),maChangeListeners.end(),rLink)); if (iListener != maChangeListeners.end()) maChangeListeners.erase(iListener); @@ -961,8 +961,8 @@ void MasterPageContainer::Implementation::FireContainerChange ( } else { - ::std::vector<Link> aCopy(maChangeListeners.begin(),maChangeListeners.end()); - ::std::vector<Link>::iterator iListener; + ::std::vector<Link<>> aCopy(maChangeListeners.begin(),maChangeListeners.end()); + ::std::vector<Link<>>::iterator iListener; MasterPageContainerChangeEvent aEvent; aEvent.meEventType = eType; aEvent.maChildToken = aToken; diff --git a/sd/source/ui/sidebar/MasterPageContainer.hxx b/sd/source/ui/sidebar/MasterPageContainer.hxx index 020b6bd2d7fb..daf3ba8bc8b0 100644 --- a/sd/source/ui/sidebar/MasterPageContainer.hxx +++ b/sd/source/ui/sidebar/MasterPageContainer.hxx @@ -61,8 +61,8 @@ public: MasterPageContainer(); virtual ~MasterPageContainer(); - void AddChangeListener (const Link& rLink); - void RemoveChangeListener (const Link& rLink); + void AddChangeListener (const Link<>& rLink); + void RemoveChangeListener (const Link<>& rLink); enum PreviewSize { SMALL, LARGE }; /** There are two different preview sizes, a small one and a large one. diff --git a/sd/source/ui/sidebar/MasterPageContainerQueue.cxx b/sd/source/ui/sidebar/MasterPageContainerQueue.cxx index 0d5b6e46caa4..af7fe595b3e1 100644 --- a/sd/source/ui/sidebar/MasterPageContainerQueue.cxx +++ b/sd/source/ui/sidebar/MasterPageContainerQueue.cxx @@ -109,7 +109,7 @@ void MasterPageContainerQueue::LateInit() { // Set up the timer for the delayed creation of preview bitmaps. maDelayedPreviewCreationTimer.SetTimeout (snDelayedCreationTimeout); - Link aLink (LINK(this,MasterPageContainerQueue,DelayedPreviewCreation)); + Link<> aLink (LINK(this,MasterPageContainerQueue,DelayedPreviewCreation)); maDelayedPreviewCreationTimer.SetTimeoutHdl(aLink); } diff --git a/sd/source/ui/sidebar/MasterPageObserver.cxx b/sd/source/ui/sidebar/MasterPageObserver.cxx index b5b5f4bd4ac5..1df0a078bb24 100644 --- a/sd/source/ui/sidebar/MasterPageObserver.cxx +++ b/sd/source/ui/sidebar/MasterPageObserver.cxx @@ -56,7 +56,7 @@ public: The event listener to call for future events. Call RemoveEventListener() before the listener is destroyed. */ - void AddEventListener (const Link& rEventListener); + void AddEventListener (const Link<>& rEventListener); /** Remove the given listener from the list of listeners. @param rEventListener @@ -64,10 +64,10 @@ public: from this object. Passing a listener that has not been registered before is safe and is silently ignored. */ - void RemoveEventListener (const Link& rEventListener); + void RemoveEventListener (const Link<>& rEventListener); private: - ::std::vector<Link> maListeners; + ::std::vector<Link<>> maListeners; struct DrawDocHash { size_t operator()(SdDrawDocument* argument) const @@ -127,13 +127,13 @@ void MasterPageObserver::UnregisterDocument (SdDrawDocument& rDocument) mpImpl->UnregisterDocument (rDocument); } -void MasterPageObserver::AddEventListener (const Link& rEventListener) +void MasterPageObserver::AddEventListener (const Link<>& rEventListener) { mpImpl->AddEventListener (rEventListener); } -void MasterPageObserver::RemoveEventListener (const Link& rEventListener) +void MasterPageObserver::RemoveEventListener (const Link<>& rEventListener) { mpImpl->RemoveEventListener (rEventListener); } @@ -176,7 +176,7 @@ void MasterPageObserver::Implementation::UnregisterDocument ( } void MasterPageObserver::Implementation::AddEventListener ( - const Link& rEventListener) + const Link<>& rEventListener) { if (::std::find ( maListeners.begin(), @@ -208,7 +208,7 @@ void MasterPageObserver::Implementation::AddEventListener ( } void MasterPageObserver::Implementation::RemoveEventListener ( - const Link& rEventListener) + const Link<>& rEventListener) { maListeners.erase ( ::std::find ( @@ -334,8 +334,8 @@ void MasterPageObserver::Implementation::AnalyzeUsedMasterPages ( void MasterPageObserver::Implementation::SendEvent ( MasterPageObserverEvent& rEvent) { - ::std::vector<Link>::iterator aLink (maListeners.begin()); - ::std::vector<Link>::iterator aEnd (maListeners.end()); + ::std::vector<Link<>>::iterator aLink (maListeners.begin()); + ::std::vector<Link<>>::iterator aEnd (maListeners.end()); while (aLink!=aEnd) { aLink->Call (&rEvent); diff --git a/sd/source/ui/sidebar/MasterPagesSelector.cxx b/sd/source/ui/sidebar/MasterPagesSelector.cxx index 4f5f284860c0..9afaf0a4b5ac 100644 --- a/sd/source/ui/sidebar/MasterPagesSelector.cxx +++ b/sd/source/ui/sidebar/MasterPagesSelector.cxx @@ -98,7 +98,7 @@ MasterPagesSelector::MasterPagesSelector ( SetBackground(sfx2::sidebar::Theme::GetWallpaper(sfx2::sidebar::Theme::Paint_PanelBackground)); SetColor(sfx2::sidebar::Theme::GetColor(sfx2::sidebar::Theme::Paint_PanelBackground)); - Link aChangeListener (LINK(this,MasterPagesSelector,ContainerChangeListener)); + Link<> aChangeListener (LINK(this,MasterPagesSelector,ContainerChangeListener)); mpContainer->AddChangeListener(aChangeListener); } @@ -112,7 +112,7 @@ void MasterPagesSelector::dispose() Clear(); UpdateLocks(ItemList()); - Link aChangeListener (LINK(this,MasterPagesSelector,ContainerChangeListener)); + Link<> aChangeListener (LINK(this,MasterPagesSelector,ContainerChangeListener)); mpContainer->RemoveChangeListener(aChangeListener); PreviewValueSet::dispose(); } diff --git a/sd/source/ui/sidebar/PreviewValueSet.cxx b/sd/source/ui/sidebar/PreviewValueSet.cxx index 4c199cbb1611..3e4a6f599541 100644 --- a/sd/source/ui/sidebar/PreviewValueSet.cxx +++ b/sd/source/ui/sidebar/PreviewValueSet.cxx @@ -47,7 +47,7 @@ void PreviewValueSet::SetPreviewSize (const Size& rSize) maPreviewSize = rSize; } -void PreviewValueSet::SetRightMouseClickHandler (const Link& rLink) +void PreviewValueSet::SetRightMouseClickHandler (const Link<>& rLink) { maRightMouseClickHandler = rLink; } diff --git a/sd/source/ui/sidebar/PreviewValueSet.hxx b/sd/source/ui/sidebar/PreviewValueSet.hxx index 2ce5fc564db0..c8629f6730ba 100644 --- a/sd/source/ui/sidebar/PreviewValueSet.hxx +++ b/sd/source/ui/sidebar/PreviewValueSet.hxx @@ -33,7 +33,7 @@ public: PreviewValueSet (vcl::Window* pParent); virtual ~PreviewValueSet(); - void SetRightMouseClickHandler (const Link& rLink); + void SetRightMouseClickHandler (const Link<>& rLink); virtual void Resize() SAL_OVERRIDE; void SetPreviewSize (const Size& rSize); @@ -49,7 +49,7 @@ protected: virtual void MouseButtonDown (const MouseEvent& rEvent) SAL_OVERRIDE; private: - Link maRightMouseClickHandler; + Link<> maRightMouseClickHandler; Size maPreviewSize; const int mnBorderWidth; const int mnBorderHeight; diff --git a/sd/source/ui/sidebar/RecentlyUsedMasterPages.cxx b/sd/source/ui/sidebar/RecentlyUsedMasterPages.cxx index f237da8fd10e..89900189fed6 100644 --- a/sd/source/ui/sidebar/RecentlyUsedMasterPages.cxx +++ b/sd/source/ui/sidebar/RecentlyUsedMasterPages.cxx @@ -96,7 +96,7 @@ RecentlyUsedMasterPages::RecentlyUsedMasterPages() RecentlyUsedMasterPages::~RecentlyUsedMasterPages() { - Link aLink (LINK(this,RecentlyUsedMasterPages,MasterPageContainerChangeListener)); + Link<> aLink (LINK(this,RecentlyUsedMasterPages,MasterPageContainerChangeListener)); mpContainer->RemoveChangeListener(aLink); MasterPageObserver::Instance().RemoveEventListener( @@ -105,7 +105,7 @@ RecentlyUsedMasterPages::~RecentlyUsedMasterPages() void RecentlyUsedMasterPages::LateInit() { - Link aLink (LINK(this,RecentlyUsedMasterPages,MasterPageContainerChangeListener)); + Link<> aLink (LINK(this,RecentlyUsedMasterPages,MasterPageContainerChangeListener)); mpContainer->AddChangeListener(aLink); LoadPersistentValues (); @@ -237,7 +237,7 @@ void RecentlyUsedMasterPages::SavePersistentValues() } } -void RecentlyUsedMasterPages::AddEventListener (const Link& rEventListener) +void RecentlyUsedMasterPages::AddEventListener (const Link<>& rEventListener) { if (::std::find ( maListeners.begin(), @@ -248,7 +248,7 @@ void RecentlyUsedMasterPages::AddEventListener (const Link& rEventListener) } } -void RecentlyUsedMasterPages::RemoveEventListener (const Link& rEventListener) +void RecentlyUsedMasterPages::RemoveEventListener (const Link<>& rEventListener) { maListeners.erase ( ::std::find ( @@ -272,8 +272,8 @@ MasterPageContainer::Token RecentlyUsedMasterPages::GetTokenForIndex (sal_uInt32 void RecentlyUsedMasterPages::SendEvent() { - ::std::vector<Link>::iterator aLink (maListeners.begin()); - ::std::vector<Link>::iterator aEnd (maListeners.end()); + ::std::vector<Link<>>::iterator aLink (maListeners.begin()); + ::std::vector<Link<>>::iterator aEnd (maListeners.end()); while (aLink!=aEnd) { aLink->Call (NULL); diff --git a/sd/source/ui/sidebar/RecentlyUsedMasterPages.hxx b/sd/source/ui/sidebar/RecentlyUsedMasterPages.hxx index 04fbd5b9c44c..f4d18099ca43 100644 --- a/sd/source/ui/sidebar/RecentlyUsedMasterPages.hxx +++ b/sd/source/ui/sidebar/RecentlyUsedMasterPages.hxx @@ -46,8 +46,8 @@ public: */ static RecentlyUsedMasterPages& Instance(); - void AddEventListener (const Link& rEventListener); - void RemoveEventListener (const Link& rEventListener); + void AddEventListener (const Link<>& rEventListener); + void RemoveEventListener (const Link<>& rEventListener); int GetMasterPageCount() const; MasterPageContainer::Token GetTokenForIndex (sal_uInt32 nIndex) const; @@ -84,7 +84,7 @@ private: */ static RecentlyUsedMasterPages* mpInstance; - ::std::vector<Link> maListeners; + ::std::vector<Link<>> maListeners; typedef ::std::vector<Descriptor> MasterPageList; MasterPageList mvMasterPages; diff --git a/sd/source/ui/slideshow/slideshowimpl.cxx b/sd/source/ui/slideshow/slideshowimpl.cxx index f6fd9fa9b101..28c4a82524e0 100644 --- a/sd/source/ui/slideshow/slideshowimpl.cxx +++ b/sd/source/ui/slideshow/slideshowimpl.cxx @@ -669,7 +669,7 @@ void SAL_CALL SlideshowImpl::disposing() #if HAVE_FEATURE_SCRIPTING // restore StarBASICErrorHdl StarBASIC::SetGlobalErrorHdl(maStarBASICGlobalErrorHdl); - maStarBASICGlobalErrorHdl = Link(); + maStarBASICGlobalErrorHdl = Link<>(); #endif } else @@ -994,7 +994,7 @@ bool SlideshowImpl::startShow( PresentationSettingsEx* pPresSettings ) #if HAVE_FEATURE_SCRIPTING // disable basic ide error handling maStarBASICGlobalErrorHdl = StarBASIC::GetGlobalErrorHdl(); - StarBASIC::SetGlobalErrorHdl( Link() ); + StarBASIC::SetGlobalErrorHdl( Link<>() ); #endif } diff --git a/sd/source/ui/slideshow/slideshowimpl.hxx b/sd/source/ui/slideshow/slideshowimpl.hxx index e52152957bfc..61a9aaec1c0e 100644 --- a/sd/source/ui/slideshow/slideshowimpl.hxx +++ b/sd/source/ui/slideshow/slideshowimpl.hxx @@ -349,7 +349,7 @@ private: Pointer maPencil; std::vector< VclPtr< ::sd::Window> > maDrawModeWindows; VclPtr< ::sd::Window> mpOldActiveWindow; - Link maStarBASICGlobalErrorHdl; + Link<> maStarBASICGlobalErrorHdl; unsigned long mnChildMask; bool mbGridVisible; bool mbBordVisible; diff --git a/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx b/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx index b0acdd6ed90f..aff6a5e1727c 100644 --- a/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx +++ b/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx @@ -243,7 +243,7 @@ void FocusManager::ShowFocusIndicator ( } } -void FocusManager::AddFocusChangeListener (const Link& rListener) +void FocusManager::AddFocusChangeListener (const Link<>& rListener) { if (::std::find (maFocusChangeListeners.begin(), maFocusChangeListeners.end(), rListener) == maFocusChangeListeners.end()) @@ -252,7 +252,7 @@ void FocusManager::AddFocusChangeListener (const Link& rListener) } } -void FocusManager::RemoveFocusChangeListener (const Link& rListener) +void FocusManager::RemoveFocusChangeListener (const Link<>& rListener) { maFocusChangeListeners.erase ( ::std::find (maFocusChangeListeners.begin(), maFocusChangeListeners.end(), rListener)); @@ -261,11 +261,11 @@ void FocusManager::RemoveFocusChangeListener (const Link& rListener) void FocusManager::NotifyFocusChangeListeners() const { // Create a copy of the listener list to be safe when that is modified. - ::std::vector<Link> aListeners (maFocusChangeListeners); + ::std::vector<Link<>> aListeners (maFocusChangeListeners); // Tell the selection change listeners that the selection has changed. - ::std::vector<Link>::iterator iListener (aListeners.begin()); - ::std::vector<Link>::iterator iEnd (aListeners.end()); + ::std::vector<Link<>>::iterator iListener (aListeners.begin()); + ::std::vector<Link<>>::iterator iEnd (aListeners.end()); for (; iListener!=iEnd; ++iListener) { iListener->Call(NULL); diff --git a/sd/source/ui/slidesorter/controller/SlsListener.cxx b/sd/source/ui/slidesorter/controller/SlsListener.cxx index 149edf879839..4e64787c997d 100644 --- a/sd/source/ui/slidesorter/controller/SlsListener.cxx +++ b/sd/source/ui/slidesorter/controller/SlsListener.cxx @@ -125,7 +125,7 @@ Listener::Listener ( StartListening(*pMainViewShell); } - Link aLink (LINK(this, Listener, EventMultiplexerCallback)); + Link<> aLink (LINK(this, Listener, EventMultiplexerCallback)); mpBase->GetEventMultiplexer()->AddEventListener( aLink, tools::EventMultiplexerEvent::EID_MAIN_VIEW_REMOVED @@ -185,7 +185,7 @@ void Listener::ReleaseListeners() if (mpBase != NULL) { - Link aLink (LINK(this, Listener, EventMultiplexerCallback)); + Link<> aLink (LINK(this, Listener, EventMultiplexerCallback)); mpBase->GetEventMultiplexer()->RemoveEventListener( aLink, tools::EventMultiplexerEvent::EID_MAIN_VIEW_REMOVED diff --git a/sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx b/sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx index ccf32ce708e5..eaa64571cf63 100644 --- a/sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx +++ b/sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx @@ -88,11 +88,11 @@ void ScrollBarManager::Disconnect() { if (mpVerticalScrollBar != nullptr) { - mpVerticalScrollBar->SetScrollHdl (Link()); + mpVerticalScrollBar->SetScrollHdl (Link<>()); } if (mpHorizontalScrollBar != nullptr) { - mpHorizontalScrollBar->SetScrollHdl (Link()); + mpHorizontalScrollBar->SetScrollHdl (Link<>()); } } diff --git a/sd/source/ui/slidesorter/controller/SlsSelectionManager.cxx b/sd/source/ui/slidesorter/controller/SlsSelectionManager.cxx index 889e3510c940..0768a1e62903 100644 --- a/sd/source/ui/slidesorter/controller/SlsSelectionManager.cxx +++ b/sd/source/ui/slidesorter/controller/SlsSelectionManager.cxx @@ -236,8 +236,8 @@ void SelectionManager::SelectionHasChanged (const bool bMakeSelectionVisible) pViewShell->UpdatePreview(pDescriptor->GetPage()); // Tell the selection change listeners that the selection has changed. - ::std::vector<Link>::iterator iListener (maSelectionChangeListeners.begin()); - ::std::vector<Link>::iterator iEnd (maSelectionChangeListeners.end()); + ::std::vector<Link<>>::iterator iListener (maSelectionChangeListeners.begin()); + ::std::vector<Link<>>::iterator iEnd (maSelectionChangeListeners.end()); for (; iListener!=iEnd; ++iListener) { iListener->Call(NULL); @@ -249,7 +249,7 @@ void SelectionManager::SelectionHasChanged (const bool bMakeSelectionVisible) } } -void SelectionManager::AddSelectionChangeListener (const Link& rListener) +void SelectionManager::AddSelectionChangeListener (const Link<>& rListener) { if (::std::find ( maSelectionChangeListeners.begin(), @@ -260,7 +260,7 @@ void SelectionManager::AddSelectionChangeListener (const Link& rListener) } } -void SelectionManager::RemoveSelectionChangeListener(const Link&rListener) +void SelectionManager::RemoveSelectionChangeListener(const Link<>&rListener) { maSelectionChangeListeners.erase ( ::std::find ( diff --git a/sd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx b/sd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx index 3658db1f3854..62818dc4ebc3 100644 --- a/sd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx +++ b/sd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx @@ -246,7 +246,7 @@ private: bool mbPreModelChangeDone; bool mbPostModelChangePending; - ::std::vector<Link> maSelectionChangeListeners; + ::std::vector<Link<>> maSelectionChangeListeners; /** This array stores the indices of the selected page descriptors at the time when the edit mode is switched to EM_MASTERPAGE. With this diff --git a/sd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx b/sd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx index c67fdf3e74bb..e6bdfffa8a34 100644 --- a/sd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx +++ b/sd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx @@ -143,14 +143,14 @@ public: the second and all following calls are ignored. Each listener is added only once. */ - void AddFocusChangeListener (const Link& rListener); + void AddFocusChangeListener (const Link<>& rListener); /** Remove a focus change listener. @param rListener It is save to pass a listener that was not added are has been removed previously. Such calls are ignored. */ - void RemoveFocusChangeListener (const Link& rListener); + void RemoveFocusChangeListener (const Link<>& rListener); /** Create an instance of this class to temporarily hide the focus indicator. It is restored to its former visibility state when the @@ -179,7 +179,7 @@ private: */ bool mbPageIsFocused; - ::std::vector<Link> maFocusChangeListeners; + ::std::vector<Link<>> maFocusChangeListeners; /** When vertical wrap is active then pressing UP in the top row moves the focus to the bottom row, DOWN in the bottom row moves the focus diff --git a/sd/source/ui/slidesorter/inc/controller/SlsSelectionManager.hxx b/sd/source/ui/slidesorter/inc/controller/SlsSelectionManager.hxx index 1d63ead4c585..84a95942c0f0 100644 --- a/sd/source/ui/slidesorter/inc/controller/SlsSelectionManager.hxx +++ b/sd/source/ui/slidesorter/inc/controller/SlsSelectionManager.hxx @@ -24,10 +24,10 @@ #include "controller/SlsAnimator.hxx" #include <sal/types.h> #include <tools/gen.hxx> +#include <tools/link.hxx> #include <basegfx/range/b2irectangle.hxx> #include <vector> -class Link; class SdPage; namespace sd { namespace slidesorter { @@ -78,7 +78,7 @@ public: the second and all following calls are ignored. Each listener is added only once. */ - void AddSelectionChangeListener (const Link& rListener); + void AddSelectionChangeListener (const Link<>& rListener); /** Remove a listener that was called when the selection of the slide sorter changes. @@ -86,7 +86,7 @@ public: It is save to pass a listener that was not added are has been removed previously. Such calls are ignored. */ - void RemoveSelectionChangeListener (const Link& rListener); + void RemoveSelectionChangeListener (const Link<>& rListener); /** Return the position where to insert pasted slides based on the current selection. When there is a selection then the insert @@ -109,7 +109,7 @@ private: SlideSorter& mrSlideSorter; SlideSorterController& mrController; - ::std::vector<Link> maSelectionChangeListeners; + ::std::vector<Link<>> maSelectionChangeListeners; /** This array stores the indices of the selected page descriptors at the time when the edit mode is switched to EM_MASTERPAGE. With this diff --git a/sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx b/sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx index 3d7a2bd4e60d..9ec37e4546e0 100644 --- a/sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx +++ b/sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx @@ -190,14 +190,14 @@ public: the second and all following calls are ignored. Each listener is added only once. */ - void AddVisibilityChangeListener (const Link& rListener); + void AddVisibilityChangeListener (const Link<>& rListener); /** Remove a listener that is called when the set of visible slides changes. @param rListener It is save to pass a listener that was not added or has been removed previously. Such calls are ignored. */ - void RemoveVisibilityChangeListener (const Link& rListener); + void RemoveVisibilityChangeListener (const Link<>& rListener); /** The page under the mouse is not highlighted in some contexts. Call this method on context changes. @@ -259,7 +259,7 @@ private: SharedILayerPainter mpBackgroundPainter; ::boost::scoped_ptr<ToolTip> mpToolTip; bool mbIsRearrangePending; - ::std::vector<Link> maVisibilityChangeListeners; + ::std::vector<Link<>> maVisibilityChangeListeners; /** Determine the visibility of all page objects. */ diff --git a/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx b/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx index d58ac87098d6..bd2d1aee49ef 100644 --- a/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx +++ b/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx @@ -693,14 +693,14 @@ void SlideSorterViewShell::SetPageSelection ( } void SlideSorterViewShell::AddSelectionChangeListener ( - const Link& rCallback) + const Link<>& rCallback) { OSL_ASSERT(mpSlideSorter.get()!=NULL); mpSlideSorter->GetController().GetSelectionManager()->AddSelectionChangeListener(rCallback); } void SlideSorterViewShell::RemoveSelectionChangeListener ( - const Link& rCallback) + const Link<>& rCallback) { OSL_ASSERT(mpSlideSorter.get()!=NULL); mpSlideSorter->GetController().GetSelectionManager()->RemoveSelectionChangeListener(rCallback); diff --git a/sd/source/ui/slidesorter/view/SlideSorterView.cxx b/sd/source/ui/slidesorter/view/SlideSorterView.cxx index 33b9643073de..51565b02101d 100644 --- a/sd/source/ui/slidesorter/view/SlideSorterView.cxx +++ b/sd/source/ui/slidesorter/view/SlideSorterView.cxx @@ -486,8 +486,8 @@ void SlideSorterView::DeterminePageObjectVisibilities() // Tell the listeners that the visibility of some objects has // changed. - ::std::vector<Link>& aChangeListeners (maVisibilityChangeListeners); - for (::std::vector<Link>::const_iterator + ::std::vector<Link<>>& aChangeListeners (maVisibilityChangeListeners); + for (::std::vector<Link<>>::const_iterator iLink(aChangeListeners.begin()), iEnd(aChangeListeners.end()); iLink!=iEnd; @@ -720,7 +720,7 @@ Pair SlideSorterView::GetVisiblePageRange() return maVisiblePageRange; } -void SlideSorterView::AddVisibilityChangeListener (const Link& rListener) +void SlideSorterView::AddVisibilityChangeListener (const Link<>& rListener) { if (::std::find ( maVisibilityChangeListeners.begin(), @@ -731,7 +731,7 @@ void SlideSorterView::AddVisibilityChangeListener (const Link& rListener) } } -void SlideSorterView::RemoveVisibilityChangeListener(const Link&rListener) +void SlideSorterView::RemoveVisibilityChangeListener(const Link<>&rListener) { maVisibilityChangeListeners.erase ( ::std::find ( diff --git a/sd/source/ui/table/TableDesignPane.cxx b/sd/source/ui/table/TableDesignPane.cxx index 6515c6e4b594..54fa4f451125 100644 --- a/sd/source/ui/table/TableDesignPane.cxx +++ b/sd/source/ui/table/TableDesignPane.cxx @@ -428,7 +428,7 @@ void TableDesignWidget::updateControls() void TableDesignWidget::addListener() { - Link aLink( LINK(this,TableDesignWidget,EventMultiplexerListener) ); + Link<> aLink( LINK(this,TableDesignWidget,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->AddEventListener ( aLink, tools::EventMultiplexerEvent::EID_EDIT_VIEW_SELECTION @@ -440,7 +440,7 @@ void TableDesignWidget::addListener() void TableDesignWidget::removeListener() { - Link aLink( LINK(this,TableDesignWidget,EventMultiplexerListener) ); + Link<> aLink( LINK(this,TableDesignWidget,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->RemoveEventListener( aLink ); } diff --git a/sd/source/ui/tools/AsynchronousCall.cxx b/sd/source/ui/tools/AsynchronousCall.cxx index 1a3639409570..f5bd0a1128e9 100644 --- a/sd/source/ui/tools/AsynchronousCall.cxx +++ b/sd/source/ui/tools/AsynchronousCall.cxx @@ -27,7 +27,7 @@ AsynchronousCall::AsynchronousCall() : maTimer(), mpFunction() { - Link aCallback (LINK(this,AsynchronousCall,TimerCallback)); + Link<> aCallback (LINK(this,AsynchronousCall,TimerCallback)); maTimer.SetTimeoutHdl(aCallback); } diff --git a/sd/source/ui/tools/EventMultiplexer.cxx b/sd/source/ui/tools/EventMultiplexer.cxx index f23d9fd0a267..4ccb5ad49683 100644 --- a/sd/source/ui/tools/EventMultiplexer.cxx +++ b/sd/source/ui/tools/EventMultiplexer.cxx @@ -68,11 +68,11 @@ public: virtual ~Implementation(); void AddEventListener ( - Link& rCallback, + Link<>& rCallback, EventMultiplexerEvent::EventId aEventTypes); void RemoveEventListener ( - Link& rCallback, + Link<>& rCallback, EventMultiplexerEvent::EventId aEventTypes); void CallListeners (EventMultiplexerEvent& rEvent); @@ -120,7 +120,7 @@ protected: private: ViewShellBase& mrBase; - typedef ::std::pair<Link,EventMultiplexerEvent::EventId> ListenerDescriptor; + typedef ::std::pair<Link<>,EventMultiplexerEvent::EventId> ListenerDescriptor; typedef ::std::vector<ListenerDescriptor> ListenerList; ListenerList maListeners; @@ -190,14 +190,14 @@ EventMultiplexer::~EventMultiplexer() } void EventMultiplexer::AddEventListener ( - Link& rCallback, + Link<>& rCallback, EventMultiplexerEvent::EventId aEventTypes) { mpImpl->AddEventListener (rCallback, aEventTypes); } void EventMultiplexer::RemoveEventListener ( - Link& rCallback, + Link<>& rCallback, EventMultiplexerEvent::EventId aEventTypes) { mpImpl->RemoveEventListener (rCallback, aEventTypes); @@ -321,7 +321,7 @@ void EventMultiplexer::Implementation::ReleaseListeners() } void EventMultiplexer::Implementation::AddEventListener ( - Link& rCallback, + Link<>& rCallback, EventMultiplexerEvent::EventId aEventTypes) { ListenerList::iterator iListener (maListeners.begin()); @@ -341,7 +341,7 @@ void EventMultiplexer::Implementation::AddEventListener ( } void EventMultiplexer::Implementation::RemoveEventListener ( - Link& rCallback, + Link<>& rCallback, EventMultiplexerEvent::EventId aEventTypes) { ListenerList::iterator iListener (maListeners.begin()); diff --git a/sd/source/ui/tools/SlotStateListener.cxx b/sd/source/ui/tools/SlotStateListener.cxx index 017ff5e215ec..b508abdd4ae3 100644 --- a/sd/source/ui/tools/SlotStateListener.cxx +++ b/sd/source/ui/tools/SlotStateListener.cxx @@ -32,7 +32,7 @@ using namespace ::com::sun::star; namespace sd { namespace tools { SlotStateListener::SlotStateListener ( - Link& rCallback, + Link<>& rCallback, const uno::Reference<frame::XDispatchProvider>& rxDispatchProvider, const OUString& rSlotName) : SlotStateListenerInterfaceBase(maMutex), @@ -49,7 +49,7 @@ SlotStateListener::~SlotStateListener() ReleaseListeners(); } -void SlotStateListener::SetCallback (const Link& rCallback) +void SlotStateListener::SetCallback (const Link<>& rCallback) { ThrowIfDisposed(); @@ -90,7 +90,7 @@ void SlotStateListener::disposing() { ReleaseListeners(); mxDispatchProviderWeak = uno::WeakReference<frame::XDispatchProvider>(NULL); - maCallback = Link(); + maCallback = Link<>(); } util::URL SlotStateListener::MakeURL (const OUString& rSlotName) const diff --git a/sd/source/ui/tools/TimerBasedTaskExecution.cxx b/sd/source/ui/tools/TimerBasedTaskExecution.cxx index 03335f7e06e4..10f46a019fa6 100644 --- a/sd/source/ui/tools/TimerBasedTaskExecution.cxx +++ b/sd/source/ui/tools/TimerBasedTaskExecution.cxx @@ -88,7 +88,7 @@ TimerBasedTaskExecution::TimerBasedTaskExecution ( mpSelf(), mnMaxTimePerStep(nMaxTimePerStep) { - Link aLink(LINK(this,TimerBasedTaskExecution,TimerCallback)); + Link<> aLink(LINK(this,TimerBasedTaskExecution,TimerCallback)); maTimer.SetTimeoutHdl(aLink); maTimer.SetTimeout(nMillisecondsBetweenSteps); maTimer.Start(); diff --git a/sd/source/ui/view/DocumentRenderer.cxx b/sd/source/ui/view/DocumentRenderer.cxx index d3e44fb3561e..14230cb9f43e 100644 --- a/sd/source/ui/view/DocumentRenderer.cxx +++ b/sd/source/ui/view/DocumentRenderer.cxx @@ -1627,7 +1627,7 @@ private: Size( nRotatedWidth, nRotatedHeight ) ); } - Link aOldLink; + Link<> aOldLink; Outliner* pOutliner = mrBase.GetDocument()->GetInternalOutliner(); pOutliner->Init(OUTLINERMODE_OUTLINEVIEW); const sal_uInt16 nSavedOutlMode (pOutliner->GetMode()); diff --git a/sd/source/ui/view/FormShellManager.cxx b/sd/source/ui/view/FormShellManager.cxx index 03ac6c7045bd..ad6354b96105 100644 --- a/sd/source/ui/view/FormShellManager.cxx +++ b/sd/source/ui/view/FormShellManager.cxx @@ -57,7 +57,7 @@ FormShellManager::FormShellManager (ViewShellBase& rBase) { // Register at the EventMultiplexer to be informed about changes in the // center pane. - Link aLink (LINK(this, FormShellManager, ConfigurationUpdateHandler)); + Link<> aLink (LINK(this, FormShellManager, ConfigurationUpdateHandler)); mrBase.GetEventMultiplexer()->AddEventListener( aLink, sd::tools::EventMultiplexerEvent::EID_MAIN_VIEW_REMOVED @@ -73,7 +73,7 @@ FormShellManager::~FormShellManager() UnregisterAtCenterPane(); // Unregister from the EventMultiplexer. - Link aLink (LINK(this, FormShellManager, ConfigurationUpdateHandler)); + Link<> aLink (LINK(this, FormShellManager, ConfigurationUpdateHandler)); mrBase.GetEventMultiplexer()->RemoveEventListener(aLink); if (mpSubShellFactory.get() != NULL) @@ -91,7 +91,7 @@ void FormShellManager::SetFormShell (FmFormShell* pFormShell) // Disconnect from the old form shell. if (mpFormShell != NULL) { - mpFormShell->SetControlActivationHandler(Link()); + mpFormShell->SetControlActivationHandler(Link<>()); EndListening(*mpFormShell); mpFormShell->SetView(NULL); } diff --git a/sd/source/ui/view/Outliner.cxx b/sd/source/ui/view/Outliner.cxx index ca5b6dd66fb5..277efb16bb77 100644 --- a/sd/source/ui/view/Outliner.cxx +++ b/sd/source/ui/view/Outliner.cxx @@ -311,7 +311,7 @@ void Outliner::EndSpelling() bool bViewIsDrawViewShell(pViewShell && pViewShell->ISA(DrawViewShell)); if (bViewIsDrawViewShell) { - SetStatusEventHdl(Link()); + SetStatusEventHdl(Link<>()); mpView = pViewShell->GetView(); mpView->UnmarkAllObj (mpView->GetSdrPageView()); mpView->SdrEndTextEdit(); @@ -736,7 +736,7 @@ void Outliner::DetectChange() || aPosition.mePageKind != pDrawViewShell->GetPageKind())) { // Either the edit mode or the page kind has changed. - SetStatusEventHdl(Link()); + SetStatusEventHdl(Link<>()); SdrPageView* pPageView = mpView->GetSdrPageView(); if (pPageView != NULL) @@ -1207,7 +1207,7 @@ void Outliner::SetViewMode (PageKind ePageKind) // Restore old edit mode. pDrawViewShell->ChangeEditMode(mpImpl->meOriginalEditMode, false); - SetStatusEventHdl(Link()); + SetStatusEventHdl(Link<>()); OUString sViewURL; switch (ePageKind) { diff --git a/sd/source/ui/view/ToolBarManager.cxx b/sd/source/ui/view/ToolBarManager.cxx index 3b5b281b13de..67cc9552500f 100644 --- a/sd/source/ui/view/ToolBarManager.cxx +++ b/sd/source/ui/view/ToolBarManager.cxx @@ -536,7 +536,7 @@ ToolBarManager::Implementation::Implementation ( mnPendingSetValidCall(0), maToolBarRules(rpToolBarManager,rpViewShellManager) { - Link aLink (LINK(this,ToolBarManager::Implementation,EventMultiplexerCallback)); + Link<> aLink (LINK(this,ToolBarManager::Implementation,EventMultiplexerCallback)); mpEventMultiplexer->AddEventListener( aLink, tools::EventMultiplexerEvent::EID_CONTROLLER_ATTACHED @@ -551,7 +551,7 @@ ToolBarManager::Implementation::Implementation ( ToolBarManager::Implementation::~Implementation() { // Unregister at broadcasters. - Link aLink (LINK(this,ToolBarManager::Implementation,EventMultiplexerCallback)); + Link<> aLink (LINK(this,ToolBarManager::Implementation,EventMultiplexerCallback)); mpEventMultiplexer->RemoveEventListener(aLink); // Abort pending user calls. diff --git a/sd/source/ui/view/drviews4.cxx b/sd/source/ui/view/drviews4.cxx index 9a6b58553aec..dc7a8fe99354 100644 --- a/sd/source/ui/view/drviews4.cxx +++ b/sd/source/ui/view/drviews4.cxx @@ -609,7 +609,7 @@ void DrawViewShell::Command(const CommandEvent& rCEvt, ::sd::Window* pWin) ( !rCEvt.IsMouseEvent() && pOutlinerView->IsCursorAtWrongSpelledWord() ) ) { // Popup for Online-Spelling now handled by DrawDocShell - Link aLink = LINK(GetDocSh(), DrawDocShell, OnlineSpellCallback); + Link<> aLink = LINK(GetDocSh(), DrawDocShell, OnlineSpellCallback); if( !rCEvt.IsMouseEvent() ) { diff --git a/sd/source/ui/view/outlnvsh.cxx b/sd/source/ui/view/outlnvsh.cxx index f72aa2f3512c..a222d8a0a393 100644 --- a/sd/source/ui/view/outlnvsh.cxx +++ b/sd/source/ui/view/outlnvsh.cxx @@ -1378,7 +1378,7 @@ void OutlineViewShell::Command( const CommandEvent& rCEvt, ::sd::Window* pWin ) if (pOLV && pOLV->IsWrongSpelledWordAtPos(aPos)) { // Popup for Online-Spelling now handled by DrawDocShell - Link aLink = LINK(GetDocSh(), DrawDocShell, OnlineSpellCallback); + Link<> aLink = LINK(GetDocSh(), DrawDocShell, OnlineSpellCallback); pOLV->ExecuteSpellPopup(aPos, &aLink); } diff --git a/sd/source/ui/view/outlview.cxx b/sd/source/ui/view/outlview.cxx index 8b0ba72e30f1..db4ab7a4a619 100644 --- a/sd/source/ui/view/outlview.cxx +++ b/sd/source/ui/view/outlview.cxx @@ -131,7 +131,7 @@ OutlineView::OutlineView( DrawDocShell& rDocSh, vcl::Window* pWindow, OutlineVie FillOutliner(); } - Link aLink( LINK(this,OutlineView,EventMultiplexerListener) ); + Link<> aLink( LINK(this,OutlineView,EventMultiplexerListener) ); mrOutlineViewShell.GetViewShellBase().GetEventMultiplexer()->AddEventListener( aLink, tools::EventMultiplexerEvent::EID_CURRENT_PAGE @@ -171,7 +171,7 @@ OutlineView::~OutlineView() { DBG_ASSERT(maDragAndDropModelGuard.get() == 0, "sd::OutlineView::~OutlineView(), prior drag operation not finished correctly!" ); - Link aLink( LINK(this,OutlineView,EventMultiplexerListener) ); + Link<> aLink( LINK(this,OutlineView,EventMultiplexerListener) ); mrOutlineViewShell.GetViewShellBase().GetEventMultiplexer()->RemoveEventListener( aLink ); DisconnectFromApplication(); @@ -1378,7 +1378,7 @@ void OutlineView::SetLinks() */ void OutlineView::ResetLinks() const { - Link aEmptyLink; + Link<> aEmptyLink; mrOutliner.SetParaInsertedHdl(aEmptyLink); mrOutliner.SetParaRemovingHdl(aEmptyLink); mrOutliner.SetDepthChangedHdl(aEmptyLink); diff --git a/sd/source/ui/view/viewoverlaymanager.cxx b/sd/source/ui/view/viewoverlaymanager.cxx index 40906cb21b19..f184bb89a177 100644 --- a/sd/source/ui/view/viewoverlaymanager.cxx +++ b/sd/source/ui/view/viewoverlaymanager.cxx @@ -422,7 +422,7 @@ ViewOverlayManager::ViewOverlayManager( ViewShellBase& rViewShellBase ) : mrBase( rViewShellBase ) , mnUpdateTagsEvent( 0 ) { - Link aLink( LINK(this,ViewOverlayManager,EventMultiplexerListener) ); + Link<> aLink( LINK(this,ViewOverlayManager,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->AddEventListener(aLink, tools::EventMultiplexerEvent::EID_CURRENT_PAGE | tools::EventMultiplexerEvent::EID_MAIN_VIEW_ADDED | tools::EventMultiplexerEvent::EID_VIEW_ADDED @@ -434,7 +434,7 @@ ViewOverlayManager::ViewOverlayManager( ViewShellBase& rViewShellBase ) ViewOverlayManager::~ViewOverlayManager() { - Link aLink( LINK(this,ViewOverlayManager,EventMultiplexerListener) ); + Link<> aLink( LINK(this,ViewOverlayManager,EventMultiplexerListener) ); mrBase.GetEventMultiplexer()->RemoveEventListener( aLink ); if( mnUpdateTagsEvent ) |