sw: clean up SwDoc::maPatternNms nonsense
Change-Id: I0a166d1b58b23cac96ae27d446d6d8ed2442df8e
This commit is contained in:
@@ -263,7 +263,7 @@ class SW_DLLPUBLIC SwDoc :
|
|||||||
Idle maOLEModifiedIdle; //< Timer for update modified OLE-Objects
|
Idle maOLEModifiedIdle; //< Timer for update modified OLE-Objects
|
||||||
SwDBData maDBData; //< database descriptor
|
SwDBData maDBData; //< database descriptor
|
||||||
OUString msTOIAutoMarkURL; //< URL of table of index AutoMark file
|
OUString msTOIAutoMarkURL; //< URL of table of index AutoMark file
|
||||||
boost::ptr_vector< boost::nullable<OUString> > maPatternNms; // Array for names of document-templates
|
std::vector<OUString> m_PatternNames; //< Array for names of document-templates
|
||||||
com::sun::star::uno::Reference<com::sun::star::container::XNameContainer>
|
com::sun::star::uno::Reference<com::sun::star::container::XNameContainer>
|
||||||
mxXForms; //< container with XForms models
|
mxXForms; //< container with XForms models
|
||||||
mutable com::sun::star::uno::Reference< com::sun::star::linguistic2::XProofreadingIterator > m_xGCIterator;
|
mutable com::sun::star::uno::Reference< com::sun::star::linguistic2::XProofreadingIterator > m_xGCIterator;
|
||||||
@@ -907,17 +907,10 @@ public:
|
|||||||
static bool IsUsed( const SwNumRule& );
|
static bool IsUsed( const SwNumRule& );
|
||||||
|
|
||||||
// Set name of newly loaded document template.
|
// Set name of newly loaded document template.
|
||||||
sal_uInt16 SetDocPattern( const OUString& rPatternName );
|
size_t SetDocPattern(const OUString& rPatternName);
|
||||||
|
|
||||||
// @return name of document template. Can be 0!
|
// @return name of document template. Can be 0!
|
||||||
const OUString* GetDocPattern( sal_uInt16 nPos ) const
|
const OUString* GetDocPattern(size_t nPos) const;
|
||||||
{
|
|
||||||
if(nPos >= maPatternNms.size())
|
|
||||||
return NULL;
|
|
||||||
if(boost::is_null(maPatternNms.begin() + nPos))
|
|
||||||
return NULL;
|
|
||||||
return &(maPatternNms[nPos]);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Query / connect current document with glossary document.
|
// Query / connect current document with glossary document.
|
||||||
void SetGlossaryDoc( SwDoc* pDoc ) { mpGlossaryDoc = pDoc; }
|
void SetGlossaryDoc( SwDoc* pDoc ) { mpGlossaryDoc = pDoc; }
|
||||||
|
@@ -131,28 +131,31 @@ bool SwDoc::IsUsed( const SwNumRule& rRule )
|
|||||||
return bUsed;
|
return bUsed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const OUString* SwDoc::GetDocPattern(size_t const nPos) const
|
||||||
|
{
|
||||||
|
if (nPos >= m_PatternNames.size())
|
||||||
|
return nullptr;
|
||||||
|
return &m_PatternNames[nPos];
|
||||||
|
}
|
||||||
|
|
||||||
// Look for the style name's position. If it doesn't exist,
|
// Look for the style name's position. If it doesn't exist,
|
||||||
// insert a anew
|
// insert a anew
|
||||||
sal_uInt16 SwDoc::SetDocPattern( const OUString& rPatternName )
|
size_t SwDoc::SetDocPattern(const OUString& rPatternName)
|
||||||
{
|
{
|
||||||
OSL_ENSURE( !rPatternName.isEmpty(), "no Document style name" );
|
OSL_ENSURE( !rPatternName.isEmpty(), "no Document style name" );
|
||||||
|
|
||||||
size_t nNewPos = maPatternNms.size();
|
auto const iter(
|
||||||
for(size_t n = 0; n < maPatternNms.size(); ++n)
|
std::find(m_PatternNames.begin(), m_PatternNames.end(), rPatternName));
|
||||||
if( boost::is_null(maPatternNms.begin() + n) )
|
if (iter != m_PatternNames.end())
|
||||||
{
|
{
|
||||||
if( nNewPos == maPatternNms.size() )
|
return std::distance(m_PatternNames.begin(), iter);
|
||||||
nNewPos = n;
|
}
|
||||||
}
|
else
|
||||||
else if( rPatternName == maPatternNms[n] )
|
{
|
||||||
return n;
|
m_PatternNames.push_back(rPatternName);
|
||||||
|
getIDocumentState().SetModified();
|
||||||
if( nNewPos < maPatternNms.size() )
|
return m_PatternNames.size() - 1;
|
||||||
maPatternNms.erase(maPatternNms.begin() + nNewPos); // Free space again
|
}
|
||||||
|
|
||||||
maPatternNms.insert(maPatternNms.begin() + nNewPos, new OUString(rPatternName));
|
|
||||||
getIDocumentState().SetModified();
|
|
||||||
return nNewPos;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
sal_uInt16 GetPoolParent( sal_uInt16 nId )
|
sal_uInt16 GetPoolParent( sal_uInt16 nId )
|
||||||
|
Reference in New Issue
Block a user