init repo

This commit is contained in:
nikolay ivanov
2014-07-05 18:22:49 +00:00
commit a8be6b9e72
17348 changed files with 9229832 additions and 0 deletions

View File

@@ -0,0 +1,136 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Align.h"
namespace OOX
{
namespace Logic
{
Align::Align()
{
}
Align::Align(const Common::Align& align)
{
fromBase(align);
}
Align::Align(const std::string& value)
{
fromString(value);
}
Align::Align(const std::wstring& value)
{
fromString(value);
}
const Align& Align::operator= (const Common::Align& align)
{
fromBase(align);
return *this;
}
const Align& Align::operator= (const std::string& value)
{
fromString(value);
return *this;
}
const std::string Align::ToString() const
{
switch (type())
{
case left:
return "left";
case center:
return "center";
case right:
return "right";
case both:
return "both";
default:
return "left";
}
return "left";
}
const std::wstring Align::ToStringW() const
{
switch (type())
{
case left:
return L"left";
case center:
return L"center";
case right:
return L"right";
case both:
return L"both";
default:
return L"left";
}
return L"left";
}
void Align::fromString(const std::wstring& value)
{
if (value == L"center")
setCenter();
else if (value == L"right")
setRight();
else if (value == L"both")
setBoth();
else
setLeft();
}
void Align::fromString(const std::string& value)
{
if (value == "center")
setCenter();
else if (value == "right")
setRight();
else if (value == "both")
setBoth();
else
setLeft();
}
}
} // namespace OOX

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_ALIGN_INCLUDE_H_
#define OOX_LOGIC_ALIGN_INCLUDE_H_
#include <string>
#include "Common.h"
namespace OOX
{
namespace Logic
{
class Align : public Common::Align
{
public:
Align();
Align(const Common::Align& align);
Align(const std::string& value);
Align(const std::wstring& value);
const Align& operator= (const Common::Align& align);
const Align& operator= (const std::string& value);
const Align& operator= (const std::wstring& value);
public:
const std::string ToString() const;
const std::wstring ToStringW() const;
void fromString(const std::string& value);
void fromString(const std::wstring& value);
};
}
}
#endif // OOX_LOGIC_ALIGN_INCLUDE_H_

View File

