You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by or...@apache.org on 2014/07/08 13:45:47 UTC

svn commit: r1608733 - in /openoffice/trunk/main/sw: inc/IDocumentMarkAccess.hxx source/core/doc/docbm.cxx source/core/doc/docdde.cxx source/core/inc/MarkManager.hxx source/filter/ww8/wrtw8nds.cxx

Author: orw
Date: Tue Jul  8 11:45:46 2014
New Revision: 1608733

URL: http://svn.apache.org/r1608733
Log:
125215: MarkManager: remove unnecessary mark container


Modified:
    openoffice/trunk/main/sw/inc/IDocumentMarkAccess.hxx
    openoffice/trunk/main/sw/source/core/doc/docbm.cxx
    openoffice/trunk/main/sw/source/core/doc/docdde.cxx
    openoffice/trunk/main/sw/source/core/inc/MarkManager.hxx
    openoffice/trunk/main/sw/source/filter/ww8/wrtw8nds.cxx

Modified: openoffice/trunk/main/sw/inc/IDocumentMarkAccess.hxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/inc/IDocumentMarkAccess.hxx?rev=1608733&r1=1608732&r2=1608733&view=diff
==============================================================================
--- openoffice/trunk/main/sw/inc/IDocumentMarkAccess.hxx (original)
+++ openoffice/trunk/main/sw/inc/IDocumentMarkAccess.hxx Tue Jul  8 11:45:46 2014
@@ -250,11 +250,6 @@ class IDocumentMarkAccess
         virtual ::sw::mark::IFieldmark* getFieldmarkBefore(const SwPosition& pos) const =0;
         virtual ::sw::mark::IFieldmark* getFieldmarkAfter(const SwPosition& pos) const =0;
 
-        // Marks exclusive annotation marks
-        virtual const_iterator_t getCommonMarksBegin() const = 0;
-        virtual const_iterator_t getCommonMarksEnd() const = 0;
-        virtual sal_Int32 getCommonMarksCount() const = 0;
-
         // Annotation Marks
         virtual const_iterator_t getAnnotationMarksBegin() const = 0;
         virtual const_iterator_t getAnnotationMarksEnd() const = 0;

