Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index



From 0d7470c97961866abee3d668d5b4700d96106cfa Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sat, 17 Dec 2011 12:41:36 -0430
Subject: [PATCH 12/36] Replace deprecated ISA macro for dynamic_cast.

---
 sd/source/ui/unoidl/unomodel.cxx |    2 +-
 sd/source/ui/unoidl/unopage.cxx  |   28 ++++++++++++++--------------
 2 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/sd/source/ui/unoidl/unomodel.cxx b/sd/source/ui/unoidl/unomodel.cxx
index 1a49b7f..98763dd 100644
--- a/sd/source/ui/unoidl/unomodel.cxx
+++ b/sd/source/ui/unoidl/unomodel.cxx
@@ -1697,7 +1697,7 @@ vcl::PDFWriter::StructElement ImplRenderPaintProc::ImplBegStructureTag( 
SdrObjec
     {
         sal_uInt32 nInventor   = rObject.GetObjInventor();
         sal_uInt16 nIdentifier = rObject.GetObjIdentifier();
-        sal_Bool   bIsTextObj  = rObject.ISA( SdrTextObj );
+        sal_Bool   bIsTextObj  = dynamic_cast<SdrTextObj*>(&rObject) != NULL;
 
         if ( nInventor == SdrInventor )
         {
diff --git a/sd/source/ui/unoidl/unopage.cxx b/sd/source/ui/unoidl/unopage.cxx
index 84a76d3..7ffc0d2 100644
--- a/sd/source/ui/unoidl/unopage.cxx
+++ b/sd/source/ui/unoidl/unopage.cxx
@@ -1759,8 +1759,10 @@ static void refreshpage( SdDrawDocument* pDoc, const PageKind ePageKind )
 
         if( pViewSh )
         {
-            if( pViewSh->ISA(::sd::DrawViewShell ) )
-                static_cast< ::sd::DrawViewShell*>(pViewSh)->ResetActualPage();
+            sd::DrawViewShell *pDrawSh = dynamic_cast<sd::DrawViewShell*>(pViewSh);
+
+            if(pDrawSh)
+                pDrawSh->ResetActualPage();
 
             Size aPageSize = pDoc->GetSdPage(0, ePageKind)->GetSize();
             const long nWidth = aPageSize.Width();
@@ -1898,7 +1900,7 @@ sal_Bool SAL_CALL SdPageLinkTargets::hasElements()
         {
             SdrObject* pObj = aIter.Next();
             String aStr( pObj->GetName() );
-            if( !aStr.Len() && pObj->ISA( SdrOle2Obj ) )
+            if( !aStr.Len() && dynamic_cast<SdrOle2Obj*>(pObj) != NULL )
                 aStr = static_cast< const SdrOle2Obj* >( pObj )->GetPersistName();
             if( aStr.Len() )
                 return sal_True;
@@ -1945,7 +1947,7 @@ Sequence< OUString > SAL_CALL SdPageLinkTargets::getElementNames()
         {
             SdrObject* pObj = aIter.Next();
             String aStr( pObj->GetName() );
-            if( !aStr.Len() && pObj->ISA( SdrOle2Obj ) )
+            if( !aStr.Len() && dynamic_cast<SdrOle2Obj*>(pObj) != NULL )
                 aStr = static_cast< const SdrOle2Obj* >( pObj )->GetPersistName();
             if( aStr.Len() )
                 nObjCount++;
@@ -1962,7 +1964,7 @@ Sequence< OUString > SAL_CALL SdPageLinkTargets::getElementNames()
         {
             SdrObject* pObj = aIter.Next();
             String aStr( pObj->GetName() );
-            if( !aStr.Len() && pObj->ISA( SdrOle2Obj ) )
+            if( !aStr.Len() && dynamic_cast<SdrOle2Obj*>(pObj) != NULL )
                 aStr = static_cast< const SdrOle2Obj* >( pObj )->GetPersistName();
             if( aStr.Len() )
                 *pStr++ = aStr;
@@ -1992,7 +1994,7 @@ SdrObject* SdPageLinkTargets::FindObject( const String& rName ) const throw()
     {
         SdrObject* pObj = aIter.Next();
         String aStr( pObj->GetName() );
-        if( !aStr.Len() && pObj->ISA( SdrOle2Obj ) )
+        if( !aStr.Len() && dynamic_cast<SdrOle2Obj*>(pObj) != NULL )
             aStr = static_cast< const SdrOle2Obj* >( pObj )->GetPersistName();
         if( aStr.Len() && (aStr == rName) )
             return pObj;
@@ -2314,11 +2316,10 @@ void SAL_CALL SdDrawPage::setName( const OUString& rName )
         // fake a mode change to repaint the page tab bar
         ::sd::DrawDocShell* pDocSh = GetModel()->GetDocShell();
         ::sd::ViewShell* pViewSh = pDocSh ? pDocSh->GetViewShell() : NULL;
-        if( pViewSh && pViewSh->ISA(::sd::DrawViewShell))
-        {
-            ::sd::DrawViewShell* pDrawViewSh = static_cast<
-                  ::sd::DrawViewShell*>(pViewSh);
+        ::sd::DrawViewShell *pDrawViewSh = dynamic_cast<sd::DrawViewShell*>(pViewSh);
 
+        if( pDrawViewSh)
+        {
             EditMode eMode = pDrawViewSh->GetEditMode();
             if( eMode == EM_PAGE )
             {
@@ -3033,11 +3034,10 @@ void SAL_CALL SdMasterPage::setName( const OUString& aName )
         // fake a mode change to repaint the page tab bar
         ::sd::DrawDocShell* pDocSh = GetModel()->GetDocShell();
         ::sd::ViewShell* pViewSh = pDocSh ? pDocSh->GetViewShell() : NULL;
-        if( pViewSh && pViewSh->ISA(::sd::DrawViewShell ) )
-        {
-            ::sd::DrawViewShell* pDrawViewSh =
-                  static_cast< ::sd::DrawViewShell*>(pViewSh);
+        ::sd::DrawViewShell *pDrawViewSh = dynamic_cast<sd::DrawViewShell*>(pViewSh);
 
+        if(pDrawViewSh)
+        {
             EditMode eMode = pDrawViewSh->GetEditMode();
             if( eMode == EM_MASTERPAGE )
             {
-- 
1.7.3.4

From b0a7abaeb8399ddf71a725d83e681b792775bcfa Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sat, 17 Dec 2011 12:58:54 -0430
Subject: [PATCH 13/36] Replace deprecated ISA macro for dynamic_cast.

---
 sd/source/ui/slideshow/slideshowimpl.cxx |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/sd/source/ui/slideshow/slideshowimpl.cxx b/sd/source/ui/slideshow/slideshowimpl.cxx
index 1da357b..f2a7c92 100644
--- a/sd/source/ui/slideshow/slideshowimpl.cxx
+++ b/sd/source/ui/slideshow/slideshowimpl.cxx
@@ -719,7 +719,7 @@ void SAL_CALL SlideshowImpl::disposing()
     }
 
     // aktuelle Fenster wieder einblenden
-    if( mpViewShell && !mpViewShell->ISA(PresentationViewShell))
+    if( mpViewShell && dynamic_cast<PresentationViewShell*>(mpViewShell) == NULL)
     {
         if( meAnimationMode == ANIMATIONMODE_SHOW )
         {
-- 
1.7.3.4

From 6970aaa8c34c73d1750ae26392bff402838282ba Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sat, 17 Dec 2011 13:48:33 -0430
Subject: [PATCH 14/36] Replace deprecated ISA macro for dynamic_cast.

---
 sd/source/ui/docshell/docshel3.cxx |   10 ++++++----
 sd/source/ui/docshell/docshel4.cxx |    6 +++---
 sd/source/ui/docshell/sdclient.cxx |   10 ++++------
 3 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/sd/source/ui/docshell/docshel3.cxx b/sd/source/ui/docshell/docshel3.cxx
index 87a0738..c62bfd8 100644
--- a/sd/source/ui/docshell/docshel3.cxx
+++ b/sd/source/ui/docshell/docshel3.cxx
@@ -121,12 +121,14 @@ void DrawDocShell::Execute( SfxRequest& rReq )
                 SfxObjectShell* pFirstShell = SfxObjectShell::GetFirst();
                 SfxObjectShell* pShell = pFirstShell;
 
+                DrawDocShell *pDrawSh = NULL;
+
                 while (pShell)
                 {
-                    if (pShell->ISA(DrawDocShell))
-                    {
-                        ( (DrawDocShell*) pShell)->CancelSearching();
-                    }
+                    pDrawSh = dynamic_cast<DrawDocShell*>(pShell);
+
+                    if (pDrawSh)
+                        pDrawSh->CancelSearching();
 
                     pShell = SfxObjectShell::GetNext(*pShell);
 
diff --git a/sd/source/ui/docshell/docshel4.cxx b/sd/source/ui/docshell/docshel4.cxx
index a486f56..b2e2fbd 100644
--- a/sd/source/ui/docshell/docshel4.cxx
+++ b/sd/source/ui/docshell/docshel4.cxx
@@ -660,7 +660,7 @@ sal_Bool DrawDocShell::SaveCompleted( const ::com::sun::star::uno::Reference< ::
 
         if( mpViewShell )
         {
-            if( mpViewShell->ISA( OutlineViewShell ) )
+            if( dynamic_cast<OutlineViewShell*>(mpViewShell) != NULL )
                 static_cast<OutlineView*>(mpViewShell->GetView())
                     ->GetOutliner()->ClearModifyFlag();
 
@@ -718,10 +718,10 @@ SfxStyleSheetBasePool* DrawDocShell::GetStyleSheetPool()
 sal_Bool DrawDocShell::GotoBookmark(const String& rBookmark)
 {
     sal_Bool bFound = sal_False;
+    DrawViewShell *pDrawViewShell = dynamic_cast<DrawViewShell*>(mpViewShell);
 
-    if (mpViewShell && mpViewShell->ISA(DrawViewShell))
+    if (pDrawViewShell)
     {
-        DrawViewShell* pDrawViewShell = static_cast<DrawViewShell*>(mpViewShell);
         ViewShellBase& rBase (mpViewShell->GetViewShellBase());
 
         sal_Bool bIsMasterPage = sal_False;
diff --git a/sd/source/ui/docshell/sdclient.cxx b/sd/source/ui/docshell/sdclient.cxx
index 29aabc0..e5f4402 100644
--- a/sd/source/ui/docshell/sdclient.cxx
+++ b/sd/source/ui/docshell/sdclient.cxx
@@ -205,12 +205,10 @@ void Client::ViewChanged()
 
 void Client::MakeVisible()
 {
-    if (mpViewShell->ISA(DrawViewShell))
-    {
-        static_cast<DrawViewShell*>(mpViewShell)->MakeVisible(
-            pSdrOle2Obj->GetLogicRect(),
-            *mpViewShell->GetActiveWindow());
-    }
+    DrawViewShell *pDrawSh = dynamic_cast<DrawViewShell*>(mpViewShell);
+
+    if (pDrawSh)
+        pDrawSh->MakeVisible(pSdrOle2Obj->GetLogicRect(),*mpViewShell->GetActiveWindow());
 }
 
 } // end of namespace sd
-- 
1.7.3.4

From edecc42e8374496fe74acfde300590253c1f7b5a Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sat, 17 Dec 2011 14:03:03 -0430
Subject: [PATCH 15/36] Replace deprecated ISA macro for dynamic_cast.

---
 sd/source/ui/toolpanel/SubToolPanel.cxx            |    5 ++-
 sd/source/ui/toolpanel/TaskPaneFocusManager.cxx    |    5 ++-
 sd/source/ui/toolpanel/TitledControl.cxx           |    5 ++-
 .../ui/toolpanel/controls/MasterPageObserver.cxx   |   23 +++++++++----------
 4 files changed, 20 insertions(+), 18 deletions(-)

diff --git a/sd/source/ui/toolpanel/SubToolPanel.cxx b/sd/source/ui/toolpanel/SubToolPanel.cxx
index ba0a33f..1bce86d 100644
--- a/sd/source/ui/toolpanel/SubToolPanel.cxx
+++ b/sd/source/ui/toolpanel/SubToolPanel.cxx
@@ -355,9 +355,10 @@ sal_Int32 SubToolPanel::LayoutChildren (void)
 
 IMPL_LINK(SubToolPanel, WindowEventListener, VclSimpleEvent*, pEvent)
 {
-    if (pEvent!=NULL && pEvent->ISA(VclWindowEvent))
+    VclWindowEvent* pWindowEvent = dynamic_cast<VclWindowEvent*>(pEvent);
+
+    if (pWindowEvent)
     {
-        VclWindowEvent* pWindowEvent = static_cast<VclWindowEvent*>(pEvent);
         switch (pWindowEvent->GetId())
         {
             case VCLEVENT_WINDOW_SHOW:
diff --git a/sd/source/ui/toolpanel/TaskPaneFocusManager.cxx 
b/sd/source/ui/toolpanel/TaskPaneFocusManager.cxx
index 6be7076..1ad27a6 100644
--- a/sd/source/ui/toolpanel/TaskPaneFocusManager.cxx
+++ b/sd/source/ui/toolpanel/TaskPaneFocusManager.cxx
@@ -298,9 +298,10 @@ bool FocusManager::TransferFocus (
 
 IMPL_LINK(FocusManager, WindowEventListener, VclSimpleEvent*, pEvent)
 {
-    if (pEvent!=NULL && pEvent->ISA(VclWindowEvent))
+    VclWindowEvent* pWindowEvent = dynamic_cast<VclWindowEvent*>(pEvent);
+
+    if (pWindowEvent)
     {
-        VclWindowEvent* pWindowEvent = static_cast<VclWindowEvent*>(pEvent);
         switch (pWindowEvent->GetId())
         {
             case VCLEVENT_WINDOW_KEYINPUT:
diff --git a/sd/source/ui/toolpanel/TitledControl.cxx b/sd/source/ui/toolpanel/TitledControl.cxx
index eaafff8..1ff5511 100644
--- a/sd/source/ui/toolpanel/TitledControl.cxx
+++ b/sd/source/ui/toolpanel/TitledControl.cxx
@@ -353,9 +353,10 @@ void TitledControl::UpdateStates (void)
 IMPL_LINK(TitledControl, WindowEventListener,
     VclSimpleEvent*, pEvent)
 {
-    if (pEvent!=NULL && pEvent->ISA(VclWindowEvent))
+    VclWindowEvent* pWindowEvent = dynamic_cast<VclWindowEvent*>(pEvent);
+
+    if (pWindowEvent)
     {
-        VclWindowEvent* pWindowEvent = static_cast<VclWindowEvent*>(pEvent);
         switch (pWindowEvent->GetId())
         {
             case VCLEVENT_WINDOW_MOUSEBUTTONUP:
diff --git a/sd/source/ui/toolpanel/controls/MasterPageObserver.cxx 
b/sd/source/ui/toolpanel/controls/MasterPageObserver.cxx
index d9984df..0038d68 100644
--- a/sd/source/ui/toolpanel/controls/MasterPageObserver.cxx
+++ b/sd/source/ui/toolpanel/controls/MasterPageObserver.cxx
@@ -293,29 +293,28 @@ void MasterPageObserver::Implementation::Notify(
     SfxBroadcaster& rBroadcaster,
     const SfxHint& rHint)
 {
-    if (rHint.ISA(SdrHint))
+    const SdrHint *pHint = dynamic_cast<const SdrHint*>(&rHint);
+
+    if (pHint)
     {
-        SdrHint& rSdrHint (*PTR_CAST(SdrHint,&rHint));
-        switch (rSdrHint.GetKind())
+        switch (pHint->GetKind())
         {
             case HINT_PAGEORDERCHG:
+            {
+                SdDrawDocument *pDoc = dynamic_cast<SdDrawDocument*>(&rBroadcaster);
+
                 // Process the modified set of pages only when the number of
                 // standard and notes master pages are equal.  This test
                 // filters out events that are sent in between the insertion
                 // of a new standard master page and a new notes master
                 // page.
-                if (rBroadcaster.ISA(SdDrawDocument))
+                if (pDoc &&
+                    pDoc->GetMasterSdPageCount(PK_STANDARD) == 
pDoc->GetMasterSdPageCount(PK_NOTES))
                 {
-                    SdDrawDocument& rDocument (
-                        static_cast<SdDrawDocument&>(rBroadcaster));
-                    if (rDocument.GetMasterSdPageCount(PK_STANDARD)
-                        == rDocument.GetMasterSdPageCount(PK_NOTES))
-                    {
-                        AnalyzeUsedMasterPages (rDocument);
-                    }
+                    AnalyzeUsedMasterPages (*pDoc);
                 }
                 break;
-
+            }
             default:
                 break;
         }
-- 
1.7.3.4

From 0dc73258382ee9635fc35a202c73f8d0c0622bb4 Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sat, 17 Dec 2011 22:44:55 -0430
Subject: [PATCH 16/36] Replace deprecated ISA macro for dynamic_cast.

---
 sd/source/ui/view/DocumentRenderer.cxx |    6 ++-
 sd/source/ui/view/GraphicObjectBar.cxx |    8 ++-
 sd/source/ui/view/MediaObjectBar.cxx   |    4 +-
 sd/source/ui/view/Outliner.cxx         |   68 +++++++++++++++++---------------
 sd/source/ui/view/ViewShellBase.cxx    |   22 +++++------
 sd/source/ui/view/drawview.cxx         |    2 +-
 sd/source/ui/view/drbezob.cxx          |    8 ++--
 sd/source/ui/view/drtxtob.cxx          |   20 ++++------
 sd/source/ui/view/drtxtob1.cxx         |    9 ++--
 sd/source/ui/view/drviews2.cxx         |    2 +-
 sd/source/ui/view/drviews4.cxx         |   12 +++---
 sd/source/ui/view/drviews6.cxx         |    7 ++-
 sd/source/ui/view/drviews7.cxx         |    4 +-
 sd/source/ui/view/drviews8.cxx         |   17 +++-----
 sd/source/ui/view/drviewsb.cxx         |   29 +++++++-------
 sd/source/ui/view/drviewsc.cxx         |    3 +-
 sd/source/ui/view/drviewse.cxx         |    2 +-
 sd/source/ui/view/drviewsf.cxx         |   12 +++--
 sd/source/ui/view/drviewsg.cxx         |    2 +-
 sd/source/ui/view/drviewsj.cxx         |   33 ++++++++-------
 sd/source/ui/view/outlnvs2.cxx         |   24 ++++++------
 sd/source/ui/view/outlnvsh.cxx         |   19 +++++----
 sd/source/ui/view/sdview.cxx           |    7 ++-
 sd/source/ui/view/sdview2.cxx          |   25 +++++++-----
 sd/source/ui/view/sdview3.cxx          |   15 ++++---
 sd/source/ui/view/sdview4.cxx          |   13 +++---
 sd/source/ui/view/sdwindow.cxx         |   19 +++++----
 sd/source/ui/view/tabcontr.cxx         |    2 +-
 sd/source/ui/view/viewshel.cxx         |    2 +-
 29 files changed, 207 insertions(+), 189 deletions(-)

diff --git a/sd/source/ui/view/DocumentRenderer.cxx b/sd/source/ui/view/DocumentRenderer.cxx
index 0d15f44..34b867d 100644
--- a/sd/source/ui/view/DocumentRenderer.cxx
+++ b/sd/source/ui/view/DocumentRenderer.cxx
@@ -1494,8 +1494,10 @@ private:
             rOutliner.SetControlWord( nCntrl );
 
             // When in outline view then apply all pending changes to the model.
-            if (pShell->ISA(OutlineViewShell))
-                static_cast<OutlineViewShell*>(pShell)->PrepareClose (sal_False, sal_False);
+            OutlineViewShell *pOutViewSh = dynamic_cast<OutlineViewShell*>(pShell);
+
+            if (pOutViewSh)
+                pOutViewSh->PrepareClose (sal_False, sal_False);
 
             // Collect some frequently used data.
             if (mpOptions->IsDate())
diff --git a/sd/source/ui/view/GraphicObjectBar.cxx b/sd/source/ui/view/GraphicObjectBar.cxx
index 87efab4..be428c6 100644
--- a/sd/source/ui/view/GraphicObjectBar.cxx
+++ b/sd/source/ui/view/GraphicObjectBar.cxx
@@ -132,8 +132,9 @@ void GraphicObjectBar::GetFilterState( SfxItemSet& rSet )
     if( rMarkList.GetMarkCount() == 1 )
     {
         SdrObject* pObj = rMarkList.GetMark( 0 )->GetMarkedSdrObj();
+        SdrGrafObj *pGraf = dynamic_cast<SdrGrafObj*>(pObj);
 
-        if( pObj && pObj->ISA( SdrGrafObj ) && ( ( (SdrGrafObj*) pObj )->GetGraphicType() == 
GRAPHIC_BITMAP ) )
+        if( pGraf && pGraf->GetGraphicType() == GRAPHIC_BITMAP )
             bEnable = sal_True;
     }
 
@@ -150,10 +151,11 @@ void GraphicObjectBar::ExecuteFilter( SfxRequest& rReq )
     if( rMarkList.GetMarkCount() == 1 )
     {
         SdrObject* pObj = rMarkList.GetMark( 0 )->GetMarkedSdrObj();
+        SdrGrafObj *pGraf = dynamic_cast<SdrGrafObj*>(pObj);
 
-        if( pObj && pObj->ISA( SdrGrafObj ) && ( (SdrGrafObj*) pObj )->GetGraphicType() == 
GRAPHIC_BITMAP )
+        if( pGraf && pGraf->GetGraphicType() == GRAPHIC_BITMAP )
         {
-            GraphicObject aFilterObj( ( (SdrGrafObj*) pObj )->GetGraphicObject() );
+            GraphicObject aFilterObj( pGraf->GetGraphicObject() );
 
             if( SVX_GRAPHICFILTER_ERRCODE_NONE ==
                 SvxGraphicFilter::ExecuteGrfFilterSlot( rReq, aFilterObj ) )
diff --git a/sd/source/ui/view/MediaObjectBar.cxx b/sd/source/ui/view/MediaObjectBar.cxx
index 3530a37..28de99b 100644
--- a/sd/source/ui/view/MediaObjectBar.cxx
+++ b/sd/source/ui/view/MediaObjectBar.cxx
@@ -110,7 +110,7 @@ void MediaObjectBar::GetState( SfxItemSet& rSet )
             {
                 SdrObject* pObj =pMarkList->GetMark( 0 )->GetMarkedSdrObj();
 
-                if( pObj && pObj->ISA( SdrMediaObj ) )
+                if( dynamic_cast<SdrMediaObj*>(pObj) != NULL )
                 {
                     ::avmedia::MediaItem aItem( SID_AVMEDIA_TOOLBOX );
 
@@ -150,7 +150,7 @@ void MediaObjectBar::Execute( SfxRequest& rReq )
             {
                 SdrObject* pObj = pMarkList->GetMark( 0 )->GetMarkedSdrObj();
 
-                if( pObj && pObj->ISA( SdrMediaObj ) )
+                if( dynamic_cast<SdrMediaObj*>(pObj) != NULL )
                 {
                     static_cast< sdr::contact::ViewContactOfSdrMediaObj& >( pObj->GetViewContact() 
).executeMediaItem(
                         static_cast< const ::avmedia::MediaItem& >( *pItem ) );
diff --git a/sd/source/ui/view/Outliner.cxx b/sd/source/ui/view/Outliner.cxx
index 137163b..d76b008 100644
--- a/sd/source/ui/view/Outliner.cxx
+++ b/sd/source/ui/view/Outliner.cxx
@@ -338,7 +338,9 @@ void Outliner::EndSpelling (void)
 
     // When in <member>PrepareSpelling()</member> a new outline view has
     // been created then delete it here.
-    sal_Bool bViewIsDrawViewShell(pViewShell && pViewShell->ISA(DrawViewShell));
+    sal_Bool bViewIsDrawViewShell =
+        boost::dynamic_pointer_cast<DrawViewShell>(pViewShell) != NULL;
+
     if (bViewIsDrawViewShell)
     {
         SetStatusEventHdl(Link());
@@ -366,8 +368,10 @@ void Outliner::EndSpelling (void)
     // changes were done at SpellCheck
     if(IsModified())
     {
-        if(mpView && mpView->ISA(OutlineView))
-            static_cast<OutlineView*>(mpView)->PrepareClose(sal_False);
+        OutlineView *pOutView = dynamic_cast<OutlineView*>(mpView);
+
+        if(pOutView)
+            pOutView->PrepareClose(sal_False);
         if(mpDrawDocument && !mpDrawDocument->IsChanged())
             mpDrawDocument->SetChanged(sal_True);
     }
@@ -391,7 +395,7 @@ void Outliner::EndSpelling (void)
 sal_Bool Outliner::SpellNextDocument (void)
 {
     ::boost::shared_ptr<ViewShell> pViewShell (mpWeakViewShell.lock());
-    if (pViewShell->ISA(OutlineViewShell))
+    if (boost::dynamic_pointer_cast<OutlineViewShell>(pViewShell))
     {
         // When doing a spell check in the outline view then there is
         // only one document.
@@ -400,8 +404,10 @@ sal_Bool Outliner::SpellNextDocument (void)
     }
     else
     {
-        if (mpView->ISA(OutlineView))
-            ((OutlineView*)mpView)->PrepareClose(sal_False);
+        OutlineView *pOutView = dynamic_cast<OutlineView*>(mpView);
+
+        if (pOutView)
+            pOutView->PrepareClose(sal_False);
         mpDrawDocument->GetDocSh()->SetWaitCursor( sal_True );
 
         Initialize (true);
@@ -567,7 +573,7 @@ void Outliner::Initialize (bool bDirectionIsForward)
 
         // In case we are searching in an outline view then first remove the
         // current selection and place cursor at its start or end.
-        if (pViewShell->ISA(OutlineViewShell))
+        if (boost::dynamic_pointer_cast<OutlineViewShell>(pViewShell))
         {
             ESelection aSelection = mpImpl->GetOutlinerView()->GetSelection ();
             if (mbDirectionIsForward)
@@ -629,7 +635,7 @@ bool Outliner::SearchAndReplaceAll (void)
         return true;
     }
 
-    if (pViewShell->ISA(OutlineViewShell))
+    if (boost::dynamic_pointer_cast<OutlineViewShell>(pViewShell))
     {
         // Put the cursor to the beginning/end of the outliner.
         mpImpl->GetOutlinerView()->SetSelection (GetSearchStartPosition ());
@@ -637,7 +643,7 @@ bool Outliner::SearchAndReplaceAll (void)
         // The outliner does all the work for us when we are in this mode.
         SearchAndReplaceOnce();
     }
-    else if (pViewShell->ISA(DrawViewShell))
+    else if (boost::dynamic_pointer_cast<DrawViewShell>(pViewShell))
     {
         // Go to beginning/end of document.
         maObjectIterator = ::sd::outliner::OutlinerContainer(this).begin();
@@ -684,7 +690,7 @@ bool Outliner::SearchAndReplaceOnce (void)
         mpWindow = pViewShell->GetActiveWindow();
         pOutlinerView->SetWindow(mpWindow);
 
-        if (pViewShell->ISA(DrawViewShell) )
+        if (boost::dynamic_pointer_cast<DrawViewShell>(pViewShell) )
         {
             // When replacing we first check if there is a selection
             // indicating a match.  If there is then replace it.  The
@@ -729,7 +735,7 @@ bool Outliner::SearchAndReplaceOnce (void)
                 }
             }
         }
-        else if (pViewShell->ISA(OutlineViewShell))
+        else if (boost::dynamic_pointer_cast<OutlineViewShell>(pViewShell))
         {
             mpDrawDocument->GetDocSh()->SetWaitCursor (sal_False);
             // The following loop is executed more then once only when a
@@ -872,16 +878,14 @@ void Outliner::RememberStartPosition (void)
         return;
     }
 
-    if (pViewShell->ISA(DrawViewShell))
+    boost::shared_ptr<DrawViewShell> pDrawViewShell =
+        boost::dynamic_pointer_cast<DrawViewShell>(pViewShell);
+
+    if (pDrawViewShell)
     {
-        ::boost::shared_ptr<DrawViewShell> pDrawViewShell (
-            ::boost::dynamic_pointer_cast<DrawViewShell>(pViewShell));
-        if (pDrawViewShell.get() != NULL)
-        {
-            meStartViewMode = pDrawViewShell->GetPageKind();
-            meStartEditMode = pDrawViewShell->GetEditMode();
-            mnStartPageIndex = pDrawViewShell->GetCurPageId() - 1;
-        }
+        meStartViewMode = pDrawViewShell->GetPageKind();
+        meStartEditMode = pDrawViewShell->GetEditMode();
+        mnStartPageIndex = pDrawViewShell->GetCurPageId() - 1;
 
         if (mpView != NULL)
         {
@@ -900,7 +904,7 @@ void Outliner::RememberStartPosition (void)
             }
         }
     }
-    else if (pViewShell->ISA(OutlineViewShell))
+    else if (boost::dynamic_pointer_cast<OutlineViewShell>(pViewShell))
     {
         // Remember the current cursor position.
         OutlinerView* pView = GetView(0);
@@ -930,14 +934,13 @@ void Outliner::RestoreStartPosition (void)
 
     if (bRestore)
     {
-        if (pViewShell->ISA(DrawViewShell))
+        boost::shared_ptr<DrawViewShell> pDrawViewShell =
+            boost::dynamic_pointer_cast<DrawViewShell>(pViewShell);
+
+        if (pDrawViewShell)
         {
-            ::boost::shared_ptr<DrawViewShell> pDrawViewShell (
-                ::boost::dynamic_pointer_cast<DrawViewShell>(pViewShell));
             SetViewMode (meStartViewMode);
-            if (pDrawViewShell.get() != NULL)
-                SetPage (meStartEditMode, mnStartPageIndex);
-
+            SetPage (meStartEditMode, mnStartPageIndex);
 
             if (mpStartEditedObject != NULL)
             {
@@ -958,7 +961,7 @@ void Outliner::RestoreStartPosition (void)
                 }
             }
         }
-        else if (pViewShell->ISA(OutlineViewShell))
+        else if (boost::dynamic_pointer_cast<OutlineViewShell>(pViewShell))
         {
             // Set cursor to its old position.
             OutlinerView* pView = GetView(0);
@@ -1059,10 +1062,11 @@ void Outliner::EndOfSearch (void)
         return;
     }
 
+    bool isOutlineView = boost::dynamic_pointer_cast<OutlineViewShell>(pViewShell) != NULL;
     // Before we display a dialog we first jump to where the last valid text
     // object was found.  All page and view mode switching since then was
     // temporary and should not be visible to the user.
-    if ( ! pViewShell->ISA(OutlineViewShell))
+    if ( !isOutlineView )
         SetObject (maLastValidPosition);
 
     if (mbRestrictSearchToSelection)
@@ -1082,7 +1086,7 @@ void Outliner::EndOfSearch (void)
             mbMatchMayExist = false;
             // Everything back to beginning (or end?) of the document.
             maObjectIterator = ::sd::outliner::OutlinerContainer(this).begin();
-            if (pViewShell->ISA(OutlineViewShell))
+            if (isOutlineView)
             {
                 // Set cursor to first character of the document.
                 OutlinerView* pOutlinerView = mpImpl->GetOutlinerView();
@@ -1559,7 +1563,7 @@ void Outliner::StartConversion( sal_Int16 nSourceLanguage,  sal_Int16 
nTargetLan
         const Font *pTargetFont, sal_Int32 nOptions, sal_Bool bIsInteractive )
 {
     ::boost::shared_ptr<ViewShell> pViewShell (mpWeakViewShell.lock());
-    sal_Bool bMultiDoc = pViewShell->ISA(DrawViewShell);
+    bool bMultiDoc = boost::dynamic_pointer_cast<DrawViewShell>(pViewShell) != NULL;
 
     meMode = TEXT_CONVERSION;
     mbDirectionIsForward = true;
@@ -1656,7 +1660,7 @@ void Outliner::EndConversion()
 sal_Bool Outliner::ConvertNextDocument()
 {
     ::boost::shared_ptr<ViewShell> pViewShell (mpWeakViewShell.lock());
-    if (pViewShell && pViewShell->ISA(OutlineViewShell) )
+    if ( boost::dynamic_pointer_cast<OutlineViewShell>(pViewShell) )
         return false;
 
     mpDrawDocument->GetDocSh()->SetWaitCursor( sal_True );
diff --git a/sd/source/ui/view/ViewShellBase.cxx b/sd/source/ui/view/ViewShellBase.cxx
index 94ed8ff..a3e7f61 100644
--- a/sd/source/ui/view/ViewShellBase.cxx
+++ b/sd/source/ui/view/ViewShellBase.cxx
@@ -286,10 +286,12 @@ ViewShellBase::ViewShellBase (
 
     _pFrame->GetWindow().SetBackground(Wallpaper());
 
+    DrawDocShell *pDrawDoc =
+        dynamic_cast<DrawDocShell*>(GetViewFrame()->GetObjectShell());
+
     // Set up the members in the correct order.
-    if (GetViewFrame()->GetObjectShell()->ISA(DrawDocShell))
-        mpDocShell = static_cast<DrawDocShell*>(
-            GetViewFrame()->GetObjectShell());
+    if (pDrawDoc)
+        mpDocShell = pDrawDoc;
     if (mpDocShell != NULL)
         mpDocument = mpDocShell->GetDoc();
     mpImpl->mpViewShellManager.reset(new ViewShellManager(*this));
@@ -442,9 +444,7 @@ ViewShellBase* ViewShellBase::GetViewShellBase (SfxViewFrame* pViewFrame)
     {
         // Get the view shell for the frame and cast it to
         // sd::ViewShellBase.
-        SfxViewShell* pSfxViewShell = pViewFrame->GetViewShell();
-        if (pSfxViewShell!=NULL && pSfxViewShell->ISA(::sd::ViewShellBase))
-            pBase = static_cast<ViewShellBase*>(pSfxViewShell);
+        pBase = dynamic_cast<ViewShellBase*>(pViewFrame->GetViewShell());
     }
 
     return pBase;
@@ -1507,12 +1507,10 @@ void ViewShellBase::Implementation::GetSlotState (SfxItemSet& rSet)
                     ViewShell* pCenterViewShell = FrameworkHelper::Instance(mrBase)->GetViewShell(
                         FrameworkHelper::msCenterPaneURL).get();
                     bool bMasterPageMode (false);
-                    if (pCenterViewShell!=NULL && pCenterViewShell->ISA(DrawViewShell))
-                        if (PTR_CAST(DrawViewShell,pCenterViewShell)->GetEditMode()
-                            == EM_MASTERPAGE)
-                        {
-                            bMasterPageMode = true;
-                        }
+                    DrawViewShell *pDrawViewSh = dynamic_cast<DrawViewShell*>(pCenterViewShell);
+
+                    if (pDrawViewSh && pDrawViewSh->GetEditMode() == EM_MASTERPAGE)
+                        bMasterPageMode = true;
 
                     bState &= !bMasterPageMode;
                     break;
diff --git a/sd/source/ui/view/drawview.cxx b/sd/source/ui/view/drawview.cxx
index 7d20db8..486e14b 100644
--- a/sd/source/ui/view/drawview.cxx
+++ b/sd/source/ui/view/drawview.cxx
@@ -399,7 +399,7 @@ sal_Bool DrawView::SetAttributes(const SfxItemSet& rSet,
 
 void DrawView::Notify(SfxBroadcaster& rBC, const SfxHint& rHint)
 {
-    if ( mpDrawViewShell && rHint.ISA(SdrHint) )
+    if ( mpDrawViewShell && dynamic_cast<const SdrHint*>(&rHint) != NULL )
     {
         SdrHintKind eHintKind = ( (SdrHint&) rHint).GetKind();
 
diff --git a/sd/source/ui/view/drbezob.cxx b/sd/source/ui/view/drbezob.cxx
index a247410..2954d7d 100644
--- a/sd/source/ui/view/drbezob.cxx
+++ b/sd/source/ui/view/drbezob.cxx
@@ -130,12 +130,12 @@ void BezierObjectBar::GetAttrState(SfxItemSet& rSet)
 
     if(xFunc.is())
     {
-        if(xFunc->ISA(FuSelection))
+        if( dynamic_cast<FuSelection*>(xFunc.get()) != NULL )
         {
             sal_uInt16 nEditMode = static_cast<FuSelection*>(xFunc.get())->GetEditMode();
             rSet.Put(SfxBoolItem(nEditMode, sal_True));
         }
-        else if (xFunc->ISA(FuConstructBezierPolygon))
+        else if ( dynamic_cast<FuConstructBezierPolygon*>(xFunc.get()) != NULL )
         {
             sal_uInt16 nEditMode = 
static_cast<FuConstructBezierPolygon*>(xFunc.get())->GetEditMode();
             rSet.Put(SfxBoolItem(nEditMode, sal_True));
@@ -339,11 +339,11 @@ void BezierObjectBar::Execute(SfxRequest& rReq)
 
             if(xFunc.is())
             {
-                if(xFunc->ISA(FuSelection))
+                if( dynamic_cast<FuSelection*>(xFunc.get()) != NULL )
                 {
                     static_cast<FuSelection*>(xFunc.get())->SetEditMode(rReq.GetSlot());
                 }
-                else if(xFunc->ISA(FuConstructBezierPolygon))
+                else if( dynamic_cast<FuConstructBezierPolygon*>(xFunc.get()) != NULL )
                 {
                     
static_cast<FuConstructBezierPolygon*>(xFunc.get())->SetEditMode(rReq.GetSlot());
                 }
diff --git a/sd/source/ui/view/drtxtob.cxx b/sd/source/ui/view/drtxtob.cxx
index 9362c48..3b49d88 100644
--- a/sd/source/ui/view/drtxtob.cxx
+++ b/sd/source/ui/view/drtxtob.cxx
@@ -196,12 +196,10 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
                     // input language should be preferred over
                     // current cursor position to detect script type
                     OutlinerView* pOLV = mpView->GetTextEditOutlinerView();
+                    OutlineView *pOutView = dynamic_cast<OutlineView*>(mpView);
 
-                    if (mpView->ISA(OutlineView))
-                    {
-                        pOLV = static_cast<OutlineView*>(mpView)->GetViewByWindow(
-                            mpViewShell->GetActiveWindow());
-                    }
+                    if (pOutView)
+                        pOLV = pOutView->GetViewByWindow(mpViewShell->GetActiveWindow());
 
                     if(pOLV && !pOLV->GetSelection().HasRange())
                     {
@@ -246,14 +244,12 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
                 sal_Bool bDisableUp       = sal_True;
                 sal_Bool bDisableDown     = sal_True;
                 OutlinerView* pOLV = mpView->GetTextEditOutlinerView();
+                OutlineView *pOutView = dynamic_cast<OutlineView*>(mpView);
 
-                if (mpView->ISA(OutlineView))
-                {
-                    pOLV = static_cast<OutlineView*>(mpView)->GetViewByWindow(
-                        mpViewShell->GetActiveWindow());
-                }
+                if (pOutView)
+                    pOLV = pOutView->GetViewByWindow(mpViewShell->GetActiveWindow());
 
-                sal_Bool bOutlineViewSh = mpViewShell->ISA(OutlineViewShell);
+                sal_Bool bOutlineViewSh = dynamic_cast<OutlineViewShell*>(mpViewShell) != NULL;
 
                 if (pOLV &&
                     ( pOLV->GetOutliner()->GetMode() == OUTLINERMODE_OUTLINEOBJECT || 
bOutlineViewSh ) )
@@ -415,7 +411,7 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
 
 
     // die sind im Gliederungsmodus disabled
-    if (!mpViewShell->ISA(DrawViewShell))
+    if ( dynamic_cast<DrawViewShell*>(mpViewShell) == NULL )
     {
         rSet.DisableItem( SID_ATTR_PARA_ADJUST_LEFT );
         rSet.DisableItem( SID_ATTR_PARA_ADJUST_RIGHT );
diff --git a/sd/source/ui/view/drtxtob1.cxx b/sd/source/ui/view/drtxtob1.cxx
index 8aa52fa..a17524d 100644
--- a/sd/source/ui/view/drtxtob1.cxx
+++ b/sd/source/ui/view/drtxtob1.cxx
@@ -100,12 +100,13 @@ void TextObjectBar::Execute( SfxRequest &rReq )
     std::auto_ptr< OutlineViewModelChangeGuard > aGuard;
     SAL_WNODEPRECATED_DECLARATIONS_POP
 
-    if (mpView->ISA(OutlineView))
+    OutlineView *pOutView = dynamic_cast<OutlineView*>(mpView);
+
+    if (pOutView)
     {
-        pOLV = static_cast<OutlineView*>(mpView)
-            ->GetViewByWindow(mpViewShell->GetActiveWindow());
+        pOLV = pOutView->GetViewByWindow(mpViewShell->GetActiveWindow());
 
-        aGuard.reset( new OutlineViewModelChangeGuard( static_cast<OutlineView&>(*mpView) ) );
+        aGuard.reset( new OutlineViewModelChangeGuard(*pOutView) );
     }
 
     switch (nSlot)
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index ee16ce6..c401b93 100644
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -232,7 +232,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
                         pObj = rMarkList.GetMark(i)->GetMarkedSdrObj();
 
                         // #i25616#
-                        if(!pObj->ISA(SdrGrafObj))
+                        if( dynamic_cast<SdrGrafObj*>(pObj) == NULL )
                         {
                             aAttr.Put(pObj->GetMergedItemSet());
 
diff --git a/sd/source/ui/view/drviews4.cxx b/sd/source/ui/view/drviews4.cxx
index 48ab78b..915af6b 100644
--- a/sd/source/ui/view/drviews4.cxx
+++ b/sd/source/ui/view/drviews4.cxx
@@ -181,7 +181,7 @@ sal_Bool DrawViewShell::KeyInput (const KeyEvent& rKEvt, ::sd::Window* pWin)
                 {
                     SdrObject* pObj = aIter.Next();
 
-                    if(pObj && pObj->ISA(SdrTextObj))
+                    if( dynamic_cast<SdrTextObj*>(pObj) != NULL )
                     {
                         sal_uInt32 nInv(pObj->GetObjInventor());
                         sal_uInt16 nKnd(pObj->GetObjIdentifier());
@@ -522,7 +522,7 @@ void DrawViewShell::Command(const CommandEvent& rCEvt, ::sd::Window* pWin)
                  pWin != NULL && !mpDrawView->IsAction() && !SD_MOD()->GetWaterCan() )
         {
             sal_uInt16 nSdResId = 0;          // ResourceID fuer Popup-Menue
-            sal_Bool bGraphicShell = this->ISA(GraphicViewShell);
+            sal_Bool bGraphicShell = dynamic_cast<GraphicViewShell*>(this) != NULL;
 
             // Ist ein Fangobjekt unter dem Mauszeiger?
             SdrPageView* pPV;
@@ -553,10 +553,10 @@ void DrawViewShell::Command(const CommandEvent& rCEvt, ::sd::Window* pWin)
                 nSdResId = RID_DRAW_GLUEPOINT_POPUP;
             }
             // Feldbefehl ?
-            else if( pFldItem && (pFldItem->GetField()->ISA( SvxDateField ) ||
-                                 pFldItem->GetField()->ISA( SvxExtTimeField ) ||
-                                 pFldItem->GetField()->ISA( SvxExtFileField ) ||
-                                 pFldItem->GetField()->ISA( SvxAuthorField ) ) )
+            else if( dynamic_cast<const SvxDateField*>(pFldItem->GetField()) != NULL ||
+                     dynamic_cast<const SvxExtTimeField*>(pFldItem->GetField()) != NULL ||
+                     dynamic_cast<const SvxExtFileField*>(pFldItem->GetField()) != NULL ||
+                     dynamic_cast<const SvxAuthorField*>(pFldItem->GetField()) != NULL )
             {
                 LanguageType eLanguage( LANGUAGE_SYSTEM );
 
diff --git a/sd/source/ui/view/drviews6.cxx b/sd/source/ui/view/drviews6.cxx
index 6330708..f492276 100644
--- a/sd/source/ui/view/drviews6.cxx
+++ b/sd/source/ui/view/drviews6.cxx
@@ -143,7 +143,7 @@ void DrawViewShell::GetFormTextState(SfxItemSet& rSet)
     if ( rMarkList.GetMarkCount() == 1 )
         pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
 
-    if ( pObj == NULL || !pObj->ISA(SdrTextObj) ||
+   if ( pObj == NULL || dynamic_cast<const SdrTextObj*>(pObj) == NULL ||
         !((SdrTextObj*) pObj)->HasText() )
     {
 // automatisches Auf/Zuklappen des FontWork-Dialog; erstmal deaktiviert
@@ -424,8 +424,9 @@ void DrawViewShell::GetBmpMaskState( SfxItemSet& rSet )
         pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
 
     // valid graphic object?
-    if( pObj && pObj->ISA( SdrGrafObj ) &&
-        !( ((SdrGrafObj*) pObj)->IsEPS() || ((SdrGrafObj*) pObj)->IsRenderGraphic() ) &&
+    const SdrGrafObj *pGraf = dynamic_cast<const SdrGrafObj*>(pObj);
+
+    if( pGraf && !( pGraf->IsEPS() || pGraf->IsRenderGraphic() ) &&
         !mpDrawView->IsTextEdit() )
     {
         bEnable = sal_True;
diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx
index 266119a..97b2e6f 100644
--- a/sd/source/ui/view/drviews7.cxx
+++ b/sd/source/ui/view/drviews7.cxx
@@ -618,7 +618,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
             // avoid clipboard initialization for
             // read-only presentation views (workaround for NT4.0
             // clipboard prob...)
-            if( !ISA(PresentationViewShell) )
+            if( dynamic_cast<PresentationViewShell*>(this) != NULL )
             {
                 // create listener
                 mpClipEvtLstnr = new TransferableClipboardListener( LINK( this, DrawViewShell, 
ClipboardChanged ) );
@@ -1484,7 +1484,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
                     if ( abs( aSel.nEndPos - aSel.nStartPos ) == 1 )
                     {
                         const SvxFieldData* pField = pFieldItem->GetField();
-                        if ( pField->ISA(SvxURLField) )
+                        if ( dynamic_cast<const SvxURLField*>(pField) != NULL )
                             bDisableEditHyperlink = sal_False;
                     }
                 }
diff --git a/sd/source/ui/view/drviews8.cxx b/sd/source/ui/view/drviews8.cxx
index ea01389..2120b91 100644
--- a/sd/source/ui/view/drviews8.cxx
+++ b/sd/source/ui/view/drviews8.cxx
@@ -511,17 +511,14 @@ void DrawViewShell::ScannerEvent( const ::com::sun::star::lang::EventObject& )
                             SdrMark*    pMark = rMarkList.GetMark(0);
                             SdrObject*  pObj = pMark->GetMarkedSdrObj();
 
-                            if( pObj->ISA( SdrGrafObj ) )
+                            pGrafObj = dynamic_cast<SdrGrafObj*>(pObj);
+
+                            if(pGrafObj && pGrafObj->IsEmptyPresObj() )
                             {
-                                pGrafObj = static_cast< SdrGrafObj* >( pObj );
-
-                                if( pGrafObj->IsEmptyPresObj() )
-                                {
-                                    bInsertNewObject = sal_False;
-                                    pGrafObj->SetEmptyPresObj(sal_False);
-                                    pGrafObj->SetOutlinerParaObject(NULL);
-                                    pGrafObj->SetGraphic( Graphic( aScanBmp ) );
-                                }
+                                bInsertNewObject = sal_False;
+                                pGrafObj->SetEmptyPresObj(sal_False);
+                                pGrafObj->SetOutlinerParaObject(NULL);
+                                pGrafObj->SetGraphic( Graphic( aScanBmp ) );
                             }
                         }
                     }
diff --git a/sd/source/ui/view/drviewsb.cxx b/sd/source/ui/view/drviewsb.cxx
index 27ba354..5659647 100644
--- a/sd/source/ui/view/drviewsb.cxx
+++ b/sd/source/ui/view/drviewsb.cxx
@@ -407,11 +407,10 @@ void DrawViewShell::FuTemp02(SfxRequest& rReq)
                 const SvxFieldItem* pFieldItem = pOutView->GetFieldAtSelection();
                 if ( pFieldItem )
                 {
-                    const SvxFieldData* pField = pFieldItem->GetField();
-                    if( pField && pField->ISA( SvxURLField ) )
-                    {
-                        const SvxURLField* pURLField = static_cast< const SvxURLField* >( pField );
+                    const SvxURLField *pURLField = dynamic_cast<const 
SvxURLField*>(pFieldItem->GetField());
 
+                    if(pURLField)
+                    {
                         SfxStringItem aUrl( SID_FILE_NAME, pURLField->GetURL() );
                         SfxStringItem aTarget( SID_TARGETNAME, pURLField->GetTargetFrame() );
 
@@ -555,13 +554,13 @@ void DrawViewShell::FuTemp02(SfxRequest& rReq)
             {
                 const SvxFieldItem* pOldFldItem = pOLV->GetFieldAtSelection();
 
-                if( pOldFldItem && ( pOldFldItem->GetField()->ISA( SvxURLField ) ||
-                                    pOldFldItem->GetField()->ISA( SvxDateField ) ||
-                                    pOldFldItem->GetField()->ISA( SvxTimeField ) ||
-                                    pOldFldItem->GetField()->ISA( SvxExtTimeField ) ||
-                                    pOldFldItem->GetField()->ISA( SvxExtFileField ) ||
-                                    pOldFldItem->GetField()->ISA( SvxAuthorField ) ||
-                                    pOldFldItem->GetField()->ISA( SvxPageField ) ) )
+                if( pOldFldItem && ( dynamic_cast<const SvxURLField*>(pOldFldItem->GetField()) != 
NULL ||
+                                    dynamic_cast<const SvxDateField*>(pOldFldItem->GetField()) != 
NULL ||
+                                    dynamic_cast<const SvxTimeField*>(pOldFldItem->GetField()) != 
NULL ||
+                                    dynamic_cast<const SvxExtTimeField*>(pOldFldItem->GetField()) 
!= NULL ||
+                                    dynamic_cast<const SvxExtFileField*>(pOldFldItem->GetField()) 
!= NULL ||
+                                    dynamic_cast<const SvxAuthorField*>(pOldFldItem->GetField()) 
!= NULL ||
+                                    dynamic_cast<const SvxPageField*>(pOldFldItem->GetField()) != 
NULL ) )
                 {
                     // Feld selektieren, so dass es beim Insert geloescht wird
                     ESelection aSel = pOLV->GetSelection();
@@ -620,10 +619,10 @@ void DrawViewShell::FuTemp02(SfxRequest& rReq)
             {
                 const SvxFieldItem* pFldItem = pOLV->GetFieldAtSelection();
 
-                if( pFldItem && (pFldItem->GetField()->ISA( SvxDateField ) ||
-                                 pFldItem->GetField()->ISA( SvxAuthorField ) ||
-                                 pFldItem->GetField()->ISA( SvxExtFileField ) ||
-                                 pFldItem->GetField()->ISA( SvxExtTimeField ) ) )
+                if( pFldItem && (dynamic_cast<const SvxDateField*>(pFldItem->GetField()) != NULL ||
+                                 dynamic_cast<const SvxAuthorField*>(pFldItem->GetField()) != NULL 
||
+                                 dynamic_cast<const SvxExtFileField*>(pFldItem->GetField()) != 
NULL ||
+                                 dynamic_cast<const SvxExtTimeField*>(pFldItem->GetField()) != 
NULL ) )
                 {
                     // Dialog...
                     SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
diff --git a/sd/source/ui/view/drviewsc.cxx b/sd/source/ui/view/drviewsc.cxx
index 49e7dfe..5218c50 100644
--- a/sd/source/ui/view/drviewsc.cxx
+++ b/sd/source/ui/view/drviewsc.cxx
@@ -929,7 +929,8 @@ sal_uInt16 DrawViewShell::GetArrayId( sal_uInt16 nSId )
 
 void DrawViewShell::UpdateIMapDlg( SdrObject* pObj )
 {
-    if( ( pObj->ISA( SdrGrafObj ) || pObj->ISA( SdrOle2Obj ) ) && !mpDrawView->IsTextEdit() &&
+    if( ( dynamic_cast<SdrGrafObj*>(pObj) != NULL || dynamic_cast<SdrOle2Obj*>(pObj) != NULL ) &&
+        !mpDrawView->IsTextEdit() &&
          GetViewFrame()->HasChildWindow( SvxIMapDlgChildWindow::GetChildWindowId() ) )
     {
         Graphic     aGraphic;
diff --git a/sd/source/ui/view/drviewse.cxx b/sd/source/ui/view/drviewse.cxx
index c65d346..c98e6dc 100644
--- a/sd/source/ui/view/drviewse.cxx
+++ b/sd/source/ui/view/drviewse.cxx
@@ -368,7 +368,7 @@ void DrawViewShell::FuPermanent(SfxRequest& rReq)
 
                 while (i < nMarkCnt && !b3DObjMarked)
                 {
-                    if (rMarkList.GetMark(i)->GetMarkedSdrObj()->ISA(E3dObject))
+                    if ( dynamic_cast<E3dObject*>(rMarkList.GetMark(i)->GetMarkedSdrObj()) != NULL 
)
                     {
                         b3DObjMarked = sal_True;
                     }
diff --git a/sd/source/ui/view/drviewsf.cxx b/sd/source/ui/view/drviewsf.cxx
index 012163c..be7a0f7 100644
--- a/sd/source/ui/view/drviewsf.cxx
+++ b/sd/source/ui/view/drviewsf.cxx
@@ -102,12 +102,14 @@ void DrawViewShell::GetCtrlState(SfxItemSet &rSet)
                 ESelection aSel = pOLV->GetSelection();
                 if ( abs( aSel.nEndPos - aSel.nStartPos ) == 1 )
                 {
-                    const SvxFieldData* pField = pFieldItem->GetField();
-                    if (pField->ISA(SvxURLField))
+                    const SvxURLField* pField =
+                        dynamic_cast<const SvxURLField*>(pFieldItem->GetField());
+
+                    if (pField)
                     {
-                        aHLinkItem.SetName(((const SvxURLField*) pField)->GetRepresentation());
-                        aHLinkItem.SetURL(((const SvxURLField*) pField)->GetURL());
-                        aHLinkItem.SetTargetFrame(((const SvxURLField*) pField)->GetTargetFrame());
+                        aHLinkItem.SetName(pField->GetRepresentation());
+                        aHLinkItem.SetURL(pField->GetURL());
+                        aHLinkItem.SetTargetFrame(pField->GetTargetFrame());
                         bField = true;
                     }
                 }
diff --git a/sd/source/ui/view/drviewsg.cxx b/sd/source/ui/view/drviewsg.cxx
index 9a9ad2a..6eed033 100644
--- a/sd/source/ui/view/drviewsg.cxx
+++ b/sd/source/ui/view/drviewsg.cxx
@@ -101,7 +101,7 @@ void DrawViewShell::GetIMapState( SfxItemSet& rSet )
             pObj = rMarkList.GetMark( 0 )->GetMarkedSdrObj();
 
             SvxIMapDlg* pImageMapDialog = ViewShell::Implementation::GetImageMapDialog();
-            if ( ( pObj->ISA( SdrGrafObj ) /*|| pObj->ISA( SdrOle2Obj )*/ )
+            if ( ( dynamic_cast<const SdrGrafObj*>(pObj) != NULL /*|| dynamic_cast<const 
SdrOle2Obj*>(pObj) != NULL*/ )
                 && pImageMapDialog!=NULL
                 && ( pImageMapDialog->GetEditingObject() == (void*) pObj ) )
             {
diff --git a/sd/source/ui/view/drviewsj.cxx b/sd/source/ui/view/drviewsj.cxx
index 10be9e1..013f753 100644
--- a/sd/source/ui/view/drviewsj.cxx
+++ b/sd/source/ui/view/drviewsj.cxx
@@ -129,34 +129,36 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet )
 
 
             // don't show original size entry if not possible
-            if ( pObj->ISA( SdrOle2Obj ) )
+            const SdrOle2Obj *pOleObj = dynamic_cast<const SdrOle2Obj*>(pObj);
+
+            if (pOleObj)
             {
-                SdrOle2Obj* pOleObj = PTR_CAST(SdrOle2Obj, pObj);
                 if (pOleObj->GetObjRef().is() &&
                     ((pOleObj->GetObjRef()->getStatus( pOleObj->GetAspect() ) & 
embed::EmbedMisc::MS_EMBED_RECOMPOSEONRESIZE) ) )
                     rSet.DisableItem(SID_ORIGINAL_SIZE);
             }
 
-            if ( !( pObj->ISA( SdrGrafObj ) ) )
+            if ( dynamic_cast<const SdrGrafObj*>(pObj) == NULL )
             {
                 rSet.DisableItem(SID_SAVEGRAPHIC);
             }
 
             // Wenn es sich um kein Gruppenobjekt oder 3D-Objekt handelt
             // wird "Gruppe betreten" disabled
-            if( !( ( pObj->ISA( SdrObjGroup ) && nInv == SdrInventor ) ||
-                (pObj->ISA (E3dPolyScene) || pObj->ISA (E3dScene) /*|| pObj->ISA 
(E3dCompoundObject) */) ) )
+            if( !( ( dynamic_cast<const SdrObjGroup*>(pObj) != NULL && nInv == SdrInventor ) ||
+                (dynamic_cast<const E3dPolyScene*>(pObj) != NULL ||
+                 dynamic_cast<const E3dScene*>(pObj) != NULL /*|| 
dynamic_cast<E3dCompoundObject*>(pObj) != NULL */) ) )
             {
                 rSet.DisableItem( SID_ENTER_GROUP );
             }
 
             // Wenn es sich um kein Gruppenobjekt handelt
             // wird "Gruppierung aufheben" disabled
-            if (!(pObj->ISA(SdrObjGroup) && nInv == SdrInventor))
+            if (!(dynamic_cast<const SdrObjGroup*>(pObj) != NULL && nInv == SdrInventor))
             {
                 rSet.DisableItem(SID_UNGROUP);
             }
-            if (!pObj->ISA(SdrGrafObj) ||
+            if (!dynamic_cast<const SdrGrafObj*>(pObj) ||
                 ((SdrGrafObj*) pObj)->GetGraphicType() != GRAPHIC_BITMAP ||
                 ((SdrGrafObj*) pObj)->IsLinkedGraphic())
             {
@@ -178,7 +180,8 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet )
                 //rSet.DisableItem( SID_ATTRIBUTES_AREA ); // wieder raus!
                 rSet.DisableItem( SID_ATTR_FILL_STYLE );
             }
-            if( (!pObj->ISA( SdrPathObj ) && !aInfoRec.bCanConvToPath) || pObj->ISA( SdrObjGroup ) 
) // Solange es JOE fehlerhaft behandelt!
+            if( (!dynamic_cast<const SdrPathObj*>(pObj) && !aInfoRec.bCanConvToPath) ||
+                dynamic_cast<const SdrObjGroup*>(pObj) ) // Solange es JOE fehlerhaft behandelt!
             { // JOE: Ein Gruppenobjekt kann eben u.U. in ein PathObj gewandelt werden
                 rSet.DisableItem( SID_LINEEND_POLYGON );
             }
@@ -233,7 +236,7 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet )
                 rSet.DisableItem( SID_OBJECT_SHEAR );
             }
 
-            if(pObj->ISA(E3dCompoundObject))
+            if( dynamic_cast<const E3dCompoundObject*>(pObj) != NULL )
             {
                 rSet.DisableItem( SID_OBJECT_ALIGN_LEFT );
                 rSet.DisableItem( SID_OBJECT_ALIGN_CENTER );
@@ -274,10 +277,10 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet )
             {
                 const SvxFieldItem* pFldItem = pOLV->GetFieldAtSelection();
 
-                if( !( pFldItem && (pFldItem->GetField()->ISA( SvxDateField ) ||
-                                 pFldItem->GetField()->ISA( SvxAuthorField ) ||
-                                 pFldItem->GetField()->ISA( SvxExtFileField ) ||
-                                 pFldItem->GetField()->ISA( SvxExtTimeField ) ) ) )
+                if( !( pFldItem && (dynamic_cast<const SvxDateField*>(pFldItem->GetField()) != 
NULL ||
+                                 dynamic_cast<const SvxAuthorField*>(pFldItem->GetField()) != NULL 
||
+                                 dynamic_cast<const SvxExtFileField*>(pFldItem->GetField()) != 
NULL ||
+                                 dynamic_cast<const SvxExtTimeField*>(pFldItem->GetField()) != 
NULL ) ) )
                 {
                     rSet.DisableItem( SID_MODIFY_FIELD );
                 }
@@ -366,9 +369,9 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet )
                 }
                 else if (nInv == E3dInventor)
                 {
-                    if(pObj->ISA(E3dScene))
+                    if( dynamic_cast<const E3dScene*>(pObj) != NULL )
                         b3dObj = sal_True;
-                    else if(pObj->ISA(E3dCompoundObject))
+                    else if( dynamic_cast<const E3dCompoundObject*>(pObj) != NULL )
                         bE3dCompoundObject = sal_True;
                 }
             }
diff --git a/sd/source/ui/view/outlnvs2.cxx b/sd/source/ui/view/outlnvs2.cxx
index 3e16529..5075ba7 100644
--- a/sd/source/ui/view/outlnvs2.cxx
+++ b/sd/source/ui/view/outlnvs2.cxx
@@ -508,14 +508,14 @@ void OutlineViewShell::FuTemporaryModify(SfxRequest &rReq)
 
             const SvxFieldItem* pOldFldItem = pOutlinerView->GetFieldAtSelection();
 
-            if( pOldFldItem && ( pOldFldItem->GetField()->ISA( SvxURLField ) ||
-                                pOldFldItem->GetField()->ISA( SvxDateField ) ||
-                                pOldFldItem->GetField()->ISA( SvxTimeField ) ||
-                                pOldFldItem->GetField()->ISA( SvxExtTimeField ) ||
-                                pOldFldItem->GetField()->ISA( SvxExtFileField ) ||
-                                pOldFldItem->GetField()->ISA( SvxAuthorField ) ||
-                                pOldFldItem->GetField()->ISA( SvxPageField ) ||
-                                pOldFldItem->GetField()->ISA( SvxPagesField )) )
+            if( pOldFldItem && ( dynamic_cast<const SvxURLField*>(pOldFldItem->GetField()) != NULL 
||
+                                dynamic_cast<const SvxDateField*>(pOldFldItem->GetField()) != NULL 
||
+                                dynamic_cast<const SvxTimeField*>(pOldFldItem->GetField()) != NULL 
||
+                                dynamic_cast<const SvxExtTimeField*>(pOldFldItem->GetField()) != 
NULL ||
+                                dynamic_cast<const SvxExtFileField*>(pOldFldItem->GetField()) != 
NULL ||
+                                dynamic_cast<const SvxAuthorField*>(pOldFldItem->GetField()) != 
NULL ||
+                                dynamic_cast<const SvxPageField*>(pOldFldItem->GetField()) != NULL 
||
+                                dynamic_cast<const SvxPagesField*>(pOldFldItem->GetField()) != 
NULL ) )
             {
                 // select field, so it gets deleted on Insert
                 ESelection aSel = pOutlinerView->GetSelection();
@@ -538,10 +538,10 @@ void OutlineViewShell::FuTemporaryModify(SfxRequest &rReq)
         {
             const SvxFieldItem* pFldItem = pOutlinerView->GetFieldAtSelection();
 
-            if( pFldItem && (pFldItem->GetField()->ISA( SvxDateField ) ||
-                                pFldItem->GetField()->ISA( SvxAuthorField ) ||
-                                pFldItem->GetField()->ISA( SvxExtFileField ) ||
-                                pFldItem->GetField()->ISA( SvxExtTimeField ) ) )
+            if( pFldItem && (dynamic_cast<const SvxDateField*>(pFldItem->GetField()) != NULL ||
+                                dynamic_cast<const SvxAuthorField*>(pFldItem->GetField()) != NULL 
||
+                                dynamic_cast<const SvxExtFileField*>(pFldItem->GetField()) != NULL 
||
+                                dynamic_cast<const SvxExtTimeField*>(pFldItem->GetField()) != NULL 
) )
             {
                 // Dialog...
                 SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
diff --git a/sd/source/ui/view/outlnvsh.cxx b/sd/source/ui/view/outlnvsh.cxx
index f7425f7..0d966f0 100644
--- a/sd/source/ui/view/outlnvsh.cxx
+++ b/sd/source/ui/view/outlnvsh.cxx
@@ -439,12 +439,13 @@ void OutlineViewShell::GetCtrlState(SfxItemSet &rSet)
                 ESelection aSel = pOLV->GetSelection();
                 if ( abs( aSel.nEndPos - aSel.nStartPos ) == 1 )
                 {
-                    const SvxFieldData* pField = pFieldItem->GetField();
-                    if ( pField->ISA(SvxURLField) )
+                    const SvxURLField* pField = dynamic_cast<const 
SvxURLField*>(pFieldItem->GetField());
+
+                    if (pField)
                     {
-                        aHLinkItem.SetName(((const SvxURLField*) pField)->GetRepresentation());
-                        aHLinkItem.SetURL(((const SvxURLField*) pField)->GetURL());
-                        aHLinkItem.SetTargetFrame(((const SvxURLField*) pField)->GetTargetFrame());
+                        aHLinkItem.SetName(pField->GetRepresentation());
+                        aHLinkItem.SetURL(pField->GetURL());
+                        aHLinkItem.SetTargetFrame(pField->GetTargetFrame());
                     }
                 }
             }
@@ -1010,10 +1011,10 @@ void OutlineViewShell::GetMenuState( SfxItemSet &rSet )
     {
         const SvxFieldItem* pFldItem = pOutlinerView->GetFieldAtSelection();
 
-        if( !( pFldItem && (pFldItem->GetField()->ISA( SvxDateField ) ||
-                            pFldItem->GetField()->ISA( SvxAuthorField ) ||
-                            pFldItem->GetField()->ISA( SvxExtFileField ) ||
-                            pFldItem->GetField()->ISA( SvxExtTimeField ) ) ) )
+        if( !( pFldItem && (dynamic_cast<const SvxDateField*>(pFldItem->GetField()) != NULL ||
+                            dynamic_cast<const SvxAuthorField*>(pFldItem->GetField()) != NULL ||
+                            dynamic_cast<const SvxExtFileField*>(pFldItem->GetField()) != NULL ||
+                            dynamic_cast<const SvxExtTimeField*>(pFldItem->GetField()) != NULL ) ) 
)
         {
             rSet.DisableItem( SID_MODIFY_FIELD );
         }
diff --git a/sd/source/ui/view/sdview.cxx b/sd/source/ui/view/sdview.cxx
index 98bbb3e..4a7e4fd 100644
--- a/sd/source/ui/view/sdview.cxx
+++ b/sd/source/ui/view/sdview.cxx
@@ -240,7 +240,7 @@ drawinglayer::primitive2d::Primitive2DSequence ViewRedirector::createRedirectedP
         {
             bool bCreateOutline(false);
 
-            if( pObject->IsEmptyPresObj() && pObject->ISA(SdrTextObj) )
+            if( pObject->IsEmptyPresObj() && dynamic_cast<SdrTextObj*>(pObject) != NULL )
             {
                 if( !bSubContentProcessing || !pObject->IsNotVisibleAsMaster() )
                 {
@@ -1019,7 +1019,7 @@ sal_Bool View::IsMorphingAllowed() const
              ( nKind1 != OBJ_GRAF && nKind2 != OBJ_GRAF ) &&
              ( nKind1 != OBJ_OLE2 && nKind2 != OBJ_OLE2 ) &&
              ( nKind1 != OBJ_CAPTION && nKind2 !=  OBJ_CAPTION ) &&
-             !pObj1->ISA( E3dObject) && !pObj2->ISA( E3dObject) )
+             !dynamic_cast<const E3dObject*>(pObj1) && !dynamic_cast<const E3dObject*>(pObj2) )
         {
             SfxItemSet      aSet1( mpDoc->GetPool(), XATTR_FILLSTYLE, XATTR_FILLSTYLE );
             SfxItemSet      aSet2( mpDoc->GetPool(), XATTR_FILLSTYLE, XATTR_FILLSTYLE );
@@ -1047,8 +1047,9 @@ sal_Bool View::IsVectorizeAllowed() const
     if( rMarkList.GetMarkCount() == 1 )
     {
         const SdrObject* pObj = rMarkList.GetMark( 0 )->GetMarkedSdrObj();
+        const SdrGrafObj *pGraf = dynamic_cast<const SdrGrafObj*>(pObj);
 
-        if( pObj->ISA( SdrGrafObj ) && ( (SdrGrafObj*) pObj )->GetGraphicType() == GRAPHIC_BITMAP )
+        if( pGraf && pGraf->GetGraphicType() == GRAPHIC_BITMAP )
             bRet = sal_True;
     }
 
diff --git a/sd/source/ui/view/sdview2.cxx b/sd/source/ui/view/sdview2.cxx
index bd3a8d6..76112406 100644
--- a/sd/source/ui/view/sdview2.cxx
+++ b/sd/source/ui/view/sdview2.cxx
@@ -151,16 +151,16 @@ struct SdNavigatorDropEvent : public ExecuteDropEvent
 
     if( GetMarkedObjectCount() == 1 )
     {
-        SdrObject* pObj = GetMarkedObjectByIndex(0);
+        SdrOle2Obj *pOle = dynamic_cast<SdrOle2Obj*>(GetMarkedObjectByIndex(0));
 
-        if( pObj && pObj->ISA(SdrOle2Obj) && ((SdrOle2Obj*) pObj)->GetObjRef().is() )
+        if( pOle && pOle->GetObjRef().is() )
         {
             // If object has no persistence it must be copied as part of the document
             try
             {
-                uno::Reference< embed::XEmbedPersist > xPersObj( ((SdrOle2Obj*)pObj)->GetObjRef(), 
uno::UNO_QUERY );
+                uno::Reference< embed::XEmbedPersist > xPersObj( pOle->GetObjRef(), uno::UNO_QUERY 
);
                 if ( xPersObj.is() && xPersObj->hasEntry() )
-                     pSdrOleObj = (SdrOle2Obj*) pObj;
+                     pSdrOleObj = pOle;
             }
             catch( uno::Exception& )
             {}
@@ -200,15 +200,16 @@ struct SdNavigatorDropEvent : public ExecuteDropEvent
     if( GetMarkedObjectCount() == 1 )
     {
         SdrObject* pObj = GetMarkedObjectByIndex( 0 );
+        SdrOle2Obj *pOle = dynamic_cast<SdrOle2Obj*>(pObj);
 
-        if( pObj && pObj->ISA( SdrOle2Obj ) && ( (SdrOle2Obj*) pObj )->GetObjRef().is() )
+        if( pOle && pOle->GetObjRef().is() )
         {
             // If object has no persistence it must be copied as part of the document
             try
             {
-                uno::Reference< embed::XEmbedPersist > xPersObj( ((SdrOle2Obj*)pObj)->GetObjRef(), 
uno::UNO_QUERY );
+                uno::Reference< embed::XEmbedPersist > xPersObj( pOle->GetObjRef(), uno::UNO_QUERY 
);
                 if ( xPersObj.is() && xPersObj->hasEntry() )
-                     pSdrOleObj = (SdrOle2Obj*) pObj;
+                     pSdrOleObj = pOle;
             }
             catch( uno::Exception& )
             {}
@@ -410,7 +411,7 @@ void View::StartDrag( const Point& rStartPos, ::Window* pWindow )
         {
             FunctionReference xFunction( pDrawViewShell->GetCurrentFunction() );
 
-            if( xFunction.is() && xFunction->ISA( FuDraw ) )
+            if( xFunction.is() && dynamic_cast<FuDraw*>(xFunction.get()) != NULL )
                 static_cast<FuDraw*>(xFunction.get())->ForcePointer( NULL );
         }
 
@@ -603,7 +604,9 @@ sal_Int8 View::AcceptDrop( const AcceptDropEvent& rEvt, DropTargetHelper& rTarge
                     }
 
                     if( bHasPickObj && !bIsPresTarget &&
-                        ( !pPickObj->ISA( SdrGrafObj ) || bGraphic || bMtf || bBitmap || ( 
bXFillExchange && !pPickObj->ISA( SdrGrafObj ) && !pPickObj->ISA( SdrOle2Obj ) ) ) )
+                        ( !dynamic_cast<SdrGrafObj*>(pPickObj) || bGraphic || bMtf || bBitmap ||
+                        ( bXFillExchange && !dynamic_cast<SdrGrafObj*>(pPickObj) &&
+                            !dynamic_cast<SdrOle2Obj*>(pPickObj) ) ) )
                     {
                         if( mpDropMarkerObj != pPickObj )
                         {
@@ -837,7 +840,7 @@ sal_Int8 View::ExecuteDrop( const ExecuteDropEvent& rEvt, DropTargetHelper& rTar
                                 nRet = nDropAction;
                             }
                         }
-                        else if( mpViewSh->ISA( DrawViewShell ) )
+                        else if( dynamic_cast<DrawViewShell*>(mpViewSh) != NULL )
                         {
                             // insert as normal URL button
                             ( (DrawViewShell*) mpViewSh )->InsertURLButton( 
aINetBookmark.GetURL(), aINetBookmark.GetDescription(), String(), &aPos );
@@ -1009,7 +1012,7 @@ typedef std::vector< SdrObject* > SdrObjectVector;
 void ImplProcessObjectList(SdrObject* pObj, SdrObjectVector& rVector )
 {
     sal_Bool bIsGroup(pObj->IsGroupObject());
-    if(bIsGroup && pObj->ISA(E3dObject) && !pObj->ISA(E3dScene))
+    if(bIsGroup && dynamic_cast<E3dObject*>(pObj) != NULL && dynamic_cast<E3dScene*>(pObj) == NULL)
         bIsGroup = sal_False;
 
     rVector.push_back( pObj );
diff --git a/sd/source/ui/view/sdview3.cxx b/sd/source/ui/view/sdview3.cxx
index 48e2231..68006dd 100644
--- a/sd/source/ui/view/sdview3.cxx
+++ b/sd/source/ui/view/sdview3.cxx
@@ -286,7 +286,7 @@ sal_Bool View::InsertData( const TransferableDataHelper& rDataHelper,
     {
         OSL_ASSERT (mpViewSh->GetViewShell()!=NULL);
         SfxInPlaceClient* pIpClient = mpViewSh->GetViewShell()->GetIPClient();
-        if( mpViewSh->ISA(::sd::slidesorter::SlideSorterViewShell)
+        if( dynamic_cast<sd::slidesorter::SlideSorterViewShell*>(mpViewSh) != NULL
             || (pIpClient!=NULL && pIpClient->IsObjectInPlaceActive()))
         nPasteOptions |= SDRINSERT_DONTMARK;
     }
@@ -360,7 +360,8 @@ sal_Bool View::InsertData( const TransferableDataHelper& rDataHelper,
         const View* pSourceView = pOwnData->GetView();
 
 
-        if( pOwnData->GetDocShell() && pOwnData->IsPageTransferable() && ISA( View ) )
+        if( pOwnData->GetDocShell() && pOwnData->IsPageTransferable() &&
+            dynamic_cast<View*>(this) != NULL )
         {
             mpClipboard->HandlePageDrop (*pOwnData);
         }
@@ -486,7 +487,7 @@ sal_Bool View::InsertData( const TransferableDataHelper& rDataHelper,
                                         pRem->pClone = pObj;
                                         aConnectorContainer.Insert(pRem, CONTAINER_APPEND);
 
-                                        if(pObj->ISA(SdrEdgeObj))
+                                        if( dynamic_cast<SdrEdgeObj*>(pObj) != NULL )
                                             nConnectorCount++;
                                     }
                                 }
@@ -498,7 +499,7 @@ sal_Bool View::InsertData( const TransferableDataHelper& rDataHelper,
                                     {
                                         ImpRememberOrigAndClone* pRem = 
(ImpRememberOrigAndClone*)aConnectorContainer.GetObject(a);
 
-                                        if(pRem->pClone->ISA(SdrEdgeObj))
+                                        if( dynamic_cast<SdrEdgeObj*>(pRem->pClone) != NULL )
                                         {
                                             SdrEdgeObj* pOrigEdge = (SdrEdgeObj*)pRem->pOrig;
                                             SdrEdgeObj* pCloneEdge = (SdrEdgeObj*)pRem->pClone;
@@ -731,7 +732,8 @@ sal_Bool View::InsertData( const TransferableDataHelper& rDataHelper,
                             bChanged = sal_True;
                             mnAction = DND_ACTION_COPY;
                         }
-                        else if( ( mnAction & DND_ACTION_LINK ) && pPickObj && pObj && 
!pPickObj->ISA( SdrGrafObj ) && !pPickObj->ISA( SdrOle2Obj ) )
+                        else if( ( mnAction & DND_ACTION_LINK ) && pPickObj && pObj &&
+                            !dynamic_cast<SdrGrafObj*>(pPickObj) && 
!dynamic_cast<SdrOle2Obj*>(pPickObj) )
                         {
                             SfxItemSet aSet( mpDoc->GetPool() );
 
@@ -752,7 +754,8 @@ sal_Bool View::InsertData( const TransferableDataHelper& rDataHelper,
 
                             pPickObj->SetMergedItemSetAndBroadcast( aSet );
 
-                            if( pPickObj->ISA( E3dObject ) && pObj->ISA( E3dObject ) )
+                            if( dynamic_cast<E3dObject*>(pPickObj) != NULL &&
+                                dynamic_cast<E3dObject*>(pObj) != NULL )
                             {
                                 // Zusaetzlich 3D Attribute handeln
                                 SfxItemSet aNewSet( mpDoc->GetPool(), SID_ATTR_3D_START, 
SID_ATTR_3D_END, 0 );
diff --git a/sd/source/ui/view/sdview4.cxx b/sd/source/ui/view/sdview4.cxx
index f42ad34..4fd6128 100644
--- a/sd/source/ui/view/sdview4.cxx
+++ b/sd/source/ui/view/sdview4.cxx
@@ -98,9 +98,10 @@ SdrGrafObj* View::InsertGraphic( const Graphic& rGraphic, sal_Int8& rAction,
     SdrGrafObj*     pNewGrafObj = NULL;
     SdrPageView*    pPV = GetSdrPageView();
     SdrObject*      pPickObj = pObj;
+    bool bIsSlideSortView = dynamic_cast<sd::slidesorter::view::SlideSorterView*>(this) != NULL;
     const bool bOnMaster = pPV && pPV->GetPage() && pPV->GetPage()->IsMasterPage();
 
-    if(pPV && this->ISA(::sd::slidesorter::view::SlideSorterView))
+    if(pPV && bIsSlideSortView)
     {
         if(!pPV->GetPageRect().IsInside(rPos))
             pPV = 0L;
@@ -114,7 +115,7 @@ SdrGrafObj* View::InsertGraphic( const Graphic& rGraphic, sal_Int8& rAction,
 
     if( mnAction == DND_ACTION_LINK && pPickObj && pPV )
     {
-        const bool bIsGraphic = pPickObj->ISA( SdrGrafObj );
+        const bool bIsGraphic = dynamic_cast<SdrGrafObj*>(pPickObj) != NULL;
         if( bIsGraphic || (pObj && pObj->IsEmptyPresObj() && !bOnMaster) )
         {
             if( IsUndoEnabled() )
@@ -157,7 +158,7 @@ SdrGrafObj* View::InsertGraphic( const Graphic& rGraphic, sal_Int8& rAction,
             if( IsUndoEnabled() )
                 EndUndo();
         }
-        else if (pPickObj->IsClosedObj() && !pPickObj->ISA(SdrOle2Obj))
+        else if (pPickObj->IsClosedObj() && !dynamic_cast<SdrOle2Obj*>(pPickObj))
         {
             /******************************************************************
             * Das Objekt wird mit der Graphik gefuellt
@@ -214,7 +215,7 @@ SdrGrafObj* View::InsertGraphic( const Graphic& rGraphic, sal_Int8& rAction,
                 && mpViewSh->GetViewShell()!=NULL
                 && mpViewSh->GetViewShell()->GetIPClient()
                 && mpViewSh->GetViewShell()->GetIPClient()->IsObjectInPlaceActive())
-            || this->ISA(::sd::slidesorter::view::SlideSorterView))
+            || bIsSlideSortView)
             nOptions |= SDRINSERT_DONTMARK;
 
         if( ( mnAction & DND_ACTION_MOVE ) && pPickObj && (pPickObj->IsEmptyPresObj() || 
pPickObj->GetUserCall()) )
@@ -307,7 +308,7 @@ SdrMediaObj* View::InsertMediaURL( const rtl::OUString& rMediaURL, sal_Int8& rAc
     SdrPageView*    pPV = GetSdrPageView();
     SdrObject*      pPickObj = GetEmptyPresentationObject( PRESOBJ_MEDIA );
 
-    if(pPV && this->ISA(::sd::slidesorter::view::SlideSorterView ))
+    if(pPV && dynamic_cast<sd::slidesorter::view::SlideSorterView*>(this) != NULL )
     {
         if(!pPV->GetPageRect().IsInside(rPos))
             pPV = 0L;
@@ -319,7 +320,7 @@ SdrMediaObj* View::InsertMediaURL( const rtl::OUString& rMediaURL, sal_Int8& rAc
         PickObj(rPos, getHitTolLog(), pPickObj, pPageView);
     }
 
-    if( mnAction == DND_ACTION_LINK && pPickObj && pPV && pPickObj->ISA( SdrMediaObj ) )
+    if( mnAction == DND_ACTION_LINK && pPV && dynamic_cast<SdrMediaObj*>(pPickObj) != NULL )
     {
         pNewMediaObj = static_cast< SdrMediaObj* >( pPickObj->Clone() );
         pNewMediaObj->setURL( realURL );
diff --git a/sd/source/ui/view/sdwindow.cxx b/sd/source/ui/view/sdwindow.cxx
index 0590702..1a36af7 100644
--- a/sd/source/ui/view/sdwindow.cxx
+++ b/sd/source/ui/view/sdwindow.cxx
@@ -478,9 +478,10 @@ long Window::SetZoomFactor(long nZoom)
     UpdateMapOrigin();
 
     // Update the view's snapping to the the new zoom factor.
-    if ( mpViewShell && mpViewShell->ISA(DrawViewShell) )
-        ((DrawViewShell*) mpViewShell)->GetView()->
-                                        RecalcLogicSnapMagnetic(*this);
+    DrawViewShell *pDrawViewSh = dynamic_cast<DrawViewShell*>(mpViewShell);
+
+    if (pDrawViewSh)
+        pDrawViewSh->GetView()->RecalcLogicSnapMagnetic(*this);
 
     // Return the zoom factor just in case it has been changed above to lie
     // inside the valid range.
@@ -728,7 +729,7 @@ void Window::UpdateMapMode (void)
     // removed old stuff here which still forced zoom to be
     // %BRUSH_SIZE which is outdated now
 
-    if (mpViewShell && mpViewShell->ISA(DrawViewShell))
+    if ( dynamic_cast<DrawViewShell*>(mpViewShell) != NULL )
     {
         // Seite soll nicht am Fensterrand "kleben"
         if (aPix.Width() == 0)
@@ -971,7 +972,9 @@ void Window::DataChanged( const DataChangedEvent& rDCEvt )
                 else
                     nPreviewSlot = SID_PREVIEW_QUALITY_COLOR;
 
-                if( mpViewShell->ISA( DrawViewShell ) )
+                bool bIsDrawView = dynamic_cast<DrawViewShell*>(mpViewShell) != NULL;
+
+                if(bIsDrawView)
                 {
                     SetDrawMode( nOutputMode );
                     mpViewShell->GetFrameView()->SetDrawMode( nOutputMode );
@@ -979,7 +982,7 @@ void Window::DataChanged( const DataChangedEvent& rDCEvt )
                 }
 
                 // Overwrite window color for OutlineView
-                if( mpViewShell->ISA(OutlineViewShell ) )
+                if( dynamic_cast<DrawViewShell*>(mpViewShell) != NULL )
                 {
                     svtools::ColorConfig aColorConfig;
                     const Color aDocColor( aColorConfig.GetColorValue( svtools::DOCCOLOR ).nColor 
);
@@ -992,7 +995,7 @@ void Window::DataChanged( const DataChangedEvent& rDCEvt )
                 mpViewShell->ArrangeGUIElements();
 
                 // re-create handles to show new outfit
-                if(mpViewShell->ISA(DrawViewShell))
+                if(bIsDrawView)
                 {
                     mpViewShell->GetView()->AdjustMarkHdl();
                 }
@@ -1079,7 +1082,7 @@ sal_Int8 Window::AcceptDrop( const AcceptDropEvent& rEvt )
         if( mpViewShell )
             nRet = mpViewShell->AcceptDrop( rEvt, *this, this, SDRPAGE_NOTFOUND, SDRLAYER_NOTFOUND 
);
 
-        if (mbUseDropScroll && ! mpViewShell->ISA(OutlineViewShell))
+        if (mbUseDropScroll && dynamic_cast<OutlineViewShell*>(mpViewShell) == NULL)
             DropScroll( rEvt.maPosPixel );
     }
 
diff --git a/sd/source/ui/view/tabcontr.cxx b/sd/source/ui/view/tabcontr.cxx
index bc84c4c..d59d586 100644
--- a/sd/source/ui/view/tabcontr.cxx
+++ b/sd/source/ui/view/tabcontr.cxx
@@ -335,7 +335,7 @@ void TabControl::Command(const CommandEvent& rCEvt)
 
     if ( nCmd == COMMAND_CONTEXTMENU )
     {
-        sal_Bool bGraphicShell = pDrViewSh->ISA(GraphicViewShell);
+        sal_Bool bGraphicShell = dynamic_cast<GraphicViewShell*>(pDrViewSh) != NULL;
         sal_uInt16 nResId = bGraphicShell ? RID_GRAPHIC_PAGETAB_POPUP :
                                         RID_DRAW_PAGETAB_POPUP;
         SfxDispatcher* pDispatcher = pDrViewSh->GetViewFrame()->GetDispatcher();
diff --git a/sd/source/ui/view/viewshel.cxx b/sd/source/ui/view/viewshel.cxx
index 68ebe72..b87c666 100644
--- a/sd/source/ui/view/viewshel.cxx
+++ b/sd/source/ui/view/viewshel.cxx
@@ -129,7 +129,7 @@ static const int DELTA_ZOOM = 10;
 
 sal_Bool ViewShell::IsPageFlipMode(void) const
 {
-    return this->ISA(DrawViewShell) && mpContentWindow.get() != NULL &&
+    return dynamic_cast<const DrawViewShell*>(this) != NULL && mpContentWindow.get() != NULL &&
         mpContentWindow->GetVisibleHeight() >= 1.0;
 }
 
-- 
1.7.3.4

From 80d7346f8bc6e27a98bcef7145681831956517ff Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sat, 17 Dec 2011 22:55:16 -0430
Subject: [PATCH 17/36] Replace deprecated ISA macro for dynamic_cast.

---
 .../accessibility/AccessibleDocumentViewBase.cxx   |    8 +++++---
 .../ui/accessibility/AccessibleOutlineView.cxx     |    2 +-
 .../ui/accessibility/AccessibleSlideSorterView.cxx |    8 ++++----
 3 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx 
b/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx
index 5ae050a..7fef832 100644
--- a/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx
+++ b/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx
@@ -170,10 +170,12 @@ void AccessibleDocumentViewBase::Init (void)
 IMPL_LINK(AccessibleDocumentViewBase, WindowChildEventListener,
     VclSimpleEvent*, pEvent)
 {
-    OSL_ASSERT(pEvent!=NULL && pEvent->ISA(VclWindowEvent));
-    if (pEvent!=NULL && pEvent->ISA(VclWindowEvent))
+    VclWindowEvent *pWindowEvent = dynamic_cast<VclWindowEvent*>(pEvent);
+
+    OSL_ASSERT(pWindowEvent);
+
+    if (pWindowEvent)
     {
-        VclWindowEvent* pWindowEvent = static_cast<VclWindowEvent*>(pEvent);
         //      DBG_ASSERT( pVclEvent->GetWindow(), "Window???" );
         switch (pWindowEvent->GetId())
         {
diff --git a/sd/source/ui/accessibility/AccessibleOutlineView.cxx 
b/sd/source/ui/accessibility/AccessibleOutlineView.cxx
index 942f0a2..67f84ab 100644
--- a/sd/source/ui/accessibility/AccessibleOutlineView.cxx
+++ b/sd/source/ui/accessibility/AccessibleOutlineView.cxx
@@ -84,7 +84,7 @@ AccessibleOutlineView::AccessibleOutlineView (
     {
         ::sd::View* pView = pViewShell->GetView();
 
-        if (pView && pView->ISA(::sd::OutlineView))
+        if ( dynamic_cast<sd::OutlineView*>(pView) != NULL )
         {
             OutlinerView* pOutlineView = static_cast< ::sd::OutlineView*>(
                 pView)->GetViewByWindow( pSdWindow );
diff --git a/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx 
b/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx
index 2e834a1..1b1c294 100644
--- a/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx
+++ b/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx
@@ -1010,9 +1010,9 @@ void AccessibleSlideSorterView::Implementation::Notify (
     SfxBroadcaster&,
     const SfxHint& rHint)
 {
-    if (rHint.ISA(SdrHint))
+    if ( dynamic_cast<const SdrHint*>(&rHint) != NULL )
     {
-        SdrHint& rSdrHint (*PTR_CAST(SdrHint,&rHint));
+        const SdrHint& rSdrHint (*static_cast<const SdrHint*>(&rHint));
         switch (rSdrHint.GetKind())
         {
             case HINT_PAGEORDERCHG:
@@ -1022,9 +1022,9 @@ void AccessibleSlideSorterView::Implementation::Notify (
                 break;
         }
     }
-    else if (rHint.ISA(sd::ViewShellHint))
+    else if ( dynamic_cast<const sd::ViewShellHint*>(&rHint) != NULL )
     {
-        sd::ViewShellHint& rViewShellHint (*PTR_CAST(sd::ViewShellHint, &rHint));
+        const sd::ViewShellHint& rViewShellHint (*static_cast<const sd::ViewShellHint*>(&rHint));
         switch (rViewShellHint.GetHintId())
         {
             case sd::ViewShellHint::HINT_COMPLEX_MODEL_CHANGE_START:
-- 
1.7.3.4

From ace3477d0375616af5358053b142107d254cd200 Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sat, 17 Dec 2011 22:58:00 -0430
Subject: [PATCH 18/36] Replace deprecated ISA macro for dynamic_cast.

---
 sd/source/ui/tools/EventMultiplexer.cxx |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/sd/source/ui/tools/EventMultiplexer.cxx b/sd/source/ui/tools/EventMultiplexer.cxx
index aaa000a..1e5d05c 100644
--- a/sd/source/ui/tools/EventMultiplexer.cxx
+++ b/sd/source/ui/tools/EventMultiplexer.cxx
@@ -728,9 +728,9 @@ void EventMultiplexer::Implementation::Notify (
     SfxBroadcaster&,
     const SfxHint& rHint)
 {
-    if (rHint.ISA(SdrHint))
+    if ( dynamic_cast<const SdrHint*>(&rHint) != NULL )
     {
-        SdrHint& rSdrHint (*PTR_CAST(SdrHint,&rHint));
+        const SdrHint& rSdrHint (*static_cast<const SdrHint*>(&rHint));
         switch (rSdrHint.GetKind())
         {
             case HINT_MODELCLEARED:
@@ -760,9 +760,9 @@ void EventMultiplexer::Implementation::Notify (
                 break;
         }
     }
-    else if (rHint.ISA(SfxSimpleHint))
+    else if ( dynamic_cast<const SfxSimpleHint*>(&rHint) != NULL )
     {
-        SfxSimpleHint& rSimpleHint (*PTR_CAST(SfxSimpleHint, &rHint));
+        const SfxSimpleHint& rSimpleHint (*static_cast<const SfxSimpleHint*>(&rHint));
         if (rSimpleHint.GetId() == SFX_HINT_DYING)
             mpDocument = NULL;
     }
-- 
1.7.3.4

From 3a76af3a5bc86fc2611a2a3ebb8379c1c4367ed9 Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sat, 17 Dec 2011 23:03:12 -0430
Subject: [PATCH 19/36] Replace deprecated ISA macro for dynamic_cast.

---
 sd/source/core/drawdoc.cxx  |    2 +-
 sd/source/core/drawdoc2.cxx |    2 +-
 sd/source/core/drawdoc4.cxx |    6 +++---
 sd/source/core/sdpage.cxx   |   11 ++++++-----
 sd/source/core/stlsheet.cxx |    4 ++--
 5 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/sd/source/core/drawdoc.cxx b/sd/source/core/drawdoc.cxx
index 4d68ef1..a7d3a94 100644
--- a/sd/source/core/drawdoc.cxx
+++ b/sd/source/core/drawdoc.cxx
@@ -784,7 +784,7 @@ void SdDrawDocument::NewOrLoadCompleted( SdPage* pPage, SdStyleSheetPool* pSPool
                     }
                 }
 
-                if (pObj->ISA(SdrTextObj) && pObj->IsEmptyPresObj() && pPage)
+                if ( dynamic_cast<SdrTextObj*>(pObj) != NULL && pObj->IsEmptyPresObj() && pPage)
                 {
                     PresObjKind ePresObjKind = pPage->GetPresObjKind(pObj);
                     String aString( pPage->GetPresObjText(ePresObjKind) );
diff --git a/sd/source/core/drawdoc2.cxx b/sd/source/core/drawdoc2.cxx
index 35fe4e9..e365cde 100644
--- a/sd/source/core/drawdoc2.cxx
+++ b/sd/source/core/drawdoc2.cxx
@@ -1102,7 +1102,7 @@ IMapObject* SdDrawDocument::GetHitIMapObject( SdrObject* pObj,
         sal_Bool                bObjSupported = sal_False;
 
         // HitTest ausfuehren
-        if ( pObj->ISA( SdrGrafObj )  ) // einfaches Grafik-Objekt
+        if ( dynamic_cast<SdrGrafObj*>(pObj) != NULL ) // einfaches Grafik-Objekt
         {
             const SdrGrafObj*   pGrafObj = (const SdrGrafObj*) pObj;
             const GeoStat&      rGeo = pGrafObj->GetGeoStat();
diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx
index 6780235..9ee5a3b 100644
--- a/sd/source/core/drawdoc4.cxx
+++ b/sd/source/core/drawdoc4.cxx
@@ -881,7 +881,7 @@ IMPL_LINK(SdDrawDocument, OnlineSpellingHdl, Timer*, EMPTYARG )
 
         if (pObj)
         {
-            if (pObj->GetOutlinerParaObject() && pObj->ISA(SdrTextObj))
+            if (pObj->GetOutlinerParaObject() && dynamic_cast<SdrTextObj*>(pObj) != NULL)
             {
                 // Textobjekt spellen
                 SpellObject((SdrTextObj*) pObj);
@@ -898,7 +898,7 @@ IMPL_LINK(SdDrawDocument, OnlineSpellingHdl, Timer*, EMPTYARG )
                 {
                     pSubObj = aGroupIter.Next();
 
-                    if (pSubObj->GetOutlinerParaObject() && pSubObj->ISA(SdrTextObj))
+                    if (pSubObj->GetOutlinerParaObject() && dynamic_cast<SdrTextObj*>(pSubObj) != 
NULL )
                     {
                         // Textobjekt im Gruppenobjekt gefunden
                         SpellObject((SdrTextObj*) pSubObj);
@@ -1049,7 +1049,7 @@ void SdDrawDocument::ImpOnlineSpellCallback(SpellCallbackInfo* pInfo, 
SdrObject*
         // restart when add to dictionary takes place, too.
         || nCommand == SPELLCMD_ADDTODICTIONARY)
     {
-        if(pObj && pOutl && pObj->ISA(SdrTextObj))
+        if(pOutl && dynamic_cast<SdrTextObj*>(pObj) != NULL )
         {
             sal_Bool bModified(IsChanged());
             ((SdrTextObj*)pObj)->SetOutlinerParaObject(pOutl->CreateParaObject());
diff --git a/sd/source/core/sdpage.cxx b/sd/source/core/sdpage.cxx
index 1fd344d..6dd1347 100644
--- a/sd/source/core/sdpage.cxx
+++ b/sd/source/core/sdpage.cxx
@@ -409,7 +409,7 @@ SdrObject* SdPage::CreatePresObj(PresObjKind eObjKind, sal_Bool bVertical, const
 
         InsertObject(pSdrObj);
 
-        if ( pSdrObj->ISA(SdrTextObj) )
+        if ( dynamic_cast<SdrTextObj*>(pSdrObj) != NULL )
         {
             // Tell the object EARLY that it is vertical to have the
             // defaults for AutoGrowWidth/Height reversed
@@ -456,7 +456,7 @@ SdrObject* SdPage::CreatePresObj(PresObjKind eObjKind, sal_Bool bVertical, const
         }
 
         String aString = GetPresObjText(eObjKind);
-        if( (aString.Len() || bForceText) && pSdrObj->ISA(SdrTextObj) )
+        if( (aString.Len() || bForceText) && dynamic_cast<SdrTextObj*>(pSdrObj) != NULL )
         {
             SdrOutliner* pOutliner = ( (SdDrawDocument*) GetModel() )->GetInternalOutliner();
 
@@ -1995,7 +1995,7 @@ void SdPage::ScaleObjects(const Size& rNewPageSize, const Rectangle& 
rNewBorderR
                     }
                     else if ( eObjKind != OBJ_TITLETEXT   &&
                               eObjKind != OBJ_OUTLINETEXT &&
-                              pObj->ISA(SdrTextObj)       &&
+                              dynamic_cast<SdrTextObj*>(pObj) != NULL       &&
                               pObj->GetOutlinerParaObject() )
                     {
                         /******************************************************
@@ -2290,7 +2290,8 @@ SdrObject* SdPage::InsertAutoLayoutShape( SdrObject* pObj, PresObjKind 
eObjKind,
         }
     }
 
-    if ( pObj && (pObj->GetUserCall() || bInit) && ( pObj->IsEmptyPresObj() || 
!pObj->ISA(SdrGrafObj) ) )
+    if ( pObj && (pObj->GetUserCall() || bInit) && ( pObj->IsEmptyPresObj() ||
+        !dynamic_cast<SdrGrafObj*>(pObj) ) )
         pObj->AdjustToMaxRect( aRect );
 
     return pObj;
@@ -2355,7 +2356,7 @@ void SdPage::SetObjText(SdrTextObj* pObj, SdrOutliner* pOutliner, PresObjKind 
eO
 {
     if ( pObj )
     {
-        DBG_ASSERT( pObj->ISA(SdrTextObj), "SetObjText: Kein SdrTextObj!" );
+        DBG_ASSERT( dynamic_cast<SdrTextObj*>(pObj) != NULL, "SetObjText: Kein SdrTextObj!" );
         ::Outliner* pOutl = pOutliner;
 
         if (!pOutliner)
diff --git a/sd/source/core/stlsheet.cxx b/sd/source/core/stlsheet.cxx
index 521c7f6..5a92351 100644
--- a/sd/source/core/stlsheet.cxx
+++ b/sd/source/core/stlsheet.cxx
@@ -357,11 +357,11 @@ sal_Bool SdStyleSheet::IsUsed() const
                 continue;
 
             // NULL-Pointer ist im Listener-Array erlaubt
-            if (pListener && pListener->ISA(SdrAttrObj))
+            if ( dynamic_cast<SdrAttrObj*>(pListener) != NULL )
             {
                 bResult = ((SdrAttrObj*)pListener)->IsInserted();
             }
-            else if (pListener && pListener->ISA(SfxStyleSheet))
+            else if ( dynamic_cast<SfxStyleSheet*>(pListener) != NULL )
             {
                 bResult = ((SfxStyleSheet*)pListener)->IsUsed();
             }
-- 
1.7.3.4

From 95e3dcefdacd0ae3b05c062edb3d2b2a1bf2be1a Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sun, 18 Dec 2011 10:21:47 -0430
Subject: [PATCH 20/36] Remove usage of tools/rtti.hxx from fupoor class hierarchy.

---
 sd/source/ui/func/fuarea.cxx                       |    1 -
 sd/source/ui/func/fubullet.cxx                     |    2 --
 sd/source/ui/func/fuchar.cxx                       |    2 --
 sd/source/ui/func/fucon3d.cxx                      |    2 --
 sd/source/ui/func/fuconarc.cxx                     |    2 --
 sd/source/ui/func/fuconbez.cxx                     |    2 --
 sd/source/ui/func/fuconcs.cxx                      |    2 --
 sd/source/ui/func/fuconnct.cxx                     |    2 --
 sd/source/ui/func/fuconrec.cxx                     |    2 --
 sd/source/ui/func/fuconstr.cxx                     |    2 --
 sd/source/ui/func/fuconuno.cxx                     |    2 --
 sd/source/ui/func/fucopy.cxx                       |    2 --
 sd/source/ui/func/fucushow.cxx                     |    2 --
 sd/source/ui/func/fudraw.cxx                       |    2 --
 sd/source/ui/func/fudspord.cxx                     |    2 --
 sd/source/ui/func/fuediglu.cxx                     |    2 --
 sd/source/ui/func/fuexpand.cxx                     |    2 --
 sd/source/ui/func/fuformatpaintbrush.cxx           |    2 --
 sd/source/ui/func/fuhhconv.cxx                     |    2 --
 sd/source/ui/func/fuinsert.cxx                     |    5 -----
 sd/source/ui/func/fuinsfil.cxx                     |    2 --
 sd/source/ui/func/fuline.cxx                       |    2 --
 sd/source/ui/func/fulinend.cxx                     |    2 --
 sd/source/ui/func/fulink.cxx                       |    2 --
 sd/source/ui/func/fumeasur.cxx                     |    2 --
 sd/source/ui/func/fumorph.cxx                      |    1 -
 sd/source/ui/func/fuoaprms.cxx                     |    2 --
 sd/source/ui/func/fuolbull.cxx                     |    2 --
 sd/source/ui/func/fuoltext.cxx                     |    2 --
 sd/source/ui/func/fuoutl.cxx                       |    2 --
 sd/source/ui/func/fupage.cxx                       |    3 ---
 sd/source/ui/func/fuparagr.cxx                     |    2 --
 sd/source/ui/func/fupoor.cxx                       |    2 --
 sd/source/ui/func/fuprlout.cxx                     |    2 --
 sd/source/ui/func/fuprobjs.cxx                     |    3 ---
 sd/source/ui/func/fuscale.cxx                      |    2 --
 sd/source/ui/func/fusearch.cxx                     |    2 --
 sd/source/ui/func/fusel.cxx                        |    2 --
 sd/source/ui/func/fusldlg.cxx                      |    2 --
 sd/source/ui/func/fusnapln.cxx                     |    2 --
 sd/source/ui/func/fusumry.cxx                      |    2 --
 sd/source/ui/func/futempl.cxx                      |    2 --
 sd/source/ui/func/futext.cxx                       |    2 --
 sd/source/ui/func/futhes.cxx                       |    2 --
 sd/source/ui/func/futransf.cxx                     |    2 --
 sd/source/ui/func/futxtatt.cxx                     |    2 --
 sd/source/ui/func/fuvect.cxx                       |    2 --
 sd/source/ui/func/fuzoom.cxx                       |    2 --
 sd/source/ui/inc/fuarea.hxx                        |    1 -
 sd/source/ui/inc/fubullet.hxx                      |    1 -
 sd/source/ui/inc/fuchar.hxx                        |    1 -
 sd/source/ui/inc/fucon3d.hxx                       |    1 -
 sd/source/ui/inc/fuconarc.hxx                      |    1 -
 sd/source/ui/inc/fuconbez.hxx                      |    1 -
 sd/source/ui/inc/fuconcs.hxx                       |    1 -
 sd/source/ui/inc/fuconnct.hxx                      |    1 -
 sd/source/ui/inc/fuconrec.hxx                      |    1 -
 sd/source/ui/inc/fuconstr.hxx                      |    2 --
 sd/source/ui/inc/fuconuno.hxx                      |    1 -
 sd/source/ui/inc/fucopy.hxx                        |    1 -
 sd/source/ui/inc/fucushow.hxx                      |    1 -
 sd/source/ui/inc/fudraw.hxx                        |    1 -
 sd/source/ui/inc/fudspord.hxx                      |    1 -
 sd/source/ui/inc/fuediglu.hxx                      |    1 -
 sd/source/ui/inc/fuexpand.hxx                      |    1 -
 sd/source/ui/inc/fuformatpaintbrush.hxx            |    1 -
 sd/source/ui/inc/fuhhconv.hxx                      |    1 -
 sd/source/ui/inc/fuinsert.hxx                      |    4 ----
 sd/source/ui/inc/fuinsfil.hxx                      |    1 -
 sd/source/ui/inc/fuline.hxx                        |    1 -
 sd/source/ui/inc/fulinend.hxx                      |    1 -
 sd/source/ui/inc/fulink.hxx                        |    1 -
 sd/source/ui/inc/fumeasur.hxx                      |    1 -
 sd/source/ui/inc/fumorph.hxx                       |    1 -
 sd/source/ui/inc/fuoaprms.hxx                      |    1 -
 sd/source/ui/inc/fuolbull.hxx                      |    1 -
 sd/source/ui/inc/fuoltext.hxx                      |    1 -
 sd/source/ui/inc/fuoutl.hxx                        |    1 -
 sd/source/ui/inc/fupage.hxx                        |    1 -
 sd/source/ui/inc/fuparagr.hxx                      |    1 -
 sd/source/ui/inc/fupoor.hxx                        |    3 ---
 sd/source/ui/inc/fuprlout.hxx                      |    1 -
 sd/source/ui/inc/fuprobjs.hxx                      |    1 -
 sd/source/ui/inc/fuscale.hxx                       |    1 -
 sd/source/ui/inc/fusearch.hxx                      |    1 -
 sd/source/ui/inc/fusel.hxx                         |    1 -
 sd/source/ui/inc/fusldlg.hxx                       |    1 -
 sd/source/ui/inc/fusnapln.hxx                      |    1 -
 sd/source/ui/inc/fusumry.hxx                       |    1 -
 sd/source/ui/inc/futempl.hxx                       |    1 -
 sd/source/ui/inc/futext.hxx                        |    1 -
 sd/source/ui/inc/futhes.hxx                        |    1 -
 sd/source/ui/inc/futransf.hxx                      |    1 -
 sd/source/ui/inc/futxtatt.hxx                      |    1 -
 sd/source/ui/inc/fuvect.hxx                        |    1 -
 sd/source/ui/inc/fuzoom.hxx                        |    1 -
 .../controller/SlsSelectionFunction.cxx            |    2 --
 .../ui/slidesorter/controller/SlsSlideFunction.cxx |    2 --
 .../inc/controller/SlsSelectionFunction.hxx        |    1 -
 .../inc/controller/SlsSlideFunction.hxx            |    1 -
 100 files changed, 0 insertions(+), 159 deletions(-)

diff --git a/sd/source/ui/func/fuarea.cxx b/sd/source/ui/func/fuarea.cxx
index 20758a7..455fa1d 100644
--- a/sd/source/ui/func/fuarea.cxx
+++ b/sd/source/ui/func/fuarea.cxx
@@ -48,7 +48,6 @@
 #include <svx/dialogs.hrc>
 
 namespace sd {
-TYPEINIT1( FuArea, FuPoor );
 
 /*************************************************************************
 |*
diff --git a/sd/source/ui/func/fubullet.cxx b/sd/source/ui/func/fubullet.cxx
index ba8e638..386cd8a 100644
--- a/sd/source/ui/func/fubullet.cxx
+++ b/sd/source/ui/func/fubullet.cxx
@@ -62,8 +62,6 @@ const sal_Unicode CHAR_LRM          =   ((sal_Unicode)0x200E);
 const sal_Unicode CHAR_ZWSP         =   ((sal_Unicode)0x200B);
 const sal_Unicode CHAR_ZWNBSP       =   ((sal_Unicode)0x2060);
 
-TYPEINIT1( FuBullet, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuchar.cxx b/sd/source/ui/func/fuchar.cxx
index 63e3e23..1a358c2 100644
--- a/sd/source/ui/func/fuchar.cxx
+++ b/sd/source/ui/func/fuchar.cxx
@@ -48,8 +48,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuChar, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fucon3d.cxx b/sd/source/ui/func/fucon3d.cxx
index d136d33..2bbe29a 100644
--- a/sd/source/ui/func/fucon3d.cxx
+++ b/sd/source/ui/func/fucon3d.cxx
@@ -60,8 +60,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuConstruct3dObject, FuConstruct );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuconarc.cxx b/sd/source/ui/func/fuconarc.cxx
index f64cb5f..b69c6e1 100644
--- a/sd/source/ui/func/fuconarc.cxx
+++ b/sd/source/ui/func/fuconarc.cxx
@@ -54,8 +54,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuConstructArc, FuConstruct );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuconbez.cxx b/sd/source/ui/func/fuconbez.cxx
index 05ce26a..62d82ab 100644
--- a/sd/source/ui/func/fuconbez.cxx
+++ b/sd/source/ui/func/fuconbez.cxx
@@ -60,8 +60,6 @@ using namespace ::com::sun::star::uno;
 
 namespace sd {
 
-TYPEINIT1( FuConstructBezierPolygon, FuConstruct );
-
 
 /*************************************************************************
 |*
diff --git a/sd/source/ui/func/fuconcs.cxx b/sd/source/ui/func/fuconcs.cxx
index ac528c7..0e1a953 100644
--- a/sd/source/ui/func/fuconcs.cxx
+++ b/sd/source/ui/func/fuconcs.cxx
@@ -80,8 +80,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuConstructCustomShape, FuConstruct );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuconnct.cxx b/sd/source/ui/func/fuconnct.cxx
index 91fe1c1..8ddf38f 100644
--- a/sd/source/ui/func/fuconnct.cxx
+++ b/sd/source/ui/func/fuconnct.cxx
@@ -40,8 +40,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuConnectionDlg, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuconrec.cxx b/sd/source/ui/func/fuconrec.cxx
index 7b88353..c9e0180 100644
--- a/sd/source/ui/func/fuconrec.cxx
+++ b/sd/source/ui/func/fuconrec.cxx
@@ -75,8 +75,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuConstructRectangle, FuConstruct );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuconstr.cxx b/sd/source/ui/func/fuconstr.cxx
index b84c591..cd5cd61 100644
--- a/sd/source/ui/func/fuconstr.cxx
+++ b/sd/source/ui/func/fuconstr.cxx
@@ -52,8 +52,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuConstruct, FuDraw );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuconuno.cxx b/sd/source/ui/func/fuconuno.cxx
index 32db518..74486c2 100644
--- a/sd/source/ui/func/fuconuno.cxx
+++ b/sd/source/ui/func/fuconuno.cxx
@@ -55,8 +55,6 @@ class SbModule;
 
 namespace sd {
 
-TYPEINIT1( FuConstructUnoControl, FuConstruct );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fucopy.cxx b/sd/source/ui/func/fucopy.cxx
index a07b30f..63a42c5 100644
--- a/sd/source/ui/func/fucopy.cxx
+++ b/sd/source/ui/func/fucopy.cxx
@@ -52,8 +52,6 @@
 #include "copydlg.hrc"
 namespace sd {
 
-TYPEINIT1( FuCopy, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fucushow.cxx b/sd/source/ui/func/fucushow.cxx
index 437312a..e78affa 100644
--- a/sd/source/ui/func/fucushow.cxx
+++ b/sd/source/ui/func/fucushow.cxx
@@ -44,8 +44,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuCustomShowDlg, FuPoor );
-
 
 /*************************************************************************
 |*
diff --git a/sd/source/ui/func/fudraw.cxx b/sd/source/ui/func/fudraw.cxx
index 5e75977..6e1d0c9 100644
--- a/sd/source/ui/func/fudraw.cxx
+++ b/sd/source/ui/func/fudraw.cxx
@@ -79,8 +79,6 @@ using namespace ::com::sun::star;
 
 namespace sd {
 
-TYPEINIT1( FuDraw, FuPoor );
-
 /*************************************************************************
 |*
 |* Base-class for all drawmodul-specific functions
diff --git a/sd/source/ui/func/fudspord.cxx b/sd/source/ui/func/fudspord.cxx
index 9c8582f..669987f 100644
--- a/sd/source/ui/func/fudspord.cxx
+++ b/sd/source/ui/func/fudspord.cxx
@@ -43,8 +43,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuDisplayOrder, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuediglu.cxx b/sd/source/ui/func/fuediglu.cxx
index 1a26985..3a4bee7 100644
--- a/sd/source/ui/func/fuediglu.cxx
+++ b/sd/source/ui/func/fuediglu.cxx
@@ -47,8 +47,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuEditGluePoints, FuDraw );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuexpand.cxx b/sd/source/ui/func/fuexpand.cxx
index 055107d..dd2a11c 100644
--- a/sd/source/ui/func/fuexpand.cxx
+++ b/sd/source/ui/func/fuexpand.cxx
@@ -56,8 +56,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuExpandPage, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuformatpaintbrush.cxx b/sd/source/ui/func/fuformatpaintbrush.cxx
index 24c33d2..d6859ec 100644
--- a/sd/source/ui/func/fuformatpaintbrush.cxx
+++ b/sd/source/ui/func/fuformatpaintbrush.cxx
@@ -56,8 +56,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuFormatPaintBrush, FuText );
-
 FuFormatPaintBrush::FuFormatPaintBrush( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq )
 : FuText(pViewSh, pWin, pView, pDoc, rReq)
 , mbPermanent( false )
diff --git a/sd/source/ui/func/fuhhconv.cxx b/sd/source/ui/func/fuhhconv.cxx
index 4e53fc1..905c055 100644
--- a/sd/source/ui/func/fuhhconv.cxx
+++ b/sd/source/ui/func/fuhhconv.cxx
@@ -62,8 +62,6 @@ namespace sd {
 
 class ViewShell;
 
-TYPEINIT1( FuHangulHanjaConversion, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuinsert.cxx b/sd/source/ui/func/fuinsert.cxx
index 3923540..f58e35d 100644
--- a/sd/source/ui/func/fuinsert.cxx
+++ b/sd/source/ui/func/fuinsert.cxx
@@ -93,11 +93,6 @@ using namespace com::sun::star;
 
 namespace sd {
 
-TYPEINIT1( FuInsertGraphic, FuPoor );
-TYPEINIT1( FuInsertClipboard, FuPoor );
-TYPEINIT1( FuInsertOLE, FuPoor );
-TYPEINIT1( FuInsertAVMedia, FuPoor );
-
 /*************************************************************************
 |*
 |* FuInsertGraphic::Konstruktor
diff --git a/sd/source/ui/func/fuinsfil.cxx b/sd/source/ui/func/fuinsfil.cxx
index d1389a4..907c1fe 100644
--- a/sd/source/ui/func/fuinsfil.cxx
+++ b/sd/source/ui/func/fuinsfil.cxx
@@ -82,8 +82,6 @@ using namespace ::com::sun::star;
 
 namespace sd {
 
-TYPEINIT1( FuInsertFile, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuline.cxx b/sd/source/ui/func/fuline.cxx
index 4b2707d..8205d2b 100644
--- a/sd/source/ui/func/fuline.cxx
+++ b/sd/source/ui/func/fuline.cxx
@@ -50,8 +50,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuLine, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fulinend.cxx b/sd/source/ui/func/fulinend.cxx
index f428a50..2e8fae6 100644
--- a/sd/source/ui/func/fulinend.cxx
+++ b/sd/source/ui/func/fulinend.cxx
@@ -49,8 +49,6 @@ namespace sd {
 #define BITMAP_WIDTH  32
 #define BITMAP_HEIGHT 12
 
-TYPEINIT1( FuLineEnd, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fulink.cxx b/sd/source/ui/func/fulink.cxx
index 7bb1c12..f3bf789 100644
--- a/sd/source/ui/func/fulink.cxx
+++ b/sd/source/ui/func/fulink.cxx
@@ -46,8 +46,6 @@ class SfxRequest;
 
 namespace sd {
 
-TYPEINIT1( FuLink, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fumeasur.cxx b/sd/source/ui/func/fumeasur.cxx
index c802dc3..4cc08b6 100644
--- a/sd/source/ui/func/fumeasur.cxx
+++ b/sd/source/ui/func/fumeasur.cxx
@@ -39,8 +39,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuMeasureDlg, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fumorph.cxx b/sd/source/ui/func/fumorph.cxx
index cdc9107..5396ac4 100644
--- a/sd/source/ui/func/fumorph.cxx
+++ b/sd/source/ui/func/fumorph.cxx
@@ -59,7 +59,6 @@
 namespace sd {
 
 #define  ITEMVALUE( ItemSet, Id, Cast ) ( ( (const Cast&) (ItemSet).Get( (Id) ) ).GetValue() )
-TYPEINIT1( FuMorph, FuPoor );
 
 //////////////////////////////////////////////////////////////////////////////
 // constructor
diff --git a/sd/source/ui/func/fuoaprms.cxx b/sd/source/ui/func/fuoaprms.cxx
index 6ad2870..7863b93 100644
--- a/sd/source/ui/func/fuoaprms.cxx
+++ b/sd/source/ui/func/fuoaprms.cxx
@@ -60,8 +60,6 @@ using namespace ::com::sun::star;
 
 namespace sd {
 
-TYPEINIT1( FuObjectAnimationParameters, FuPoor );
-
 #define ATTR_MISSING    0       // Attribut nicht verfuegbar
 #define ATTR_MIXED      1       // Attribut uneindeutig (bei Mehrfachselektion)
 #define ATTR_SET        2       // Attribut eindeutig
diff --git a/sd/source/ui/func/fuolbull.cxx b/sd/source/ui/func/fuolbull.cxx
index cb6c478..2315867 100644
--- a/sd/source/ui/func/fuolbull.cxx
+++ b/sd/source/ui/func/fuolbull.cxx
@@ -47,8 +47,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuOutlineBullet, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuoltext.cxx b/sd/source/ui/func/fuoltext.cxx
index 1be4333..cdc9645 100644
--- a/sd/source/ui/func/fuoltext.cxx
+++ b/sd/source/ui/func/fuoltext.cxx
@@ -87,8 +87,6 @@ static sal_uInt16 SidArray[] = {
                 SID_PARASPACE_DECREASE,
                 0 };
 
-TYPEINIT1( FuOutlineText, FuOutline );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuoutl.cxx b/sd/source/ui/func/fuoutl.cxx
index 17f9789..cb2cc88 100644
--- a/sd/source/ui/func/fuoutl.cxx
+++ b/sd/source/ui/func/fuoutl.cxx
@@ -37,8 +37,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuOutline, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fupage.cxx b/sd/source/ui/func/fupage.cxx
index 5c7e0df..ec03797 100644
--- a/sd/source/ui/func/fupage.cxx
+++ b/sd/source/ui/func/fupage.cxx
@@ -90,9 +90,6 @@ class Window;
 #define MAXHEIGHT 28350
 #define MAXWIDTH  28350
 
-
-TYPEINIT1( FuPage, FuPoor );
-
 void mergeItemSetsImpl( SfxItemSet& rTarget, const SfxItemSet& rSource )
 {
     const sal_uInt16* pPtr = rSource.GetRanges();
diff --git a/sd/source/ui/func/fuparagr.cxx b/sd/source/ui/func/fuparagr.cxx
index 501acb1..5498510 100644
--- a/sd/source/ui/func/fuparagr.cxx
+++ b/sd/source/ui/func/fuparagr.cxx
@@ -49,8 +49,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuParagraph, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fupoor.cxx b/sd/source/ui/func/fupoor.cxx
index d8f9ff9..63dd0eb 100644
--- a/sd/source/ui/func/fupoor.cxx
+++ b/sd/source/ui/func/fupoor.cxx
@@ -71,8 +71,6 @@ using ::com::sun::star::uno::Reference;
 
 namespace sd {
 
-TYPEINIT0( FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuprlout.cxx b/sd/source/ui/func/fuprlout.cxx
index ec5fd43..c7ffa9e 100644
--- a/sd/source/ui/func/fuprlout.cxx
+++ b/sd/source/ui/func/fuprlout.cxx
@@ -71,8 +71,6 @@ namespace sd
 SO2_DECL_REF(SvStorage)
 #endif
 
-TYPEINIT1( FuPresentationLayout, FuPoor );
-
 #define DOCUMENT_TOKEN (sal_Unicode('#'))
 
 /*************************************************************************
diff --git a/sd/source/ui/func/fuprobjs.cxx b/sd/source/ui/func/fuprobjs.cxx
index e55e6a9..9bddbad 100644
--- a/sd/source/ui/func/fuprobjs.cxx
+++ b/sd/source/ui/func/fuprobjs.cxx
@@ -52,9 +52,6 @@
 #include "sdabstdlg.hxx"
 namespace sd {
 
-TYPEINIT1( FuPresentationObjects, FuPoor );
-
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuscale.cxx b/sd/source/ui/func/fuscale.cxx
index 9b3b2a4..7277428 100644
--- a/sd/source/ui/func/fuscale.cxx
+++ b/sd/source/ui/func/fuscale.cxx
@@ -54,8 +54,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuScale, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fusearch.cxx b/sd/source/ui/func/fusearch.cxx
index 5b26bb3..eac7115 100644
--- a/sd/source/ui/func/fusearch.cxx
+++ b/sd/source/ui/func/fusearch.cxx
@@ -59,8 +59,6 @@ static sal_uInt16 SidArraySpell[] = {
             SID_HANDOUTMODE,
             0 };
 
-TYPEINIT1( FuSearch, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fusel.cxx b/sd/source/ui/func/fusel.cxx
index 225f4fb..661a3ce 100644
--- a/sd/source/ui/func/fusel.cxx
+++ b/sd/source/ui/func/fusel.cxx
@@ -87,8 +87,6 @@ using namespace ::com::sun::star;
 
 namespace sd {
 
-TYPEINIT1( FuSelection, FuDraw );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fusldlg.cxx b/sd/source/ui/func/fusldlg.cxx
index d8748cc..0f82029 100644
--- a/sd/source/ui/func/fusldlg.cxx
+++ b/sd/source/ui/func/fusldlg.cxx
@@ -48,8 +48,6 @@ namespace sd {
 
 #define ITEMVALUE(ItemSet,Id,Cast) ((const Cast&)(ItemSet).Get(Id)).GetValue()
 
-TYPEINIT1( FuSlideShowDlg, FuPoor );
-
 
 /*************************************************************************
 |*
diff --git a/sd/source/ui/func/fusnapln.cxx b/sd/source/ui/func/fusnapln.cxx
index af42451..f4df531 100644
--- a/sd/source/ui/func/fusnapln.cxx
+++ b/sd/source/ui/func/fusnapln.cxx
@@ -48,8 +48,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuSnapLine, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fusumry.cxx b/sd/source/ui/func/fusumry.cxx
index 6babd4c..8f5459a 100644
--- a/sd/source/ui/func/fusumry.cxx
+++ b/sd/source/ui/func/fusumry.cxx
@@ -51,8 +51,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuSummaryPage, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/futempl.cxx b/sd/source/ui/func/futempl.cxx
index 5d23e72..89f24fe 100644
--- a/sd/source/ui/func/futempl.cxx
+++ b/sd/source/ui/func/futempl.cxx
@@ -86,8 +86,6 @@ using namespace com::sun::star::style;
 namespace sd
 {
 
-TYPEINIT1( FuTemplate, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/futext.cxx b/sd/source/ui/func/futext.cxx
index 17e4456..66d01f4 100644
--- a/sd/source/ui/func/futext.cxx
+++ b/sd/source/ui/func/futext.cxx
@@ -124,8 +124,6 @@ static sal_uInt16 SidArray[] = {
     SID_PARASPACE_DECREASE,           //   27347
                             0 };
 
-TYPEINIT1( FuText, FuConstruct );
-
 
 static sal_Bool bTestText = 0;
 
diff --git a/sd/source/ui/func/futhes.cxx b/sd/source/ui/func/futhes.cxx
index 13f3b05..b93f002 100644
--- a/sd/source/ui/func/futhes.cxx
+++ b/sd/source/ui/func/futhes.cxx
@@ -62,8 +62,6 @@ class SfxRequest;
 
 namespace sd {
 
-TYPEINIT1( FuThesaurus, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/futransf.cxx b/sd/source/ui/func/futransf.cxx
index 64f8cfe..33f1210 100644
--- a/sd/source/ui/func/futransf.cxx
+++ b/sd/source/ui/func/futransf.cxx
@@ -47,8 +47,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuTransform, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/futxtatt.cxx b/sd/source/ui/func/futxtatt.cxx
index c2c6284..337ba0b 100644
--- a/sd/source/ui/func/futxtatt.cxx
+++ b/sd/source/ui/func/futxtatt.cxx
@@ -40,8 +40,6 @@
 
 namespace sd {
 
-TYPEINIT1( FuTextAttrDlg, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuvect.cxx b/sd/source/ui/func/fuvect.cxx
index 01d6d5b..1a7ffa3 100644
--- a/sd/source/ui/func/fuvect.cxx
+++ b/sd/source/ui/func/fuvect.cxx
@@ -46,8 +46,6 @@
 namespace sd
 {
 
-TYPEINIT1( FuVectorize, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/func/fuzoom.cxx b/sd/source/ui/func/fuzoom.cxx
index 58c2459..bb3f3ca 100644
--- a/sd/source/ui/func/fuzoom.cxx
+++ b/sd/source/ui/func/fuzoom.cxx
@@ -51,8 +51,6 @@ sal_uInt16 SidArrayZoom[] = {
                     SID_ZOOM_IN,
                     0 };
 
-TYPEINIT1( FuZoom, FuPoor );
-
 /*************************************************************************
 |*
 |* Konstruktor
diff --git a/sd/source/ui/inc/fuarea.hxx b/sd/source/ui/inc/fuarea.hxx
index fd6fc44..ed2221d 100644
--- a/sd/source/ui/inc/fuarea.hxx
+++ b/sd/source/ui/inc/fuarea.hxx
@@ -36,7 +36,6 @@ namespace sd {
 class FuArea : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
 
diff --git a/sd/source/ui/inc/fubullet.hxx b/sd/source/ui/inc/fubullet.hxx
index 151e4c1..075a7d6 100644
--- a/sd/source/ui/inc/fubullet.hxx
+++ b/sd/source/ui/inc/fubullet.hxx
@@ -41,7 +41,6 @@ class ViewShell;
 class FuBullet : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuchar.hxx b/sd/source/ui/inc/fuchar.hxx
index fdd0066..a25a12c 100644
--- a/sd/source/ui/inc/fuchar.hxx
+++ b/sd/source/ui/inc/fuchar.hxx
@@ -37,7 +37,6 @@ class FuChar
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
 
diff --git a/sd/source/ui/inc/fucon3d.hxx b/sd/source/ui/inc/fucon3d.hxx
index 7e15024..fb58582 100644
--- a/sd/source/ui/inc/fucon3d.hxx
+++ b/sd/source/ui/inc/fucon3d.hxx
@@ -42,7 +42,6 @@ class FuConstruct3dObject
     : public FuConstruct
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq, bool bPermanent );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuconarc.hxx b/sd/source/ui/inc/fuconarc.hxx
index 3b6a81c..af0c322 100644
--- a/sd/source/ui/inc/fuconarc.hxx
+++ b/sd/source/ui/inc/fuconarc.hxx
@@ -38,7 +38,6 @@ class FuConstructArc
     : public FuConstruct
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq, bool bPermanent );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuconbez.hxx b/sd/source/ui/inc/fuconbez.hxx
index 17de46f..06549a1 100644
--- a/sd/source/ui/inc/fuconbez.hxx
+++ b/sd/source/ui/inc/fuconbez.hxx
@@ -45,7 +45,6 @@ class FuConstructBezierPolygon
     : public FuConstruct
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq, bool bPermanent );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuconcs.hxx b/sd/source/ui/inc/fuconcs.hxx
index 258fb21..5619b6e 100644
--- a/sd/source/ui/inc/fuconcs.hxx
+++ b/sd/source/ui/inc/fuconcs.hxx
@@ -49,7 +49,6 @@ class FuConstructCustomShape
     : public FuConstruct
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq, bool bPermanent );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuconnct.hxx b/sd/source/ui/inc/fuconnct.hxx
index 4237737..600c4ae 100644
--- a/sd/source/ui/inc/fuconnct.hxx
+++ b/sd/source/ui/inc/fuconnct.hxx
@@ -37,7 +37,6 @@ class FuConnectionDlg
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
 
diff --git a/sd/source/ui/inc/fuconrec.hxx b/sd/source/ui/inc/fuconrec.hxx
index f4d1115..5cbb10a 100644
--- a/sd/source/ui/inc/fuconrec.hxx
+++ b/sd/source/ui/inc/fuconrec.hxx
@@ -49,7 +49,6 @@ class FuConstructRectangle
     : public FuConstruct
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq, bool bPermanent );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuconstr.hxx b/sd/source/ui/inc/fuconstr.hxx
index 5b81a22..3571b01 100644
--- a/sd/source/ui/inc/fuconstr.hxx
+++ b/sd/source/ui/inc/fuconstr.hxx
@@ -49,8 +49,6 @@ class FuConstruct
 public:
     static const int MIN_FREEHAND_DISTANCE = 10;
 
-    TYPEINFO();
-
     virtual void DoExecute( SfxRequest& rReq );
 
     // Mouse- & Key-Events
diff --git a/sd/source/ui/inc/fuconuno.hxx b/sd/source/ui/inc/fuconuno.hxx
index 972b503..889df86 100644
--- a/sd/source/ui/inc/fuconuno.hxx
+++ b/sd/source/ui/inc/fuconuno.hxx
@@ -44,7 +44,6 @@ class FuConstructUnoControl
     : public FuConstruct
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq, bool bPermanent );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fucopy.hxx b/sd/source/ui/inc/fucopy.hxx
index 809b988..a882ca7 100644
--- a/sd/source/ui/inc/fucopy.hxx
+++ b/sd/source/ui/inc/fucopy.hxx
@@ -37,7 +37,6 @@ class FuCopy
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fucushow.hxx b/sd/source/ui/inc/fucushow.hxx
index fa3b3f1..41fdf12 100644
--- a/sd/source/ui/inc/fucushow.hxx
+++ b/sd/source/ui/inc/fucushow.hxx
@@ -37,7 +37,6 @@ class FuCustomShowDlg
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fudraw.hxx b/sd/source/ui/inc/fudraw.hxx
index b364b97..f231823 100644
--- a/sd/source/ui/inc/fudraw.hxx
+++ b/sd/source/ui/inc/fudraw.hxx
@@ -47,7 +47,6 @@ class FuDraw
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     virtual sal_Bool KeyInput(const KeyEvent& rKEvt);
     virtual sal_Bool MouseMove(const MouseEvent& rMEvt);
diff --git a/sd/source/ui/inc/fudspord.hxx b/sd/source/ui/inc/fudspord.hxx
index 80508f3..41d5207 100644
--- a/sd/source/ui/inc/fudspord.hxx
+++ b/sd/source/ui/inc/fudspord.hxx
@@ -48,7 +48,6 @@ class FuDisplayOrder
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
 
diff --git a/sd/source/ui/inc/fuediglu.hxx b/sd/source/ui/inc/fuediglu.hxx
index af2c496..48208a3 100644
--- a/sd/source/ui/inc/fuediglu.hxx
+++ b/sd/source/ui/inc/fuediglu.hxx
@@ -43,7 +43,6 @@ class FuEditGluePoints
     : public FuDraw
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq, bool bPermanent );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuexpand.hxx b/sd/source/ui/inc/fuexpand.hxx
index 47ca758..c0f3a6a 100644
--- a/sd/source/ui/inc/fuexpand.hxx
+++ b/sd/source/ui/inc/fuexpand.hxx
@@ -37,7 +37,6 @@ class FuExpandPage
     : public FuPoor
 {
  public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuformatpaintbrush.hxx b/sd/source/ui/inc/fuformatpaintbrush.hxx
index e2c05d1..f9c5681 100644
--- a/sd/source/ui/inc/fuformatpaintbrush.hxx
+++ b/sd/source/ui/inc/fuformatpaintbrush.hxx
@@ -42,7 +42,6 @@ class DrawViewShell;
 class FuFormatPaintBrush : public FuText
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
 
diff --git a/sd/source/ui/inc/fuhhconv.hxx b/sd/source/ui/inc/fuhhconv.hxx
index 48f23b8..c6c8648 100644
--- a/sd/source/ui/inc/fuhhconv.hxx
+++ b/sd/source/ui/inc/fuhhconv.hxx
@@ -39,7 +39,6 @@ class Outliner;
 class FuHangulHanjaConversion : public FuPoor
 {
  public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
 
diff --git a/sd/source/ui/inc/fuinsert.hxx b/sd/source/ui/inc/fuinsert.hxx
index 7a13303..8e9009f 100644
--- a/sd/source/ui/inc/fuinsert.hxx
+++ b/sd/source/ui/inc/fuinsert.hxx
@@ -37,7 +37,6 @@ class FuInsertGraphic
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
@@ -59,7 +58,6 @@ class FuInsertClipboard
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
@@ -80,7 +78,6 @@ class FuInsertOLE
     : public FuPoor
 {
  public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
@@ -100,7 +97,6 @@ class FuInsertAVMedia
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuinsfil.hxx b/sd/source/ui/inc/fuinsfil.hxx
index fba3dc8..1df61e3 100644
--- a/sd/source/ui/inc/fuinsfil.hxx
+++ b/sd/source/ui/inc/fuinsfil.hxx
@@ -41,7 +41,6 @@ class FuInsertFile
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuline.hxx b/sd/source/ui/inc/fuline.hxx
index 77035fb..20d8528 100644
--- a/sd/source/ui/inc/fuline.hxx
+++ b/sd/source/ui/inc/fuline.hxx
@@ -37,7 +37,6 @@ class FuLine
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     virtual void Activate();
     virtual void Deactivate();
diff --git a/sd/source/ui/inc/fulinend.hxx b/sd/source/ui/inc/fulinend.hxx
index 5e44f1b..5111c81 100644
--- a/sd/source/ui/inc/fulinend.hxx
+++ b/sd/source/ui/inc/fulinend.hxx
@@ -37,7 +37,6 @@ class FuLineEnd
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     virtual void Activate();
     virtual void Deactivate();
diff --git a/sd/source/ui/inc/fulink.hxx b/sd/source/ui/inc/fulink.hxx
index 03197da..6585fd0 100644
--- a/sd/source/ui/inc/fulink.hxx
+++ b/sd/source/ui/inc/fulink.hxx
@@ -37,7 +37,6 @@ class FuLink
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fumeasur.hxx b/sd/source/ui/inc/fumeasur.hxx
index 7bc6d41..3fabd9b 100644
--- a/sd/source/ui/inc/fumeasur.hxx
+++ b/sd/source/ui/inc/fumeasur.hxx
@@ -37,7 +37,6 @@ class FuMeasureDlg
     : public FuPoor
 {
  public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fumorph.hxx b/sd/source/ui/inc/fumorph.hxx
index 95f54b6..ab8662e 100644
--- a/sd/source/ui/inc/fumorph.hxx
+++ b/sd/source/ui/inc/fumorph.hxx
@@ -46,7 +46,6 @@ class FuMorph
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuoaprms.hxx b/sd/source/ui/inc/fuoaprms.hxx
index 6e8990e..552f21b 100644
--- a/sd/source/ui/inc/fuoaprms.hxx
+++ b/sd/source/ui/inc/fuoaprms.hxx
@@ -37,7 +37,6 @@ class FuObjectAnimationParameters
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuolbull.hxx b/sd/source/ui/inc/fuolbull.hxx
index 0d233f7..8fbf568 100644
--- a/sd/source/ui/inc/fuolbull.hxx
+++ b/sd/source/ui/inc/fuolbull.hxx
@@ -50,7 +50,6 @@ class FuOutlineBullet
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuoltext.hxx b/sd/source/ui/inc/fuoltext.hxx
index 8881225..f5331f4 100644
--- a/sd/source/ui/inc/fuoltext.hxx
+++ b/sd/source/ui/inc/fuoltext.hxx
@@ -49,7 +49,6 @@ class FuOutlineText
     : public FuOutline
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
 
diff --git a/sd/source/ui/inc/fuoutl.hxx b/sd/source/ui/inc/fuoutl.hxx
index 99a0129..f078d2c 100644
--- a/sd/source/ui/inc/fuoutl.hxx
+++ b/sd/source/ui/inc/fuoutl.hxx
@@ -53,7 +53,6 @@ class FuOutline
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     virtual sal_Bool Command(const CommandEvent& rCEvt);
 
diff --git a/sd/source/ui/inc/fupage.hxx b/sd/source/ui/inc/fupage.hxx
index c33a266..7cd5c6e 100644
--- a/sd/source/ui/inc/fupage.hxx
+++ b/sd/source/ui/inc/fupage.hxx
@@ -42,7 +42,6 @@ class FuPage
     : public FuPoor
 {
  public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuparagr.hxx b/sd/source/ui/inc/fuparagr.hxx
index 886b225..1136e34 100644
--- a/sd/source/ui/inc/fuparagr.hxx
+++ b/sd/source/ui/inc/fuparagr.hxx
@@ -37,7 +37,6 @@ class FuParagraph
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     virtual void Activate();
     virtual void Deactivate();
diff --git a/sd/source/ui/inc/fupoor.hxx b/sd/source/ui/inc/fupoor.hxx
index 598ca1c..879e32a 100644
--- a/sd/source/ui/inc/fupoor.hxx
+++ b/sd/source/ui/inc/fupoor.hxx
@@ -29,7 +29,6 @@
 #ifndef SD_FU_POOR_HXX
 #define SD_FU_POOR_HXX
 
-#include <tools/rtti.hxx>
 #include <vcl/timer.hxx>
 #include <tools/link.hxx>
 #include <tools/gen.hxx>
@@ -62,8 +61,6 @@ public:
     static const int HITPIX = 2;                   // Hit-Toleranz in Pixel
     static const int DRGPIX = 2;                   // Drag MinMove in Pixel
 
-    TYPEINFO();
-
     virtual void DoExecute( SfxRequest& rReq );
 
     void SetMouseButtonCode(sal_uInt16 nNew) { if(nNew != mnCode) mnCode = nNew; }
diff --git a/sd/source/ui/inc/fuprlout.hxx b/sd/source/ui/inc/fuprlout.hxx
index 8d03750..6dd589f 100644
--- a/sd/source/ui/inc/fuprlout.hxx
+++ b/sd/source/ui/inc/fuprlout.hxx
@@ -45,7 +45,6 @@ class FuPresentationLayout
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuprobjs.hxx b/sd/source/ui/inc/fuprobjs.hxx
index 949948a..ca95653 100644
--- a/sd/source/ui/inc/fuprobjs.hxx
+++ b/sd/source/ui/inc/fuprobjs.hxx
@@ -45,7 +45,6 @@ class FuPresentationObjects
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuscale.hxx b/sd/source/ui/inc/fuscale.hxx
index 3af6a8f..0482bb9 100644
--- a/sd/source/ui/inc/fuscale.hxx
+++ b/sd/source/ui/inc/fuscale.hxx
@@ -37,7 +37,6 @@ class FuScale
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fusearch.hxx b/sd/source/ui/inc/fusearch.hxx
index cce5d4a..1bda6b6 100644
--- a/sd/source/ui/inc/fusearch.hxx
+++ b/sd/source/ui/inc/fusearch.hxx
@@ -41,7 +41,6 @@ class FuSearch
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fusel.hxx b/sd/source/ui/inc/fusel.hxx
index 55ec9c0..190df65 100644
--- a/sd/source/ui/inc/fusel.hxx
+++ b/sd/source/ui/inc/fusel.hxx
@@ -44,7 +44,6 @@ class FuSelection
     : public FuDraw
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fusldlg.hxx b/sd/source/ui/inc/fusldlg.hxx
index bc5b99a..00dc635 100644
--- a/sd/source/ui/inc/fusldlg.hxx
+++ b/sd/source/ui/inc/fusldlg.hxx
@@ -37,7 +37,6 @@ class FuSlideShowDlg
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fusnapln.hxx b/sd/source/ui/inc/fusnapln.hxx
index ed5b640..d267aec 100644
--- a/sd/source/ui/inc/fusnapln.hxx
+++ b/sd/source/ui/inc/fusnapln.hxx
@@ -37,7 +37,6 @@ class FuSnapLine
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     virtual void Activate();
     virtual void Deactivate();
diff --git a/sd/source/ui/inc/fusumry.hxx b/sd/source/ui/inc/fusumry.hxx
index c88475e..fb76bf0 100644
--- a/sd/source/ui/inc/fusumry.hxx
+++ b/sd/source/ui/inc/fusumry.hxx
@@ -37,7 +37,6 @@ class FuSummaryPage
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/futempl.hxx b/sd/source/ui/inc/futempl.hxx
index 5d63db2..02abbcb 100644
--- a/sd/source/ui/inc/futempl.hxx
+++ b/sd/source/ui/inc/futempl.hxx
@@ -37,7 +37,6 @@ class FuTemplate
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     virtual void Activate();
     virtual void Deactivate();
diff --git a/sd/source/ui/inc/futext.hxx b/sd/source/ui/inc/futext.hxx
index bcffd4f..ee49f6e 100644
--- a/sd/source/ui/inc/futext.hxx
+++ b/sd/source/ui/inc/futext.hxx
@@ -51,7 +51,6 @@ class FuText
     : public FuConstruct
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/futhes.hxx b/sd/source/ui/inc/futhes.hxx
index c829c46..811ae41 100644
--- a/sd/source/ui/inc/futhes.hxx
+++ b/sd/source/ui/inc/futhes.hxx
@@ -37,7 +37,6 @@ class FuThesaurus
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/futransf.hxx b/sd/source/ui/inc/futransf.hxx
index aca70cf..47bed98 100644
--- a/sd/source/ui/inc/futransf.hxx
+++ b/sd/source/ui/inc/futransf.hxx
@@ -38,7 +38,6 @@ class FuTransform
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/futxtatt.hxx b/sd/source/ui/inc/futxtatt.hxx
index 123c004..bb27e67 100644
--- a/sd/source/ui/inc/futxtatt.hxx
+++ b/sd/source/ui/inc/futxtatt.hxx
@@ -37,7 +37,6 @@ class FuTextAttrDlg
     : public FuPoor
 {
  public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuvect.hxx b/sd/source/ui/inc/fuvect.hxx
index b29d607..133a9ca 100644
--- a/sd/source/ui/inc/fuvect.hxx
+++ b/sd/source/ui/inc/fuvect.hxx
@@ -37,7 +37,6 @@ class FuVectorize
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
     virtual void DoExecute( SfxRequest& rReq );
diff --git a/sd/source/ui/inc/fuzoom.hxx b/sd/source/ui/inc/fuzoom.hxx
index b79a463..ea0eb09 100644
--- a/sd/source/ui/inc/fuzoom.hxx
+++ b/sd/source/ui/inc/fuzoom.hxx
@@ -40,7 +40,6 @@ class FuZoom
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, 
SdDrawDocument* pDoc, SfxRequest& rReq );
 
diff --git a/sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx 
b/sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx
index 8788db3..01d5052 100644
--- a/sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx
@@ -352,8 +352,6 @@ protected:
 
 //===== SelectionFunction =====================================================
 
-TYPEINIT1(SelectionFunction, FuPoor);
-
 
 SelectionFunction::SelectionFunction (
     SlideSorter& rSlideSorter,
diff --git a/sd/source/ui/slidesorter/controller/SlsSlideFunction.cxx 
b/sd/source/ui/slidesorter/controller/SlsSlideFunction.cxx
index 1c5d92c..9ac81d7 100644
--- a/sd/source/ui/slidesorter/controller/SlsSlideFunction.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsSlideFunction.cxx
@@ -37,8 +37,6 @@
 
 namespace sd { namespace slidesorter { namespace controller {
 
-TYPEINIT1(SlideFunction, FuPoor);
-
 
 SlideFunction::SlideFunction (
     SlideSorter& rSlideSorter,
diff --git a/sd/source/ui/slidesorter/inc/controller/SlsSelectionFunction.hxx 
b/sd/source/ui/slidesorter/inc/controller/SlsSelectionFunction.hxx
index 9d77f1a..de3bc64 100644
--- a/sd/source/ui/slidesorter/inc/controller/SlsSelectionFunction.hxx
+++ b/sd/source/ui/slidesorter/inc/controller/SlsSelectionFunction.hxx
@@ -56,7 +56,6 @@ class SelectionFunction
       private ::boost::noncopyable
 {
 public:
-    TYPEINFO();
 
     static FunctionReference Create( SlideSorter& rSlideSorter, SfxRequest& rRequest );
 
diff --git a/sd/source/ui/slidesorter/inc/controller/SlsSlideFunction.hxx 
b/sd/source/ui/slidesorter/inc/controller/SlsSlideFunction.hxx
index 774e4c0..2343d52 100644
--- a/sd/source/ui/slidesorter/inc/controller/SlsSlideFunction.hxx
+++ b/sd/source/ui/slidesorter/inc/controller/SlsSlideFunction.hxx
@@ -49,7 +49,6 @@ class SlideFunction
     : public FuPoor
 {
 public:
-    TYPEINFO();
 
     virtual sal_Bool MouseMove (const MouseEvent& rMEvt);
     virtual sal_Bool MouseButtonUp (const MouseEvent& rMEvt);
-- 
1.7.3.4

From 9f1f1da4a38d35fd8a0a560b5e4aee52e28eaeee Mon Sep 17 00:00:00 2001
From: Rafael Dominguez <venccsralph@gmail.com>
Date: Sun, 18 Dec 2011 18:42:28 -0430
Subject: [PATCH 21/36] Remove unused macros in tools/rtti.hxx.

---
 tools/inc/tools/rtti.hxx |   25 -------------------------
 1 files changed, 0 insertions(+), 25 deletions(-)

diff --git a/tools/inc/tools/rtti.hxx b/tools/inc/tools/rtti.hxx
index 91a0440..5c2bfb8 100644
--- a/tools/inc/tools/rtti.hxx
+++ b/tools/inc/tools/rtti.hxx
@@ -109,31 +109,6 @@ typedef void* (*TypeId)();
 #define ISA(sType) IsA(sType::StaticType())
 
 //-------------------------------------------------------------------------
-// On-Demand-faehige persistent-TypeId Version
-
-#define TYPEINIT_ID(sType) \
-        TypeId sType::Type() const { return StaticType(); } \
-        sal_Bool   sType::IsOf( TypeId aSameOrSuperType ) \
-        { \
-            if ( aSameOrSuperType == StaticType() ) \
-                return sal_True
-
-#define TYPEINIT0_ID(sType) \
-        TYPEINIT_ID(sType); \
-        TYPEINIT_END(sType)
-
-#define TYPEINIT1_ID(sType, sSuper) \
-        TYPEINIT_ID(sType); \
-            SUPERTYPE(sSuper); \
-        TYPEINIT_END(sType)
-
-#define TYPEINIT2_ID(sType, sSuper1, sSuper2) \
-        TYPEINIT_ID(sType); \
-            SUPERTYPE(sSuper1); \
-            SUPERTYPE(sSuper2); \
-        TYPEINIT_END(sType)
-
-//-------------------------------------------------------------------------
 
 //      Die (exemplarischen) Makros fuer die Anwendung ( hier fuer
 //      Pointer, kann aber nach dem gleichen Strickmuster fuer
-- 
1.7.3.4


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.