summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2012-08-08 16:26:06 +0100
committerCaolán McNamara <caolanm@redhat.com>2012-08-08 16:26:06 +0100
commita53b71a60ef10a926769f44ef89f59f935bb5dd7 (patch)
treeb95b92e4e9bf9743d63a789d073906306416c661
parente6323c97104027ab2b50695043d4505114590971 (diff)
make binfilter build again
Change-Id: I8ca77d957966f554fd24490424d1bb40d5d99e37
-rw-r--r--binfilter/bf_basic/source/basmgr/basmgr.cxx1
-rw-r--r--binfilter/bf_sd/source/core/sd_cusshow.cxx1
-rw-r--r--binfilter/bf_so3/source/persist/persist.cxx105
-rw-r--r--binfilter/bf_svtools/source/filter.vcl/filter/svt_filter.cxx1
-rw-r--r--binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx1
-rw-r--r--binfilter/bf_svtools/source/items1/svt_slstitm.cxx1
-rw-r--r--binfilter/bf_svtools/source/misc/svt_flbytes.cxx5
-rw-r--r--binfilter/bf_svtools/source/numbers/svt_zforlist.cxx1
-rw-r--r--binfilter/bf_svx/source/engine3d/svx_scene3d.cxx2
-rw-r--r--binfilter/bf_svx/source/outliner/svx_outliner.cxx1
-rw-r--r--binfilter/inc/bf_sc/global.hxx1
-rw-r--r--binfilter/inc/bf_sd/cusshow.hxx2
-rw-r--r--binfilter/inc/bf_sd/sdpage.hxx1
-rw-r--r--binfilter/inc/bf_sd/stlpool.hxx1
-rw-r--r--binfilter/inc/bf_so3/persist.hxx26
-rw-r--r--binfilter/inc/bf_so3/ref.hxx246
-rw-r--r--binfilter/inc/bf_so3/so2ref.hxx1
-rw-r--r--binfilter/inc/bf_svtools/imap.hxx1
-rw-r--r--binfilter/inc/bf_svx/svdlayer.hxx1
-rw-r--r--binfilter/inc/bf_svx/xtable.hxx1
20 files changed, 397 insertions, 3 deletions
diff --git a/binfilter/bf_basic/source/basmgr/basmgr.cxx b/binfilter/bf_basic/source/basmgr/basmgr.cxx
index a4fefe8d8..d9453b831 100644
--- a/binfilter/bf_basic/source/basmgr/basmgr.cxx
+++ b/binfilter/bf_basic/source/basmgr/basmgr.cxx
@@ -29,6 +29,7 @@
#include <sot/storinfo.hxx>
#include <bf_svtools/pathoptions.hxx>
#include <tools/debug.hxx>
+#include <tools/list.hxx>
#include <sbmod.hxx>
diff --git a/binfilter/bf_sd/source/core/sd_cusshow.cxx b/binfilter/bf_sd/source/core/sd_cusshow.cxx
index 919d3a0f0..5bfd47a1e 100644
--- a/binfilter/bf_sd/source/core/sd_cusshow.cxx
+++ b/binfilter/bf_sd/source/core/sd_cusshow.cxx
@@ -27,6 +27,7 @@
#include "sdpage.hxx"
#include "drawdoc.hxx"
+#include <tools/list.hxx>
// #90477#
#include <tools/tenccvt.hxx>
namespace binfilter {
diff --git a/binfilter/bf_so3/source/persist/persist.cxx b/binfilter/bf_so3/source/persist/persist.cxx
index 36dcb8f09..641b12692 100644
--- a/binfilter/bf_so3/source/persist/persist.cxx
+++ b/binfilter/bf_so3/source/persist/persist.cxx
@@ -29,6 +29,8 @@
#include <sot/storinfo.hxx>
#include <sot/formats.hxx>
+#include <rtl/strbuf.hxx>
+
#include <tools/debug.hxx>
#include <bf_tools/string.hxx>
@@ -1246,6 +1248,109 @@ void SvPersist::CleanUp( BOOL bRecurse)
}
}
}
+
+SvPersistBaseMemberList::SvPersistBaseMemberList(){}
+
+#define PERSIST_LIST_VER (sal_uInt8)0
+#define PERSIST_LIST_DBGUTIL (sal_uInt8)0x80
+
+/************************************************************************
+|* SvPersistBaseMemberList::WriteOnlyStreamedObjects()
+*************************************************************************/
+void SvPersistBaseMemberList::WriteObjects( SvPersistStream & rStm,
+ sal_Bool bOnlyStreamed ) const
+{
+#ifdef STOR_NO_OPTIMIZE
+ rStm << (sal_uInt8)(PERSIST_LIST_VER | PERSIST_LIST_DBGUTIL);
+ sal_uInt32 nObjPos = rStm.WriteDummyLen();
+#else
+ sal_uInt8 bTmp = PERSIST_LIST_VER;
+ rStm << bTmp;
+#endif
+ sal_uInt32 nCountMember = Count();
+ sal_uIntPtr nCountPos = rStm.Tell();
+ sal_uInt32 nWriteCount = 0;
+ rStm << nCountMember;
+ //bloss die Liste nicht veraendern,
+ //wegen Seiteneffekten beim Save
+ for( sal_uIntPtr n = 0; n < nCountMember; n++ )
+ {
+ SvPersistBase * pObj = GetObject( n );
+ if( !bOnlyStreamed || rStm.IsStreamed( pObj ) )
+ { // Objekt soll geschrieben werden
+ rStm << GetObject( n );
+ nWriteCount++;
+ }
+ }
+ if( nWriteCount != nCountMember )
+ {
+ // nicht alle Objekte geschrieben, Count anpassen
+ sal_uIntPtr nPos = rStm.Tell();
+ rStm.Seek( nCountPos );
+ rStm << nWriteCount;
+ rStm.Seek( nPos );
+ }
+#ifdef STOR_NO_OPTIMIZE
+ rStm.WriteLen( nObjPos );
+#endif
+}
+
+/************************************************************************
+|* operator << ()
+*************************************************************************/
+SvPersistStream& operator << ( SvPersistStream & rStm,
+ const SvPersistBaseMemberList & rLst )
+{
+ rLst.WriteObjects( rStm );
+ return rStm;
+}
+
+/************************************************************************
+|* operator >> ()
+*************************************************************************/
+SvPersistStream& operator >> ( SvPersistStream & rStm,
+ SvPersistBaseMemberList & rLst )
+{
+ sal_uInt8 nVer;
+ rStm >> nVer;
+
+ if( (nVer & ~PERSIST_LIST_DBGUTIL) != PERSIST_LIST_VER )
+ {
+ rStm.SetError( SVSTREAM_GENERALERROR );
+ OSL_FAIL( "persist list, false version" );
+ }
+
+ sal_uInt32 nObjLen(0), nObjPos(0);
+ if( nVer & PERSIST_LIST_DBGUTIL )
+ nObjLen = rStm.ReadLen( &nObjPos );
+
+ sal_uInt32 nCount;
+ rStm >> nCount;
+ for( sal_uIntPtr n = 0; n < nCount && rStm.GetError() == SVSTREAM_OK; n++ )
+ {
+ SvPersistBase * pObj;
+ rStm >> pObj;
+ if( pObj )
+ rLst.Append( pObj );
+ }
+#ifdef DBG_UTIL
+ if( nObjLen + nObjPos != rStm.Tell() )
+ {
+ rtl::OStringBuffer aStr(
+ RTL_CONSTASCII_STRINGPARAM("false list len: read = "));
+ aStr.append(static_cast<sal_Int64>(rStm.Tell() - nObjPos));
+ aStr.append(RTL_CONSTASCII_STRINGPARAM(", should = "));
+ aStr.append(static_cast<sal_Int64>(nObjLen));
+ OSL_FAIL(aStr.getStr());
+ }
+#else
+ (void)nObjLen;
+#endif
+ return rStm;
+}
+
+
+
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binfilter/bf_svtools/source/filter.vcl/filter/svt_filter.cxx b/binfilter/bf_svtools/source/filter.vcl/filter/svt_filter.cxx
index 6332de9de..5db698a93 100644
--- a/binfilter/bf_svtools/source/filter.vcl/filter/svt_filter.cxx
+++ b/binfilter/bf_svtools/source/filter.vcl/filter/svt_filter.cxx
@@ -24,6 +24,7 @@
#include <comphelper/processfactory.hxx>
#include <ucbhelper/content.hxx>
#include <cppuhelper/implbase1.hxx>
+#include <tools/list.hxx>
#include <tools/urlobj.hxx>
#include <vcl/salctype.hxx>
#include <vcl/pngread.hxx>
diff --git a/binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx b/binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx
index 13b8ec33e..9b351351c 100644
--- a/binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx
+++ b/binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx
@@ -31,6 +31,7 @@
#include <sot/object.hxx>
#include <boost/shared_ptr.hpp>
#include <tools/debug.hxx>
+#include <tools/list.hxx>
#include <vcl/graph.hxx>
#include <vcl/virdev.hxx>
#include <tools/poly.hxx>
diff --git a/binfilter/bf_svtools/source/items1/svt_slstitm.cxx b/binfilter/bf_svtools/source/items1/svt_slstitm.cxx
index aaaabfe5f..e951e310e 100644
--- a/binfilter/bf_svtools/source/items1/svt_slstitm.cxx
+++ b/binfilter/bf_svtools/source/items1/svt_slstitm.cxx
@@ -24,6 +24,7 @@
#include <com/sun/star/uno/Any.hxx>
#include <com/sun/star/uno/Sequence.hxx>
+#include <tools/list.hxx>
#include <tools/stream.hxx>
namespace binfilter
diff --git a/binfilter/bf_svtools/source/misc/svt_flbytes.cxx b/binfilter/bf_svtools/source/misc/svt_flbytes.cxx
index 584842544..f4640c0a4 100644
--- a/binfilter/bf_svtools/source/misc/svt_flbytes.cxx
+++ b/binfilter/bf_svtools/source/misc/svt_flbytes.cxx
@@ -27,6 +27,8 @@
#undef _SVSTDARR_ULONGS
#endif
+#include <bf_so3/ref.hxx>
+
//============================================================================
namespace binfilter
{
@@ -37,7 +39,8 @@ inline ULONG MyMin( long a, long b )
}
//============================================================================
-SV_DECL_IMPL_REF_LIST( SvLockBytes, SvLockBytes* )
+SV_DECL_REF_LIST(SvLockBytes,SvLockBytes*)
+SV_IMPL_REF_LIST(SvLockBytes,SvLockBytes*)
//============================================================================
//
diff --git a/binfilter/bf_svtools/source/numbers/svt_zforlist.cxx b/binfilter/bf_svtools/source/numbers/svt_zforlist.cxx
index 6fa856dc1..643e73c6c 100644
--- a/binfilter/bf_svtools/source/numbers/svt_zforlist.cxx
+++ b/binfilter/bf_svtools/source/numbers/svt_zforlist.cxx
@@ -27,6 +27,7 @@
************************************************************************/
#include <tools/debug.hxx>
+#include <tools/list.hxx>
#include <vcl/svapp.hxx>
#include <vcl/settings.hxx>
#include <unotools/charclass.hxx>
diff --git a/binfilter/bf_svx/source/engine3d/svx_scene3d.cxx b/binfilter/bf_svx/source/engine3d/svx_scene3d.cxx
index 5bd439fcf..56637e3d5 100644
--- a/binfilter/bf_svx/source/engine3d/svx_scene3d.cxx
+++ b/binfilter/bf_svx/source/engine3d/svx_scene3d.cxx
@@ -36,6 +36,8 @@
#include <bf_svtools/whiter.hxx>
+#include <tools/list.hxx>
+
#include "scene3d.hxx"
namespace binfilter {
diff --git a/binfilter/bf_svx/source/outliner/svx_outliner.cxx b/binfilter/bf_svx/source/outliner/svx_outliner.cxx
index 4abf03a85..96b98c6e6 100644
--- a/binfilter/bf_svx/source/outliner/svx_outliner.cxx
+++ b/binfilter/bf_svx/source/outliner/svx_outliner.cxx
@@ -52,6 +52,7 @@
#include "lrspitem.hxx"
#include <bf_svtools/undo.hxx>
+#include <tools/list.hxx>
namespace binfilter {
diff --git a/binfilter/inc/bf_sc/global.hxx b/binfilter/inc/bf_sc/global.hxx
index bdc2cd0c5..539c789fa 100644
--- a/binfilter/inc/bf_sc/global.hxx
+++ b/binfilter/inc/bf_sc/global.hxx
@@ -24,6 +24,7 @@
#include <bf_tools/string.hxx>
#include <i18npool/lang.h>
+#include <tools/list.hxx>
#include <tools/stream.hxx>
#include <osl/endian.h>
namespace com { namespace sun { namespace star { namespace lang {
diff --git a/binfilter/inc/bf_sd/cusshow.hxx b/binfilter/inc/bf_sd/cusshow.hxx
index fb12d6b18..2dddc2749 100644
--- a/binfilter/inc/bf_sd/cusshow.hxx
+++ b/binfilter/inc/bf_sd/cusshow.hxx
@@ -21,9 +21,9 @@
#define _SD_CUSSHOW_HXX
+#include <tools/list.hxx>
#include <tools/stream.hxx>
-
#include <cppuhelper/weakref.hxx>
namespace binfilter {
diff --git a/binfilter/inc/bf_sd/sdpage.hxx b/binfilter/inc/bf_sd/sdpage.hxx
index a5278a564..e3619dbbe 100644
--- a/binfilter/inc/bf_sd/sdpage.hxx
+++ b/binfilter/inc/bf_sd/sdpage.hxx
@@ -33,6 +33,7 @@
#ifndef _PRESENTATION
#include <bf_sd/pres.hxx>
#endif
+#include <tools/list.hxx>
namespace binfilter {
class SfxStyleSheet;
diff --git a/binfilter/inc/bf_sd/stlpool.hxx b/binfilter/inc/bf_sd/stlpool.hxx
index 429962cd9..a5451c8c9 100644
--- a/binfilter/inc/bf_sd/stlpool.hxx
+++ b/binfilter/inc/bf_sd/stlpool.hxx
@@ -22,6 +22,7 @@
#include <bf_svtools/style.hxx>
+#include <tools/list.hxx>
namespace binfilter {
class SdStyleSheet;
diff --git a/binfilter/inc/bf_so3/persist.hxx b/binfilter/inc/bf_so3/persist.hxx
index e30eba37c..3f959fd8f 100644
--- a/binfilter/inc/bf_so3/persist.hxx
+++ b/binfilter/inc/bf_so3/persist.hxx
@@ -280,8 +280,32 @@ public:
};
SV_IMPL_REF(SvInfoObject)
-SV_DECL_IMPL_PERSIST_LIST(SvInfoObject,SvInfoObject*)
+// Damit die Liste, anders benannt wird
+typedef SvPersistBase SuperSvPersistBase;
+SV_DECL_REF_LIST_VISIBILITY(SuperSvPersistBase,SuperSvPersistBase*,SO3_DLLPUBLIC)
+SV_IMPL_REF_LIST(SuperSvPersistBase,SuperSvPersistBase*)
+
+class SO3_DLLPUBLIC SvPersistBaseMemberList : public SuperSvPersistBaseMemberList
+{
+public:
+ SvPersistBaseMemberList();
+
+ void WriteObjects( SvPersistStream &, sal_Bool bOnlyStreamedObj = sal_False ) const;
+ SO3_DLLPUBLIC friend SvPersistStream& operator << (SvPersistStream &, const SvPersistBaseMemberList &);
+ SO3_DLLPUBLIC friend SvPersistStream& operator >> (SvPersistStream &, SvPersistBaseMemberList &);
+};
+
+/*************************************************************************/
+#define SV_DECL_PERSIST_LIST(ClassName,EntryName)\
+class ClassName##MemberList : public SvPersistBaseMemberList\
+{\
+public:\
+ PRV_SV_DECL_MEMBER_LIST(ClassName,EntryName)\
+};
+
+SV_DECL_PERSIST_LIST(SvInfoObject,SvInfoObject*)
+PRV_SV_IMPL_MEMBER_LIST(SvInfoObject,SvInfoObject*,SvPersistBaseMemberList)
}
#endif // _PERSIST_HXX
diff --git a/binfilter/inc/bf_so3/ref.hxx b/binfilter/inc/bf_so3/ref.hxx
new file mode 100644
index 000000000..43bab152a
--- /dev/null
+++ b/binfilter/inc/bf_so3/ref.hxx
@@ -0,0 +1,246 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef _BF_REF_HXX
+#define _BF_REF_HXX
+
+#include <tools/list.hxx>
+#include <vector>
+
+ /************************** S v R e f L i s t ****************************/
+#define PRV_SV_DECL_REF_LIST(CN,EN,vis) \
+class CN##List : private List \
+{ \
+public: \
+ using List::Clear; \
+ using List::Count; \
+ using List::GetCurPos; \
+ \
+ CN##List( sal_uInt16 _nInitSize = 16, sal_uInt16 _nReSize = 16 ) \
+ : List( _nInitSize, _nReSize ) {} \
+ CN##List( sal_uInt16 _nBlockSize, sal_uInt16 _nInitSize, \
+ sal_uInt16 _nReSize ) \
+ : List( _nBlockSize, _nInitSize, _nReSize ) {} \
+ CN##List( const CN##List& rClassName ) \
+ : List( rClassName ) {} \
+ \
+ void Insert( EN p, sal_uIntPtr nIndex ) \
+ { List::Insert( (void*)p, nIndex ); } \
+ void Insert( EN p ) \
+ { List::Insert( (void*)p ); } \
+ EN Remove() \
+ { return (EN)List::Remove(); } \
+ EN Remove( sal_uIntPtr nIndex ) \
+ { return (EN)List::Remove( nIndex ); } \
+ EN Remove( EN p ) \
+ { return (EN)List::Remove( (void*)p ); } \
+ EN Replace( EN p, sal_uIntPtr nIndex ) \
+ { return (EN)List::Replace( (void*)p, nIndex ); } \
+ EN Replace( EN pNew, EN pOld ) \
+ { return (EN)List::Replace( (void*)pNew, (void*)pOld ); } \
+ \
+ EN GetCurObject() const \
+ { return (EN)List::GetCurObject(); } \
+ EN GetObject( sal_uIntPtr nIndex ) const \
+ { return (EN)List::GetObject( nIndex ); } \
+ sal_uIntPtr GetPos( const EN p ) const \
+ { return List::GetPos( (const void*)p ); } \
+ \
+ EN Seek( sal_uIntPtr nIndex ) \
+ { return (EN)List::Seek( nIndex ); } \
+ EN Seek( void* p ) { return (EN)List::Seek( p ); } \
+ EN First() { return (EN)List::First(); } \
+ EN Last() { return (EN)List::Last(); } \
+ EN Next() { return (EN)List::Next(); } \
+ EN Prev() { return (EN)List::Prev(); } \
+ \
+ CN##List& operator =( const CN##List& rClassName ) \
+ { List::operator =( rClassName ); return *this; } \
+ \
+ sal_Bool operator ==( const CN##List& rList ) const \
+ { return List::operator ==( rList ); } \
+ sal_Bool operator !=( const CN##List& rList ) const \
+ { return List::operator !=( rList ); } \
+}; \
+class vis CN##MemberList : public CN##List\
+{\
+public:\
+ inline CN##MemberList();\
+ inline CN##MemberList(sal_uInt16 nInitSz, sal_uInt16 nResize );\
+ inline CN##MemberList( const CN##MemberList & rRef );\
+ inline ~CN##MemberList();\
+ inline CN##MemberList & operator =( const CN##MemberList & rRef );\
+ inline void Clear();\
+ inline void Insert( EN p )\
+ {\
+ CN##List::Insert( p );\
+ p->AddRef();\
+ }\
+ inline void Insert( EN p, sal_uIntPtr nIndex )\
+ {\
+ CN##List::Insert( p, nIndex );\
+ p->AddRef();\
+ }\
+ inline void Append( EN p ) { Insert( p, LIST_APPEND ); }\
+ inline EN Remove();\
+ inline EN Remove( sal_uIntPtr nIndex );\
+ inline EN Remove( EN p );\
+ inline EN Replace( EN p, sal_uIntPtr nIndex );\
+ inline EN Replace( EN pNew, EN pOld );\
+ inline void Append( const CN##MemberList & );\
+};
+
+#define SV_DECL_REF_LIST(CN,EN) \
+PRV_SV_DECL_REF_LIST(CN,EN,/* empty */)
+
+/************************** S v R e f L i s t ****************************/
+#define SV_IMPL_REF_LIST( CN, EN ) \
+inline CN##MemberList::CN##MemberList(){}\
+inline CN##MemberList::CN##MemberList(sal_uInt16 nInitSz, sal_uInt16 nResize )\
+ : CN##List( nInitSz, nResize ){}\
+inline CN##MemberList::CN##MemberList( const CN##MemberList & rRef ) \
+ : CN##List( rRef ) \
+{\
+ sal_uIntPtr nOldCount = Count(); \
+ EN pEntry = First(); \
+ while( pEntry ) \
+ { pEntry->AddRef(); pEntry = Next(); } \
+ Seek( nOldCount ); /* auch Curser gleich */ \
+}\
+inline CN##MemberList::~CN##MemberList() { Clear(); } \
+inline CN##MemberList & CN##MemberList::operator = \
+ ( const CN##MemberList & rRef ) \
+{\
+ CN##MemberList & rList = (CN##MemberList &)rRef; \
+ sal_uIntPtr nOldCount = rList.Count(); \
+ /* Count der Objekte erhoehen */ \
+ EN pEntry = rList.First(); \
+ while( pEntry ) \
+ { pEntry->AddRef(); pEntry = rList.Next(); } \
+ rList.Seek( nOldCount ); /* Curser zurueck */ \
+ /* Liste kopieren */ \
+ Clear(); \
+ CN##List::operator = ( rRef ); \
+ return *this; \
+}\
+inline void CN##MemberList::Clear() \
+{\
+ EN pEntry = Last();\
+ while( NULL != pEntry )\
+ pEntry = Remove();\
+}\
+inline EN CN##MemberList::Remove() \
+{\
+ EN p = CN##List::Remove(); \
+ if( p ) p->ReleaseReference(); return p; \
+}\
+inline EN CN##MemberList::Remove( sal_uIntPtr nIndex ) \
+{\
+ EN p = CN##List::Remove( nIndex ); \
+ if( p ) p->ReleaseReference(); return p; \
+}\
+inline EN CN##MemberList::Remove( EN p ) \
+{\
+ p = CN##List::Remove( p ); \
+ if( p ) p->ReleaseReference(); return p; \
+}\
+inline EN CN##MemberList::Replace( EN p, sal_uIntPtr nIndex ) \
+{\
+ p->AddRef(); p = CN##List::Replace( p, nIndex ); \
+ if( p ) p->ReleaseReference(); return p; \
+}\
+inline EN CN##MemberList::Replace( EN pNew, EN pOld ) \
+{\
+ pNew->AddRef(); CN##List::Replace( pNew, pOld ); \
+ if( pOld ) pOld->ReleaseReference(); return pOld; \
+}\
+inline void CN##MemberList::Append( const CN##MemberList & rList )\
+{\
+ for( sal_uIntPtr i = 0; i < rList.Count(); i++ )\
+ Append( rList.GetObject( i ) );\
+}
+
+/************************** S v M e m b e r L i s t **********************/
+#define PRV_SV_DECL_MEMBER_LIST(Class,EntryName) \
+ Class##MemberList() {} \
+inline void Insert( EntryName p ); \
+inline void Insert( EntryName p, sal_uIntPtr nIndex ); \
+inline void Append( EntryName p ); \
+inline EntryName Remove(); \
+inline EntryName Remove( sal_uIntPtr nIndex ); \
+inline EntryName Remove( EntryName p ); \
+inline EntryName Replace( EntryName p, sal_uIntPtr nIndex );\
+inline EntryName Replace( EntryName pNew, EntryName pOld );\
+inline EntryName GetCurObject() const;\
+inline EntryName GetObject( sal_uIntPtr nIndex ) const;\
+inline sal_uIntPtr GetPos( const EntryName ) const;\
+inline EntryName Seek( sal_uIntPtr nIndex );\
+inline EntryName Seek( EntryName p );\
+inline EntryName First();\
+inline EntryName Last();\
+inline EntryName Next();\
+inline EntryName Prev();\
+inline void Append( const Class##MemberList & rList );
+
+#define PRV_SV_IMPL_MEMBER_LIST(ClassName,EntryName,BaseList)\
+inline void ClassName##MemberList::Insert( EntryName p )\
+ {BaseList::Insert(p);}\
+inline void ClassName##MemberList::Insert( EntryName p, sal_uIntPtr nIdx )\
+ {BaseList::Insert(p,nIdx);}\
+inline void ClassName##MemberList::Append( EntryName p )\
+ {BaseList::Append(p);}\
+inline EntryName ClassName##MemberList::Remove()\
+ {return (EntryName)BaseList::Remove();}\
+inline EntryName ClassName##MemberList::Remove( sal_uIntPtr nIdx )\
+ {return (EntryName)BaseList::Remove(nIdx);}\
+inline EntryName ClassName##MemberList::Remove( EntryName p )\
+ {return (EntryName)BaseList::Remove(p);}\
+inline EntryName ClassName##MemberList::Replace( EntryName p, sal_uIntPtr nIdx )\
+ {return (EntryName)BaseList::Replace(p,nIdx);}\
+inline EntryName ClassName##MemberList::Replace( EntryName p, EntryName pOld )\
+ {return (EntryName)BaseList::Replace(p,pOld);}\
+inline EntryName ClassName##MemberList::GetCurObject() const\
+ {return (EntryName)BaseList::GetCurObject();}\
+inline EntryName ClassName##MemberList::GetObject( sal_uIntPtr nIdx ) const\
+ {return (EntryName)BaseList::GetObject( nIdx );}\
+inline EntryName ClassName##MemberList::Seek( sal_uIntPtr nIdx )\
+ {return (EntryName)BaseList::Seek( nIdx );}\
+inline EntryName ClassName##MemberList::Seek( EntryName p )\
+ {return (EntryName)BaseList::Seek( p );}\
+inline EntryName ClassName##MemberList::First()\
+ {return (EntryName)BaseList::First();}\
+inline EntryName ClassName##MemberList::Last()\
+ {return (EntryName)BaseList::Last();}\
+inline EntryName ClassName##MemberList::Next()\
+ {return (EntryName)BaseList::Next();}\
+inline EntryName ClassName##MemberList::Prev()\
+ {return (EntryName)BaseList::Prev();}\
+inline void ClassName##MemberList::Append( const ClassName##MemberList & rList )\
+ {BaseList::Append(rList);}\
+inline sal_uIntPtr ClassName##MemberList::GetPos( const EntryName p) const\
+ {return BaseList::GetPos( p );}
+
+#define SV_DECL_REF_LIST(CN,EN) \
+PRV_SV_DECL_REF_LIST(CN,EN,/* empty */)
+
+#define SV_DECL_REF_LIST_VISIBILITY(CN,EN,vis) \
+PRV_SV_DECL_REF_LIST(CN,EN,vis)
+
+#endif // _Weak_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binfilter/inc/bf_so3/so2ref.hxx b/binfilter/inc/bf_so3/so2ref.hxx
index f8c4f5349..8a094a7d4 100644
--- a/binfilter/inc/bf_so3/so2ref.hxx
+++ b/binfilter/inc/bf_so3/so2ref.hxx
@@ -21,6 +21,7 @@
#define _SO2REF_HXX
#include <sot/sotref.hxx>
+#include <bf_so3/ref.hxx>
namespace binfilter
{
diff --git a/binfilter/inc/bf_svtools/imap.hxx b/binfilter/inc/bf_svtools/imap.hxx
index 0001efa93..5f8a8121e 100644
--- a/binfilter/inc/bf_svtools/imap.hxx
+++ b/binfilter/inc/bf_svtools/imap.hxx
@@ -24,6 +24,7 @@
#include <bf_tools/string.hxx>
+#include <tools/list.hxx>
#include <tools/stream.hxx>
class Point;
diff --git a/binfilter/inc/bf_svx/svdlayer.hxx b/binfilter/inc/bf_svx/svdlayer.hxx
index 06ad68376..7693a3cc9 100644
--- a/binfilter/inc/bf_svx/svdlayer.hxx
+++ b/binfilter/inc/bf_svx/svdlayer.hxx
@@ -23,6 +23,7 @@
#include <bf_svtools/bf_solar.h>
#include <bf_tools/string.hxx>
+#include <tools/contnr.hxx>
#include <tools/stream.hxx>
#include <bf_svx/svdsob.hxx>
#include <bf_svx/svdtypes.hxx> // fuer typedef SdrLayerID
diff --git a/binfilter/inc/bf_svx/xtable.hxx b/binfilter/inc/bf_svx/xtable.hxx
index d86fd9f1d..a6dd94230 100644
--- a/binfilter/inc/bf_svx/xtable.hxx
+++ b/binfilter/inc/bf_svx/xtable.hxx
@@ -39,6 +39,7 @@
#include <bf_svx/xlnasit.hxx>
#include <tools/color.hxx>
+#include <tools/list.hxx>
#include <bf_tools/string.hxx>