@@ -0,0 +1,82 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Background.h"
namespace OOX
{
namespace Logic
{
Background::Background()
{
}
Background::~Background()
{
}
Background::Background(const XML::XNode& node)
{
fromXML(node);
}
const Background& Background::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Background::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Color = element.attribute("color").value();
ThemeColor = element.attribute("themeColor").value();
ThemeShade = element.attribute("themeShade").value();
}
const XML::XNode Background::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,66 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_BACKGROUND_INCLUDE_H_
#define OOX_LOGIC_BACKGROUND_INCLUDE_H_
#include "./../WritingElement.h"
#include <string>
#include "property.h"
#include "Color.h"
namespace OOX
{
namespace Logic
{
class Background : public WritingElement
{
public:
Background();
virtual ~Background();
explicit Background(const XML::XNode& node);
const Background& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<Color> Color;
nullable_property<std::string> ThemeColor;
nullable_property<std::string> ThemeShade;
};
}
}
#endif // OOX_LOGIC_BACKGROUND_INCLUDE_H_

View File

@@ -0,0 +1,91 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "BackgroundColor.h"
#include "ColorsTable.h"
namespace OOX
{
namespace Logic
{
static const ColorsTable s_colors;
BackgroundColor::BackgroundColor()
{
}
BackgroundColor::BackgroundColor(const Common::Color& color)
{
fromBase(color);
}
BackgroundColor::BackgroundColor(const std::string& value)
{
fromString(value);
}
const BackgroundColor& BackgroundColor::operator= (const Common::Color& color)
{
fromBase(color);
return *this;
}
const BackgroundColor& BackgroundColor::operator= (const std::string& value)
{
fromString(value);
return *this;
}
const std::string BackgroundColor::ToString() const
{
return s_colors.fromColor(*this);
}
void BackgroundColor::fromString(const std::string& value)
{
*this = s_colors.fromName(value);
}
}
} // namespace OOX

View File

@@ -0,0 +1,61 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_BACKGROUND_COLOR_INCLUDE_H_
#define OOX_LOGIC_BACKGROUND_COLOR_INCLUDE_H_
#include "Common.h"
#include <string>
namespace OOX
{
namespace Logic
{
class BackgroundColor : public Common::Color
{
public:
BackgroundColor();
BackgroundColor(const Common::Color& color);
BackgroundColor(const std::string& value);
const BackgroundColor& operator= (const Common::Color& color);
const BackgroundColor& operator= (const std::string& value);
public:
const std::string ToString() const;
void fromString(const std::string& value);
};
}
}
#endif // OOX_LOGIC_BACKGROUND_COLOR_INCLUDE_H_

View File

@@ -0,0 +1,85 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "BookmarkEnd.h"
namespace OOX
{
namespace Logic
{
BookmarkEnd::BookmarkEnd()
{
}
BookmarkEnd::~BookmarkEnd()
{
}
BookmarkEnd::BookmarkEnd(const XML::XNode& node)
{
fromXML(node);
}
const BookmarkEnd& BookmarkEnd::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void BookmarkEnd::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Id = element.attribute("id").value();
}
const XML::XNode BookmarkEnd::toXML() const
{
return XML::XElement();
}
const std::string BookmarkEnd::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_BOOKMARK_END_INCLUDE_H_
#define OOX_LOGIC_BOOKMARK_END_INCLUDE_H_
#include "ParagraphItemBase.h"
#include "property.h"
namespace OOX
{
namespace Logic
{
class BookmarkEnd : public ParagraphItemBase
{
public:
BookmarkEnd();
virtual ~BookmarkEnd();
explicit BookmarkEnd(const XML::XNode& node);
const BookmarkEnd& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
virtual const std::string toTxt() const;
public:
property<std::string> Id;
};
}
}
#endif // OOX_LOGIC_BOOKMARK_END_INCLUDE_H_

View File

@@ -0,0 +1,97 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "BookmarkEndParagraph.h"
namespace OOX
{
namespace Logic
{
BookmarkEndParagraph::BookmarkEndParagraph()
{
}
BookmarkEndParagraph::~BookmarkEndParagraph()
{
}
BookmarkEndParagraph::BookmarkEndParagraph(const XML::XNode& node)
{
fromXML(node);
}
const BookmarkEndParagraph& BookmarkEndParagraph::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
BookmarkEndParagraph::BookmarkEndParagraph(XmlUtils::CXmlNode& node)
{
fromXML(node);
}
const BookmarkEndParagraph& BookmarkEndParagraph::operator =(XmlUtils::CXmlNode& node)
{
fromXML(node);
return *this;
}
void BookmarkEndParagraph::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
m_Id = element.attribute("id").value().ToWString();
}
void BookmarkEndParagraph::fromXML(XmlUtils::CXmlNode& node)
{
m_Id = std::wstring(static_cast<const wchar_t*>(node.GetAttributeBase( _T("w:id"))));
}
const XML::XNode BookmarkEndParagraph::toXML() const
{
return XML::XElement();
}
const std::string BookmarkEndParagraph::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,67 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_BOOKMARK_END_PARAGRAPH_INCLUDE_H_
#define OOX_LOGIC_BOOKMARK_END_PARAGRAPH_INCLUDE_H_
#include "TextItemBase.h"
namespace OOX
{
namespace Logic
{
class BookmarkEndParagraph : public TextItemBase
{
public:
BookmarkEndParagraph();
virtual ~BookmarkEndParagraph();
BookmarkEndParagraph(const XML::XNode& node);
const BookmarkEndParagraph& operator =(const XML::XNode& node);
BookmarkEndParagraph(XmlUtils::CXmlNode& node);
const BookmarkEndParagraph& operator =(XmlUtils::CXmlNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual void fromXML(XmlUtils::CXmlNode& node);
public:
virtual const std::string toTxt() const;
public:
std::wstring m_Id;
};
}
}
#endif // OOX_LOGIC_BOOKMARK_END_PARAGRAPH_INCLUDE_H_

View File

@@ -0,0 +1,107 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "BookmarkStart.h"
namespace OOX
{
namespace Logic
{
BookmarkStart::BookmarkStart()
{
}
BookmarkStart::~BookmarkStart()
{
}
BookmarkStart::BookmarkStart(const std::string& text)
{
fromTxt(text);
}
BookmarkStart::BookmarkStart(const XML::XNode& node)
{
fromXML(node);
}
const BookmarkStart& BookmarkStart::operator =(const std::string& text)
{
fromTxt(text);
return *this;
}
const BookmarkStart& BookmarkStart::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void BookmarkStart::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Id = element.attribute("id").value();
Name = element.attribute("name").value();
}
const XML::XNode BookmarkStart::toXML() const
{
return XML::XElement();
}
void BookmarkStart::fromTxt(const std::string& text)
{
Name = text;
}
const std::string BookmarkStart::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,70 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_BOOKMARK_START_INCLUDE_H_
#define OOX_LOGIC_BOOKMARK_START_INCLUDE_H_
#include "ParagraphItemBase.h"
#include "property.h"
#include <string>
namespace OOX
{
namespace Logic
{
class BookmarkStart : public ParagraphItemBase
{
public:
BookmarkStart();
virtual ~BookmarkStart();
explicit BookmarkStart(const std::string& text);
explicit BookmarkStart(const XML::XNode& node);
const BookmarkStart& operator =(const std::string& text);
const BookmarkStart& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
virtual void fromTxt(const std::string& text);
virtual const std::string toTxt() const;
public:
property<std::string> Id;
property<std::string> Name;
};
}
}
#endif // OOX_LOGIC_BOOKMARK_START_INCLUDE_H_

View File

@@ -0,0 +1,102 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "BookmarkStartParagraph.h"
namespace OOX
{
namespace Logic
{
BookmarkStartParagraph::BookmarkStartParagraph()
{
m_Id = std::wstring(L"");
m_Name = std::wstring(L"");
}
BookmarkStartParagraph::~BookmarkStartParagraph()
{
}
BookmarkStartParagraph::BookmarkStartParagraph(const XML::XNode& node)
{
fromXML(node);
}
const BookmarkStartParagraph& BookmarkStartParagraph::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
BookmarkStartParagraph::BookmarkStartParagraph(XmlUtils::CXmlNode& node)
{
fromXML(node);
}
const BookmarkStartParagraph& BookmarkStartParagraph::operator =(XmlUtils::CXmlNode& node)
{
fromXML(node);
return *this;
}
void BookmarkStartParagraph::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
m_Id = element.attribute("id").value().ToWString();
m_Name = element.attribute("name").value().ToWString();
}
void BookmarkStartParagraph::fromXML(XmlUtils::CXmlNode& node)
{
m_Id = std::wstring(static_cast<const wchar_t*>(node.GetAttributeBase( _T("w:id"))));
m_Name = std::wstring(static_cast<const wchar_t*>(node.GetAttributeBase( _T("w:id"))));
}
const XML::XNode BookmarkStartParagraph::toXML() const
{
return XML::XElement();
}
const std::string BookmarkStartParagraph::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,70 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_BOOKMARK_START_PARAGRAPH_INCLUDE_H_
#define OOX_LOGIC_BOOKMARK_START_PARAGRAPH_INCLUDE_H_
#include <string>
#include "TextItemBase.h"
#include "property.h"
namespace OOX
{
namespace Logic
{
class BookmarkStartParagraph : public TextItemBase
{
public:
BookmarkStartParagraph();
virtual ~BookmarkStartParagraph();
BookmarkStartParagraph(const XML::XNode& node);
const BookmarkStartParagraph& operator =(const XML::XNode& node);
BookmarkStartParagraph(XmlUtils::CXmlNode& node);
const BookmarkStartParagraph& operator =(XmlUtils::CXmlNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual void fromXML(XmlUtils::CXmlNode& node);
public:
virtual const std::string toTxt() const;
public:
std::wstring m_Id;
std::wstring m_Name;
};
}
}
#endif // OOX_LOGIC_BOOKMARK_START_PARAGRAPH_INCLUDE_H_

View File

@@ -0,0 +1,95 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Border.h"
namespace OOX
{
namespace Logic
{
Border::Border()
{
}
Border::~Border()
{
}
Border::Border(const XML::XNode& node)
{
fromXML(node);
}
Border::Border(const std::string& name, const BorderItem& border)
: Name(name),
Bdr(border)
{
}
const Border& Border::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Border::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Name = element.XName->Name;
Bdr->Value = element.attribute("val").value();
if (element.attribute("sz").value().ToString() == "auto")
Bdr->Sz = 0;
else
Bdr->Sz = element.attribute("sz").value();
Bdr->Space = element.attribute("space").value();
Bdr->Color = element.attribute("color").value();
Bdr->ThemeColor = element.attribute("themeColor").value();
}
const XML::XNode Border::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,66 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_TABLE_BORDER_INCLUDE_H_
#define OOX_LOGIC_TABLE_BORDER_INCLUDE_H_
#include "property.h"
#include "./../WritingElement.h"
#include "BorderItem.h"
#include "./../Limit/BorderName.h"
namespace OOX
{
namespace Logic
{
class Border : public WritingElement
{
public:
Border();
virtual ~Border();
explicit Border(const XML::XNode& node);
Border(const std::string& name, const BorderItem& border);
const Border& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::string, Limit::BorderName> Name;
property<BorderItem> Bdr;
};
}
}
#endif // OOX_LOGIC_TABLE_BORDER_INCLUDE_H_

View File

@@ -0,0 +1,53 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "BorderItem.h"
namespace OOX
{
namespace Logic
{
BorderItem::BorderItem()
{
}
BorderItem::~BorderItem()
{
}
}
} // namespace OOX

View File

@@ -0,0 +1,63 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_BORDER_ITEM_INCLUDE_H_
#define OOX_LOGIC_BORDER_ITEM_INCLUDE_H_
#include <string>
#include "Color.h"
#include "./../Limit/BorderValue.h"
#include "./../Unit.h"
#include "property.h"
#include "nullable_property.h"
namespace OOX
{
namespace Logic
{
class BorderItem
{
public:
BorderItem();
~BorderItem();
public:
property<std::string, Limit::BorderValue> Value;
nullable_property<UnitDx> Sz;
nullable_property<int> Space;
nullable_property<Logic::Color> Color;
nullable_property<std::string> ThemeColor;
};
}
}
#endif // OOX_LOGIC_BORDER_ITEM_INCLUDE_H_

View File

@@ -0,0 +1,84 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Bottom.h"
namespace OOX
{
namespace Logic
{
Bottom::Bottom()
{
}
Bottom::~Bottom()
{
}
Bottom::Bottom(const XML::XNode& node)
{
fromXML(node);
}
const Bottom& Bottom::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Bottom::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Value = element.attribute("val").value();
Space = element.attribute("space").value();
Size = element.attribute("sz").value();
Color = element.attribute("color").value();
ThemeColor = element.attribute("themeColor").value();
ThemeShade = element.attribute("themeShade").value();
}
const XML::XNode Bottom::toXML() const
{
return XML::XElement();
}
}
}

View File

@@ -0,0 +1,69 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_BOTTOM_INCLUDE_H_
#define OOX_LOGIC_BOTTOM_INCLUDE_H_
#include "./../WritingElement.h"
#include <string>
#include "Color.h"
#include "nullable.h"
namespace OOX
{
namespace Logic
{
class Bottom : public WritingElement
{
public:
Bottom();
virtual ~Bottom();
explicit Bottom(const XML::XNode& node);
const Bottom& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
nullable_property<std::string> Value;
nullable_property<int> Space;
nullable_property<int> Size;
nullable_property<Color> Color;
nullable_property<std::string> ThemeColor;
nullable_property<std::string> ThemeShade;
};
}
}
#endif // OOX_LOGIC_BOTTOM_INCLUDE_H_

View File

@@ -0,0 +1,108 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Break.h"
namespace OOX
{
namespace Logic
{
Break::Break()
{
}
Break::~Break()
{
}
Break::Break(const std::string& text)
{
fromTxt(text);
}
Break::Break(const XML::XNode& node)
{
fromXML(node);
}
const Break& Break::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
const Break& Break::operator =(const std::string& text)
{
fromTxt(text);
return *this;
}
void Break::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Type = element.attribute("type").value();
Clear = element.attribute("clear").value();
}
void Break::fromTxt(const std::string& text)
{
Type = text;
}
const XML::XNode Break::toXML() const
{
return XML::XElement();
}
const std::string Break::toTxt() const
{
if (!Type.is_init())
return "\n";
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,68 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_BREAK_INCLUDE_H_
#define OOX_LOGIC_BREAK_INCLUDE_H_
#include "RunItemBase.h"
#include "./../Limit/BreakType.h"
#include "./../Limit/BreakClear.h"
namespace OOX
{
namespace Logic
{
class Break : public RunItemBase
{
public:
Break();
virtual ~Break();
explicit Break(const std::string& text);
explicit Break(const XML::XNode& node);
const Break& operator =(const XML::XNode& node);
const Break& operator =(const std::string& text);
public:
virtual void fromXML(const XML::XNode& node);
virtual void fromTxt(const std::string& text);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
public:
nullable_property<std::string, Limit::BreakType> Type;
nullable_property<std::string, Limit::BreakClear> Clear;
};
}
}
#endif // OOX_LOGIC_BREAK_INCLUDE_H_

View File

@@ -0,0 +1,60 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "CellMarginItem.h"
namespace OOX
{
namespace Logic
{
CellMarginItem::CellMarginItem()
{
}
CellMarginItem::CellMarginItem(int width, const std::string& typeMar)
:W(width),
Type(typeMar)
{
}
CellMarginItem::~CellMarginItem()
{
}
}
} // namespace OOX

View File

@@ -0,0 +1,59 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_CELL_MARGIN_ITEM_INCLUDE_H_
#define OOX_LOGIC_CELL_MARGIN_ITEM_INCLUDE_H_
#include <string>
#include "./../Unit.h"
#include "property.h"
namespace OOX
{
namespace Logic
{
class CellMarginItem
{
public:
CellMarginItem();
CellMarginItem(int width, const std::string& typeMar);
~CellMarginItem();
public:
property<int> W;
property<std::string> Type;
};
}
}
#endif // OOX_LOGIC_CELL_MARGIN_ITEM_INCLUDE_H_

View File

@@ -0,0 +1,113 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Color.h"
#include "Parse.h"
#include "ColorsTable.h"
namespace OOX
{
namespace Logic
{
static const ColorsTable s_colors;
Color::Color() : m_Auto(false)
{
}
Color::Color(const Common::Color& color) : m_Auto(false)
{
fromBase(color);
}
Color::Color(const std::string& value) : m_Auto(false)
{
fromString(value);
}
const Color& Color::operator= (const Common::Color& color)
{
m_Auto = false;
fromBase(color);
return *this;
}
const Color& Color::operator= (const Color& color)
{
m_Auto = color.m_Auto;
fromBase(color);
return *this;
}
const Color& Color::operator= (const std::string& value)
{
fromString(value);
return *this;
}
const std::string Color::ToString() const
{
if (m_Auto)
return "auto";
char str[8];
sprintf(str, "%02x%02x%02x", Red.get(), Green.get(), Blue.get());
return std::string(str);
}
void Color::fromString(const std::string& value)
{
if (value == "auto")
{
m_Auto = true;
}
else if(s_colors.isFromName(value))
{
*this = s_colors.fromName(value);
}
else
{
Red = HexString2Int(value.substr(0, 2));
Green = HexString2Int(value.substr(2, 2));
Blue = HexString2Int(value.substr(4, 2));
}
}
}
} // namespace OOX

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_COLOR_INCLUDE_H_
#define OOX_LOGIC_COLOR_INCLUDE_H_
#include <string>
#include "Common.h"
namespace OOX
{
namespace Logic
{
class Color : public Common::Color
{
public:
Color();
Color(const Common::Color& color);
Color(const std::string& value);
const Color& operator= (const Color& color);
const Color& operator= (const Common::Color& color);
const Color& operator= (const std::string& value);
bool isAuto() const { return m_Auto; }
public:
const std::string ToString() const;
void fromString(const std::string& value);
private:
bool m_Auto;
};
}
}
#endif // OOX_LOGIC_COLOR_INCLUDE_H_

View File

@@ -0,0 +1,108 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "ColorsTable.h"
#include "math.h"
namespace OOX
{
namespace Logic
{
ColorsTable::ColorsTable()
{
m_storage.push_back(std::make_pair("black", Common::Color(0x00, 0x00, 0x00)));
m_storage.push_back(std::make_pair("blue", Common::Color(0x00, 0x00, 0xFF)));
m_storage.push_back(std::make_pair("cyan", Common::Color(0x00, 0xFF, 0xFF)));
m_storage.push_back(std::make_pair("green", Common::Color(0x00, 0x80, 0x00)));
m_storage.push_back(std::make_pair("magenta", Common::Color(0xFF, 0x00, 0xFF)));
m_storage.push_back(std::make_pair("red", Common::Color(0xFF, 0x00, 0x00)));
m_storage.push_back(std::make_pair("yellow", Common::Color(0xFF, 0xFF, 0x00)));
m_storage.push_back(std::make_pair("white", Common::Color(0xFF, 0xFF, 0xFF)));
m_storage.push_back(std::make_pair("darkBlue", Common::Color(0x00, 0x00, 0x8B)));
m_storage.push_back(std::make_pair("darkCyan", Common::Color(0x00, 0x8B, 0x8B)));
m_storage.push_back(std::make_pair("darkGreen", Common::Color(0x00, 0x64, 0x00)));
m_storage.push_back(std::make_pair("darkMagenta", Common::Color(0x8B, 0x00, 0x8B)));
m_storage.push_back(std::make_pair("darkRed", Common::Color(0x8B, 0x00, 0x00)));
m_storage.push_back(std::make_pair("darkYellow", Common::Color(0x80, 0x80, 0x00)));
m_storage.push_back(std::make_pair("darkGray", Common::Color(0xA9, 0xA9, 0xA9)));
m_storage.push_back(std::make_pair("lightGray", Common::Color(0xD3, 0xD3, 0xD3)));
m_storage.push_back(std::make_pair("auto", Common::Color(0x00, 0x00, 0x00)));
}
const Common::Color ColorsTable::fromName(const std::string& name) const
{
for (std::vector<std::pair<std::string, Common::Color> >::const_iterator iter = m_storage.begin(); iter != m_storage.end(); ++iter)
{
if ((*iter).first == name)
return (*iter).second;
}
return Common::Color(0xFF, 0xFF, 0xFF);
}
const bool ColorsTable::isFromName(const std::string& name) const
{
for (std::vector<std::pair<std::string, Common::Color> >::const_iterator iter = m_storage.begin(); iter != m_storage.end(); ++iter)
{
if ((*iter).first == name)
return true;
}
return false;
}
const std::string ColorsTable::fromColor(const Common::Color& color) const
{
std::string name;
int diff = 255 * 255 * 3;
for (std::vector<std::pair<std::string, Common::Color> >::const_iterator iter = m_storage.begin(); iter != m_storage.end(); ++iter)
{
int new_diff = (color.Red - (*iter).second.Red) * (color.Red - (*iter).second.Red) +
(color.Green - (*iter).second.Green) * (color.Green - (*iter).second.Green) +
(color.Blue - (*iter).second.Blue) * (color.Blue - (*iter).second.Blue);
if (new_diff < diff)
{
diff = new_diff;
name = (*iter).first;
}
}
return name;
}
}
} // namespace OOX

View File

@@ -0,0 +1,61 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_COLORS_TABLE_INCLUDE_H_
#define OOX_LOGIC_COLORS_TABLE_INCLUDE_H_
#include "Common.h"
#include <vector>
#include <utility>
namespace OOX
{
namespace Logic
{
class ColorsTable
{
public:
ColorsTable();
public:
const Common::Color fromName(const std::string& name) const;
const std::string fromColor(const Common::Color& color) const ;
const bool isFromName(const std::string& name) const;
private:
std::vector<std::pair<std::string, Common::Color> > m_storage;
};
}
}
#endif // OOX_LOGIC_COLORS_TABLE_INCLUDE_H_

View File

@@ -0,0 +1,89 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Column.h"
namespace OOX
{
namespace Logic
{
Column::Column()
{
}
Column::~Column()
{
}
Column::Column(const XML::XNode& node)
{
fromXML(node);
}
const Column& Column::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Column::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
int width = element.attribute("w").value().ToInt();
Width = UniversalUnit(width, UniversalUnit::Dx);
if(element.attribute("space").exist())
{
int space = element.attribute("space").value().ToInt();
Space = UniversalUnit(space, UniversalUnit::Dx);
}
}
const XML::XNode Column::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,64 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#ifndef OOX_LOGIC_COLUMN_INCLUDE_H_
#define OOX_LOGIC_COLUMN_INCLUDE_H_
#include "./../WritingElement.h"
#include "Utility.h"
#include "property.h"
#include "nullable_property.h"
namespace OOX
{
namespace Logic
{
class Column : public WritingElement
{
public:
Column();
virtual ~Column();
explicit Column(const XML::XNode& node);
const Column& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<UniversalUnit> Width;
nullable_property<UniversalUnit> Space;
};
}
}
#endif // OOX_LOGIC_COLUMN_INCLUDE_H_

View File

@@ -0,0 +1,88 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Columns.h"
namespace OOX
{
namespace Logic
{
Columns::Columns()
{
}
Columns::~Columns()
{
}
Columns::Columns(const XML::XNode& node)
{
fromXML(node);
}
const Columns& Columns::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Columns::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Num = element.attribute("num").value();
if(element.attribute("space").exist())
{
int space = element.attribute("space").value().ToInt();
Space = UniversalUnit(space, UniversalUnit::Dx);
}
EqualWidth = element.attribute("equalWidth").value();
Sep = element.attribute("sep").value();
Fill(Items, element, "col");
}
const XML::XNode Columns::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,68 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#ifndef OOX_LOGIC_COLUMNS_INCLUDE_H_
#define OOX_LOGIC_COLUMNS_INCLUDE_H_
#include "./../WritingElement.h"
#include <vector>
#include "Utility.h"
#include "property.h"
#include "nullable_property.h"
#include "Column.h"
namespace OOX
{
namespace Logic
{
class Columns : public WritingElement
{
public:
Columns();
virtual ~Columns();
explicit Columns(const XML::XNode& node);
const Columns& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
nullable_property<int> Num;
nullable_property<UniversalUnit> Space;
nullable_property<bool> EqualWidth;
nullable_property<bool> Sep;
property<std::vector<Column> > Items;
};
}
}
#endif // OOX_LOGIC_COLUMNS_INCLUDE_H_

View File

@@ -0,0 +1,80 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Complex.h"
namespace OOX
{
namespace Logic
{
Complex::Complex()
{
}
Complex::~Complex()
{
}
Complex::Complex(const XML::XNode& node)
{
fromXML(node);
}
const Complex& Complex::operator = (const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Complex::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Ext = element.attribute("ext").value();
}
const XML::XNode Complex::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,64 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_COMPLEX_INCLUDE_H_
#define OOX_LOGIC_COMPLEX_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
#include "./../Limit/ComplexExt.h"
namespace OOX
{
namespace Logic
{
class Complex : public WritingElement
{
public:
Complex();
virtual ~Complex();
explicit Complex(const XML::XNode& node);
const Complex& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::string, Limit::ComplexExt> Ext;
};
}
}
#endif // OOX_LOGIC_COMPLEX_INCLUDE_H_

View File

@@ -0,0 +1,84 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "ContinuationSeparator.h"
namespace OOX
{
namespace Logic
{
ContinuationSeparator::ContinuationSeparator()
{
}
ContinuationSeparator::~ContinuationSeparator()
{
}
ContinuationSeparator::ContinuationSeparator(const XML::XNode& node)
{
fromXML(node);
}
const ContinuationSeparator& ContinuationSeparator::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void ContinuationSeparator::fromXML(const XML::XNode& node)
{
}
const XML::XNode ContinuationSeparator::toXML() const
{
return XML::XElement();
}
const std::string ContinuationSeparator::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,59 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_CONTINUATION_SEPARATOR_INCLUDE_H_
#define OOX_LOGIC_CONTINUATION_SEPARATOR_INCLUDE_H_
#include "RunItemBase.h"
namespace OOX
{
namespace Logic
{
class ContinuationSeparator : public RunItemBase
{
public:
ContinuationSeparator();
virtual ~ContinuationSeparator();
explicit ContinuationSeparator(const XML::XNode& node);
const ContinuationSeparator& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
};
}
}
#endif // OOX_LOGIC_CONTINUATION_SEPARATOR_INCLUDE_H_

View File

@@ -0,0 +1,86 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "DelText.h"
namespace OOX
{
namespace Logic
{
DelText::DelText()
{
}
DelText::~DelText()
{
}
DelText::DelText(const XML::XNode& node)
{
fromXML(node);
}
const DelText& DelText::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void DelText::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Text = element.text();
}
const XML::XNode DelText::toXML() const
{
return XML::XElement();
}
const std::string DelText::toTxt() const
{
return Text;
}
}
} // namespace OOX

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_DEL_TEXT_INCLUDE_H_
#define OOX_LOGIC_DEL_TEXT_INCLUDE_H_
#include "RunItemBase.h"
#include "nullable_property.h"
namespace OOX
{
namespace Logic
{
class DelText : public RunItemBase
{
public:
DelText();
virtual ~DelText();
explicit DelText(const XML::XNode& node);
const DelText& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
virtual const std::string toTxt() const;
public:
nullable_property<std::string> Text;
};
}
}
#endif // OOX_LOGIC_DEL_TEXT_INCLUDE_H_

View File

@@ -0,0 +1,98 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Delete.h"
namespace OOX
{
namespace Logic
{
Delete::Delete()
{
}
Delete::~Delete()
{
}
Delete::Delete(const XML::XNode& node)
{
fromXML(node);
}
const Delete& Delete::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Delete::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Id = element.attribute("id").value();
Author = element.attribute("author").value();
Date = element.attribute("date").value();
XML::Fill(Runs, element, "r");
}
const XML::XNode Delete::toXML() const
{
return XML::XElement();
}
const std::string Delete::toTxt() const
{
std::string text;
const std::vector<Run>& runs = Runs.get();
for (std::vector<Run>::const_iterator iter = runs.begin(); iter != runs.end(); ++iter)
text += (*iter).toTxt();
return text;
}
}
} // namespace OOX

View File

@@ -0,0 +1,69 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_DELETE_INCLUDE_H_
#define OOX_LOGIC_DELETE_INCLUDE_H_
#include "ParagraphItemBase.h"
#include "Run.h"
#include "property.h"
#include "nullable_property.h"
#include <vector>
namespace OOX
{
namespace Logic
{
class Delete : public ParagraphItemBase
{
public:
Delete();
virtual ~Delete();
explicit Delete(const XML::XNode& node);
const Delete& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
public:
nullable_property<int> Id;
nullable_property<std::string> Author;
nullable_property<std::string> Date;
property<std::vector<Run> > Runs;
};
}
}
#endif // OOX_LOGIC_DELETE_INCLUDE_H_

View File

@@ -0,0 +1,81 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "DocPartObj.h"
namespace OOX
{
namespace Logic
{
DocPartObj::DocPartObj()
{
}
DocPartObj::~DocPartObj()
{
}
DocPartObj::DocPartObj(const XML::XNode& node)
{
fromXML(node);
}
const DocPartObj& DocPartObj::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void DocPartObj::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Gallery = element.element("docPartGallery").attribute("val").value();
Unique = element.element("docPartUnique").exist();
}
const XML::XNode DocPartObj::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,63 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_DOC_PART_OBJ_INCLUDE_H_
#define OOX_LOGIC_DOC_PART_OBJ_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
#include "nullable_property.h"
namespace OOX
{
namespace Logic
{
class DocPartObj : public WritingElement
{
public:
DocPartObj();
virtual ~DocPartObj();
explicit DocPartObj(const XML::XNode& node);
const DocPartObj& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
nullable_property<std::string> Gallery;
property<bool> Unique;
};
}
}
#endif // OOX_LOGIC_DOC_PART_OBJ_INCLUDE_H_

View File

@@ -0,0 +1,82 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "DocPr.h"
namespace OOX
{
namespace Logic
{
DocPr::DocPr()
{
}
DocPr::~DocPr()
{
}
DocPr::DocPr(const XML::XNode& node)
{
fromXML(node);
}
const DocPr& DocPr::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void DocPr::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Id = element.attribute("id").value();
Name = element.attribute("name").value();
Descr = element.attribute("descr").value();
}
const XML::XNode DocPr::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,66 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_DOC_PROPERTIES_INCLUDE_H_
#define OOX_LOGIC_DOC_PROPERTIES_INCLUDE_H_
#include "./../WritingElement.h"
#include <string>
#include "property.h"
#include "nullable_property.h"
namespace OOX
{
namespace Logic
{
class DocPr : public WritingElement
{
public:
DocPr();
virtual ~DocPr();
explicit DocPr(const XML::XNode& node);
const DocPr& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<int> Id;
property<std::string> Name;
nullable_property<std::string> Descr;
};
}
}
#endif // OOX_LOGIC_DOC_PROPERTIES_INCLUDE_H_

View File

@@ -0,0 +1,82 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "DocumentGrid.h"
namespace OOX
{
namespace Logic
{
DocumentGrid::DocumentGrid()
{
}
DocumentGrid::~DocumentGrid()
{
}
DocumentGrid::DocumentGrid(const XML::XNode& node)
{
fromXML(node);
}
const DocumentGrid& DocumentGrid::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void DocumentGrid::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
LinePitch = element.attribute("linePitch").value();
CharSpace = element.attribute("charSpace").value();
Type = element.attribute("type").value();
}
const XML::XNode DocumentGrid::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,64 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#ifndef OOX_LOGIC_DOCUMENT_GRID_INCLUDE_H_
#define OOX_LOGIC_DOCUMENT_GRID_INCLUDE_H_
#include "./../WritingElement.h"
#include "nullable_property.h"
#include "./../Limit/DocGridType.h"
namespace OOX
{
namespace Logic
{
class DocumentGrid : public WritingElement
{
public:
DocumentGrid();
virtual ~DocumentGrid();
explicit DocumentGrid(const XML::XNode& node);
const DocumentGrid& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
nullable_property<int> LinePitch;
nullable_property<int> CharSpace;
nullable_property<std::string, Limit::DocGridType> Type;
};
}
}
#endif // OOX_LOGIC_DOCUMENT_GRID_INCLUDE_H_

View File

@@ -0,0 +1,216 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Drawing.h"
#include "Inline.h"
namespace OOX
{
namespace Logic
{
Drawing::Drawing() : haveAnchor(false)
{
}
Drawing::~Drawing()
{
}
Drawing::Drawing(const RId& rId, const OOX::CPath& filename, const long width, const long height)
{
haveAnchor = false;
Inline->DistT = 0;
Inline->DistB = 0;
Inline->DistL = 0;
Inline->DistR = 0;
Inline->Extent = Extent();
int newH;
int newW;
int dpi = 96;
double heightPage = 25.7;
double widthPage = 16.5;
double maximum = __max(width / (widthPage / 2.54 * dpi), height / (heightPage / 2.54 * dpi));
if (maximum < 1)
{
newW = (int) ( width * 2.54 * 72 * 100.0 * 1000.0 / 20.0 / 96.0);
newH = (int) ( height * 2.54 * 72 * 100.0 * 1000.0 / 20.0 / 96.0);
}
else
{
newW = (int) ( width / maximum * 2.54 * 72.0 * 100.0 * 1000.0 / 20.0 / 96.0);
newH = (int) ( height / maximum * 2.54 * 72.0 * 100.0 * 1000.0 / 20.0 / 96.0);
}
Inline->Extent->Size->Width = newW;
Inline->Extent->Size->Height = newH;
Inline->EffectExtent->Left = 19050;
Inline->EffectExtent->Top = 0;
Inline->EffectExtent->Right = 3175;
Inline->EffectExtent->Bottom = 0;
Inline->DocPr = DocPr();
Inline->DocPr->Id = 1;
Inline->DocPr->Name = "Image 0";
Inline->DocPr->Descr = Encoding::unicode2utf8(std::wstring(filename.GetPath()));
Inline->NoChangeAspect = 1;
Inline->Graphic->Uri = "http://schemas.openxmlformats.org/drawingml/2006/picture";
Inline->Graphic->Pic->Id = 0;
Inline->Graphic->Pic->Name = Encoding::unicode2utf8(std::wstring(filename.GetPath()));
Inline->Graphic->Pic->rId = rId;
Inline->Graphic->Pic->Off.init();
Inline->Graphic->Pic->Off->X = 0;
Inline->Graphic->Pic->Off->Y = 0;
Inline->Graphic->Pic->Ext.init();
Inline->Graphic->Pic->Ext->Width = newW;
Inline->Graphic->Pic->Ext->Height = newH;
Inline->Graphic->Pic->Prst = "rect";
}
Drawing::Drawing(const RId& rId, const OOX::CPath& filename, const long xEmu, const std::string& hRelativeFrom, const long yEmu, const std::string& vRelativeFrom, const long widthEmu, const long heightEmu)
{
Inline->Name = "anchor";
Inline->DistT = 0;
Inline->DistB = 0;
Inline->DistL = 0;
Inline->DistR = 0;
Inline->positionH = xEmu;
Inline->positionHRelativeFrom = hRelativeFrom;
Inline->positionV = yEmu;
Inline->positionVRelativeFrom = vRelativeFrom;
DrawingWrap wrap;
wrap.Type = "wrapTopAndBottom";
wrap.TextWrap = "bothSides";
Inline->Wrap = wrap;
Point2D simplePos;
simplePos.name = "simplePos";
simplePos.x = 0;
simplePos.y = 0;
Inline->SimplePos = false;
Inline->RelativeHeight = 0;
Inline->BehindDoc = false;
Inline->Locked = false;
Inline->LayoutInCell = true;
Inline->AllowOverlap = true;
Inline->SimplePosPoint = simplePos;
Inline->Extent = Extent();
Inline->Extent->Size->Width = widthEmu;
Inline->Extent->Size->Height = heightEmu;
Inline->EffectExtent->Left = 19050;
Inline->EffectExtent->Top = 0;
Inline->EffectExtent->Right = 3175;
Inline->EffectExtent->Bottom = 0;
Inline->DocPr = DocPr();
Inline->DocPr->Id = 1;
Inline->DocPr->Name = "Image 0";
Inline->DocPr->Descr = Encoding::unicode2utf8(std::wstring(filename.GetPath()));
Inline->NoChangeAspect = 1;
Inline->Graphic->Uri = "http://schemas.openxmlformats.org/drawingml/2006/picture";
Inline->Graphic->Pic->Id = 0;
Inline->Graphic->Pic->Name = Encoding::unicode2utf8(std::wstring(filename.GetPath()));
Inline->Graphic->Pic->rId = rId;
Inline->Graphic->Pic->Off.init();
Inline->Graphic->Pic->Off->X = 0;
Inline->Graphic->Pic->Off->Y = 0;
Inline->Graphic->Pic->Ext.init();
Inline->Graphic->Pic->Ext->Width = widthEmu;
Inline->Graphic->Pic->Ext->Height = heightEmu;
Inline->Graphic->Pic->Prst = "rect";
}
Drawing::Drawing(const XML::XNode& node)
{
fromXML(node);
}
const Drawing& Drawing::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Drawing::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
if (element.element("inline").exist())
{
Inline = element.element("inline");
haveAnchor = false;
}
else if (element.element("anchor").exist())
{
Inline = element.element("anchor");
haveAnchor = true;
}
}
const XML::XNode Drawing::toXML() const
{
return XML::XElement();
}
const std::string Drawing::toTxt() const
{
return "[image]";
}
}
} // namespace OOX

View File

@@ -0,0 +1,68 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_DRAWING_INCLUDE_H_
#define OOX_LOGIC_DRAWING_INCLUDE_H_
#include "RunItemBase.h"
#include <string>
#include "Inline.h"
#include "property.h"
#include "./../RId.h"
namespace OOX
{
namespace Logic
{
class Drawing : public RunItemBase
{
public:
Drawing();
virtual ~Drawing();
Drawing(const RId& rId, const OOX::CPath& filename, const long width, const long height);
Drawing(const RId& rId, const OOX::CPath& filename, const long xEmu, const std::string& hRelativeFrom, const long yEmu, const std::string& vRelativeFrom, const long widthEmu, const long heightEmu);
explicit Drawing(const XML::XNode& node);
const Drawing& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
const std::string toTxt() const;
public:
bool haveAnchor;
property<Inline> Inline;
};
}
}
#endif // OOX_LOGIC_DRAWING_INCLUDE_H_

View File

@@ -0,0 +1,145 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "DrawingWrap.h"
namespace OOX
{
namespace Logic
{
DrawingWrap::DrawingWrap()
{
}
DrawingWrap::~DrawingWrap()
{
}
DrawingWrap::DrawingWrap(const XML::XNode& node)
{
fromXML(node);
}
const DrawingWrap& DrawingWrap::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void DrawingWrap::fromXML(const XML::XNode& node)
{
const XML::XElement element (node);
if (element.element("wrapSquare").exist())
{
Type = "wrapSquare";
TextWrap = element.element("wrapSquare").attribute("wrapText").value();
}
else if(element.element("wrapTight").exist())
{
Type = "wrapTight";
TextWrap = element.element("wrapTight").attribute("wrapText").value();
}
else if(element.element("wrapThrough").exist())
{
Type = "wrapThrough";
TextWrap = element.element("wrapThrough").attribute("wrapText").value();
}
else if(element.element("wrapTopAndBottom").exist())
{
Type = "wrapTopAndBottom";
TextWrap = "bothSides";
}
else
{
Type = "wrapNone";
TextWrap = "bothSides";
}
DistT = element.attribute("distT").value();
DistB = element.attribute("distB").value();
DistL = element.attribute("distL").value();
DistR = element.attribute("distR").value();
EffectExtent = element.element("effectExtent");
WrapPath = element.element("wrapPolygon");
}
const XML::XNode DrawingWrap::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,75 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_DRAWINGWRAP_INCLUDE_H_
#define OOX_LOGIC_DRAWINGWRAP_INCLUDE_H_
#include "property.h"
#include "nullable_property.h"
#include "./../WritingElement.h"
#include "./../Limit/TextWrapType.h"
#include "./../Limit/DrawingWrapType.h"
#include "WrapPath.h"
#include "EffectExtent.h"
namespace OOX
{
namespace Logic
{
class DrawingWrap : public WritingElement
{
public:
DrawingWrap();
virtual ~DrawingWrap();
explicit DrawingWrap(const XML::XNode& node);
const DrawingWrap& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::string, Limit::DrawingWrapType> Type;
property<std::string, Limit::TextWrapType> TextWrap;
nullable_property<double> DistT;
nullable_property<double> DistB;
nullable_property<double> DistL;
nullable_property<double> DistR;
nullable_property<EffectExtent> EffectExtent;
nullable_property<WrapPath> WrapPath;
};
}
}
#endif // OOX_LOGIC_DRAWINGWRAP_INCLUDE_H

View File

@@ -0,0 +1,83 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "EffectExtent.h"
namespace OOX
{
namespace Logic
{
EffectExtent::EffectExtent()
{
}
EffectExtent::~EffectExtent()
{
}
EffectExtent::EffectExtent(const XML::XNode& node)
{
fromXML(node);
}
const EffectExtent& EffectExtent::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void EffectExtent::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Left = element.attribute("l").value().ToString();
Top = element.attribute("t").value().ToString();
Right = element.attribute("r").value().ToString();
Bottom = element.attribute("b").value().ToString();
}
const XML::XNode EffectExtent::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,67 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_EFFECT_EXTENT_INCLUDE_H_
#define OOX_LOGIC_EFFECT_EXTENT_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
#include "./../Unit.h"
namespace OOX
{
namespace Logic
{
class EffectExtent : public WritingElement
{
public:
EffectExtent();
virtual ~EffectExtent();
explicit EffectExtent(const XML::XNode& node);
const EffectExtent& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<UnitSx> Left;
property<UnitSx> Top;
property<UnitSx> Right;
property<UnitSx> Bottom;
};
}
}
#endif // OOX_LOGIC_EFFECT_EXTENT_INCLUDE_H

View File

@@ -0,0 +1,88 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "EndNoteProperty.h"
namespace OOX
{
namespace Logic
{
EndNoteProperty::EndNoteProperty()
{
}
EndNoteProperty::~EndNoteProperty()
{
}
EndNoteProperty::EndNoteProperty(const XML::XNode& node)
{
fromXML(node);
}
const EndNoteProperty& EndNoteProperty::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void EndNoteProperty::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
if(element.element("numFmt").exist())
NumFormat = element.element("numFmt");
else
NumFormat->setLowerRoman();
if(element.element("numStart").exist())
NumStart = element.element("numStart").attribute("val").value();
else
NumStart = 1;
}
const XML::XNode EndNoteProperty::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,57 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#ifndef OOX_LOGIC_ENDNOTE_PROPERTY_INCLUDE_H_
#define OOX_LOGIC_ENDNOTE_PROPERTY_INCLUDE_H_
#include "NoteProperty.h"
namespace OOX
{
namespace Logic
{
class EndNoteProperty : public NoteProperty, public WritingElement
{
public:
EndNoteProperty();
virtual ~EndNoteProperty();
explicit EndNoteProperty(const XML::XNode& node);
const EndNoteProperty& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
};
}
}
#endif // OOX_LOGIC_ENDNOTE_PROPERTY_INCLUDE_H_

View File

@@ -0,0 +1,84 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "EndnoteRef.h"
namespace OOX
{
namespace Logic
{
EndnoteRef::EndnoteRef()
{
}
EndnoteRef::~EndnoteRef()
{
}
EndnoteRef::EndnoteRef(const XML::XNode& node)
{
fromXML(node);
}
const EndnoteRef& EndnoteRef::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void EndnoteRef::fromXML(const XML::XNode& node)
{
}
const XML::XNode EndnoteRef::toXML() const
{
return XML::XElement(ns.w + "endnoteRef");
}
const std::string EndnoteRef::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,59 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_ENDNOTE_REF_INCLUDE_H_
#define OOX_LOGIC_ENDNOTE_REF_INCLUDE_H_
#include "RunItemBase.h"
namespace OOX
{
namespace Logic
{
class EndnoteRef : public RunItemBase
{
public:
EndnoteRef();
virtual ~EndnoteRef();
explicit EndnoteRef(const XML::XNode& node);
const EndnoteRef& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
};
}
}
#endif // OOX_LOGIC_ENDNOTE_REF_INCLUDE_H_

View File

@@ -0,0 +1,93 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "EndnoteReference.h"
namespace OOX
{
namespace Logic
{
EndnoteReference::EndnoteReference()
{
}
EndnoteReference::~EndnoteReference()
{
}
EndnoteReference::EndnoteReference(const size_t index)
{
Id = index;
}
EndnoteReference::EndnoteReference(const XML::XNode& node)
{
fromXML(node);
}
const EndnoteReference& EndnoteReference::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void EndnoteReference::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Id = element.attribute("id").value();
CustomMarkFollows = element.attribute("customMarkFollows").value();
}
const XML::XNode EndnoteReference::toXML() const
{
return XML::XElement();
}
const std::string EndnoteReference::toTxt() const
{
return "[_]";
}
}
} // namespace OOX

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_ENDNOTE_REFERENCE_INCLUDE_H_
#define OOX_LOGIC_ENDNOTE_REFERENCE_INCLUDE_H_
#include "RunItemBase.h"
#include "property.h"
namespace OOX
{
namespace Logic
{
class EndnoteReference : public RunItemBase
{
public:
EndnoteReference();
virtual ~EndnoteReference();
explicit EndnoteReference(const size_t index);
explicit EndnoteReference(const XML::XNode& node);
const EndnoteReference& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
public:
property<size_t> Id;
nullable_property<int> CustomMarkFollows;
};
}
}
#endif // OOX_LOGIC_ENDNOTE_REFERENCE_INCLUDE_H_

View File

@@ -0,0 +1,84 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Extent.h"
namespace OOX
{
namespace Logic
{
Extent::Extent()
{
}
Extent::~Extent()
{
}
Extent::Extent(const XML::XNode& node)
{
fromXML(node);
}
const Extent& Extent::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Extent::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Size = XML::XElement2Size<UnitSx>(element, "cy", "cx");
}
const XML::XNode Extent::toXML() const
{
return
XML::XElement(ns.wp + "extent",
XML::XAttribute("cx", Size->Width) +
XML::XAttribute("cy", Size->Height)
);
}
}
} // namespace OOX

View File

@@ -0,0 +1,64 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_EXTENT_INCLUDE_H_
#define OOX_LOGIC_EXTENT_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
#include "./../Unit.h"
#include "Common.h"
namespace OOX
{
namespace Logic
{
class Extent : public WritingElement
{
public:
Extent();
virtual ~Extent();
explicit Extent(const XML::XNode& node);
const Extent& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<Common::Size<UnitSx> > Size;
};
}
}
#endif // OOX_LOGIC_EXTENT_INCLUDE_H

View File

@@ -0,0 +1,88 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Extrusion.h"
namespace OOX
{
namespace Logic
{
Extrusion::Extrusion()
{
}
Extrusion::~Extrusion()
{
}
Extrusion::Extrusion(const XML::XNode& node)
{
fromXML(node);
}
const Extrusion& Extrusion::operator = (const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Extrusion::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
On = element.attribute("on").value();
Ext = element.attribute("ext").value();
BackDepth = element.attribute("backdepth").value();
ViewPoint = element.attribute("viewpoint").value();
ViewPointOrigin = element.attribute("viewpointorigin").value();
SkewAngle = element.attribute("skewangle").value();
LightPosition = element.attribute("lightposition").value();
LightPosition2 = element.attribute("lightposition2").value();
Type = element.attribute("type").value();
}
const XML::XNode Extrusion::toXML() const
{
return XML::XElement();
}
}
}

View File

@@ -0,0 +1,73 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_EXTRUSION_INCLUDE_H_
#define OOX_LOGIC_EXTRUSION_INCLUDE_H_
#include "./../WritingElement.h"
#include "./../Limit/TrueFalse.h"
#include <string>
#include "nullable_property.h"
namespace OOX
{
namespace Logic
{
class Extrusion : public WritingElement
{
public:
Extrusion();
virtual ~Extrusion();
explicit Extrusion(const XML::XNode& node);
const Extrusion& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
nullable_property<std::string, Limit::TrueFalse> On;
nullable_property<std::string> Ext;
nullable_property<std::string> BackDepth;
nullable_property<std::string> ViewPoint;
nullable_property<std::string> ViewPointOrigin;
nullable_property<std::string> SkewAngle;
nullable_property<std::string> LightPosition;
nullable_property<std::string> LightPosition2;
nullable_property<std::string> Type;
};
}
}
#endif // OOX_LOGIC_EXTRUSION_INCLUDE_H_

View File

@@ -0,0 +1,80 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "F.h"
namespace OOX
{
namespace Logic
{
F::F()
{
}
F::~F()
{
}
F::F(const XML::XNode& node)
{
fromXML(node);
}
const F& F::operator = (const XML::XNode& node)
{
fromXML(node);
return *this;
}
void F::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Eqn = element.attribute("eqn").value();
}
const XML::XNode F::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,61 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_F_INCLUDE_H_
#define OOX_LOGIC_F_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
namespace OOX
{
namespace Logic
{
class F : public WritingElement
{
public:
F();
virtual ~F();
explicit F(const XML::XNode& node);
const F& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::string> Eqn;
};
}
}
#endif // OOX_LOGIC_F_INCLUDE_H_

View File

@@ -0,0 +1,80 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "FieldCodes.h"
namespace OOX
{
namespace Logic
{
FieldCodes::FieldCodes()
{
}
FieldCodes::~FieldCodes()
{
}
FieldCodes::FieldCodes(const XML::XNode& node)
{
fromXML(node);
}
const FieldCodes& FieldCodes::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void FieldCodes::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Text = element.text();
}
const XML::XNode FieldCodes::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,63 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_FIELD_CODES_INCLUDE_H_
#define OOX_LOGIC_FIELD_CODES_INCLUDE_H_
#include "./../WritingElement.h"
#include <string>
#include "property.h"
namespace OOX
{
namespace Logic
{
class FieldCodes : public WritingElement
{
public:
FieldCodes();
virtual ~FieldCodes();
explicit FieldCodes(const XML::XNode& node);
const FieldCodes& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::string> Text;
};
}
}
#endif // OOX_LOGIC_FIELD_CODES_INCLUDE_H_

View File

@@ -0,0 +1,85 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Fill.h"
namespace OOX
{
namespace Logic
{
Fill::Fill()
{
}
Fill::~Fill()
{
}
Fill::Fill(const XML::XNode& node)
{
fromXML(node);
}
const Fill& Fill::operator = (const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Fill::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Color = element.attribute("color2").value();
Colors = element.attribute("colors").value();
Method = element.attribute("method").value();
Rotate = element.attribute("rotate").value();
Focus = element.attribute("focus").value();
Type = element.attribute("type").value();
}
const XML::XNode Fill::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,71 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_FILL_INCLUDE_H_
#define OOX_LOGIC_FILL_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
#include "nullable_property.h"
#include <string>
#include "./../Limit/FillType.h"
#include "./../Unit.h"
namespace OOX
{
namespace Logic
{
class Fill : public WritingElement
{
public:
Fill();
virtual ~Fill();
explicit Fill(const XML::XNode& node);
const Fill& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::string> Color;
nullable_property<std::string> Method;
nullable_property<std::string> Colors;
nullable_property<std::string> Rotate;
nullable_property<UnitPercent> Focus;
nullable_property<std::string, Limit::FillType> Type;
};
}
}
#endif // OOX_LOGIC_FILL_INCLUDE_H_

View File

@@ -0,0 +1,98 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "FillStyle.h"
namespace OOX
{
namespace Logic
{
FillStyle::FillStyle()
{
}
FillStyle::~FillStyle()
{
}
FillStyle::FillStyle(const XML::XNode& node)
{
fromXML(node);
}
const FillStyle& FillStyle::operator = (const XML::XNode& node)
{
fromXML(node);
return *this;
}
void FillStyle::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
if (element.attribute("filled").exist())
filled = element.attribute("filled").value();
if (element.attribute("fillcolor").exist())
fillcolor = element.attribute("fillcolor").value();
const XML::XElement fillXML = element.element("fill");
if (fillXML.is_init())
{
if (fillXML.attribute("opacity").exist())
opacity = fillXML.attribute ("opacity").value();
if (fillXML.attribute("id").exist())
Id = fillXML.attribute("id").value();
if (fillXML.attribute("type").exist())
type = fillXML.attribute("type").value();
if (fillXML.attribute("recolor").exist())
recolor = fillXML.attribute("recolor").value();
if (fillXML.attribute("rotate").exist())
rotate = fillXML.attribute("rotate").value();
}
if (element.attribute("color").exist())
fillcolor = element.attribute("color").value();
if (element.attribute("opacity").exist())
opacity = element.attribute("opacity").value();
}
const XML::XNode FillStyle::toXML() const
{
return XML::XElement();
}
}
}

View File

@@ -0,0 +1,68 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#include <string>
#include "property.h"
#include "nullable_property.h"
#include ".\..\WritingElement.h"
namespace OOX
{
namespace Logic
{
class FillStyle : public WritingElement
{
public:
FillStyle();
virtual ~FillStyle();
explicit FillStyle(const XML::XNode& node);
const FillStyle& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
nullable_property<std::string> filled;
nullable_property<std::string> fillcolor;
nullable_property<std::string> opacity;
nullable_property<std::string> Id;
nullable_property<std::string> type;
nullable_property<std::string> recolor;
nullable_property<std::string> rotate;
};
}
}

View File

@@ -0,0 +1,86 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "FldChar.h"
namespace OOX
{
namespace Logic
{
FldChar::FldChar()
{
}
FldChar::~FldChar()
{
}
FldChar::FldChar(const XML::XNode& node)
{
fromXML(node);
}
const FldChar& FldChar::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void FldChar::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
FldCharType = element.attribute("fldCharType").value();
}
const XML::XNode FldChar::toXML() const
{
return XML::XElement();
}
const std::string FldChar::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,66 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_FLD_CHAR_INCLUDE_H_
#define OOX_LOGIC_FLD_CHAR_INCLUDE_H_
#include "RunItemBase.h"
#include "property.h"
#include "./../Limit/FldCharType.h"
namespace OOX
{
namespace Logic
{
class FldChar : public RunItemBase
{
public:
FldChar();
virtual ~FldChar();
explicit FldChar(const XML::XNode& node);
const FldChar& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
virtual const std::string toTxt() const;
public:
property<std::string, Limit::FldCharType> FldCharType;
};
}
}
#endif // OOX_LOGIC_FLD_CHAR_INCLUDE_H_

View File

@@ -0,0 +1,93 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "FldSimple.h"
namespace OOX
{
namespace Logic
{
FldSimple::FldSimple()
{
}
FldSimple::~FldSimple()
{
}
FldSimple::FldSimple(const XML::XNode& node)
{
fromXML(node);
}
const FldSimple& FldSimple::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void FldSimple::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Run = element.element("r");
Instr = element.attribute("instr").value();
}
const XML::XNode FldSimple::toXML() const
{
return XML::XElement();
}
const std::string FldSimple::toTxt() const
{
return Run->toTxt();
}
}
} // namespace OOX

View File

@@ -0,0 +1,66 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_FIELD_SIMPLE_INCLUDE_H_
#define OOX_LOGIC_FIELD_SIMPLE_INCLUDE_H_
#include "ParagraphItemBase.h"
#include "Run.h"
#include "property.h"
#include <string>
namespace OOX
{
namespace Logic
{
class FldSimple : public ParagraphItemBase
{
public:
FldSimple();
virtual ~FldSimple();
explicit FldSimple(const XML::XNode& node);
const FldSimple& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
public:
property<Run> Run;
property<std::string> Instr;
};
}
}
#endif // OOX_LOGIC_FIELD_SIMPLE_INCLUDE_H_

View File

@@ -0,0 +1,89 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "FootNoteProperty.h"
namespace OOX
{
namespace Logic
{
FootNoteProperty::FootNoteProperty()
{
}
FootNoteProperty::~FootNoteProperty()
{
}
FootNoteProperty::FootNoteProperty(const XML::XNode& node)
{
fromXML(node);
}
const FootNoteProperty& FootNoteProperty::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void FootNoteProperty::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
if(element.element("numFmt").exist())
NumFormat = element.element("numFmt");
else
NumFormat->setDecimal();
if(element.element("numStart").exist())
NumStart = element.element("numStart").attribute("val").value();
else
NumStart = 1;
}
const XML::XNode FootNoteProperty::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,58 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#ifndef OOX_LOGIC_FOOTNOTE_PROPERTY_INCLUDE_H_
#define OOX_LOGIC_FOOTNOTE_PROPERTY_INLCUDE_H_
#include "NoteProperty.h"
namespace OOX
{
namespace Logic
{
class FootNoteProperty : public NoteProperty, public WritingElement
{
public:
FootNoteProperty();
virtual ~FootNoteProperty();
explicit FootNoteProperty(const XML::XNode& node);
const FootNoteProperty& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
};
}
}
#endif // OOX_LOGIC_FOOTNOTE_PROPERTY_INCLUDE_H_

View File

@@ -0,0 +1,87 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "FooterReference.h"
namespace OOX
{
namespace Logic
{
FooterReference::FooterReference()
{
}
FooterReference::~FooterReference()
{
}
FooterReference::FooterReference(const XML::XNode& node)
{
fromXML(node);
}
const FooterReference& FooterReference::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void FooterReference::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
rId = element.attribute("id").value().ToWString();
Type = element.attribute("type").value();
}
const XML::XNode FooterReference::toXML() const
{
return XML::XElement();
}
const std::string FooterReference::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#ifndef OOX_LOGIC_FOOTER_REFERENCE_INCLUDE_H_
#define OOX_LOGIC_FOOTER_REFERENCE_INCLUDE_H_
#include "./../WritingElement.h"
#include "./../RId.h"
#include "property.h"
#include "./../Limit/TypeFootHead.h"
namespace OOX
{
namespace Logic
{
class FooterReference : public WritingElement
{
public:
FooterReference();
virtual ~FooterReference();
explicit FooterReference(const XML::XNode& node);
const FooterReference& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
public:
property<RId> rId;
property<std::string, Limit::TypeFootHead> Type;
};
}
}
#endif // OOX_LOGIC_FOOTER_REFERENCE_INCLUDE_H_

View File

@@ -0,0 +1,84 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "FootnoteRef.h"
namespace OOX
{
namespace Logic
{
FootnoteRef::FootnoteRef()
{
}
FootnoteRef::~FootnoteRef()
{
}
FootnoteRef::FootnoteRef(const XML::XNode& node)
{
fromXML(node);
}
const FootnoteRef& FootnoteRef::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void FootnoteRef::fromXML(const XML::XNode& node)
{
}
const XML::XNode FootnoteRef::toXML() const
{
return XML::XElement(ns.w + "footnoteRef");
}
const std::string FootnoteRef::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,59 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_FOOTNOTE_REF_INCLUDE_H_
#define OOX_LOGIC_FOOTNOTE_REF_INCLUDE_H_
#include "RunItemBase.h"
namespace OOX
{
namespace Logic
{
class FootnoteRef : public RunItemBase
{
public:
FootnoteRef();
virtual ~FootnoteRef();
explicit FootnoteRef(const XML::XNode& node);
const FootnoteRef& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
};
}
}
#endif // OOX_LOGIC_FOOTNOTE_REF_INCLUDE_H_

View File

@@ -0,0 +1,94 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "FootnoteReference.h"
namespace OOX
{
namespace Logic
{
FootnoteReference::FootnoteReference()
{
}
FootnoteReference::~FootnoteReference()
{
}
FootnoteReference::FootnoteReference(const size_t index)
{
Id = index;
}
FootnoteReference::FootnoteReference(const XML::XNode& node)
{
fromXML(node);
}
const FootnoteReference& FootnoteReference::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void FootnoteReference::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Id = element.attribute("id").value();
CustomMarkFollows = element.attribute("customMarkFollows").value();
}
const XML::XNode FootnoteReference::toXML() const
{
return XML::XElement();
}
const std::string FootnoteReference::toTxt() const
{
return "[_]";
}
}
} // namespace OOX

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_FOOTNOTE_REFERENCE_INCLUDE_H_
#define OOX_LOGIC_FOOTNOTE_REFERENCE_INCLUDE_H_
#include "RunItemBase.h"
#include "property.h"
namespace OOX
{
namespace Logic
{
class FootnoteReference : public RunItemBase
{
public:
FootnoteReference();
virtual ~FootnoteReference();
explicit FootnoteReference(const size_t index);
explicit FootnoteReference(const XML::XNode& node);
const FootnoteReference& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
public:
property<size_t> Id;
nullable_property<int> CustomMarkFollows;
};
}
}
#endif // OOX_LOGIC_FOOTNOTE_REFERENCE_INCLUDE_H_

View File

@@ -0,0 +1,78 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Formulas.h"
namespace OOX
{
namespace Logic
{
Formulas::Formulas()
{
}
Formulas::~Formulas()
{
}
Formulas::Formulas(const XML::XNode& node)
{
fromXML(node);
}
const Formulas& Formulas::operator = (const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Formulas::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Fill(Fs, element, "f");
}
const XML::XNode Formulas::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,63 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_FORMULAS_INCLUDE_H_
#define OOX_LOGIC_FORMULAS_INCLUDE_H_
#include "./../WritingElement.h"
#include <vector>
#include "property.h"
#include "F.h"
namespace OOX
{
namespace Logic
{
class Formulas : public WritingElement
{
public:
Formulas();
virtual ~Formulas();
explicit Formulas(const XML::XNode& node);
const Formulas& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::vector<F> > Fs;
};
}
}
#endif // OOX_LOGIC_FORMULAS_INCLUDE_H_

View File

@@ -0,0 +1,81 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Graphic.h"
namespace OOX
{
namespace Logic
{
Graphic::Graphic()
{
}
Graphic::~Graphic()
{
}
Graphic::Graphic(const XML::XNode& node)
{
fromXML(node);
}
const Graphic& Graphic::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Graphic::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Uri = element.element("graphicData").attribute("uri").value();
Pic = element.element("graphicData").element("pic");
}
const XML::XNode Graphic::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_GRAPHIC_INCLUDE_H_
#define OOX_LOGIC_GRAPHIC_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
#include "nullable_property.h"
#include "string.h"
#include "Pic.h"
namespace OOX
{
namespace Logic
{
class Graphic : public WritingElement
{
public:
Graphic();
virtual ~Graphic();
explicit Graphic(const XML::XNode& node);
const Graphic& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
nullable_property<std::string> Uri;
property<Pic> Pic;
};
}
}
#endif // OOX_LOGIC_GRAPHIC_INCLUDE_H

View File

@@ -0,0 +1,75 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "GridColumn.h"
namespace OOX
{
namespace Logic
{
GridColumn::GridColumn()
{
}
GridColumn::~GridColumn()
{
}
GridColumn::GridColumn(const XML::XNode& node)
{
fromXML(node);
}
const GridColumn& GridColumn::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void GridColumn::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Width = element.attribute("w").value().ToString();
}
const XML::XNode GridColumn::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,61 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_GRID_COLUMN_INCLUDE_H_
#define OOX_LOGIC_GRID_COLUMN_INCLUDE_H_
#include "./../WritingElement.h"
#include "./../Unit.h"
namespace OOX
{
namespace Logic
{
class GridColumn : public WritingElement
{
public:
GridColumn();
virtual ~GridColumn();
explicit GridColumn(const XML::XNode& node);
const GridColumn& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<UnitDx> Width;
};
}
}
#endif // OOX_LOGIC_GRID_COLUMN_INCLUDE_H_

View File

@@ -0,0 +1,182 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Shape.h"
#include "ShapeType.h"
#include "Rect.h"
#include "Oval.h"
#include "Roundrect.h"
#include "Line.h"
#include "Group.h"
namespace OOX
{
namespace Logic
{
GroupItem::GroupItem()
{
}
GroupItem::GroupItem(const Oval& elem) : IItemable<WritingElement>(new Oval(elem))
{
}
GroupItem::GroupItem(const Rect& elem) : IItemable<WritingElement>(new Rect(elem))
{
}
GroupItem::GroupItem(const Roundrect& elem) : IItemable<WritingElement>(new Roundrect(elem))
{
}
GroupItem::GroupItem(const ShapeType& elem) : IItemable<WritingElement>(new ShapeType(elem))
{
}
GroupItem::GroupItem(const Shape& elem) : IItemable<WritingElement>(new Shape(elem))
{
}
GroupItem::GroupItem(const Line& elem) : IItemable<WritingElement>(new Line(elem))
{
}
GroupItem::GroupItem(const Group& elem) : IItemable<WritingElement>(new Group(elem))
{
}
GroupItem::~GroupItem()
{
}
GroupItem::GroupItem(const XML::XNode& node)
{
fromXML(node);
}
const GroupItem& GroupItem::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void GroupItem::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
if (element.XName == "oval")
m_item.reset(new Oval(element));
if (element.XName == "rect")
m_item.reset (new Rect(element));
if (element.XName == "roundrect")
m_item.reset (new Roundrect(element));
if (element.XName == "shapetype")
m_item.reset (new ShapeType(element));
if (element.XName == "shape")
m_item.reset (new Shape(element));
if (element.XName == "line")
m_item.reset (new Line(element));
if (element.XName == "group")
m_item.reset (new Group(element));
}
const XML::XNode GroupItem::toXML() const
{
return XML::XElement();
}
}
namespace Logic
{
Group::Group()
{
}
Group::~Group()
{
}
Group::Group(const XML::XNode& node)
{
fromXML(node);
}
void Group::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
id = element.attribute("id").value();
spid = element.attribute("spid").value();
style = element.attribute("style").value();
coordorigin = element.attribute("coordorigin").value();
coordsize = element.attribute("coordsize").value();
for (XML::const_node_iterator i = element.Nodes.begin(); i != element.Nodes.end(); ++i)
{
if (i->isElement())
{
const XML::XElement grelement(*i);
{
}
{
items->push_back(GroupItem(*i));
}
}
}
}
const XML::XNode Group::toXML() const
{
return XML::XElement();
}
}
}

View File

@@ -0,0 +1,93 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_GROUP_INCLUDE_H_
#define OOX_LOGIC_GROUP_INCLUDE_H_
#include <string>
#include "./../WritingElement.h"
#include "ShapeStyle.h"
#include "property.h"
#include "nullable_property.h"
#include "IItemable.h"
namespace OOX
{
namespace Logic
{
class Group;
class GroupItem : public WritingElement, public IItemable<WritingElement>
{
public:
GroupItem();
GroupItem(const Oval& elem);
GroupItem(const Rect& elem);
GroupItem(const Roundrect& elem);
GroupItem(const ShapeType& elem);
GroupItem(const Shape& elem);
GroupItem(const Line& elem);
GroupItem(const Group& elem);
virtual ~GroupItem();
explicit GroupItem(const XML::XNode& node);
const GroupItem& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
};
class Group : public WritingElement
{
public:
Group();
virtual ~Group();
explicit Group(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::string> id;
property<std::string> spid;
property<ShapeStyle> style;
property<std::string> coordorigin;
property<std::string> coordsize;
property<std::vector<GroupItem>> items;
};
}
}
#endif // OOX_LOGIC_GROUP_INCLUDE_H_

View File

@@ -0,0 +1,82 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "H.h"
namespace OOX
{
namespace Logic
{
H::H()
{
}
H::~H()
{
}
H::H(const XML::XNode& node)
{
fromXML(node);
}
const H& H::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void H::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Position = element.attribute("position").value();
XRange = element.attribute("xrange").value();
YRange = element.attribute("yrange").value();
}
const XML::XNode H::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,66 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_H_INCLUDE_H_
#define OOX_LOGIC_H_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
#include "nullable_property.h"
#include <string>
namespace OOX
{
namespace Logic
{
class H : public WritingElement
{
public:
H();
virtual ~H();
explicit H(const XML::XNode& node);
const H& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::string> Position;
nullable_property<std::string> XRange;
nullable_property<std::string> YRange;
};
}
}
#endif // OOX_LOGIC_H_INCLUDE_H_

View File

@@ -0,0 +1,80 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Handles.h"
namespace OOX
{
namespace Logic
{
Handles::Handles()
{
}
Handles::~Handles()
{
}
Handles::Handles(const XML::XNode& node)
{
fromXML(node);
}
const Handles& Handles::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Handles::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
Fill(Hs, element, "h");
}
const XML::XNode Handles::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_HANDLES_INCLUDE_H_
#define OOX_LOGIC_HANDLES_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
#include <string>
#include "H.h"
#include <vector>
namespace OOX
{
namespace Logic
{
class Handles : public WritingElement
{
public:
Handles();
virtual ~Handles();
explicit Handles(const XML::XNode& node);
const Handles& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<std::vector<H> > Hs;
};
}
}
#endif // OOX_LOGIC_HANDLES_INCLUDE_H_

View File

@@ -0,0 +1,87 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "HeaderReference.h"
namespace OOX
{
namespace Logic
{
HeaderReference::HeaderReference()
{
}
HeaderReference::~HeaderReference()
{
}
HeaderReference::HeaderReference(const XML::XNode& node)
{
fromXML(node);
}
const HeaderReference& HeaderReference::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void HeaderReference::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
rId = element.attribute("id").value().ToWString();
Type = element.attribute("type").value();
}
const XML::XNode HeaderReference::toXML() const
{
return XML::XElement();
}
const std::string HeaderReference::toTxt() const
{
return "";
}
}
} // namespace OOX

View File

@@ -0,0 +1,66 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#ifndef OOX_LOGIC_HEADER_REFERENCE_INCLUDE_H_
#define OOX_LOGIC_HEADER_REFERENCE_INCLUDE_H_
#include "./../WritingElement.h"
#include "./../RId.h"
#include "property.h"
#include <string>
#include "./../Limit/TypeFootHead.h"
namespace OOX
{
namespace Logic
{
class HeaderReference : public WritingElement
{
public:
HeaderReference();
virtual ~HeaderReference();
explicit HeaderReference(const XML::XNode& node);
const HeaderReference& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
public:
property<RId> rId;
property<std::string, Limit::TypeFootHead> Type;
};
}
}
#endif // OOX_LOGIC_HEADER_REFERENCE_INCLUDE_H_

View File

@@ -0,0 +1,91 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "Hyperlink.h"
namespace OOX
{
namespace Logic
{
Hyperlink::Hyperlink()
{
}
Hyperlink::~Hyperlink()
{
}
Hyperlink::Hyperlink(const XML::XNode& node)
{
fromXML(node);
}
const Hyperlink& Hyperlink::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void Hyperlink::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
if (element.attribute("id").exist())
rId = element.attribute("id").value().ToWString();
Anchor = element.attribute("anchor").value();
History = element.attribute("history").value();
XML::Fill(Runs, element, "r");
}
const XML::XNode Hyperlink::toXML() const
{
return XML::XElement();
}
const std::string Hyperlink::toTxt() const
{
std::string text;
const std::vector<Run>& runs = Runs.get();
for (std::vector<Run>::const_iterator iter = runs.begin(); iter != runs.end(); ++iter)
text += (*iter).toTxt();
return text;
}
}
} // namespace OOX

View File

@@ -0,0 +1,71 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_HYPERLINK_INCLUDE_H_
#define OOX_LOGIC_HYPERLINK_INCLUDE_H_
#include "ParagraphItemBase.h"
#include "Run.h"
#include "property.h"
#include "nullable_property.h"
#include "./../RId.h"
#include <string>
#include <vector>
namespace OOX
{
namespace Logic
{
class Hyperlink : public ParagraphItemBase
{
public:
Hyperlink();
virtual ~Hyperlink();
explicit Hyperlink(const XML::XNode& node);
const Hyperlink& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
virtual const std::string toTxt() const;
public:
nullable_property<RId> rId;
property<std::vector<Run> > Runs;
nullable_property<std::string> Anchor;
nullable_property<int> History;
};
}
}
#endif // OOX_LOGIC_HYPERLINK_INCLUDE_H_

View File

@@ -0,0 +1,81 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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 "precompiled_docxformat.h"
#include "ImageData.h"
namespace OOX
{
namespace Logic
{
ImageData::ImageData()
{
}
ImageData::~ImageData()
{
}
ImageData::ImageData(const XML::XNode& node)
{
fromXML(node);
}
const ImageData& ImageData::operator =(const XML::XNode& node)
{
fromXML(node);
return *this;
}
void ImageData::fromXML(const XML::XNode& node)
{
const XML::XElement element(node);
rId = element.attribute("id").value().ToWString();
Title = element.attribute("title").value();
}
const XML::XNode ImageData::toXML() const
{
return XML::XElement();
}
}
} // namespace OOX

View File

@@ -0,0 +1,66 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
#pragma once
#ifndef OOX_LOGIC_IMAGE_DATA_INCLUDE_H_
#define OOX_LOGIC_IMAGE_DATA_INCLUDE_H_
#include "./../WritingElement.h"
#include "property.h"
#include "nullable_property.h"
#include <string>
#include "./../RId.h"
namespace OOX
{
namespace Logic
{
class ImageData : public WritingElement
{
public:
ImageData();
virtual ~ImageData();
explicit ImageData(const XML::XNode& node);
const ImageData& operator =(const XML::XNode& node);
public:
virtual void fromXML(const XML::XNode& node);
virtual const XML::XNode toXML() const;
public:
property<OOX::RId> rId;
nullable_property<std::string> Title;
};
}
}
#endif // OOX_LOGIC_IMAGE_DATA_INCLUDE_H_

Some files were not shown because too many files have changed in this diff Show More