Kaydet (Commit) 5cd8770c authored tarafından Caolán McNamara's avatar Caolán McNamara

convert XMLFamilyDataList_Impl to boost::ptr_set

Change-Id: I2a23787091828415cf814eb7091f3fa926b5876c
üst b90a8970
......@@ -51,8 +51,6 @@ VirtualDevice::SetOutputSizePixelScaleOffsetAndBuffer(Size const&, Fraction cons
Window::PostUserEvent(unsigned long&, unsigned long, void*)
X11SalGraphics::SetMask(int&, int&, unsigned int&, unsigned int&, int&, int&, unsigned long)
X509Certificate_NssImpl::getImplementation(com::sun::star::uno::Reference<com::sun::star::uno::XInterface>)
XMLFamilyDataList_Impl::GetPos(XMLFamilyData_Impl const*) const
XMLFamilyDataList_Impl::Remove(XMLFamilyData_Impl*)
XMLFontAutoStylePool_Impl::GetPos(XMLFontAutoStylePoolEntry_Impl const*) const
XMLFontAutoStylePool_Impl::Remove(XMLFontAutoStylePoolEntry_Impl*)
XMLTextListAutoStylePool_Impl::GetPos(XMLTextListAutoStylePoolEntry_Impl const*) const
......
......@@ -82,26 +82,4 @@ void XMLFamilyData_Impl::ClearEntries()
}
}
///////////////////////////////////////////////////////////////////////////////
//
// friendfunction of class XMLFamilyData_Impl for sorting listelements
//
int XMLFamilyDataSort_Impl( const XMLFamilyData_Impl& r1, const XMLFamilyData_Impl& r2 )
{
int nRet = 0;
if( r1.mnFamily != r2.mnFamily )
nRet = ( r1.mnFamily > r2.mnFamily ? 1 : -1 );
return nRet;
}
///////////////////////////////////////////////////////////////////////////////
//
// Implementation of sorted list of XMLFamilyData_Impl - elements
//
IMPL_CONTAINER_SORT( XMLFamilyDataList_Impl, XMLFamilyData_Impl, XMLFamilyDataSort_Impl )
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
......@@ -44,21 +44,26 @@ using ::rtl::OUStringBuffer;
// ctor class SvXMLAutoStylePoolProperties_Impl
//
SvXMLAutoStylePoolPropertiesP_Impl::SvXMLAutoStylePoolPropertiesP_Impl( XMLFamilyData_Impl* pFamilyData, const vector< XMLPropertyState >& rProperties )
SvXMLAutoStylePoolPropertiesP_Impl::SvXMLAutoStylePoolPropertiesP_Impl( XMLFamilyData_Impl& rFamilyData, const vector< XMLPropertyState >& rProperties )
: maProperties( rProperties ),
mnPos ( pFamilyData->mnCount )
mnPos ( rFamilyData.mnCount )
{
// create a name that hasn't been used before. The created name has not
// to be added to the array, because it will never tried again
OUStringBuffer sBuffer( 7 );
do
{
pFamilyData->mnName++;
sBuffer.append( pFamilyData->maStrPrefix );
sBuffer.append( OUString::valueOf( (sal_Int32)pFamilyData->mnName ) );
rFamilyData.mnName++;
sBuffer.append( rFamilyData.maStrPrefix );
sBuffer.append( OUString::valueOf( (sal_Int32)rFamilyData.mnName ) );
msName = sBuffer.makeStringAndClear();
}
while( pFamilyData->mpNameList->find(msName) != pFamilyData->mpNameList->end() );
while( rFamilyData.mpNameList->find(msName) != rFamilyData.mpNameList->end() );
}
bool operator<( const XMLFamilyData_Impl& r1, const XMLFamilyData_Impl& r2)
{
return r1.mnFamily < r2.mnFamily;
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
......@@ -56,7 +56,7 @@ SvXMLAutoStylePoolParentP_Impl::~SvXMLAutoStylePoolParentP_Impl()
// if not added, yet.
//
sal_Bool SvXMLAutoStylePoolParentP_Impl::Add( XMLFamilyData_Impl* pFamilyData, const vector< XMLPropertyState >& rProperties, OUString& rName, bool bDontSeek )
sal_Bool SvXMLAutoStylePoolParentP_Impl::Add( XMLFamilyData_Impl& rFamilyData, const vector< XMLPropertyState >& rProperties, OUString& rName, bool bDontSeek )
{
sal_Bool bAdded = sal_False;
SvXMLAutoStylePoolPropertiesP_Impl *pProperties = 0;
......@@ -75,7 +75,7 @@ sal_Bool SvXMLAutoStylePoolParentP_Impl::Add( XMLFamilyData_Impl* pFamilyData, c
{
break;
}
else if( !bDontSeek && pFamilyData->mxMapper->Equals( pIS->GetProperties(), rProperties ) )
else if( !bDontSeek && rFamilyData.mxMapper->Equals( pIS->GetProperties(), rProperties ) )
{
pProperties = pIS;
break;
......@@ -84,7 +84,7 @@ sal_Bool SvXMLAutoStylePoolParentP_Impl::Add( XMLFamilyData_Impl* pFamilyData, c
if( !pProperties )
{
pProperties = new SvXMLAutoStylePoolPropertiesP_Impl( pFamilyData, rProperties );
pProperties = new SvXMLAutoStylePoolPropertiesP_Impl( rFamilyData, rProperties );
SvXMLAutoStylePoolPropertiesPList_Impl::iterator it = maPropertiesList.begin();
::std::advance( it, i );
maPropertiesList.insert( it, pProperties );
......@@ -103,7 +103,7 @@ sal_Bool SvXMLAutoStylePoolParentP_Impl::Add( XMLFamilyData_Impl* pFamilyData, c
// the same properties exists, a new one is added (like with bDontSeek).
//
sal_Bool SvXMLAutoStylePoolParentP_Impl::AddNamed( XMLFamilyData_Impl* pFamilyData, const vector< XMLPropertyState >& rProperties, const OUString& rName )
sal_Bool SvXMLAutoStylePoolParentP_Impl::AddNamed( XMLFamilyData_Impl& rFamilyData, const vector< XMLPropertyState >& rProperties, const OUString& rName )
{
sal_Bool bAdded = sal_False;
size_t i = 0;
......@@ -123,10 +123,10 @@ sal_Bool SvXMLAutoStylePoolParentP_Impl::AddNamed( XMLFamilyData_Impl* pFamilyDa
}
}
if(pFamilyData->mpNameList->find(rName) == pFamilyData->mpNameList->end())
if(rFamilyData.mpNameList->find(rName) == rFamilyData.mpNameList->end())
{
SvXMLAutoStylePoolPropertiesP_Impl* pProperties =
new SvXMLAutoStylePoolPropertiesP_Impl( pFamilyData, rProperties );
new SvXMLAutoStylePoolPropertiesP_Impl( rFamilyData, rProperties );
// ignore the generated name
pProperties->SetName( rName );
SvXMLAutoStylePoolPropertiesPList_Impl::iterator it = maPropertiesList.begin();
......@@ -143,7 +143,7 @@ sal_Bool SvXMLAutoStylePoolParentP_Impl::AddNamed( XMLFamilyData_Impl* pFamilyDa
// Search for a array of XMLPropertyState ( vector< XMLPropertyState > ) in list
//
OUString SvXMLAutoStylePoolParentP_Impl::Find( const XMLFamilyData_Impl* pFamilyData, const vector< XMLPropertyState >& rProperties ) const
OUString SvXMLAutoStylePoolParentP_Impl::Find( const XMLFamilyData_Impl& rFamilyData, const vector< XMLPropertyState >& rProperties ) const
{
OUString sName;
vector< XMLPropertyState>::size_type nItems = rProperties.size();
......@@ -159,7 +159,7 @@ OUString SvXMLAutoStylePoolParentP_Impl::Find( const XMLFamilyData_Impl* pFamily
{
break;
}
else if( pFamilyData->mxMapper->Equals( pIS->GetProperties(), rProperties ) )
else if( rFamilyData.mxMapper->Equals( pIS->GetProperties(), rProperties ) )
{
sName = pIS->GetName();
break;
......
......@@ -29,6 +29,7 @@
#ifndef _XMLOFF_XMLASTPL_IMPL_HXX
#define _XMLOFF_XMLASTPL_IMPL_HXX
#include <boost/ptr_container/ptr_set.hpp>
#include <sal/types.h>
#include <svl/cntnrsrt.hxx>
#include <rtl/ustring.hxx>
......@@ -84,12 +85,12 @@ public:
{}
~XMLFamilyData_Impl();
friend int XMLFamilyDataSort_Impl( const XMLFamilyData_Impl& r1, const XMLFamilyData_Impl& r2 );
friend bool operator<(const XMLFamilyData_Impl& r1, const XMLFamilyData_Impl& r2);
void ClearEntries();
};
DECLARE_CONTAINER_SORT( XMLFamilyDataList_Impl, XMLFamilyData_Impl )
typedef boost::ptr_set<XMLFamilyData_Impl> XMLFamilyDataList_Impl;
///////////////////////////////////////////////////////////////////////////////
//
......@@ -104,7 +105,7 @@ class SvXMLAutoStylePoolPropertiesP_Impl
public:
SvXMLAutoStylePoolPropertiesP_Impl( XMLFamilyData_Impl* pFamilyData, const ::std::vector< XMLPropertyState >& rProperties );
SvXMLAutoStylePoolPropertiesP_Impl( XMLFamilyData_Impl& rFamilyData, const ::std::vector< XMLPropertyState >& rProperties );
~SvXMLAutoStylePoolPropertiesP_Impl()
{
......@@ -139,11 +140,11 @@ public:
~SvXMLAutoStylePoolParentP_Impl();
sal_Bool Add( XMLFamilyData_Impl* pFamilyData, const ::std::vector< XMLPropertyState >& rProperties, ::rtl::OUString& rName, bool bDontSeek = false );
sal_Bool Add( XMLFamilyData_Impl& rFamilyData, const ::std::vector< XMLPropertyState >& rProperties, ::rtl::OUString& rName, bool bDontSeek = false );
sal_Bool AddNamed( XMLFamilyData_Impl* pFamilyData, const ::std::vector< XMLPropertyState >& rProperties, const ::rtl::OUString& rName );
sal_Bool AddNamed( XMLFamilyData_Impl& rFamilyData, const ::std::vector< XMLPropertyState >& rProperties, const ::rtl::OUString& rName );
::rtl::OUString Find( const XMLFamilyData_Impl* pFamilyData, const ::std::vector< XMLPropertyState >& rProperties ) const;
::rtl::OUString Find( const XMLFamilyData_Impl& rFamilyData, const ::std::vector< XMLPropertyState >& rProperties ) const;
const ::rtl::OUString& GetParent() const { return msParent; }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment