mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-02-10 18:05:41 +08:00
printPr
This commit is contained in:
@ -92,5 +92,89 @@ namespace PPTX
|
||||
break;
|
||||
}
|
||||
}
|
||||
//------------------------------------------------------------------------------------------
|
||||
PrintClrMode::PrintClrMode()
|
||||
{
|
||||
m_strValue = L"clr";
|
||||
}
|
||||
void PrintClrMode::set(const std::wstring& strValue)
|
||||
{
|
||||
if ((L"bw" == strValue) ||
|
||||
(L"clr" == strValue) ||
|
||||
(L"gray" == strValue))
|
||||
{
|
||||
m_strValue = strValue;
|
||||
}
|
||||
}
|
||||
unsigned char PrintClrMode::GetBYTECode() const
|
||||
{
|
||||
if (L"bw" == m_strValue) return 0;
|
||||
if (L"clr" == m_strValue) return 1;
|
||||
if (L"gray" == m_strValue) return 2;
|
||||
return 0;
|
||||
}
|
||||
void PrintClrMode::SetBYTECode(const unsigned char& src)
|
||||
{
|
||||
switch (src)
|
||||
{
|
||||
case 0: m_strValue = L"bw"; break;
|
||||
case 1: m_strValue = L"clr"; break;
|
||||
case 2: m_strValue = L"gray"; break;
|
||||
default:
|
||||
m_strValue = L"clr";
|
||||
break;
|
||||
}
|
||||
}
|
||||
//------------------------------------------------------------------------------------------
|
||||
PrintWhat::PrintWhat()
|
||||
{
|
||||
m_strValue = L"slides";
|
||||
}
|
||||
void PrintWhat::set(const std::wstring& strValue)
|
||||
{
|
||||
if ((L"slides" == strValue) ||
|
||||
(L"handouts1" == strValue) ||
|
||||
(L"handouts2" == strValue) ||
|
||||
(L"handouts3" == strValue) ||
|
||||
(L"handouts4" == strValue) ||
|
||||
(L"handouts6" == strValue) ||
|
||||
(L"handouts9" == strValue) ||
|
||||
(L"notes" == strValue) ||
|
||||
(L"outline" == strValue))
|
||||
{
|
||||
m_strValue = strValue;
|
||||
}
|
||||
}
|
||||
unsigned char PrintWhat::GetBYTECode() const
|
||||
{
|
||||
if (L"slides" == m_strValue) return 0;
|
||||
if (L"handouts1" == m_strValue) return 1;
|
||||
if (L"handouts2" == m_strValue) return 2;
|
||||
if (L"handouts3" == m_strValue) return 3;
|
||||
if (L"handouts4" == m_strValue) return 4;
|
||||
if (L"handouts6" == m_strValue) return 5;
|
||||
if (L"handouts9" == m_strValue) return 6;
|
||||
if (L"notes" == m_strValue) return 7;
|
||||
if (L"outline" == m_strValue) return 8;
|
||||
return 0;
|
||||
}
|
||||
void PrintWhat::SetBYTECode(const unsigned char& src)
|
||||
{
|
||||
switch (src)
|
||||
{
|
||||
case 0: m_strValue = L"slides"; break;
|
||||
case 1: m_strValue = L"handouts1"; break;
|
||||
case 2: m_strValue = L"handouts2"; break;
|
||||
case 3: m_strValue = L"handouts3"; break;
|
||||
case 4: m_strValue = L"handouts4"; break;
|
||||
case 5: m_strValue = L"handouts6"; break;
|
||||
case 6: m_strValue = L"handouts9"; break;
|
||||
case 7: m_strValue = L"notes"; break;
|
||||
case 8: m_strValue = L"outline"; break;
|
||||
default:
|
||||
m_strValue = L"slides";
|
||||
break;
|
||||
}
|
||||
}
|
||||
} // namespace Limit
|
||||
} // namespace PPTX
|
||||
|
||||
@ -38,5 +38,9 @@ namespace PPTX
|
||||
namespace Limit
|
||||
{
|
||||
DEFINE_LIMIT_BASE(BWMode)
|
||||
|
||||
DEFINE_LIMIT_BASE(PrintClrMode)
|
||||
|
||||
DEFINE_LIMIT_BASE(PrintWhat)
|
||||
} // namespace Limit
|
||||
} // namespace PPTX
|
||||
|
||||
@ -32,7 +32,7 @@
|
||||
|
||||
#include "PresProps.h"
|
||||
|
||||
#include "ShowPr/ShowPr.h"
|
||||
#include "ShowPr/PresentationPr.h"
|
||||
#include "ShowPr/Browse.h"
|
||||
#include "ShowPr/CustShow.h"
|
||||
#include "ShowPr/Kiosk.h"
|
||||
@ -59,12 +59,17 @@ namespace PPTX
|
||||
|
||||
ClrMru.clear();
|
||||
XmlUtils::CXmlNode oNodeClr;
|
||||
if (oNode.GetNode(_T("p:clrMru"), oNodeClr))
|
||||
XmlMacroLoadArray(oNodeClr, _T("*"), ClrMru, Logic::UniColor);
|
||||
if (oNode.GetNode(L"p:clrMru", oNodeClr))
|
||||
XmlMacroLoadArray(oNodeClr, L"*", ClrMru, Logic::UniColor);
|
||||
|
||||
showPr = oNode.ReadNode(_T("p:showPr"));
|
||||
showPr = oNode.ReadNode(L"p:showPr");
|
||||
printPr = oNode.ReadNode(L"p:printPr");
|
||||
|
||||
if(showPr.is_init())
|
||||
showPr->SetParentFilePointer(this);
|
||||
|
||||
if (printPr.is_init())
|
||||
printPr->SetParentFilePointer(this);
|
||||
}
|
||||
void PresProps::write(const OOX::CPath& filename, const OOX::CPath& directory, OOX::CContentTypes& content)const
|
||||
{
|
||||
@ -77,25 +82,27 @@ namespace PPTX
|
||||
|
||||
pWriter->WriteRecordArray(0, 0, ClrMru);
|
||||
pWriter->WriteRecord2(1, showPr);
|
||||
pWriter->WriteRecord2(2, printPr);
|
||||
|
||||
pWriter->EndRecord();
|
||||
}
|
||||
void PresProps::toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
{
|
||||
pWriter->StartNode(_T("p:presentationPr"));
|
||||
pWriter->StartNode(L"p:presentationPr");
|
||||
|
||||
pWriter->StartAttributes();
|
||||
|
||||
pWriter->WriteAttribute(_T("xmlns:a"), PPTX::g_Namespaces.a.m_strLink);
|
||||
pWriter->WriteAttribute(_T("xmlns:r"), PPTX::g_Namespaces.r.m_strLink);
|
||||
pWriter->WriteAttribute(_T("xmlns:p"), PPTX::g_Namespaces.p.m_strLink);
|
||||
pWriter->WriteAttribute(L"xmlns:a", PPTX::g_Namespaces.a.m_strLink);
|
||||
pWriter->WriteAttribute(L"xmlns:r", PPTX::g_Namespaces.r.m_strLink);
|
||||
pWriter->WriteAttribute(L"xmlns:p", PPTX::g_Namespaces.p.m_strLink);
|
||||
|
||||
pWriter->EndAttributes();
|
||||
|
||||
pWriter->WriteArray(_T("p:clrMru"), ClrMru);
|
||||
pWriter->WriteArray(L"p:clrMru", ClrMru);
|
||||
pWriter->Write(showPr);
|
||||
pWriter->Write(printPr);
|
||||
|
||||
pWriter->EndNode(_T("p:presentationPr"));
|
||||
pWriter->EndNode(L"p:presentationPr");
|
||||
}
|
||||
void PresProps::fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader)
|
||||
{
|
||||
@ -130,15 +137,18 @@ namespace PPTX
|
||||
ClrMru.pop_back();
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}break;
|
||||
case 1:
|
||||
{
|
||||
showPr = new nsShowPr::ShowPr();
|
||||
showPr->fromPPTY(pReader);
|
||||
break;
|
||||
}
|
||||
showPr = new nsPresentationPr::ShowPr();
|
||||
showPr->fromPPTY(pReader);
|
||||
}break;
|
||||
case 2:
|
||||
{
|
||||
printPr = new nsPresentationPr::PrintPr();
|
||||
printPr->fromPPTY(pReader);
|
||||
}break;
|
||||
default:
|
||||
{
|
||||
pReader->SkipRecord();
|
||||
|
||||
@ -30,8 +30,6 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#ifndef PPTX_PRESPROPS_FILE_INCLUDE_H_
|
||||
#define PPTX_PRESPROPS_FILE_INCLUDE_H_
|
||||
|
||||
#include "WrapperFile.h"
|
||||
#include "FileContainer.h"
|
||||
@ -41,9 +39,10 @@
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
class ShowPr;
|
||||
class PrintPr;
|
||||
}
|
||||
|
||||
class PresProps : public WrapperFile, public PPTX::FileContainer
|
||||
@ -53,7 +52,6 @@ namespace PPTX
|
||||
PresProps(OOX::Document* pMain, const OOX::CPath& filename, FileMap& map);
|
||||
virtual ~PresProps();
|
||||
|
||||
public:
|
||||
virtual void read(const OOX::CPath& filename, FileMap& map);
|
||||
virtual void write(const OOX::CPath& filename, const OOX::CPath& directory, OOX::CContentTypes& content) const;
|
||||
|
||||
@ -61,16 +59,12 @@ namespace PPTX
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const;
|
||||
virtual void fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader);
|
||||
|
||||
public:
|
||||
virtual const OOX::FileType type() const;
|
||||
virtual const OOX::CPath DefaultDirectory() const;
|
||||
virtual const OOX::CPath DefaultFileName() const;
|
||||
|
||||
public:
|
||||
std::vector<Logic::UniColor> ClrMru;
|
||||
nullable<nsShowPr::ShowPr> showPr;
|
||||
//prnPr (Printing Properties)
|
||||
std::vector<Logic::UniColor> ClrMru;
|
||||
nullable<nsPresentationPr::ShowPr> showPr;
|
||||
nullable<nsPresentationPr::PrintPr> printPr;
|
||||
};
|
||||
} // namespace PPTX
|
||||
|
||||
#endif // PPTX_PRESPROPS_FILE_INCLUDE_H_
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
void Browse::fromXML(XmlUtils::CXmlNode& node)
|
||||
{
|
||||
@ -88,5 +88,5 @@ namespace PPTX
|
||||
void Browse::FillParentPointersForChilds()
|
||||
{
|
||||
}
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
@ -30,14 +30,12 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#ifndef PPTX_SHOWPR_BROWSE_INCLUDE_H_
|
||||
#define PPTX_SHOWPR_BROWSE_INCLUDE_H_
|
||||
|
||||
#include "./../WrapperWritingElement.h"
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
class Browse : public WrapperWritingElement
|
||||
{
|
||||
@ -52,13 +50,11 @@ namespace PPTX
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const;
|
||||
virtual void fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader);
|
||||
|
||||
public:
|
||||
nullable_bool showScrollbar;
|
||||
nullable_bool showScrollbar;
|
||||
|
||||
protected:
|
||||
virtual void FillParentPointersForChilds();
|
||||
};
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
#endif // PPTX_SHOWPR_BROWSE_INCLUDE_H_
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
void CustShow::fromXML(XmlUtils::CXmlNode& node)
|
||||
{
|
||||
@ -88,5 +88,5 @@ namespace PPTX
|
||||
void CustShow::FillParentPointersForChilds()
|
||||
{
|
||||
}
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
@ -30,21 +30,18 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#ifndef PPTX_SHOWPR_CUSTSHOW_INCLUDE_H_
|
||||
#define PPTX_SHOWPR_CUSTSHOW_INCLUDE_H_
|
||||
|
||||
#include "./../WrapperWritingElement.h"
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
class CustShow : public WrapperWritingElement
|
||||
{
|
||||
public:
|
||||
PPTX_LOGIC_BASE(CustShow)
|
||||
|
||||
public:
|
||||
virtual void fromXML(XmlUtils::CXmlNode& node);
|
||||
virtual std::wstring toXML() const;
|
||||
|
||||
@ -52,13 +49,10 @@ namespace PPTX
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const;
|
||||
virtual void fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader);
|
||||
|
||||
public:
|
||||
nullable_int id;
|
||||
nullable_int id;
|
||||
|
||||
protected:
|
||||
virtual void FillParentPointersForChilds();
|
||||
};
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
#endif // PPTX_SHOWPR_CUSTSHOW_INCLUDE_H_
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
void Kiosk::fromXML(XmlUtils::CXmlNode& node)
|
||||
{
|
||||
@ -88,5 +88,5 @@ namespace PPTX
|
||||
void Kiosk::FillParentPointersForChilds()
|
||||
{
|
||||
}
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
@ -30,21 +30,18 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#ifndef PPTX_SHOWPR_KIOSK_INCLUDE_H_
|
||||
#define PPTX_SHOWPR_KIOSK_INCLUDE_H_
|
||||
|
||||
#include "./../WrapperWritingElement.h"
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
class Kiosk : public WrapperWritingElement
|
||||
{
|
||||
public:
|
||||
PPTX_LOGIC_BASE(Kiosk)
|
||||
|
||||
public:
|
||||
virtual void fromXML(XmlUtils::CXmlNode& node);
|
||||
virtual std::wstring toXML() const;
|
||||
|
||||
@ -52,13 +49,10 @@ namespace PPTX
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const;
|
||||
virtual void fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader);
|
||||
|
||||
public:
|
||||
nullable_int restart;
|
||||
nullable_int restart;
|
||||
|
||||
protected:
|
||||
virtual void FillParentPointersForChilds();
|
||||
};
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
#endif // PPTX_SHOWPR_KIOSK_INCLUDE_H_
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
void Present::fromXML(XmlUtils::CXmlNode& node)
|
||||
{
|
||||
@ -53,5 +53,5 @@ namespace PPTX
|
||||
void Present::FillParentPointersForChilds()
|
||||
{
|
||||
}
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
@ -30,21 +30,18 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#ifndef PPTX_SHOWPR_PRESENT_INCLUDE_H_
|
||||
#define PPTX_SHOWPR_PRESENT_INCLUDE_H_
|
||||
|
||||
#include "./../WrapperWritingElement.h"
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
class Present : public WrapperWritingElement
|
||||
{
|
||||
public:
|
||||
PPTX_LOGIC_BASE(Present)
|
||||
|
||||
public:
|
||||
virtual void fromXML(XmlUtils::CXmlNode& node);
|
||||
virtual std::wstring toXML() const;
|
||||
|
||||
@ -54,7 +51,5 @@ namespace PPTX
|
||||
protected:
|
||||
virtual void FillParentPointersForChilds();
|
||||
};
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
#endif // PPTX_SHOWPR_PRESENT_INCLUDE_H_
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include "ShowPr.h"
|
||||
#include "PresentationPr.h"
|
||||
|
||||
#include "./Browse.h"
|
||||
#include "./CustShow.h"
|
||||
@ -41,31 +41,31 @@
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
void ShowPr::fromXML(XmlUtils::CXmlNode& node)
|
||||
{
|
||||
XmlMacroReadAttributeBase(node, _T("loop"), loop);
|
||||
XmlMacroReadAttributeBase(node, _T("showAnimation"), showAnimation);
|
||||
XmlMacroReadAttributeBase(node, _T("showNarration"), showNarration);
|
||||
XmlMacroReadAttributeBase(node, _T("useTimings"), useTimings);
|
||||
XmlMacroReadAttributeBase(node, L"loop", loop);
|
||||
XmlMacroReadAttributeBase(node, L"showAnimation", showAnimation);
|
||||
XmlMacroReadAttributeBase(node, L"showNarration", showNarration);
|
||||
XmlMacroReadAttributeBase(node, L"useTimings", useTimings);
|
||||
|
||||
Browse = node.ReadNodeNoNS(_T("browse"));
|
||||
CustShow = node.ReadNodeNoNS(_T("custShow"));
|
||||
Kiosk = node.ReadNodeNoNS(_T("kiosk"));
|
||||
XmlUtils::CXmlNode node1 = node.ReadNodeNoNS(_T("penClr"));
|
||||
Browse = node.ReadNodeNoNS(L"browse");
|
||||
CustShow = node.ReadNodeNoNS(L"custShow");
|
||||
Kiosk = node.ReadNodeNoNS(L"kiosk");
|
||||
XmlUtils::CXmlNode node1 = node.ReadNodeNoNS(L"penClr");
|
||||
PenClr.GetColorFrom(node1);
|
||||
Present = node.ReadNodeNoNS(_T("present"));
|
||||
SldAll = node.ReadNodeNoNS(_T("sldAll"));
|
||||
SldRg = node.ReadNodeNoNS(_T("sldRg"));
|
||||
Present = node.ReadNodeNoNS(L"present");
|
||||
SldAll = node.ReadNodeNoNS(L"sldAll");
|
||||
SldRg = node.ReadNodeNoNS(L"sldRg");
|
||||
}
|
||||
std::wstring ShowPr::toXML() const
|
||||
{
|
||||
XmlUtils::CAttribute oAttr;
|
||||
oAttr.Write(_T("loop"), loop);
|
||||
oAttr.Write(_T("showAnimation"), showAnimation);
|
||||
oAttr.Write(_T("showNarration"), showNarration);
|
||||
oAttr.Write(_T("useTimings"), useTimings);
|
||||
oAttr.Write(L"loop", loop);
|
||||
oAttr.Write(L"showAnimation", showAnimation);
|
||||
oAttr.Write(L"showNarration", showNarration);
|
||||
oAttr.Write(L"useTimings", useTimings);
|
||||
|
||||
XmlUtils::CNodeValue oValue;
|
||||
oValue.WriteNullable(Present);
|
||||
@ -76,7 +76,7 @@ namespace PPTX
|
||||
oValue.WriteNullable(CustShow);
|
||||
oValue.Write(PenClr);
|
||||
|
||||
return XmlUtils::CreateNode(_T("p:ShowPr"), oAttr, oValue);
|
||||
return XmlUtils::CreateNode(L"p:ShowPr", oAttr, oValue);
|
||||
}
|
||||
void ShowPr::toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const
|
||||
{
|
||||
@ -97,14 +97,14 @@ namespace PPTX
|
||||
}
|
||||
void ShowPr::toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
{
|
||||
pWriter->StartNode(_T("p:showPr"));
|
||||
pWriter->StartNode(L"p:showPr");
|
||||
|
||||
pWriter->StartAttributes();
|
||||
|
||||
pWriter->WriteAttribute(_T("loop"), loop);
|
||||
pWriter->WriteAttribute(_T("showAnimation"), showAnimation);
|
||||
pWriter->WriteAttribute(_T("showNarration"), showNarration);
|
||||
pWriter->WriteAttribute(_T("useTimings"), useTimings);
|
||||
pWriter->WriteAttribute(L"loop", loop);
|
||||
pWriter->WriteAttribute(L"showAnimation", showAnimation);
|
||||
pWriter->WriteAttribute(L"showNarration", showNarration);
|
||||
pWriter->WriteAttribute(L"useTimings", useTimings);
|
||||
|
||||
pWriter->EndAttributes();
|
||||
|
||||
@ -116,12 +116,12 @@ namespace PPTX
|
||||
pWriter->Write(CustShow);
|
||||
if(PenClr.is_init())
|
||||
{
|
||||
pWriter->WriteString(_T("<p:penClr>"));
|
||||
pWriter->WriteString(L"<p:penClr>");
|
||||
PenClr.toXmlWriter(pWriter);
|
||||
pWriter->WriteString(_T("</p:penClr>"));
|
||||
pWriter->WriteString(L"</p:penClr>");
|
||||
}
|
||||
|
||||
pWriter->EndNode(_T("p:showPr"));
|
||||
pWriter->EndNode(L"p:showPr");
|
||||
}
|
||||
void ShowPr::fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader)
|
||||
{
|
||||
@ -154,19 +154,19 @@ namespace PPTX
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
Browse = new nsShowPr::Browse();
|
||||
Browse = new nsPresentationPr::Browse();
|
||||
Browse->fromPPTY(pReader);
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
{
|
||||
CustShow = new nsShowPr::CustShow();
|
||||
CustShow = new nsPresentationPr::CustShow();
|
||||
CustShow->fromPPTY(pReader);
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
Kiosk = new nsShowPr::Kiosk();
|
||||
Kiosk = new nsPresentationPr::Kiosk();
|
||||
Kiosk->fromPPTY(pReader);
|
||||
break;
|
||||
}
|
||||
@ -177,19 +177,19 @@ namespace PPTX
|
||||
}
|
||||
case 4:
|
||||
{
|
||||
Present = new nsShowPr::Present();
|
||||
Present = new nsPresentationPr::Present();
|
||||
pReader->SkipRecord();
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
{
|
||||
SldAll = new nsShowPr::SldAll();
|
||||
SldAll = new nsPresentationPr::SldAll();
|
||||
pReader->SkipRecord();
|
||||
break;
|
||||
}
|
||||
case 6:
|
||||
{
|
||||
SldRg = new nsShowPr::SldRg();
|
||||
SldRg = new nsPresentationPr::SldRg();
|
||||
SldRg->fromPPTY(pReader);
|
||||
break;
|
||||
}
|
||||
@ -203,5 +203,94 @@ namespace PPTX
|
||||
void ShowPr::FillParentPointersForChilds()
|
||||
{
|
||||
}
|
||||
} // namespace nsShowPr
|
||||
//--------------------------------------------------------------------------------------------------------
|
||||
void PrintPr::fromXML(XmlUtils::CXmlNode& node)
|
||||
{
|
||||
XmlMacroReadAttributeBase(node, L"clrMode", clrMode);
|
||||
XmlMacroReadAttributeBase(node, L"prnWhat", prnWhat);
|
||||
XmlMacroReadAttributeBase(node, L"frameSlides", frameSlides);
|
||||
XmlMacroReadAttributeBase(node, L"hiddenSlides", hiddenSlides);
|
||||
XmlMacroReadAttributeBase(node, L"scaleToFitPaper", scaleToFitPaper);
|
||||
|
||||
XmlUtils::CXmlNode list = node.ReadNodeNoNS(L"extLst");
|
||||
if (list.IsValid())
|
||||
{
|
||||
std::vector<XmlUtils::CXmlNode> oNodes;
|
||||
if (list.GetNodes(L"*", oNodes))
|
||||
{
|
||||
size_t nCount = oNodes.size();
|
||||
for (size_t i = 0; i < nCount; ++i)
|
||||
{
|
||||
XmlUtils::CXmlNode& oNode = oNodes[i];
|
||||
|
||||
Logic::Ext element;
|
||||
element.fromXML(oNode);
|
||||
|
||||
ExtLst.push_back(element);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
std::wstring PrintPr::toXML() const
|
||||
{
|
||||
XmlUtils::CAttribute oAttr;
|
||||
oAttr.Write(L"frameSlides", frameSlides);
|
||||
oAttr.Write(L"hiddenSlides", hiddenSlides);
|
||||
oAttr.Write(L"scaleToFitPaper", scaleToFitPaper);
|
||||
oAttr.WriteLimitNullable(L"clrMode", clrMode);
|
||||
oAttr.WriteLimitNullable(L"prnWhat", prnWhat);
|
||||
|
||||
XmlUtils::CNodeValue oValue;
|
||||
|
||||
return XmlUtils::CreateNode(L"p:PrintPr", oAttr, oValue);
|
||||
}
|
||||
void PrintPr::toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const
|
||||
{
|
||||
pWriter->WriteBYTE(NSBinPptxRW::g_nodeAttributeStart);
|
||||
pWriter->WriteBool2(0, frameSlides);
|
||||
pWriter->WriteBool2(1, hiddenSlides);
|
||||
pWriter->WriteBool2(2, scaleToFitPaper);
|
||||
pWriter->WriteLimit2(3, clrMode);
|
||||
pWriter->WriteLimit2(4, prnWhat);
|
||||
pWriter->WriteBYTE(NSBinPptxRW::g_nodeAttributeEnd);
|
||||
}
|
||||
void PrintPr::toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
{
|
||||
pWriter->WriteString(toXML());
|
||||
}
|
||||
void PrintPr::fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader)
|
||||
{
|
||||
LONG _end_rec = pReader->GetPos() + pReader->GetLong() + 4;
|
||||
|
||||
pReader->Skip(1); // start attributes
|
||||
|
||||
while (true)
|
||||
{
|
||||
BYTE _at = pReader->GetUChar_TypeNode();
|
||||
if (_at == NSBinPptxRW::g_nodeAttributeEnd)
|
||||
break;
|
||||
|
||||
switch (_at)
|
||||
{
|
||||
case 0:
|
||||
frameSlides = pReader->GetBool(); break;
|
||||
case 1:
|
||||
hiddenSlides = pReader->GetBool(); break;
|
||||
case 2:
|
||||
scaleToFitPaper = pReader->GetBool(); break;
|
||||
case 3:
|
||||
clrMode = pReader->GetUChar(); break;
|
||||
case 4:
|
||||
prnWhat = pReader->GetUChar(); break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
pReader->Seek(_end_rec);
|
||||
}
|
||||
void PrintPr::FillParentPointersForChilds()
|
||||
{
|
||||
}
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
@ -30,15 +30,15 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#ifndef PPTX_SHOWPR_FILE_INCLUDE_H_
|
||||
#define PPTX_SHOWPR_FILE_INCLUDE_H_
|
||||
|
||||
#include "./../WrapperWritingElement.h"
|
||||
#include "../WrapperWritingElement.h"
|
||||
#include "../Logic/UniColor.h"
|
||||
#include "../Limit/BWMode.h"
|
||||
#include "../Logic/ExtP.h"
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
class Browse;
|
||||
class CustShow;
|
||||
@ -52,7 +52,6 @@ namespace PPTX
|
||||
public:
|
||||
PPTX_LOGIC_BASE(ShowPr)
|
||||
|
||||
public:
|
||||
virtual void fromXML(XmlUtils::CXmlNode& node);
|
||||
virtual std::wstring toXML() const;
|
||||
|
||||
@ -60,24 +59,46 @@ namespace PPTX
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const;
|
||||
virtual void fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader);
|
||||
|
||||
public:
|
||||
nullable<nsShowPr::Browse> Browse;
|
||||
nullable<nsShowPr::CustShow> CustShow;
|
||||
nullable<nsShowPr::Kiosk> Kiosk;
|
||||
nullable<nsPresentationPr::Browse> Browse;
|
||||
nullable<nsPresentationPr::CustShow> CustShow;
|
||||
nullable<nsPresentationPr::Kiosk> Kiosk;
|
||||
Logic::UniColor PenClr;
|
||||
nullable<nsShowPr::Present> Present;
|
||||
nullable<nsShowPr::SldAll> SldAll;
|
||||
nullable<nsShowPr::SldRg> SldRg;
|
||||
nullable<nsPresentationPr::Present> Present;
|
||||
nullable<nsPresentationPr::SldAll> SldAll;
|
||||
nullable<nsPresentationPr::SldRg> SldRg;
|
||||
|
||||
nullable_bool loop;
|
||||
nullable_bool showAnimation;
|
||||
nullable_bool showNarration;
|
||||
nullable_bool useTimings;
|
||||
nullable_bool loop;
|
||||
nullable_bool showAnimation;
|
||||
nullable_bool showNarration;
|
||||
nullable_bool useTimings;
|
||||
|
||||
protected:
|
||||
virtual void FillParentPointersForChilds();
|
||||
};
|
||||
} // namespace nsShowPr
|
||||
|
||||
class PrintPr : public WrapperWritingElement
|
||||
{
|
||||
public:
|
||||
PPTX_LOGIC_BASE(PrintPr)
|
||||
|
||||
virtual void fromXML(XmlUtils::CXmlNode& node);
|
||||
virtual std::wstring toXML() const;
|
||||
|
||||
virtual void toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const;
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const;
|
||||
virtual void fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader);
|
||||
|
||||
nullable_limit<Limit::PrintClrMode> clrMode;
|
||||
nullable_limit<Limit::PrintWhat> prnWhat;
|
||||
|
||||
nullable_bool frameSlides;
|
||||
nullable_bool hiddenSlides;
|
||||
nullable_bool scaleToFitPaper;
|
||||
|
||||
std::vector<Logic::Ext> ExtLst;
|
||||
protected:
|
||||
virtual void FillParentPointersForChilds();
|
||||
};
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
#endif // PPTX_SHOWPR_FILE_INCLUDE_H_
|
||||
@ -34,7 +34,7 @@
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
void SldAll::fromXML(XmlUtils::CXmlNode& node)
|
||||
{
|
||||
@ -53,5 +53,5 @@ namespace PPTX
|
||||
void SldAll::FillParentPointersForChilds()
|
||||
{
|
||||
}
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
@ -30,21 +30,18 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#ifndef PPTX_SHOWPR_SLDALL_INCLUDE_H_
|
||||
#define PPTX_SHOWPR_SLDALL_INCLUDE_H_
|
||||
|
||||
#include "./../WrapperWritingElement.h"
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
class SldAll : public WrapperWritingElement
|
||||
{
|
||||
public:
|
||||
PPTX_LOGIC_BASE(SldAll)
|
||||
|
||||
public:
|
||||
virtual void fromXML(XmlUtils::CXmlNode& node);
|
||||
virtual std::wstring toXML() const;
|
||||
|
||||
@ -54,7 +51,5 @@ namespace PPTX
|
||||
protected:
|
||||
virtual void FillParentPointersForChilds();
|
||||
};
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
#endif // PPTX_SHOWPR_SLDALL_INCLUDE_H_
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
void SldRg::fromXML(XmlUtils::CXmlNode& node)
|
||||
{
|
||||
@ -94,5 +94,5 @@ namespace PPTX
|
||||
void SldRg::FillParentPointersForChilds()
|
||||
{
|
||||
}
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
@ -30,21 +30,18 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#ifndef PPTX_SHOWPR_SLDRG_INCLUDE_H_
|
||||
#define PPTX_SHOWPR_SLDRG_INCLUDE_H_
|
||||
|
||||
#include "./../WrapperWritingElement.h"
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
namespace nsShowPr
|
||||
namespace nsPresentationPr
|
||||
{
|
||||
class SldRg : public WrapperWritingElement
|
||||
{
|
||||
public:
|
||||
PPTX_LOGIC_BASE(SldRg)
|
||||
|
||||
public:
|
||||
virtual void fromXML(XmlUtils::CXmlNode& node);
|
||||
virtual std::wstring toXML() const;
|
||||
|
||||
@ -52,14 +49,11 @@ namespace PPTX
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const;
|
||||
virtual void fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader);
|
||||
|
||||
public:
|
||||
nullable_int st;
|
||||
nullable_int end;
|
||||
nullable_int st;
|
||||
nullable_int end;
|
||||
|
||||
protected:
|
||||
virtual void FillParentPointersForChilds();
|
||||
};
|
||||
} // namespace nsShowPr
|
||||
} // namespace nsPresentationPr
|
||||
} // namespace PPTX
|
||||
|
||||
#endif // PPTX_SHOWPR_SLDRG_INCLUDE_H_
|
||||
|
||||
@ -107,7 +107,7 @@ SOURCES += \
|
||||
../../../PPTXFormat/Theme/FontScheme.cpp \
|
||||
../../../PPTXFormat/Theme/ThemeElements.cpp \
|
||||
\
|
||||
../../../PPTXFormat/ShowPr/ShowPr.cpp \
|
||||
../../../PPTXFormat/ShowPr/PresentationPr.cpp \
|
||||
../../../PPTXFormat/ShowPr/Present.cpp \
|
||||
../../../PPTXFormat/ShowPr/Kiosk.cpp \
|
||||
../../../PPTXFormat/ShowPr/CustShow.cpp \
|
||||
@ -202,6 +202,6 @@ HEADERS += \
|
||||
../../../PPTXFormat/ShowPr/CustShow.h \
|
||||
../../../PPTXFormat/ShowPr/Kiosk.h \
|
||||
../../../PPTXFormat/ShowPr/Present.h \
|
||||
../../../PPTXFormat/ShowPr/ShowPr.h \
|
||||
../../../PPTXFormat/ShowPr/PresentationPr.h \
|
||||
../../../PPTXFormat/ShowPr/SldAll.h \
|
||||
../../../PPTXFormat/ShowPr/SldRg.h
|
||||
|
||||
@ -635,7 +635,7 @@
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\CustShow.h" />
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\Kiosk.h" />
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\Present.h" />
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\ShowPr.h" />
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\PresentationPr.h" />
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\SldAll.h" />
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\SldRg.h" />
|
||||
<ClInclude Include="..\..\..\PPTXFormat\Slide.h" />
|
||||
@ -1266,7 +1266,7 @@
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\CustShow.cpp" />
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\Kiosk.cpp" />
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\Present.cpp" />
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\ShowPr.cpp" />
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\PresentationPr.cpp" />
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\SldAll.cpp" />
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\SldRg.cpp" />
|
||||
<ClCompile Include="..\..\..\PPTXFormat\Slide.cpp" />
|
||||
|
||||
@ -708,25 +708,25 @@
|
||||
<Filter>Presentation</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\Browse.h">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\CustShow.h">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\Kiosk.h">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\Present.h">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\ShowPr.h">
|
||||
<Filter>ShowPr</Filter>
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\PresentationPr.h">
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\SldAll.h">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\PPTXFormat\ShowPr\SldRg.h">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\PPTXFormat\Theme\ClrScheme.h">
|
||||
<Filter>Theme</Filter>
|
||||
@ -2471,25 +2471,25 @@
|
||||
<Filter>Presentation</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\Browse.cpp">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\CustShow.cpp">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\Kiosk.cpp">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\Present.cpp">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\ShowPr.cpp">
|
||||
<Filter>ShowPr</Filter>
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\PresentationPr.cpp">
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\SldAll.cpp">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\PPTXFormat\ShowPr\SldRg.cpp">
|
||||
<Filter>ShowPr</Filter>
|
||||
<Filter>PresentationPr</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\PPTXFormat\Theme\ClrScheme.cpp">
|
||||
<Filter>Theme</Filter>
|
||||
@ -3769,9 +3769,6 @@
|
||||
<Filter Include="Presentation">
|
||||
<UniqueIdentifier>{1bccfc22-686e-4d82-8fd1-353cbc5479f2}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="ShowPr">
|
||||
<UniqueIdentifier>{47677fd9-1e35-4520-bcb1-bf87d1fec730}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Theme">
|
||||
<UniqueIdentifier>{200ee36f-100d-4ba7-b62c-2dccbb924a09}</UniqueIdentifier>
|
||||
</Filter>
|
||||
@ -3802,5 +3799,8 @@
|
||||
<Filter Include="Common\Xml">
|
||||
<UniqueIdentifier>{1461f41f-a436-4c57-bb70-199577dca246}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="PresentationPr">
|
||||
<UniqueIdentifier>{47677fd9-1e35-4520-bcb1-bf87d1fec730}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
Reference in New Issue
Block a user