Modified: openoffice/trunk/main/sw/source/core/doc/docbm.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/source/core/doc/docbm.cxx?rev=1608733&r1=1608732&r2=1608733&view=diff
==============================================================================
--- openoffice/trunk/main/sw/source/core/doc/docbm.cxx (original)
+++ openoffice/trunk/main/sw/source/core/doc/docbm.cxx Tue Jul  8 11:45:46 2014
@@ -358,7 +358,6 @@ namespace sw { namespace mark
         , m_vBookmarks()
         , m_vFieldmarks()
         , m_vAnnotationMarks()
-        , m_vCommonMarks()
         , m_pDoc(&rDoc)
     { }
 
@@ -444,13 +443,11 @@ namespace sw { namespace mark
             case IDocumentMarkAccess::BOOKMARK:
             case IDocumentMarkAccess::CROSSREF_NUMITEM_BOOKMARK:
             case IDocumentMarkAccess::CROSSREF_HEADING_BOOKMARK:
-                lcl_InsertMarkSorted(m_vCommonMarks, pMark);
                 // if(dynamic_cast<IBookmark*>)
                 lcl_InsertMarkSorted(m_vBookmarks, pMark);
                 break;
             case IDocumentMarkAccess::TEXT_FIELDMARK:
             case IDocumentMarkAccess::CHECKBOX_FIELDMARK:
-                lcl_InsertMarkSorted(m_vCommonMarks, pMark);
                 // if(dynamic_cast<IFieldmark*>
                 lcl_InsertMarkSorted(m_vFieldmarks, pMark);
                 break;
@@ -460,7 +457,6 @@ namespace sw { namespace mark
             case IDocumentMarkAccess::NAVIGATOR_REMINDER:
             case IDocumentMarkAccess::DDE_BOOKMARK:
             case IDocumentMarkAccess::UNO_BOOKMARK:
-                lcl_InsertMarkSorted(m_vCommonMarks, pMark);
                 // no special array for these
                 break;
         }
@@ -830,16 +826,6 @@ namespace sw { namespace mark
                     {
                         OSL_ENSURE( false, "<MarkManager::deleteMark(..)> - Bookmark not found in Bookmark container.");
                     }
-
-                    ppBookmark = lcl_FindMark(m_vCommonMarks, *ppMark);
-                    if ( ppBookmark != m_vCommonMarks.end() )
-                    {
-                        m_vCommonMarks.erase(ppBookmark);
-                    }
-                    else
-                    {
-                        OSL_ENSURE( false, "<MarkManager::deleteMark(..)> - Bookmark not found in common mark container.");
-                    }
                 }
                 break;
 
@@ -862,15 +848,6 @@ namespace sw { namespace mark
                         pTextFieldmark->ReleaseDoc(m_pDoc);
                     }
 
-                    ppFieldmark = lcl_FindMark(m_vCommonMarks, *ppMark);
-                    if ( ppFieldmark != m_vCommonMarks.end() )
-                    {
-                        m_vCommonMarks.erase(ppFieldmark);
-                    }
-                    else
-                    {
-                        OSL_ENSURE( false, "<MarkManager::deleteMark(..)> - Fieldmark not found in common mark container.");
-                    }
                 }
                 break;
 
@@ -891,17 +868,7 @@ namespace sw { namespace mark
             case IDocumentMarkAccess::NAVIGATOR_REMINDER:
             case IDocumentMarkAccess::DDE_BOOKMARK:
             case IDocumentMarkAccess::UNO_BOOKMARK:
-                {
-                    IDocumentMarkAccess::iterator_t ppOtherMark = lcl_FindMark(m_vCommonMarks, *ppMark);
-                    if ( ppOtherMark != m_vCommonMarks.end() )
-                    {
-                        m_vCommonMarks.erase(ppOtherMark);
-                    }
-                    else
-                    {
-                        OSL_ENSURE( false, "<MarkManager::deleteMark(..)> - Navigator Reminder, DDE Mark or Uno Makr not found in common mark container.");
-                    }
-                }
+                // no special marks container
                 break;
         }
         DdeBookmark* const pDdeBookmark = dynamic_cast<DdeBookmark*>(ppMark->get());
@@ -947,8 +914,6 @@ namespace sw { namespace mark
         m_vFieldmarks.clear();
         m_vBookmarks.clear();
 
-        m_vCommonMarks.clear();
-
         m_vAnnotationMarks.clear();
 
 #ifdef DEBUG
@@ -1006,22 +971,6 @@ namespace sw { namespace mark
         { return dynamic_cast<IFieldmark*>(lcl_getMarkBefore(m_vFieldmarks, rPos)); }
 
 
-    IDocumentMarkAccess::const_iterator_t MarkManager::getCommonMarksBegin() const
-    {
-        return m_vCommonMarks.begin();
-    }
-
-    IDocumentMarkAccess::const_iterator_t MarkManager::getCommonMarksEnd() const
-    {
-        return m_vCommonMarks.end();
-    }
-
-    sal_Int32 MarkManager::getCommonMarksCount() const
-    {
-        return m_vCommonMarks.size();
-    }
-
-
     IDocumentMarkAccess::const_iterator_t MarkManager::getAnnotationMarksBegin() const
     {
         return m_vAnnotationMarks.begin();
@@ -1072,7 +1021,6 @@ namespace sw { namespace mark
 
     void MarkManager::sortSubsetMarks()
     {
-        sort(m_vCommonMarks.begin(), m_vCommonMarks.end(), &lcl_MarkOrderingByStart);
         sort(m_vBookmarks.begin(), m_vBookmarks.end(), &lcl_MarkOrderingByStart);
         sort(m_vFieldmarks.begin(), m_vFieldmarks.end(), &lcl_MarkOrderingByStart);
         sort(m_vAnnotationMarks.begin(), m_vAnnotationMarks.end(), &lcl_MarkOrderingByStart);

Modified: openoffice/trunk/main/sw/source/core/doc/docdde.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/source/core/doc/docdde.cxx?rev=1608733&r1=1608732&r2=1608733&view=diff
==============================================================================
--- openoffice/trunk/main/sw/source/core/doc/docdde.cxx (original)
+++ openoffice/trunk/main/sw/source/core/doc/docdde.cxx Tue Jul  8 11:45:46 2014
@@ -62,8 +62,8 @@ namespace
     {
         //Iterating over all bookmarks, checking DdeBookmarks
         const ::rtl::OUString sNameLc = bCaseSensitive ? rName : GetAppCharClass().lower(rName);
-        for(IDocumentMarkAccess::const_iterator_t ppMark = rMarkAccess.getCommonMarksBegin();
-            ppMark != rMarkAccess.getCommonMarksEnd();
+        for(IDocumentMarkAccess::const_iterator_t ppMark = rMarkAccess.getAllMarksBegin();
+            ppMark != rMarkAccess.getAllMarksEnd();
             ppMark++)
         {
             if ( IDocumentMarkAccess::GetType( *(ppMark->get()) ) == IDocumentMarkAccess::DDE_BOOKMARK)

Modified: openoffice/trunk/main/sw/source/core/inc/MarkManager.hxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/source/core/inc/MarkManager.hxx?rev=1608733&r1=1608732&r2=1608733&view=diff
==============================================================================
--- openoffice/trunk/main/sw/source/core/inc/MarkManager.hxx (original)
+++ openoffice/trunk/main/sw/source/core/inc/MarkManager.hxx Tue Jul  8 11:45:46 2014
@@ -84,11 +84,6 @@ namespace sw { namespace mark
             virtual ::sw::mark::IFieldmark* getFieldmarkBefore(const SwPosition& rPos) const;
             virtual ::sw::mark::IFieldmark* getFieldmarkAfter(const SwPosition& rPos) const;
 
-            // Marks exclusive annotation marks
-            virtual const_iterator_t getCommonMarksBegin() const;
-            virtual const_iterator_t getCommonMarksEnd() const;
-            virtual sal_Int32 getCommonMarksCount() const;
-
             // Annotation Marks
             virtual const_iterator_t getAnnotationMarksBegin() const;
             virtual const_iterator_t getAnnotationMarksEnd() const;

Modified: openoffice/trunk/main/sw/source/filter/ww8/wrtw8nds.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/source/filter/ww8/wrtw8nds.cxx?rev=1608733&r1=1608732&r2=1608733&view=diff
==============================================================================
--- openoffice/trunk/main/sw/source/filter/ww8/wrtw8nds.cxx (original)
+++ openoffice/trunk/main/sw/source/filter/ww8/wrtw8nds.cxx Tue Jul  8 11:45:46 2014
@@ -1678,10 +1678,15 @@ bool MSWordExportBase::GetBookmarks(
     IDocumentMarkAccess* const pMarkAccess = pDoc->getIDocumentMarkAccess();
     sal_uLong nNd = rNd.GetIndex( );
 
-    const sal_Int32 nMarks = pMarkAccess->getCommonMarksCount();
+    const sal_Int32 nMarks = pMarkAccess->getAllMarksCount();
     for ( sal_Int32 i = 0; i < nMarks; i++ )
     {
-        IMark* pMark = ( pMarkAccess->getCommonMarksBegin() + i )->get();
+        IMark* pMark = ( pMarkAccess->getAllMarksBegin() + i )->get();
+
+        if ( IDocumentMarkAccess::GetType( *(pMark) ) == IDocumentMarkAccess::ANNOTATIONMARK )
+        {
+            continue;
+        }
 
         // Only keep the bookmarks starting or ending in this node
         if ( pMark->GetMarkStart().nNode == nNd ||