24#include <rtl/strbuf.hxx>
44 sal_uInt32 nTokPos = rInStm.
Tell();
47 if( rTok.
Is( SvHash_import() ) )
66 rInStm.
Seek( nTokPos );
71 if( !pType || pType->
IsItem() )
74 if( xAttr->ReadSvIdl( rBase, rInStm ) )
75 bOk = xAttr->Test( rInStm );
80 if( xAttr->ReadSvIdl( rBase, rInStm ) )
81 bOk = xAttr->Test( rInStm );
88 if( !xAttr->GetSlotId().IsSet() )
92 xAttr->SetSlotId( aI );
98 rInStm.
Seek( nTokPos );
116 throw SvParseException( rInStm,
"Attribute's " +
pS->GetName() +
" with different id's");
121 sal_uInt32 nId1 =
pS->GetSlotId().GetValue();
123 if( nId1 == nId2 && nId1 != 0 )
125 OString
aStr =
"Attribute " +
pS->GetName() +
" and Attribute " + rAttr.
GetName() +
" with equal id's";
141 for (
size_t i = 0,
n = rSlotList.size();
i <
n; ++
i )
155 sal_uInt16 nSCount = 0;
156 for (
size_t i = 0,
n = rSlotList.size();
i <
n; ++
i )
159 nSCount = nSCount + pAttr->
WriteSlotMap( rShellName, nSCount,
172 for (
size_t i = 0,
n = rClassList.size();
i <
n ; ++
i )
173 if ( rClassList[
i ] ==
this )
176 rClassList.push_back(
this );
186 std::vector<sal_uInt32>::iterator iter = std::find(rSuperList.begin(),
187 rSuperList.end(),
nId);
189 if( iter == rSuperList.end() )
193 rSuperList.push_back(
nId);
211 OStringBuffer rPre(rPrefix.getLength() + 1 + rElement.
GetPrefix().getLength());
212 rPre.append(rPrefix);
213 if( !rPre.isEmpty() && !rElement.
GetPrefix().isEmpty() )
219 rPre.makeStringAndClear(), rBase );
225 aSuperClass->InsertSlots( rList, rSuperList, rClassList, rPrefix, rBase );
232 for (
size_t i = 0,
n = rList.size();
i <
n; ++
i )
233 if ( rList[
i ] ==
this )
236 rList.push_back(
this );
254 std::vector<OString> & rList,
258 for (
size_t i = 0,
n = rSlotList.size();
i <
n; ++
i )
284 std::vector<sal_uInt32> aSuperList;
287 InsertSlots(aSlotList, aSuperList, classList, OString(), rBase);
288 for (
size_t i = 0,
n = aSlotList.size();
i <
n; ++
i )
294 size_t nSlotCount = aSlotList.size();
304 rOutStm.
WriteOString(
"{ (const SfxType*) &aSfxVoidItem_Impl, 0, 0 }" ) <<
endl;
331 .
WriteOString(
"SfxSlotMode::NONE, SfxVoidItem, 0, 0, \"\", SfxSlotMode::NONE )" ) <<
endl;
337 for(
size_t i = 0,
n = aSlotList.size();
i <
n; ++
i )
const OString & GetPrefix() const
void SetClass(SvMetaClass *pClass)
void SetPrefix(const OString &rPrefix)
SvMetaClass * GetClass() const
void SetValue(sal_uInt32 bVal)
const OString & getString() const
sal_uInt32 GetValue() const
SvMetaClass * ReadKnownClass(SvTokenStream &rInStm)
SvMetaType * ReadKnownType(SvTokenStream &rInStm)
SvStream & WriteOString(std::string_view rStr)
SvStream & WriteChar(char nChar)
void Seek(sal_uInt32 nPos)
SvToken & GetToken() const
SvToken & GetToken_Next()
bool Is(SvStringHashEntry const *pEntry) const
const OString & GetString() const
#define SAL_WARN(area, stream)
::std::vector< SvMetaClass * > SvMetaClassList
TOOLS_DLLPUBLIC SvStream & endl(SvStream &rStr)
const std::u16string_view aStringList[]