mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-02-10 18:05:41 +08:00
@ -261,7 +261,6 @@ namespace PPTX
|
||||
Modifiers.back().fromXML(oReader);
|
||||
}
|
||||
}
|
||||
|
||||
std::wstring StyleClr::toXML() const
|
||||
{
|
||||
XmlUtils::CNodeValue oValue;
|
||||
@ -269,11 +268,55 @@ namespace PPTX
|
||||
|
||||
XmlUtils::CAttribute oAttr;
|
||||
if (val.IsInit())
|
||||
oAttr.Write(L"val", *val);
|
||||
oAttr.Write(L"val", std::to_wstring(*val));
|
||||
else if (bAuto)
|
||||
oAttr.Write(L"val", std::wstring(L"auto"));
|
||||
|
||||
return XmlUtils::CreateNode(L"cs:styleClr", oAttr, oValue);
|
||||
}
|
||||
void StyleClr::toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
{
|
||||
pWriter->StartNode(L"cs:styleClr");
|
||||
|
||||
pWriter->StartAttributes();
|
||||
if (val.IsInit())
|
||||
pWriter->WriteAttribute(L"val", std::to_wstring(*val));
|
||||
else if (bAuto)
|
||||
pWriter->WriteAttribute(L"val", std::wstring(L"auto"));
|
||||
pWriter->EndAttributes();
|
||||
|
||||
for (size_t i = 0; i < Modifiers.size(); ++i)
|
||||
Modifiers[i].toXmlWriter(pWriter);
|
||||
|
||||
pWriter->EndNode(L"cs:styleClr");
|
||||
}
|
||||
void StyleClr::toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const
|
||||
{
|
||||
pWriter->StartRecord(COLOR_TYPE_STYLE);
|
||||
|
||||
pWriter->WriteBYTE(NSBinPptxRW::g_nodeAttributeStart);
|
||||
if (val.IsInit())
|
||||
pWriter->WriteUInt2(0, val);
|
||||
else
|
||||
pWriter->WriteBool1(1, bAuto);
|
||||
pWriter->WriteBYTE(NSBinPptxRW::g_nodeAttributeEnd);
|
||||
|
||||
ULONG len = (ULONG)Modifiers.size();
|
||||
if (len != 0)
|
||||
{
|
||||
pWriter->StartRecord(0);
|
||||
pWriter->WriteULONG(len);
|
||||
|
||||
for (ULONG i = 0; i < len; ++i)
|
||||
{
|
||||
pWriter->WriteRecord1(1, Modifiers[i]);
|
||||
}
|
||||
|
||||
pWriter->EndRecord();
|
||||
}
|
||||
|
||||
pWriter->EndRecord();
|
||||
}
|
||||
|
||||
} // namespace Logic
|
||||
} // namespace PPTX
|
||||
|
||||
@ -109,51 +109,8 @@ namespace PPTX
|
||||
val = *sVal;
|
||||
}
|
||||
}
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
{
|
||||
pWriter->StartNode(L"cs:styleClr");
|
||||
|
||||
pWriter->StartAttributes();
|
||||
if (val.IsInit())
|
||||
pWriter->WriteAttribute(L"val", *val);
|
||||
else if (bAuto)
|
||||
pWriter->WriteAttribute(L"val", L"auto");
|
||||
pWriter->EndAttributes();
|
||||
|
||||
size_t nCount = Modifiers.size();
|
||||
for (size_t i = 0; i < nCount; ++i)
|
||||
Modifiers[i].toXmlWriter(pWriter);
|
||||
|
||||
pWriter->EndNode(L"cs:styleClr");
|
||||
}
|
||||
|
||||
virtual void toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const
|
||||
{
|
||||
pWriter->StartRecord(COLOR_TYPE_STYLE);
|
||||
|
||||
pWriter->WriteBYTE(NSBinPptxRW::g_nodeAttributeStart);
|
||||
if (val.IsInit())
|
||||
pWriter->WriteUInt2(0, val);
|
||||
else
|
||||
pWriter->WriteBool1(1, bAuto);
|
||||
pWriter->WriteBYTE(NSBinPptxRW::g_nodeAttributeEnd);
|
||||
|
||||
ULONG len = (ULONG)Modifiers.size();
|
||||
if (len != 0)
|
||||
{
|
||||
pWriter->StartRecord(0);
|
||||
pWriter->WriteULONG(len);
|
||||
|
||||
for (ULONG i = 0; i < len; ++i)
|
||||
{
|
||||
pWriter->WriteRecord1(1, Modifiers[i]);
|
||||
}
|
||||
|
||||
pWriter->EndRecord();
|
||||
}
|
||||
|
||||
pWriter->EndRecord();
|
||||
}
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const;
|
||||
virtual void toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const;
|
||||
|
||||
nullable_uint val;
|
||||
bool bAuto = false;
|
||||
|
||||
Reference in New Issue
Block a user