mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-07-14 03:46:15 +08:00
59 lines
1.3 KiB
C++
59 lines
1.3 KiB
C++
#include "PageLayouts.h"
|
|
#include <algorithm>
|
|
#include <boost/bind.hpp>
|
|
|
|
namespace Odp
|
|
{
|
|
namespace Styles
|
|
{
|
|
PageLayouts::PageLayouts()
|
|
{
|
|
}
|
|
|
|
PageLayouts::~PageLayouts()
|
|
{
|
|
}
|
|
|
|
PageLayouts::PageLayouts(const XML::XNode& node)
|
|
{
|
|
fromXML(node);
|
|
}
|
|
|
|
const PageLayouts& PageLayouts::operator =(const XML::XNode& node)
|
|
{
|
|
fromXML(node);
|
|
return *this;
|
|
}
|
|
|
|
void PageLayouts::fromXML(const XML::XNode& node)
|
|
{
|
|
const XML::XElement element(node);
|
|
XML::Fill(m_items, element, "page-layout");
|
|
}
|
|
|
|
const bool PageLayouts::exist(const std::string& name) const
|
|
{
|
|
return std::find_if(m_items.begin(), m_items.end(), boost::bind(&PageLayout::Name, _1) == name) != m_items.end();
|
|
}
|
|
|
|
const PageLayout& PageLayouts::operator[](const std::string& name) const
|
|
{
|
|
return find(name);
|
|
}
|
|
|
|
PageLayout& PageLayouts::operator[](const std::string& name)
|
|
{
|
|
return find(name);
|
|
}
|
|
|
|
const PageLayout& PageLayouts::find(const std::string& name) const
|
|
{
|
|
return *std::find_if(m_items.begin(), m_items.end(), boost::bind(&PageLayout::Name, _1) == name);
|
|
}
|
|
|
|
PageLayout& PageLayouts::find(const std::string& name)
|
|
{
|
|
return *std::find_if(m_items.begin(), m_items.end(), boost::bind(&PageLayout::Name, _1) == name);
|
|
}
|
|
} // namespace Styles
|
|
} // namespace Odp
|