diff options
Diffstat (limited to 'svx/source/styles')
-rw-r--r-- | svx/source/styles/ColorSets.cxx | 136 |
1 files changed, 0 insertions, 136 deletions
diff --git a/svx/source/styles/ColorSets.cxx b/svx/source/styles/ColorSets.cxx index 23adaf3281a1..145babb7d98d 100644 --- a/svx/source/styles/ColorSets.cxx +++ b/svx/source/styles/ColorSets.cxx @@ -11,18 +11,7 @@ #include <svx/ColorSets.hxx> #include <utility> - -#include <libxml/xmlwriter.h> -#include <comphelper/sequenceashashmap.hxx> -#include <comphelper/sequence.hxx> -#include <sal/log.hxx> -#include <svx/svdpage.hxx> -#include <svx/svditer.hxx> -#include <editeng/unoprnms.hxx> -#include <docmodel/uno/UnoThemeColor.hxx> #include <docmodel/theme/ColorSet.hxx> -#include <o3tl/enumrange.hxx> -#include <com/sun/star/util/Color.hpp> using namespace com::sun::star; @@ -166,131 +155,6 @@ void ColorSets::insert(model::ColorSet const& rColorSet) maColorSets.push_back(rColorSet); } -Theme::Theme(OUString const& rName) - : maName(rName) -{ -} - -void Theme::SetColorSet(std::unique_ptr<model::ColorSet> pColorSet) { mpColorSet = std::move(pColorSet); } - -const model::ColorSet* Theme::GetColorSet() const { return mpColorSet.get(); } - -model::ColorSet* Theme::GetColorSet() { return mpColorSet.get(); } - -void Theme::SetName(const OUString& rName) { maName = rName; } - -const OUString& Theme::GetName() const { return maName; } - -void Theme::dumpAsXml(xmlTextWriterPtr pWriter) const -{ - (void)xmlTextWriterStartElement(pWriter, BAD_CAST("Theme")); - (void)xmlTextWriterWriteFormatAttribute(pWriter, BAD_CAST("ptr"), "%p", this); - (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("maName"), - BAD_CAST(maName.toUtf8().getStr())); - - if (mpColorSet) - { - mpColorSet->dumpAsXml(pWriter); - } - - (void)xmlTextWriterEndElement(pWriter); -} - -void Theme::ToAny(css::uno::Any& rVal) const -{ - comphelper::SequenceAsHashMap aMap; - aMap["Name"] <<= maName; - - if (mpColorSet) - { - std::vector<util::Color> aColorScheme; - for (auto eThemeColorType : o3tl::enumrange<model::ThemeColorType>()) - { - if (eThemeColorType != model::ThemeColorType::Unknown) - { - Color aColor = mpColorSet->getColor(eThemeColorType); - aColorScheme.push_back(sal_Int32(aColor)); - } - } - - aMap["ColorSchemeName"] <<= mpColorSet->getName(); - aMap["ColorScheme"] <<= comphelper::containerToSequence(aColorScheme); - } - - rVal <<= aMap.getAsConstPropertyValueList(); -} - -std::unique_ptr<Theme> Theme::FromAny(const css::uno::Any& rVal) -{ - comphelper::SequenceAsHashMap aMap(rVal); - std::unique_ptr<Theme> pTheme; - model::ColorSet* pColorSet = nullptr; - - auto it = aMap.find("Name"); - if (it != aMap.end()) - { - OUString aName; - it->second >>= aName; - pTheme = std::make_unique<Theme>(aName); - } - - it = aMap.find("ColorSchemeName"); - if (it != aMap.end() && pTheme) - { - OUString aName; - it->second >>= aName; - auto pSet = std::make_unique<model::ColorSet>(aName); - pTheme->SetColorSet(std::move(pSet)); - pColorSet = pTheme->GetColorSet(); - } - - it = aMap.find("ColorScheme"); - if (it != aMap.end() && pColorSet) - { - uno::Sequence<util::Color> aColors; - it->second >>= aColors; - - SAL_WARN_IF(aColors.size() > 12, "svx", "Theme::FromAny: number of colors greater than max theme colors supported"); - - for (auto eThemeColorType : o3tl::enumrange<model::ThemeColorType>()) - { - if (eThemeColorType != model::ThemeColorType::Unknown) - { - size_t nIndex(static_cast<sal_Int16>(eThemeColorType)); - if (nIndex < aColors.size()) - { - Color aColor(ColorTransparency, aColors[nIndex]); - pColorSet->add(eThemeColorType, aColor); - } - } - } - } - - return pTheme; -} - -std::vector<Color> Theme::GetColors() const -{ - if (!mpColorSet) - return {}; - - std::vector<Color> aColors; - for (auto eThemeColorType : o3tl::enumrange<model::ThemeColorType>()) - { - if (eThemeColorType != model::ThemeColorType::Unknown) - aColors.push_back(mpColorSet->getColor(eThemeColorType)); - } - return aColors; -} - -Color Theme::GetColor(model::ThemeColorType eType) const -{ - if (!mpColorSet) - return {}; - - return mpColorSet->getColor(eType); -} - } // end of namespace svx /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |