diff options
author | Oliver-Rainer Wittmann <orw@apache.org> | 2014-07-08 11:36:35 +0000 |
---|---|---|
committer | Oliver-Rainer Wittmann <orw@apache.org> | 2014-07-08 11:36:35 +0000 |
commit | f27e75828f65ce454a50f92ba64ee6847456f88f (patch) | |
tree | d8b6844fda31fd090adc09ecf47315bb01f8daee | |
parent | 87637364387e5fd87d3b880ce230caa053ec555d (diff) |
125215: *.docx import: Bookmark ID has to be treated as an Integer
Notes
Notes:
prefer: 61f6193d26615e5849a97d670f77d71c7f7d8dea
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper.cxx | 5 | ||||
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 8 | ||||
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.hxx | 6 |
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, |