Skip to content

Commit

Permalink
fix
Browse files Browse the repository at this point in the history
  • Loading branch information
ElenaSubbotina committed Nov 29, 2022
1 parent 958bada commit 7dc713d
Show file tree
Hide file tree
Showing 75 changed files with 2,891 additions and 213 deletions.
6 changes: 3 additions & 3 deletions MsBinaryFile/PptFile/Drawing/Layout.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,10 @@

namespace PPT_FORMAT
{
static void CorrectPlaceholderType(int & type);

static bool isTitlePlaceholder(int type);
static bool isBodyPlaceholder(int type);
void CorrectPlaceholderType(int & type);
bool isTitlePlaceholder(int type);
bool isBodyPlaceholder(int type);

class CLayout
{
Expand Down
8 changes: 0 additions & 8 deletions MsBinaryFile/PptFile/Enums/enums.h
Original file line number Diff line number Diff line change
Expand Up @@ -61,14 +61,6 @@ enum AnimBuildTypeEnum : BYTE
};


enum BuildTypeEnum
{
TL_BuildParagraph,
TL_BuildChart,
TL_BuildDiagram
};


enum ChartBuildEnum
{
TLCB_AsOneObject,
Expand Down
31 changes: 31 additions & 0 deletions MsBinaryFile/PptFile/PPTXWriter/BulletsConverter.cpp
Original file line number Diff line number Diff line change
@@ -1,3 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "BulletsConverter.h"
#include "StylesWriter.h"

Expand Down
32 changes: 32 additions & 0 deletions MsBinaryFile/PptFile/PPTXWriter/ImageManager.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,36 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "ImageManager.h"
#include <boost/algorithm/string.hpp>


PPT_FORMAT::CMediaManager::CMediaManager() : m_lIndexNextImage(0), m_lIndexNextAudio(0), m_lIndexNextVideo(0)
Expand Down
4 changes: 2 additions & 2 deletions MsBinaryFile/PptFile/PPTXWriter/ImageManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@
#ifndef DISABLE_FILE_DOWNLOADER
#include "../../../Common/Network/FileTransporter/include/FileTransporter.h"
#endif
#include <boost/algorithm/string.hpp>
#include "../Drawing/Attributes.h"
#include "../../../DesktopEditor/common/File.h"
namespace PPT_FORMAT
Expand Down Expand Up @@ -65,7 +64,8 @@ namespace PPT_FORMAT
bool IsNeedDownload(const std::wstring& strFile);
};

static std::wstring CorrectXmlString3(const std::wstring & str);
std::wstring CorrectXmlString3(const std::wstring & str);

class CRelsGenerator
{
private:
Expand Down
32 changes: 31 additions & 1 deletion MsBinaryFile/PptFile/PPTXWriter/StylesWriter.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,36 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "StylesWriter.h"


void CStylesWriter::ConvertStyles(PPT_FORMAT::CTextStyles &oStyles, PPT_FORMAT::CStringWriter &oWriter, int nCount)
{
for (int i = 0; i < nCount; ++i)
Expand Down
2 changes: 2 additions & 0 deletions MsBinaryFile/PptFile/PPTXWriter/StylesWriter.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@
*/
#pragma once

#include "../Drawing/TextStructures.h"

namespace PPT_FORMAT
{
class CTheme;
Expand Down
2 changes: 2 additions & 0 deletions MsBinaryFile/PptFile/Reader/ClassesAtom.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,8 @@ class CUserEdit
void FromAtom(CRecordUserEditAtom* pAtom);
};

class CRecordCurrentUserAtom;

class CCurrentUser
{
public:
Expand Down
5 changes: 2 additions & 3 deletions MsBinaryFile/PptFile/Reader/ReadStructures.h
Original file line number Diff line number Diff line change
Expand Up @@ -203,9 +203,8 @@ class CMetaFileBuffer

namespace NSStreamReader
{
static void Read(POLE::Stream* pStream, SPointAtom& oAtom);

static void Read(POLE::Stream* pStream, SColorAtom& oAtom);
void Read(POLE::Stream* pStream, SPointAtom& oAtom);
void Read(POLE::Stream* pStream, SColorAtom& oAtom);

void Read(POLE::Stream* pStream, PPT_FORMAT::CTextSIRun& oRun, bool bIsIndentation = true);
void Read(POLE::Stream* pStream, PPT_FORMAT::CTextRuler& oRun);
Expand Down
98 changes: 49 additions & 49 deletions MsBinaryFile/PptFile/Reader/Records.h
Original file line number Diff line number Diff line change
Expand Up @@ -149,55 +149,55 @@ class CRecordsContainer : public CUnknownRecord
контейнеры... (по идее они не нужны, потом можно убрать)
**************************************************************/

/*
class CRecordDocument : public CRecordsContainer {};
class CRecordExAviMovie : public CRecordsContainer {};
class CRecordExCDAudio : public CRecordsContainer {};
class CRecordExControl : public CRecordsContainer {};
class CRecordExEmbed : public CRecordsContainer {};
class CRecordExHyperlink : public CRecordsContainer {};
class CRecordExHyperlink9 : public CRecordsContainer {};
class CRecordExLink : public CRecordsContainer {};
class CRecordExMCIMovie : public CRecordsContainer {};
class CRecordExMIDIAudio : public CRecordsContainer {};
class CRecordExObjList : public CRecordsContainer {};
class CRecordExOleObjStg : public CRecordsContainer {};
class CRecordExQuickTimeMovie : public CRecordsContainer {};
class CRecordExVideo : public CRecordsContainer {};
class CRecordExWAVAudioEmbedded : public CRecordsContainer {};
class CRecordExWAVAudioLink : public CRecordsContainer {};
class CRecordFontCollection10 : public CRecordsContainer {};
class CRecordHandout : public CRecordsContainer {};
class CRecordHeadersFooters : public CRecordsContainer {};
class CRecordHTMLPublishInfo : public CRecordsContainer {};
class CRecordInteractiveInfo : public CRecordsContainer {};
class CRecordList : public CRecordsContainer {};
class CRecordMainMaster : public CRecordsContainer {};
class CRecordMsofbtClientData : public CRecordsContainer {};
class CRecordNamedShow : public CRecordsContainer {};
class CRecordNamedShows : public CRecordsContainer {};
class CRecordNotes : public CRecordsContainer {};
class CRecordNotesTextViewInfo : public CRecordsContainer {};
class CRecordOutlineTextProps9 : public CRecordsContainer {};
class CRecordOutlineTextProps10 : public CRecordsContainer {};
class CRecordOutlineTextProps11 : public CRecordsContainer {};
class CRecordOutlineViewInfo : public CRecordsContainer {};
class CRecordParaBuild : public CRecordsContainer {};
class CRecordProgBinaryTag : public CRecordsContainer {};
class CRecordProgStringTag : public CRecordsContainer {};
class CRecordProgTags : public CRecordsContainer {};
class CRecordSlide : public CRecordsContainer {};
class CRecordSlideListTable10 : public CRecordsContainer {};
class CRecordSlideListWithText : public CRecordsContainer {};
class CRecordSlideSyncInfo12 : public CRecordsContainer {};
class CRecordSlideViewInfo : public CRecordsContainer {};
class CRecordSorterViewInfo : public CRecordsContainer {};
class CRecordSound : public CRecordsContainer {};
class CRecordSoundCollection : public CRecordsContainer {};
class CRecordSrKinsoku : public CRecordsContainer {};
class CRecordSummary : public CRecordsContainer {};
class CRecordVBAInfo : public CRecordsContainer {};
*/

//class CRecordDocument : public CRecordsContainer {};
//class CRecordExAviMovie : public CRecordsContainer {};
//class CRecordExCDAudio : public CRecordsContainer {};
//class CRecordExControl : public CRecordsContainer {};
//class CRecordExEmbed : public CRecordsContainer {};
//class CRecordExHyperlink : public CRecordsContainer {};
//class CRecordExHyperlink9 : public CRecordsContainer {};
//class CRecordExLink : public CRecordsContainer {};
//class CRecordExMCIMovie : public CRecordsContainer {};
//class CRecordExMIDIAudio : public CRecordsContainer {};
//class CRecordExObjList : public CRecordsContainer {};
//class CRecordExOleObjStg : public CRecordsContainer {};
//class CRecordExQuickTimeMovie : public CRecordsContainer {};
//class CRecordExVideo : public CRecordsContainer {};
//class CRecordExWAVAudioEmbedded : public CRecordsContainer {};
//class CRecordExWAVAudioLink : public CRecordsContainer {};
//class CRecordFontCollection10 : public CRecordsContainer {};
//class CRecordHandout : public CRecordsContainer {};
//class CRecordHeadersFooters : public CRecordsContainer {};
//class CRecordHTMLPublishInfo : public CRecordsContainer {};
//class CRecordInteractiveInfo : public CRecordsContainer {};
//class CRecordList : public CRecordsContainer {};
//class CRecordMainMaster : public CRecordsContainer {};
//class CRecordMsofbtClientData : public CRecordsContainer {};
//class CRecordNamedShow : public CRecordsContainer {};
//class CRecordNamedShows : public CRecordsContainer {};
//class CRecordNotes : public CRecordsContainer {};
//class CRecordNotesTextViewInfo : public CRecordsContainer {};
//class CRecordOutlineTextProps9 : public CRecordsContainer {};
//class CRecordOutlineTextProps10 : public CRecordsContainer {};
//class CRecordOutlineTextProps11 : public CRecordsContainer {};
//class CRecordOutlineViewInfo : public CRecordsContainer {};
//class CRecordParaBuild : public CRecordsContainer {};
//class CRecordProgBinaryTag : public CRecordsContainer {};
//class CRecordProgStringTag : public CRecordsContainer {};
//class CRecordProgTags : public CRecordsContainer {};
//class CRecordSlide : public CRecordsContainer {};
//class CRecordSlideListTable10 : public CRecordsContainer {};
//class CRecordSlideListWithText : public CRecordsContainer {};
//class CRecordSlideSyncInfo12 : public CRecordsContainer {};
//class CRecordSlideViewInfo : public CRecordsContainer {};
//class CRecordSorterViewInfo : public CRecordsContainer {};
//class CRecordSound : public CRecordsContainer {};
//class CRecordSoundCollection : public CRecordsContainer {};
//class CRecordSrKinsoku : public CRecordsContainer {};
//class CRecordSummary : public CRecordsContainer {};
//class CRecordVBAInfo : public CRecordsContainer {};


/********************************************************************************
создаем по типу (остальные будем добавлять по мере необходимости)
Expand Down
31 changes: 31 additions & 0 deletions MsBinaryFile/PptFile/Records/BlipCollection9Container.cpp
Original file line number Diff line number Diff line change
@@ -1,3 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "BlipCollection9Container.h"


Expand Down
31 changes: 31 additions & 0 deletions MsBinaryFile/PptFile/Records/BookmarkSeedAtom.cpp
Original file line number Diff line number Diff line change
@@ -1,3 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "BookmarkSeedAtom.h"


Expand Down
31 changes: 31 additions & 0 deletions MsBinaryFile/PptFile/Records/BuildAtom.cpp
Original file line number Diff line number Diff line change
@@ -1,3 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "BuildAtom.h"

void CRecordBuildAtom::ReadFromStream(SRecordHeader & oHeader, POLE::Stream* pStream)
Expand Down
Loading

0 comments on commit 7dc713d

Please sign in to comment.