LibreOffice Module oox (master)  1
effectproperties.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  */
9 
10 #ifndef INCLUDED_OOX_DRAWINGML_EFFECTPROPERTIES_HXX
11 #define INCLUDED_OOX_DRAWINGML_EFFECTPROPERTIES_HXX
12 
13 #include <oox/drawingml/color.hxx>
15 
16 #include <memory>
17 #include <vector>
18 #include <map>
19 
20 namespace oox::drawingml {
21 
23 {
24  OptValue< sal_Int64 > moGlowRad; // size of glow effect
26  // TODO saturation and luminance missing
27 
28  void assignUsed( const EffectGlowProperties& rSourceProps );
29 };
30 
32 {
33  OptValue<sal_Int64> moRad; // size of effect
34 
35  void assignUsed(const EffectSoftEdgeProperties& rSourceProps);
36 };
37 
39 {
45  OptValue< sal_Int64 > moShadowBlur; // size of blur effect
46 
48  void assignUsed( const EffectShadowProperties& rSourceProps );
49 };
50 
51 struct Effect
52 {
53  OUString msName;
54  std::map< OUString, css::uno::Any > maAttribs;
56 
57  css::beans::PropertyValue getEffect();
58 };
59 
61 {
65 
67  std::vector<std::unique_ptr<Effect>> m_Effects;
68 
71  {
72  assignUsed(rOther);
73  }
74 
76  void assignUsed( const EffectProperties& rSourceProps );
77 
79  void pushToPropMap(
80  PropertyMap& rPropMap,
81  const GraphicHelper& rGraphicHelper ) const;
82 };
83 
84 } // namespace oox::drawingml
85 
86 #endif
87 
88 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Provides helper functions for colors, device measurement conversion, graphics, and graphic objects ha...
std::vector< std::unique_ptr< Effect > > m_Effects
Stores all effect properties, including those not supported by core yet.
A helper that maps property identifiers to property values.
Definition: propertymap.hxx:52
void assignUsed(const EffectGlowProperties &rSourceProps)
void assignUsed(const EffectSoftEdgeProperties &rSourceProps)
void assignUsed(const EffectShadowProperties &rSourceProps)
Overwrites all members that are explicitly set in rSourceProps.
EffectSoftEdgeProperties maSoftEdge
void pushToPropMap(PropertyMap &rPropMap, const GraphicHelper &rGraphicHelper) const
Writes the properties to the passed property map.
void assignUsed(const EffectProperties &rSourceProps)
Overwrites all members that are explicitly set in rSourceProps.
css::beans::PropertyValue getEffect()
EffectProperties(EffectProperties const &rOther)
std::map< OUString, css::uno::Any > maAttribs