summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOliver-Rainer Wittmann <orw@apache.org>2014-07-08 11:36:35 +0000
committerOliver-Rainer Wittmann <orw@apache.org>2014-07-08 11:36:35 +0000
commitf27e75828f65ce454a50f92ba64ee6847456f88f (patch)
treed8b6844fda31fd090adc09ecf47315bb01f8daee
parent87637364387e5fd87d3b880ce230caa053ec555d (diff)
125215: *.docx import: Bookmark ID has to be treated as an Integer
Notes
-rw-r--r--writerfilter/source/dmapper/DomainMapper.cxx5
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.cxx8
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.hxx6
3 files changed, 13 insertions, 6 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index 4a06a1e72916..e8a9dd290bbb 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -1413,18 +1413,21 @@ void DomainMapper::lcl_attribute(Id nName, Value & val)
case NS_rtf::LN_endnote:
/* WRITERFILTERSTATUS: done: 0, planned: 0.5, spent: 0 */
break;
+
case NS_rtf::LN_BOOKMARKNAME:
/* WRITERFILTERSTATUS: done: 0, planned: 0.5, spent: 0 */
// sStringValue contains the bookmark name
sLocalBookmarkName = sStringValue;
break;
+
case NS_rtf::LN_IBKL:
/* WRITERFILTERSTATUS: done: 100, planned: 0.5, spent: 0.5 */
//contains the bookmark identifier - has to be added to the bookmark name imported before
//if it is already available then the bookmark should be inserted
- m_pImpl->AddBookmark( sLocalBookmarkName, sStringValue );
+ m_pImpl->AddBookmark( sLocalBookmarkName, nIntValue );
sLocalBookmarkName = ::rtl::OUString();
break;
+
case NS_rtf::LN_LISTLEVEL:
/* WRITERFILTERSTATUS: done: 0, planned: 0.5, spent: 0 */
break;
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index 7089bdf4138f..dba364afbcb6 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -3541,10 +3541,12 @@ void DomainMapper_Impl::PopFieldContext()
/*-- 11.06.2007 16:19:00---------------------------------------------------
-----------------------------------------------------------------------*/
-void DomainMapper_Impl::AddBookmark( const ::rtl::OUString& rBookmarkName, const ::rtl::OUString& rId )
+void DomainMapper_Impl::AddBookmark(
+ const ::rtl::OUString& rBookmarkName,
+ const sal_Int32 nId )
{
uno::Reference< text::XTextAppend > xTextAppend = m_aTextAppendStack.top().xTextAppend;
- BookmarkMap_t::iterator aBookmarkIter = m_aBookmarkMap.find( rId );
+ BookmarkMap_t::iterator aBookmarkIter = m_aBookmarkMap.find( nId );
//is the bookmark name already registered?
try
{
@@ -3575,7 +3577,7 @@ void DomainMapper_Impl::AddBookmark( const ::rtl::OUString& rBookmarkName, const
uno::Reference< text::XTextCursor > xCursor = xTextAppend->createTextCursorByRange( xTextAppend->getEnd() );
bool bIsStart = !xCursor->goLeft(1, false);
uno::Reference< text::XTextRange > xCurrent = xCursor->getStart();
- m_aBookmarkMap.insert(BookmarkMap_t::value_type( rId, BookmarkInsertPosition( bIsStart, rBookmarkName, xCurrent ) ));
+ m_aBookmarkMap.insert(BookmarkMap_t::value_type( nId, BookmarkInsertPosition( bIsStart, rBookmarkName, xCurrent ) ));
}
}
catch( const uno::Exception& )
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.hxx b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
index 314d772e8d1d..1ba688395b6d 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.hxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
@@ -289,7 +289,7 @@ class DomainMapper_Impl
public:
typedef TableManager< ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >, PropertyMapPtr > TableManager_t;
typedef TableDataHandler< ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >, TablePropertyMapPtr > TableDataHandler_t;
- typedef std::map < ::rtl::OUString, BookmarkInsertPosition > BookmarkMap_t;
+ typedef std::map < sal_Int32, BookmarkInsertPosition > BookmarkMap_t;
private:
SourceDocumentType m_eDocumentType;
@@ -554,7 +554,9 @@ public:
//the end of field is reached (0x15 appeared) - the command might still be open
void PopFieldContext();
- void AddBookmark( const ::rtl::OUString& rBookmarkName, const ::rtl::OUString& rId );
+ void AddBookmark(
+ const ::rtl::OUString& rBookmarkName,
+ const sal_Int32 nId );
void AddAnnotationPosition(
const bool bStart,