diff options
author | Noel Grandin <noel@peralex.com> | 2014-08-27 16:57:21 +0200 |
---|---|---|
committer | Norbert Thiebaud <nthiebaud@gmail.com> | 2014-09-06 15:47:44 -0500 |
commit | 5bce32904091ffe28884fd5c0f4801ee82bad101 (patch) | |
tree | fc2573078a858de456a0dc7b7810176d433241c7 /svx/source | |
parent | 10143717834d8401d85fdf9564e782a58b9983ec (diff) |
SfxHint: convert home-grown RTTI to normal C++ RTTI
Also note that I fixed a bug in SvxFontMenuControl::Notify
where the if statement had the check the wrong way around.
Change-Id: I611e8929c65818191e36bd80f2b985820ada4411
Reviewed-on: https://gerrit.libreoffice.org/11147
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
Diffstat (limited to 'svx/source')
27 files changed, 78 insertions, 122 deletions
diff --git a/svx/source/accessibility/AccessibleEmptyEditSource.cxx b/svx/source/accessibility/AccessibleEmptyEditSource.cxx index d2d0ac252d42..043718365ae8 100644 --- a/svx/source/accessibility/AccessibleEmptyEditSource.cxx +++ b/svx/source/accessibility/AccessibleEmptyEditSource.cxx @@ -316,7 +316,7 @@ namespace accessibility void AccessibleEmptyEditSource::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) { - const SdrHint* pSdrHint = PTR_CAST( SdrHint, &rHint ); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>( &rHint ); if( pSdrHint && pSdrHint->GetKind() == HINT_BEGEDIT && &mrObj == pSdrHint->GetObject() && mpEditSource.get() ) diff --git a/svx/source/accessibility/AccessibleTextHelper.cxx b/svx/source/accessibility/AccessibleTextHelper.cxx index f73bceeaba77..32444e634ffe 100644 --- a/svx/source/accessibility/AccessibleTextHelper.cxx +++ b/svx/source/accessibility/AccessibleTextHelper.cxx @@ -1064,8 +1064,8 @@ namespace accessibility mnParasChanged != -1 ) { // determine hint type - const TextHint* pTextHint = PTR_CAST( TextHint, pEvent ); - const SvxEditSourceHint* pEditSourceHint = PTR_CAST( SvxEditSourceHint, pEvent ); + const TextHint* pTextHint = dynamic_cast<const TextHint*>( pEvent ); + const SvxEditSourceHint* pEditSourceHint = dynamic_cast<const SvxEditSourceHint*>( pEvent ); if( !pEditSourceHint && pTextHint && (pTextHint->GetId() == TEXT_HINT_PARAINSERTED || @@ -1234,11 +1234,11 @@ namespace accessibility const SfxHint& rHint = *(pHint.get()); // determine hint type - const SdrHint* pSdrHint = PTR_CAST( SdrHint, &rHint ); - const SfxSimpleHint* pSimpleHint = PTR_CAST( SfxSimpleHint, &rHint ); - const TextHint* pTextHint = PTR_CAST( TextHint, &rHint ); - const SvxViewHint* pViewHint = PTR_CAST( SvxViewHint, &rHint ); - const SvxEditSourceHint* pEditSourceHint = PTR_CAST( SvxEditSourceHint, &rHint ); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>( &rHint ); + const SfxSimpleHint* pSimpleHint = dynamic_cast<const SfxSimpleHint*>( &rHint ); + const TextHint* pTextHint = dynamic_cast<const TextHint*>( &rHint ); + const SvxViewHint* pViewHint = dynamic_cast<const SvxViewHint*>( &rHint ); + const SvxEditSourceHint* pEditSourceHint = dynamic_cast<const SvxEditSourceHint*>( &rHint ); try { @@ -1415,11 +1415,11 @@ namespace accessibility mbInNotify = true; // determine hint type - const SdrHint* pSdrHint = PTR_CAST( SdrHint, &rHint ); - const SfxSimpleHint* pSimpleHint = PTR_CAST( SfxSimpleHint, &rHint ); - const TextHint* pTextHint = PTR_CAST( TextHint, &rHint ); - const SvxViewHint* pViewHint = PTR_CAST( SvxViewHint, &rHint ); - const SvxEditSourceHint* pEditSourceHint = PTR_CAST( SvxEditSourceHint, &rHint ); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>( &rHint ); + const SfxSimpleHint* pSimpleHint = dynamic_cast<const SfxSimpleHint*>( &rHint ); + const TextHint* pTextHint = dynamic_cast<const TextHint*>( &rHint ); + const SvxViewHint* pViewHint = dynamic_cast<const SvxViewHint*>( &rHint ); + const SvxEditSourceHint* pEditSourceHint = dynamic_cast<const SvxEditSourceHint*>( &rHint ); try { diff --git a/svx/source/accessibility/GraphCtlAccessibleContext.cxx b/svx/source/accessibility/GraphCtlAccessibleContext.cxx index 085bbb99dd46..0838e3138ffa 100644 --- a/svx/source/accessibility/GraphCtlAccessibleContext.cxx +++ b/svx/source/accessibility/GraphCtlAccessibleContext.cxx @@ -816,7 +816,7 @@ Rectangle SvxGraphCtrlAccessibleContext::GetBoundingBox( void ) throw( RuntimeEx void SvxGraphCtrlAccessibleContext::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) { - const SdrHint* pSdrHint = PTR_CAST( SdrHint, &rHint ); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>( &rHint ); if( pSdrHint ) { @@ -852,7 +852,7 @@ void SvxGraphCtrlAccessibleContext::Notify( SfxBroadcaster& /*rBC*/, const SfxHi } else { - const SfxSimpleHint* pSfxHint = PTR_CAST(SfxSimpleHint, &rHint ); + const SfxSimpleHint* pSfxHint = dynamic_cast<const SfxSimpleHint*>( &rHint ); // Has our SdDrawDocument just died? if(pSfxHint && pSfxHint->GetId() == SFX_HINT_DYING) diff --git a/svx/source/dialog/svxruler.cxx b/svx/source/dialog/svxruler.cxx index bf12a85572aa..60ace556fe04 100644 --- a/svx/source/dialog/svxruler.cxx +++ b/svx/source/dialog/svxruler.cxx @@ -3368,9 +3368,10 @@ void SvxRuler::Notify(SfxBroadcaster&, const SfxHint& rHint) */ // start update + const SfxSimpleHint* pSimpleHint = dynamic_cast<const SfxSimpleHint*>( &rHint ); if(bActive && - rHint.Type() == TYPE(SfxSimpleHint) && - ((SfxSimpleHint&) rHint ).GetId() == SFX_HINT_UPDATEDONE ) + pSimpleHint && + pSimpleHint->GetId() == SFX_HINT_UPDATEDONE ) { Update(); EndListening(*pBindings); diff --git a/svx/source/form/filtnav.cxx b/svx/source/form/filtnav.cxx index 4b1b2dd5b30e..828acb1ac2ba 100644 --- a/svx/source/form/filtnav.cxx +++ b/svx/source/form/filtnav.cxx @@ -231,11 +231,9 @@ class FmFilterHint : public SfxHint FmFilterData* m_pData; public: - TYPEINFO_OVERRIDE(); FmFilterHint(FmFilterData* pData):m_pData(pData){} FmFilterData* GetData() const { return m_pData; } }; -TYPEINIT1( FmFilterHint, SfxHint ); class FmFilterInsertedHint : public FmFilterHint @@ -243,54 +241,42 @@ class FmFilterInsertedHint : public FmFilterHint sal_uLong m_nPos; // Position relative to the parent of the data public: - TYPEINFO_OVERRIDE(); FmFilterInsertedHint(FmFilterData* pData, sal_uLong nRelPos) :FmFilterHint(pData) ,m_nPos(nRelPos){} sal_uLong GetPos() const { return m_nPos; } }; -TYPEINIT1( FmFilterInsertedHint, FmFilterHint ); class FmFilterRemovedHint : public FmFilterHint { public: - TYPEINFO_OVERRIDE(); FmFilterRemovedHint(FmFilterData* pData) :FmFilterHint(pData){} - }; -TYPEINIT1( FmFilterRemovedHint, FmFilterHint ); class FmFilterTextChangedHint : public FmFilterHint { public: - TYPEINFO_OVERRIDE(); FmFilterTextChangedHint(FmFilterData* pData) :FmFilterHint(pData){} - }; -TYPEINIT1( FmFilterTextChangedHint, FmFilterHint ); class FilterClearingHint : public SfxHint { public: - TYPEINFO_OVERRIDE(); FilterClearingHint(){} }; -TYPEINIT1( FilterClearingHint, SfxHint ); class FmFilterCurrentChangedHint : public SfxHint { public: - TYPEINFO_OVERRIDE(); FmFilterCurrentChangedHint(){} }; -TYPEINIT1( FmFilterCurrentChangedHint, SfxHint ); // class FmFilterAdapter, Listener an den FilterControls @@ -1483,28 +1469,28 @@ bool FmFilterNavigator::Select( SvTreeListEntry* pEntry, bool bSelect ) void FmFilterNavigator::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) { - if (rHint.ISA(FmFilterInsertedHint)) + if ( dynamic_cast<const FmFilterInsertedHint*>(&rHint) ) { - FmFilterInsertedHint* pHint = (FmFilterInsertedHint*)&rHint; + const FmFilterInsertedHint* pHint = dynamic_cast<const FmFilterInsertedHint*>(&rHint); Insert(pHint->GetData(), pHint->GetPos()); } - else if( rHint.ISA(FilterClearingHint) ) + else if( dynamic_cast<const FilterClearingHint*>(&rHint) ) { SvTreeListBox::Clear(); } - else if( rHint.ISA(FmFilterRemovedHint) ) + else if( dynamic_cast<const FmFilterRemovedHint*>(&rHint) ) { - FmFilterRemovedHint* pHint = (FmFilterRemovedHint*)&rHint; + const FmFilterRemovedHint* pHint = dynamic_cast<const FmFilterRemovedHint*>(&rHint); Remove(pHint->GetData()); } - else if( rHint.ISA(FmFilterTextChangedHint) ) + else if( dynamic_cast<const FmFilterTextChangedHint*>(&rHint) ) { - FmFilterTextChangedHint* pHint = (FmFilterTextChangedHint*)&rHint; + const FmFilterTextChangedHint* pHint = dynamic_cast<const FmFilterTextChangedHint*>(&rHint); SvTreeListEntry* pEntry = FindEntry(pHint->GetData()); if (pEntry) SetEntryText( pEntry, pHint->GetData()->GetText()); } - else if( rHint.ISA(FmFilterCurrentChangedHint) ) + else if( dynamic_cast<const FmFilterCurrentChangedHint*>(&rHint) ) { // invalidate the entries for (SvTreeListEntry* pEntry = First(); pEntry != NULL; diff --git a/svx/source/form/fmexpl.cxx b/svx/source/form/fmexpl.cxx index ca585ae128d8..4c24ad1c73cc 100644 --- a/svx/source/form/fmexpl.cxx +++ b/svx/source/form/fmexpl.cxx @@ -69,8 +69,6 @@ using namespace ::com::sun::star::beans; using namespace ::com::sun::star::lang; using namespace ::com::sun::star::container; -TYPEINIT1( FmNavInsertedHint, SfxHint ); - FmNavInsertedHint::FmNavInsertedHint( FmEntryData* pInsertedEntryData, sal_uInt32 nRelPos ) :pEntryData( pInsertedEntryData ) ,nPos( nRelPos ) @@ -87,8 +85,6 @@ FmNavInsertedHint::~FmNavInsertedHint() // class FmNavInsertedHint -TYPEINIT1( FmNavModelReplacedHint, SfxHint ); - FmNavModelReplacedHint::FmNavModelReplacedHint( FmEntryData* pAffectedEntryData ) :pEntryData( pAffectedEntryData ) { @@ -99,8 +95,6 @@ FmNavModelReplacedHint::~FmNavModelReplacedHint() { } -TYPEINIT1( FmNavRemovedHint, SfxHint ); - FmNavRemovedHint::FmNavRemovedHint( FmEntryData* pRemovedEntryData ) :pEntryData( pRemovedEntryData ) { @@ -111,8 +105,6 @@ FmNavRemovedHint::~FmNavRemovedHint() { } -TYPEINIT1( FmNavNameChangedHint, SfxHint ); - FmNavNameChangedHint::FmNavNameChangedHint( FmEntryData* pData, const OUString& rNewName ) :pEntryData( pData ) ,aNewName( rNewName ) @@ -124,8 +116,6 @@ FmNavNameChangedHint::~FmNavNameChangedHint() { } -TYPEINIT1( FmNavClearedHint, SfxHint ); - FmNavClearedHint::FmNavClearedHint() { } @@ -136,15 +126,6 @@ FmNavClearedHint::~FmNavClearedHint() } -// class FmNavRequestSelectHint - -TYPEINIT1(FmNavRequestSelectHint, SfxHint); - - -// class FmNavViewMarksChanged - -TYPEINIT1(FmNavViewMarksChanged, SfxHint); - FmEntryDataList::FmEntryDataList() { } diff --git a/svx/source/form/fmshell.cxx b/svx/source/form/fmshell.cxx index 80fc7441674e..36671195d898 100644 --- a/svx/source/form/fmshell.cxx +++ b/svx/source/form/fmshell.cxx @@ -144,9 +144,6 @@ using namespace ::com::sun::star::form::runtime; using namespace ::com::sun::star::frame; using namespace ::svxform; -TYPEINIT1( FmDesignModeChangedHint, SfxHint ); - - FmDesignModeChangedHint::FmDesignModeChangedHint( bool bDesMode ) :m_bDesignMode( bDesMode ) { diff --git a/svx/source/form/fmundo.cxx b/svx/source/form/fmundo.cxx index 11487c780f28..6d0e16747ebd 100644 --- a/svx/source/form/fmundo.cxx +++ b/svx/source/form/fmundo.cxx @@ -287,9 +287,9 @@ void FmXUndoEnvironment::ModeChanged() void FmXUndoEnvironment::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) { - if (rHint.ISA(SdrHint)) + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); + if (pSdrHint) { - SdrHint* pSdrHint = (SdrHint*)&rHint; switch( pSdrHint->GetKind() ) { case HINT_OBJINSERTED: @@ -307,9 +307,9 @@ void FmXUndoEnvironment::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) break; } } - else if (rHint.ISA(SfxSimpleHint)) + else if (dynamic_cast<const SfxSimpleHint*>(&rHint)) { - switch ( ((SfxSimpleHint&)rHint).GetId() ) + switch ( static_cast<const SfxSimpleHint*>(&rHint)->GetId() ) { case SFX_HINT_DYING: dispose(); @@ -320,9 +320,9 @@ void FmXUndoEnvironment::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) break; } } - else if (rHint.ISA(SfxEventHint)) + else if (dynamic_cast<const SfxEventHint*>(&rHint)) { - switch (((SfxEventHint&)rHint).GetEventId()) + switch ( static_cast<const SfxEventHint*>(&rHint)->GetEventId() ) { case SFX_EVENT_CREATEDOC: case SFX_EVENT_OPENDOC: diff --git a/svx/source/form/fmvwimp.cxx b/svx/source/form/fmvwimp.cxx index 850eda9f15e3..c9b1b60e7cb6 100644 --- a/svx/source/form/fmvwimp.cxx +++ b/svx/source/form/fmvwimp.cxx @@ -1675,8 +1675,9 @@ FmXFormView::ObjectRemoveListener::ObjectRemoveListener( FmXFormView* pParent ) void FmXFormView::ObjectRemoveListener::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) { - if (rHint.ISA(SdrHint) && (((SdrHint&)rHint).GetKind() == HINT_OBJREMOVED)) - m_pParent->ObjectRemovedInAliveMode(((SdrHint&)rHint).GetObject()); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); + if (pSdrHint && pSdrHint->GetKind() == HINT_OBJREMOVED) + m_pParent->ObjectRemovedInAliveMode(pSdrHint->GetObject()); } diff --git a/svx/source/form/navigatortree.cxx b/svx/source/form/navigatortree.cxx index 187a1cb7af17..262d00afa15d 100644 --- a/svx/source/form/navigatortree.cxx +++ b/svx/source/form/navigatortree.cxx @@ -549,24 +549,24 @@ namespace svxform void NavigatorTree::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) { - if( rHint.ISA(FmNavRemovedHint) ) + if( dynamic_cast<const FmNavRemovedHint*>(&rHint) ) { - FmNavRemovedHint* pRemovedHint = (FmNavRemovedHint*)&rHint; + const FmNavRemovedHint* pRemovedHint = static_cast<const FmNavRemovedHint*>(&rHint); FmEntryData* pEntryData = pRemovedHint->GetEntryData(); Remove( pEntryData ); } - else if( rHint.ISA(FmNavInsertedHint) ) + else if( dynamic_cast<const FmNavInsertedHint*>(&rHint) ) { - FmNavInsertedHint* pInsertedHint = (FmNavInsertedHint*)&rHint; + const FmNavInsertedHint* pInsertedHint = static_cast<const FmNavInsertedHint*>(&rHint); FmEntryData* pEntryData = pInsertedHint->GetEntryData(); sal_uInt32 nRelPos = pInsertedHint->GetRelPos(); Insert( pEntryData, nRelPos ); } - else if( rHint.ISA(FmNavModelReplacedHint) ) + else if( dynamic_cast<const FmNavModelReplacedHint*>(&rHint) ) { - FmEntryData* pData = ((FmNavModelReplacedHint*)&rHint)->GetEntryData(); + FmEntryData* pData = static_cast<const FmNavModelReplacedHint*>(&rHint)->GetEntryData(); SvTreeListEntry* pEntry = FindEntry( pData ); if (pEntry) { // das Image neu setzen @@ -575,14 +575,14 @@ namespace svxform } } - else if( rHint.ISA(FmNavNameChangedHint) ) + else if( dynamic_cast<const FmNavNameChangedHint*>(&rHint) ) { - FmNavNameChangedHint* pNameChangedHint = (FmNavNameChangedHint*)&rHint; + const FmNavNameChangedHint* pNameChangedHint = static_cast<const FmNavNameChangedHint*>(&rHint); SvTreeListEntry* pEntry = FindEntry( pNameChangedHint->GetEntryData() ); SetEntryText( pEntry, pNameChangedHint->GetNewName() ); } - else if( rHint.ISA(FmNavClearedHint) ) + else if( dynamic_cast<const FmNavClearedHint*>(&rHint) ) { SvTreeListBox::Clear(); @@ -592,10 +592,10 @@ namespace svxform m_pRootEntry = InsertEntry( SVX_RESSTR(RID_STR_FORMS), aRootImage, aRootImage, NULL, false, 0, NULL ); } - else if (!m_bMarkingObjects && rHint.ISA(FmNavRequestSelectHint)) + else if (!m_bMarkingObjects && dynamic_cast<const FmNavRequestSelectHint*>(&rHint)) { // wenn m_bMarkingObjects sal_True ist, markiere ich gerade selber Objekte, und da der ganze Mechanismus dahinter synchron ist, // ist das genau der Hint, der durch mein Markieren ausgeloest wird, also kann ich ihn ignorieren - FmNavRequestSelectHint* pershHint = (FmNavRequestSelectHint*)&rHint; + FmNavRequestSelectHint* pershHint = const_cast<FmNavRequestSelectHint*>(static_cast<const FmNavRequestSelectHint*>(&rHint)); FmEntryDataArray& arredToSelect = pershHint->GetItems(); SynchronizeSelection(arredToSelect); diff --git a/svx/source/form/navigatortreemodel.cxx b/svx/source/form/navigatortreemodel.cxx index 672692eef518..215060641680 100644 --- a/svx/source/form/navigatortreemodel.cxx +++ b/svx/source/form/navigatortreemodel.cxx @@ -691,9 +691,9 @@ namespace svxform void NavigatorTreeModel::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) { - if( rHint.ISA(SdrHint) ) + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); + if( pSdrHint ) { - SdrHint* pSdrHint = (SdrHint*)&rHint; switch( pSdrHint->GetKind() ) { case HINT_OBJINSERTED: @@ -707,13 +707,13 @@ namespace svxform } } // hat sich die shell verabschiedet? - else if ( rHint.ISA(SfxSimpleHint) && ((SfxSimpleHint&)rHint).GetId() == SFX_HINT_DYING) + else if ( dynamic_cast<const SfxSimpleHint*>(&rHint) && static_cast<const SfxSimpleHint*>(&rHint)->GetId() == SFX_HINT_DYING) UpdateContent((FmFormShell*)NULL); // hat sich die Markierung der Controls veraendert ? - else if (rHint.ISA(FmNavViewMarksChanged)) + else if (dynamic_cast<const FmNavViewMarksChanged*>(&rHint)) { - FmNavViewMarksChanged* pvmcHint = (FmNavViewMarksChanged*)&rHint; + const FmNavViewMarksChanged* pvmcHint = static_cast<const FmNavViewMarksChanged*>(&rHint); BroadcastMarkedObjects( pvmcHint->GetAffectedView()->GetMarkedObjectList() ); } } diff --git a/svx/source/inc/fmexpl.hxx b/svx/source/inc/fmexpl.hxx index fbfa8d8e6bf2..edec6ffffa10 100644 --- a/svx/source/inc/fmexpl.hxx +++ b/svx/source/inc/fmexpl.hxx @@ -67,7 +67,6 @@ class FmNavInsertedHint : public SfxHint sal_uInt32 nPos; public: - TYPEINFO_OVERRIDE(); FmNavInsertedHint( FmEntryData* pInsertedEntryData, sal_uInt32 nRelPos ); virtual ~FmNavInsertedHint(); @@ -81,7 +80,6 @@ class FmNavModelReplacedHint : public SfxHint FmEntryData* pEntryData; // die Daten des Eintrages, der ein neues Model bekommen hat public: - TYPEINFO_OVERRIDE(); FmNavModelReplacedHint( FmEntryData* pAffectedEntryData ); virtual ~FmNavModelReplacedHint(); @@ -94,7 +92,6 @@ class FmNavRemovedHint : public SfxHint FmEntryData* pEntryData; public: - TYPEINFO_OVERRIDE(); FmNavRemovedHint( FmEntryData* pInsertedEntryData ); virtual ~FmNavRemovedHint(); @@ -108,7 +105,6 @@ class FmNavNameChangedHint : public SfxHint OUString aNewName; public: - TYPEINFO_OVERRIDE(); FmNavNameChangedHint( FmEntryData* pData, const OUString& rNewName ); virtual ~FmNavNameChangedHint(); @@ -120,7 +116,6 @@ public: class FmNavClearedHint : public SfxHint { public: - TYPEINFO_OVERRIDE(); FmNavClearedHint(); virtual ~FmNavClearedHint(); }; @@ -130,11 +125,10 @@ class FmNavViewMarksChanged : public SfxHint { FmFormView* pView; public: - TYPEINFO_OVERRIDE(); FmNavViewMarksChanged(FmFormView* pWhichView) { pView = pWhichView; } virtual ~FmNavViewMarksChanged() {} - FmFormView* GetAffectedView() { return pView; } + const FmFormView* GetAffectedView() const { return pView; } }; @@ -225,7 +219,6 @@ class FmNavRequestSelectHint : public SfxHint FmEntryDataArray m_arredToSelect; bool m_bMixedSelection; public: - TYPEINFO_OVERRIDE(); FmNavRequestSelectHint() : m_bMixedSelection(false) { @@ -233,7 +226,7 @@ public: virtual ~FmNavRequestSelectHint() {} void SetMixedSelection(bool bMixedSelection) { m_bMixedSelection = bMixedSelection; } - bool IsMixedSelection() { return m_bMixedSelection; } + bool IsMixedSelection() const { return m_bMixedSelection; } void AddItem(FmEntryData* pEntry) { m_arredToSelect.insert(pEntry); } void ClearItems() { m_arredToSelect.clear(); } FmEntryDataArray& GetItems() { return m_arredToSelect; } diff --git a/svx/source/mnuctrls/fntctl.cxx b/svx/source/mnuctrls/fntctl.cxx index 65ca2d5073d9..5f4e7966d570 100644 --- a/svx/source/mnuctrls/fntctl.cxx +++ b/svx/source/mnuctrls/fntctl.cxx @@ -119,8 +119,9 @@ void SvxFontMenuControl::StateChanged( void SvxFontMenuControl::Notify( SfxBroadcaster&, const SfxHint& rHint ) { - if ( rHint.Type() != TYPE(SfxSimpleHint) && - ( (SfxSimpleHint&)rHint ).GetId() == SFX_HINT_DOCCHANGED ) + const SfxSimpleHint* pSimpleHint = dynamic_cast<const SfxSimpleHint*>( &rHint ); + if ( pSimpleHint && + pSimpleHint->GetId() == SFX_HINT_DOCCHANGED ) FillMenu(); } diff --git a/svx/source/sdr/properties/attributeproperties.cxx b/svx/source/sdr/properties/attributeproperties.cxx index 454d7b974506..5ad4d9e0b956 100644 --- a/svx/source/sdr/properties/attributeproperties.cxx +++ b/svx/source/sdr/properties/attributeproperties.cxx @@ -522,7 +522,7 @@ namespace sdr { bool bHintUsed(false); - SfxStyleSheetHint *pStyleHint = PTR_CAST(SfxStyleSheetHint, &rHint); + const SfxStyleSheetHint* pStyleHint = dynamic_cast<const SfxStyleSheetHint*>(&rHint); if(pStyleHint && pStyleHint->GetStyleSheet() == GetStyleSheet()) { diff --git a/svx/source/sdr/properties/customshapeproperties.cxx b/svx/source/sdr/properties/customshapeproperties.cxx index 716dfb50c469..afb4b68f032a 100644 --- a/svx/source/sdr/properties/customshapeproperties.cxx +++ b/svx/source/sdr/properties/customshapeproperties.cxx @@ -212,8 +212,8 @@ namespace sdr TextProperties::Notify( rBC, rHint ); bool bRemoveRenderGeometry = false; - const SfxStyleSheetHint *pStyleHint = PTR_CAST( SfxStyleSheetHint, &rHint ); - const SfxSimpleHint *pSimpleHint = PTR_CAST( SfxSimpleHint, &rHint ); + const SfxStyleSheetHint* pStyleHint = dynamic_cast<const SfxStyleSheetHint*>(&rHint); + const SfxSimpleHint* pSimpleHint = dynamic_cast<const SfxSimpleHint*>(&rHint); if ( pStyleHint && pStyleHint->GetStyleSheet() == GetStyleSheet() ) { diff --git a/svx/source/sdr/properties/textproperties.cxx b/svx/source/sdr/properties/textproperties.cxx index e4a2a5f89744..0196faa3b44d 100644 --- a/svx/source/sdr/properties/textproperties.cxx +++ b/svx/source/sdr/properties/textproperties.cxx @@ -554,7 +554,7 @@ namespace sdr const svx::ITextProvider& rTextProvider(getTextProvider()); if(HAS_BASE(SfxStyleSheet, &rBC)) { - SfxSimpleHint* pSimple = PTR_CAST(SfxSimpleHint, &rHint); + const SfxSimpleHint* pSimple = dynamic_cast<const SfxSimpleHint*>(&rHint); sal_uInt32 nId(pSimple ? pSimple->GetId() : 0L); if(SFX_HINT_DATACHANGED == nId) @@ -595,7 +595,7 @@ namespace sdr } else if(HAS_BASE(SfxStyleSheetBasePool, &rBC)) { - SfxStyleSheetHintExtended* pExtendedHint = PTR_CAST(SfxStyleSheetHintExtended, &rHint); + const SfxStyleSheetHintExtended* pExtendedHint = dynamic_cast<const SfxStyleSheetHintExtended*>(&rHint); if(pExtendedHint && SFX_STYLESHEET_MODIFIED == pExtendedHint->GetHint()) diff --git a/svx/source/svdraw/svdedxv.cxx b/svx/source/svdraw/svdedxv.cxx index 390835469ede..6945d2f66aca 100644 --- a/svx/source/svdraw/svdedxv.cxx +++ b/svx/source/svdraw/svdedxv.cxx @@ -143,7 +143,7 @@ void SdrObjEditView::Notify(SfxBroadcaster& rBC, const SfxHint& rHint) { SdrGlueEditView::Notify(rBC,rHint); // change of printer while editing - SdrHint* pSdrHint=PTR_CAST(SdrHint,&rHint); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); if (pSdrHint!=NULL && pTextEditOutliner!=NULL) { SdrHintKind eKind=pSdrHint->GetKind(); if (eKind==HINT_REFDEVICECHG) { diff --git a/svx/source/svdraw/svdmodel.cxx b/svx/source/svdraw/svdmodel.cxx index bb2b68a97b00..4e7d9313738a 100644 --- a/svx/source/svdraw/svdmodel.cxx +++ b/svx/source/svdraw/svdmodel.cxx @@ -2015,8 +2015,6 @@ const ::com::sun::star::uno::Sequence< sal_Int8 >& SdrModel::getUnoTunnelImpleme -TYPEINIT1(SdrHint,SfxHint); - SdrHint::SdrHint(SdrHintKind eNewHint) : mpPage(0L), mpObj(0L), diff --git a/svx/source/svdraw/svdmrkv.cxx b/svx/source/svdraw/svdmrkv.cxx index 2f3686af0eb4..8b066f0ab6e8 100644 --- a/svx/source/svdraw/svdmrkv.cxx +++ b/svx/source/svdraw/svdmrkv.cxx @@ -175,8 +175,8 @@ SdrMarkView::~SdrMarkView() void SdrMarkView::Notify(SfxBroadcaster& rBC, const SfxHint& rHint) { - SdrHint* pSdrHint=PTR_CAST(SdrHint,&rHint); - if (pSdrHint!=NULL) + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); + if (pSdrHint) { SdrHintKind eKind=pSdrHint->GetKind(); diff --git a/svx/source/svdraw/svdoattr.cxx b/svx/source/svdraw/svdoattr.cxx index 24146a18ee59..727c06122a71 100644 --- a/svx/source/svdraw/svdoattr.cxx +++ b/svx/source/svdraw/svdoattr.cxx @@ -124,7 +124,7 @@ void SdrAttrObj::SetModel(SdrModel* pNewModel) void SdrAttrObj::Notify(SfxBroadcaster& /*rBC*/, const SfxHint& rHint) { - SfxSimpleHint *pSimple = PTR_CAST(SfxSimpleHint, &rHint); + const SfxSimpleHint* pSimple = dynamic_cast<const SfxSimpleHint*>(&rHint); bool bDataChg(pSimple && SFX_HINT_DATACHANGED == pSimple->GetId()); if(bDataChg) diff --git a/svx/source/svdraw/svdoedge.cxx b/svx/source/svdraw/svdoedge.cxx index 1e690bfe8b78..a743cc3ce901 100644 --- a/svx/source/svdraw/svdoedge.cxx +++ b/svx/source/svdraw/svdoedge.cxx @@ -164,7 +164,6 @@ sdr::contact::ViewContact* SdrEdgeObj::CreateObjectSpecificViewContact() } - TYPEINIT1(SdrEdgeObj,SdrTextObj); SdrEdgeObj::SdrEdgeObj() @@ -1567,7 +1566,7 @@ line (CL). The number of object margins per object varies between 0 and 3: void SdrEdgeObj::Notify(SfxBroadcaster& rBC, const SfxHint& rHint) { - SfxSimpleHint* pSimple=PTR_CAST(SfxSimpleHint,&rHint); + const SfxSimpleHint* pSimple = dynamic_cast<const SfxSimpleHint*>(&rHint); sal_uIntPtr nId=pSimple==0 ? 0 : pSimple->GetId(); bool bDataChg=nId==SFX_HINT_DATACHANGED; bool bDying=nId==SFX_HINT_DYING; @@ -1587,7 +1586,7 @@ void SdrEdgeObj::Notify(SfxBroadcaster& rBC, const SfxHint& rHint) SdrTextObj::Notify(rBC,rHint); if (nNotifyingCount==0) { // a locking flag ((SdrEdgeObj*)this)->nNotifyingCount++; - SdrHint* pSdrHint=PTR_CAST(SdrHint,&rHint); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); if (bDataChg) { // StyleSheet changed ImpSetAttrToEdgeInfo(); // when changing templates, copy values from Pool to aEdgeInfo } diff --git a/svx/source/svdraw/svdpntv.cxx b/svx/source/svdraw/svdpntv.cxx index 3ab08d480cd4..bc790703b41f 100644 --- a/svx/source/svdraw/svdpntv.cxx +++ b/svx/source/svdraw/svdpntv.cxx @@ -120,8 +120,6 @@ OutputDevice* SdrPaintView::GetFirstOutputDevice() const -TYPEINIT1( SvxViewHint, SfxHint ); - SvxViewHint::SvxViewHint (HintType eHintType) : meHintType(eHintType) { @@ -258,15 +256,16 @@ void SdrPaintView::Notify(SfxBroadcaster& rBC, const SfxHint& rHint) //If the stylesheet has been destroyed if (&rBC == pDefaultStyleSheet) { - if (rHint.ISA(SfxSimpleHint) && ((const SfxSimpleHint&)rHint).GetId() == SFX_HINT_DYING) + const SfxSimpleHint* pSimpleHint = dynamic_cast<const SfxSimpleHint*>(&rHint); + if (pSimpleHint && pSimpleHint->GetId() == SFX_HINT_DYING) pDefaultStyleSheet = NULL; return; } bool bObjChg=!bSomeObjChgdFlag; // if true, evaluate for ComeBack timer if (bObjChg) { - SdrHint* pSdrHint=PTR_CAST(SdrHint,&rHint); - if (pSdrHint!=NULL) { + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); + if (pSdrHint) { SdrHintKind eKind=pSdrHint->GetKind(); if (eKind==HINT_OBJCHG || eKind==HINT_OBJINSERTED || eKind==HINT_OBJREMOVED) { if (bObjChg) { diff --git a/svx/source/tbxctrls/colrctrl.cxx b/svx/source/tbxctrls/colrctrl.cxx index c3753afbe0e5..0d8ad1a2b725 100644 --- a/svx/source/tbxctrls/colrctrl.cxx +++ b/svx/source/tbxctrls/colrctrl.cxx @@ -247,7 +247,7 @@ SvxColorDockingWindow::~SvxColorDockingWindow() void SvxColorDockingWindow::Notify( SfxBroadcaster& , const SfxHint& rHint ) { - const SfxPoolItemHint *pPoolItemHint = PTR_CAST(SfxPoolItemHint, &rHint); + const SfxPoolItemHint* pPoolItemHint = dynamic_cast<const SfxPoolItemHint*>(&rHint); if ( pPoolItemHint && ( pPoolItemHint->GetObject()->ISA( SvxColorListItem ) ) ) { diff --git a/svx/source/unodraw/UnoNameItemTable.cxx b/svx/source/unodraw/UnoNameItemTable.cxx index 345ec9cabe39..b82bec79aeb4 100644 --- a/svx/source/unodraw/UnoNameItemTable.cxx +++ b/svx/source/unodraw/UnoNameItemTable.cxx @@ -72,7 +72,7 @@ void SvxUnoNameItemTable::dispose() void SvxUnoNameItemTable::Notify( SfxBroadcaster&, const SfxHint& rHint ) throw() { - const SdrHint* pSdrHint = PTR_CAST( SdrHint, &rHint ); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); if( pSdrHint && HINT_MODELCLEARED == pSdrHint->GetKind() ) dispose(); diff --git a/svx/source/unodraw/unomtabl.cxx b/svx/source/unodraw/unomtabl.cxx index ed262d86fc14..bf07bc4e889b 100644 --- a/svx/source/unodraw/unomtabl.cxx +++ b/svx/source/unodraw/unomtabl.cxx @@ -123,7 +123,7 @@ void SvxUnoMarkerTable::dispose() // SfxListener void SvxUnoMarkerTable::Notify( SfxBroadcaster&, const SfxHint& rHint ) throw() { - const SdrHint* pSdrHint = PTR_CAST( SdrHint, &rHint ); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); if( pSdrHint && HINT_MODELCLEARED == pSdrHint->GetKind() ) dispose(); diff --git a/svx/source/unodraw/unoshape.cxx b/svx/source/unodraw/unoshape.cxx index 9d414580646f..3c7371095033 100644 --- a/svx/source/unodraw/unoshape.cxx +++ b/svx/source/unodraw/unoshape.cxx @@ -1019,7 +1019,7 @@ void SvxShape::Notify( SfxBroadcaster&, const SfxHint& rHint ) throw() // #i55919# HINT_OBJCHG is only interesting if it's for this object - const SdrHint* pSdrHint = PTR_CAST( SdrHint, &rHint ); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); if (!pSdrHint || ( /* (pSdrHint->GetKind() != HINT_OBJREMOVED) && */ (pSdrHint->GetKind() != HINT_MODELCLEARED) && // #110094#-9 (pSdrHint->GetKind() != HINT_OBJLISTCLEAR) && diff --git a/svx/source/unodraw/unoshtxt.cxx b/svx/source/unodraw/unoshtxt.cxx index 209c473a0417..c893adb96c6c 100644 --- a/svx/source/unodraw/unoshtxt.cxx +++ b/svx/source/unodraw/unoshtxt.cxx @@ -328,9 +328,9 @@ void SvxTextEditSourceImpl::Notify(SfxBroadcaster& rBC, const SfxHint& rHint) // #i105988 keep reference to this object rtl::Reference< SvxTextEditSourceImpl > xThis( this ); - const SdrHint* pSdrHint = PTR_CAST( SdrHint, &rHint ); - const SvxViewHint* pViewHint = PTR_CAST( SvxViewHint, &rHint ); - const SfxSimpleHint* pSimpleHint = PTR_CAST( SfxSimpleHint, &rHint ); + const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); + const SvxViewHint* pViewHint = dynamic_cast<const SvxViewHint*>(&rHint); + const SfxSimpleHint* pSimpleHint = dynamic_cast<const SfxSimpleHint*>(&rHint); if (pSimpleHint) { |