diff options
Diffstat (limited to 'oox')
125 files changed, 2605 insertions, 160 deletions
diff --git a/oox/inc/drawingml/ThemeOverrideFragmentHandler.hxx b/oox/inc/drawingml/ThemeOverrideFragmentHandler.hxx new file mode 100644 index 000000000000..827cf5a52f55 --- /dev/null +++ b/oox/inc/drawingml/ThemeOverrideFragmentHandler.hxx @@ -0,0 +1,40 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef INCLUDED_OOX_DRAWINGML_THEMEOVERRICEFRAGMENTHANDLER_HXX +#define INCLUDED_OOX_DRAWINGML_THEMEOVERRICEFRAGMENTHANDLER_HXX + +#include <oox/core/fragmenthandler2.hxx> + +namespace oox { +namespace drawingml { + +class Theme; + +class ThemeOverrideFragmentHandler : public ::oox::core::FragmentHandler2 +{ +public: + explicit ThemeOverrideFragmentHandler( + ::oox::core::XmlFilterBase& rFilter, + const OUString& rFragmentPath, + Theme& rTheme ); + virtual ~ThemeOverrideFragmentHandler(); + + virtual ::oox::core::ContextHandlerRef onCreateContext( sal_Int32 nElement, const AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + Theme& mrTheme; +}; + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/chart/axismodel.hxx b/oox/inc/drawingml/chart/axismodel.hxx index c4ba8d4f295c..57ecbf49de0a 100644 --- a/oox/inc/drawingml/chart/axismodel.hxx +++ b/oox/inc/drawingml/chart/axismodel.hxx @@ -21,6 +21,7 @@ #define INCLUDED_OOX_DRAWINGML_CHART_AXISMODEL_HXX #include <oox/drawingml/shape.hxx> +#include <oox/token/tokens.hxx> #include <drawingml/chart/titlemodel.hxx> namespace oox { diff --git a/oox/inc/drawingml/clrschemecontext.hxx b/oox/inc/drawingml/clrschemecontext.hxx new file mode 100644 index 000000000000..38efe30d22fb --- /dev/null +++ b/oox/inc/drawingml/clrschemecontext.hxx @@ -0,0 +1,62 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_CLRSCHEMECONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_CLRSCHEMECONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> +#include <oox/drawingml/clrscheme.hxx> +#include <oox/drawingml/color.hxx> +#include <drawingml/colorchoicecontext.hxx> + +namespace oox { namespace drawingml { + +class clrMapContext : public oox::core::ContextHandler2 +{ +public: + clrMapContext( ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttributes, ClrMap& rClrMap ); +}; + +class clrSchemeColorContext : private Color, public ColorContext +{ +public: + clrSchemeColorContext( ::oox::core::ContextHandler2Helper& rParent, ClrScheme& rClrScheme, sal_Int32 nColorToken ); + virtual ~clrSchemeColorContext(); + +private: + ClrScheme& mrClrScheme; + sal_Int32 mnColorToken; +}; + +class clrSchemeContext : public oox::core::ContextHandler2 +{ +public: + clrSchemeContext( ::oox::core::ContextHandler2Helper& rParent, ClrScheme& rClrScheme ); + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + ClrScheme& mrClrScheme; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_CLRSCHEMECONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/colorchoicecontext.hxx b/oox/inc/drawingml/colorchoicecontext.hxx new file mode 100644 index 000000000000..8f283dd85285 --- /dev/null +++ b/oox/inc/drawingml/colorchoicecontext.hxx @@ -0,0 +1,77 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_COLORCHOICECONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_COLORCHOICECONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> + +namespace oox { +namespace drawingml { + +class Color; + + + +/** Context handler for the different color value elements (a:scrgbClr, + a:srgbClr, a:hslClr, a:sysClr, a:schemeClr, a:prstClr). */ +class ColorValueContext : public ::oox::core::ContextHandler2 +{ +public: + explicit ColorValueContext( ::oox::core::ContextHandler2Helper& rParent, Color& rColor ); + + + virtual void onStartElement( + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + Color& mrColor; +}; + + + +/** Context handler for elements that *contain* a color value element + (a:scrgbClr, a:srgbClr, a:hslClr, a:sysClr, a:schemeClr, a:prstClr). */ +class ColorContext : public ::oox::core::ContextHandler2 +{ +public: + explicit ColorContext( ::oox::core::ContextHandler2Helper& rParent, Color& rColor ); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + Color& mrColor; +}; + + + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/customshapegeometry.hxx b/oox/inc/drawingml/customshapegeometry.hxx new file mode 100644 index 000000000000..15fc22a440d5 --- /dev/null +++ b/oox/inc/drawingml/customshapegeometry.hxx @@ -0,0 +1,71 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_CUSTOMSHAPEGEOMETRY_HXX +#define INCLUDED_OOX_DRAWINGML_CUSTOMSHAPEGEOMETRY_HXX + +#include <com/sun/star/beans/XPropertySet.hpp> +#include <oox/helper/propertymap.hxx> +#include <oox/core/contexthandler2.hxx> +#include <oox/drawingml/shape.hxx> + +namespace oox { namespace drawingml { + + + +// CT_CustomGeometry2D +class CustomShapeGeometryContext : public ::oox::core::ContextHandler2 +{ +public: + CustomShapeGeometryContext( ::oox::core::ContextHandler2Helper& rParent, const ::oox::AttributeList& rAttributes, CustomShapeProperties& rCustomShapeProperties ); + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 aElementToken, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + CustomShapeProperties& mrCustomShapeProperties; +}; + + +// CT_PresetGeometry2D +class PresetShapeGeometryContext : public ::oox::core::ContextHandler2 +{ +public: + PresetShapeGeometryContext( ::oox::core::ContextHandler2Helper& rParent, const ::oox::AttributeList& rAttributes, CustomShapeProperties& rCustomShapeProperties ); + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 aElementToken, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + CustomShapeProperties& mrCustomShapeProperties; +}; + + +// CT_PresetTextShape +class PresetTextShapeContext : public ::oox::core::ContextHandler2 +{ +public: + PresetTextShapeContext( ::oox::core::ContextHandler2Helper& rParent, const ::oox::AttributeList& rAttributes, CustomShapeProperties& rCustomShapeProperties ); + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 aElementToken, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + CustomShapeProperties& mrCustomShapeProperties; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_CUSTOMSHAPEGEOMETRY_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/customshapeproperties.hxx b/oox/inc/drawingml/customshapeproperties.hxx new file mode 100644 index 000000000000..d27fc661c0a2 --- /dev/null +++ b/oox/inc/drawingml/customshapeproperties.hxx @@ -0,0 +1,169 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_CUSTOMSHAPEPROPERTIES_HXX +#define INCLUDED_OOX_DRAWINGML_CUSTOMSHAPEPROPERTIES_HXX + +#include <boost/shared_ptr.hpp> +#include <boost/unordered_map.hpp> +#include <vector> +#include <map> +#include <com/sun/star/drawing/EnhancedCustomShapeParameterPair.hpp> +#include <com/sun/star/drawing/EnhancedCustomShapeParameterType.hpp> +#include <com/sun/star/drawing/EnhancedCustomShapeSegment.hpp> +#include <com/sun/star/drawing/EnhancedCustomShapeGluePointType.hpp> +#include <com/sun/star/drawing/EnhancedCustomShapeSegmentCommand.hpp> +#include <com/sun/star/drawing/EnhancedCustomShapeTextFrame.hpp> +#include <com/sun/star/drawing/EnhancedCustomShapeAdjustmentValue.hpp> +#include <com/sun/star/drawing/EnhancedCustomShapeTextPathMode.hpp> +#include <com/sun/star/beans/PropertyValues.hpp> +#include <com/sun/star/drawing/ProjectionMode.hpp> +#include <com/sun/star/drawing/XShape.hpp> +#include <com/sun/star/graphic/XGraphic.hpp> +#include <oox/core/xmlfilterbase.hxx> +#include <oox/drawingml/color.hxx> +#include <oox/helper/helper.hxx> +#include <oox/helper/propertymap.hxx> +#include <oox/token/tokens.hxx> + +namespace oox { namespace drawingml { + +class CustomShapeProperties; + +typedef boost::shared_ptr< CustomShapeProperties > CustomShapePropertiesPtr; + +struct CustomShapeGuide +{ + OUString maName; + OUString maFormula; +}; + +struct AdjustHandle +{ + bool polar; + com::sun::star::drawing::EnhancedCustomShapeParameterPair + pos; + + // depending to the type (polar or not): + OptValue< OUString > gdRef1; // gdRefX or gdRefR + OptValue< com::sun::star::drawing::EnhancedCustomShapeParameter > + min1; // minX or minR + OptValue< com::sun::star::drawing::EnhancedCustomShapeParameter > + max1; // maxX or maxR + OptValue< OUString > gdRef2; // gdRefY or gdRefAng + OptValue< com::sun::star::drawing::EnhancedCustomShapeParameter > + min2; // minX or minAng + OptValue< com::sun::star::drawing::EnhancedCustomShapeParameter > + max2; // maxY or maxAng + + AdjustHandle( bool bPolar ) : polar( bPolar ) {}; +}; + +struct ConnectionSite +{ + com::sun::star::drawing::EnhancedCustomShapeParameterPair + pos; + com::sun::star::drawing::EnhancedCustomShapeParameter + ang; +}; + +struct GeomRect +{ + com::sun::star::drawing::EnhancedCustomShapeParameter l; + com::sun::star::drawing::EnhancedCustomShapeParameter t; + com::sun::star::drawing::EnhancedCustomShapeParameter r; + com::sun::star::drawing::EnhancedCustomShapeParameter b; +}; + +struct Path2D +{ + sal_Int64 w; + sal_Int64 h; + sal_Int32 fill; + bool stroke; + bool extrusionOk; + std::vector< com::sun::star::drawing::EnhancedCustomShapeParameterPair > parameter; + + Path2D() : w( 0 ), h( 0 ), fill( XML_norm ), stroke( true ), extrusionOk( true ) {}; +}; + + +class CustomShapeProperties +{ +public: + + CustomShapeProperties(); + virtual ~CustomShapeProperties(); + + void pushToPropSet( const ::oox::core::FilterBase& rFilterBase, + const ::com::sun::star::uno::Reference < ::com::sun::star::beans::XPropertySet > & xPropSet, + const ::com::sun::star::uno::Reference < ::com::sun::star::drawing::XShape > & xShape, const ::com::sun::star::awt::Size &aSize ); + + sal_Int32 getShapePresetType() const { return mnShapePresetType; } + OUString getShapePresetTypeName() const; + void setShapePresetType( sal_Int32 nShapePresetType ){ mnShapePresetType = nShapePresetType; }; + bool getShapeTypeOverride(){ return mbShapeTypeOverride; }; + void setShapeTypeOverride( bool bShapeTypeOverride ) { mbShapeTypeOverride = bShapeTypeOverride; }; + + std::vector< CustomShapeGuide >& getAdjustmentGuideList(){ return maAdjustmentGuideList; }; + std::vector< CustomShapeGuide >& getGuideList(){ return maGuideList; }; + std::vector< AdjustHandle >& getAdjustHandleList(){ return maAdjustHandleList; }; + std::vector< ConnectionSite >& getConnectionSiteList(){ return maConnectionSiteList; }; + OptValue< GeomRect >& getTextRect(){ return maTextRect; }; + std::vector< Path2D >& getPath2DList(){ return maPath2DList; }; + std::vector< com::sun::star::drawing::EnhancedCustomShapeSegment >& getSegments(){ return maSegments; }; + void setMirroredX( bool bMirroredX ) { mbMirroredX = bMirroredX; }; + void setMirroredY( bool bMirroredY ) { mbMirroredY = bMirroredY; }; + void setTextRotateAngle( sal_Int32 nAngle ) { mnTextRotateAngle = nAngle; }; + + static sal_Int32 SetCustomShapeGuideValue( std::vector< CustomShapeGuide >& rGuideList, const CustomShapeGuide& rGuide ); + static sal_Int32 GetCustomShapeGuideValue( const std::vector< CustomShapeGuide >& rGuideList, const OUString& rFormulaName ); + + sal_Int32 getArcNum() { return mnArcNum++; } + +private: + + sal_Int32 mnShapePresetType; + bool mbShapeTypeOverride; + std::vector< CustomShapeGuide > maAdjustmentGuideList; + std::vector< CustomShapeGuide > maGuideList; + std::vector< AdjustHandle > maAdjustHandleList; + std::vector< ConnectionSite > maConnectionSiteList; + OptValue< GeomRect > maTextRect; + std::vector< Path2D > maPath2DList; + + std::vector< com::sun::star::drawing::EnhancedCustomShapeSegment > + maSegments; + bool mbMirroredX; + bool mbMirroredY; + sal_Int32 mnTextRotateAngle; + + typedef boost::unordered_map< sal_Int32, PropertyMap > PresetDataMap; + + static PresetDataMap maPresetDataMap; + static void initializePresetDataMap(); + + sal_Int32 mnArcNum; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_CUSTOMSHAPEPROPERTIES_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/embeddedwavaudiofile.hxx b/oox/inc/drawingml/embeddedwavaudiofile.hxx new file mode 100644 index 000000000000..c1b199243f87 --- /dev/null +++ b/oox/inc/drawingml/embeddedwavaudiofile.hxx @@ -0,0 +1,51 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_EMBEDDEDWAVAUDIOFILE_HXX +#define INCLUDED_OOX_DRAWINGML_EMBEDDEDWAVAUDIOFILE_HXX + +#include <rtl/ustring.hxx> +#include <com/sun/star/xml/sax/XFastAttributeList.hpp> + +#include <oox/core/fragmenthandler.hxx> + +namespace oox { namespace drawingml { + + struct EmbeddedWAVAudioFile + { + EmbeddedWAVAudioFile() + : mbBuiltIn(false) + { + } + bool mbBuiltIn; + OUString msName; + OUString msEmbed; + }; + + void getEmbeddedWAVAudioFile( + const ::oox::core::Relations& rRelations, + const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastAttributeList >& xAttribs, + EmbeddedWAVAudioFile & aAudio ); + +} } + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/fillpropertiesgroupcontext.hxx b/oox/inc/drawingml/fillpropertiesgroupcontext.hxx new file mode 100644 index 000000000000..5387b340dcc3 --- /dev/null +++ b/oox/inc/drawingml/fillpropertiesgroupcontext.hxx @@ -0,0 +1,253 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_FILLPROPERTIESGROUPCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_FILLPROPERTIESGROUPCONTEXT_HXX + +#include <drawingml/colorchoicecontext.hxx> +#include <oox/drawingml/fillproperties.hxx> + +namespace oox { +namespace drawingml { + + + +/** Context handler that imports the a:solidFill element. */ +class SolidFillContext : public ColorContext +{ +public: + explicit SolidFillContext( + ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttribs, + FillProperties& rFillProps ); +}; + + + +/** Context handler that imports the a:gradFill element. */ +class GradientFillContext : public ::oox::core::ContextHandler2 +{ +public: + explicit GradientFillContext( + ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttribs, + GradientFillProperties& rGradientProps ); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + GradientFillProperties& mrGradientProps; +}; + +/** Context handler that imports the a:pattFill element. */ +class PatternFillContext : public ::oox::core::ContextHandler2 +{ +public: + explicit PatternFillContext( + ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttribs, + PatternFillProperties& rPatternProps ); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + PatternFillProperties& mrPatternProps; +}; + + + +/** Context handler that imports a14:imgProps, a14:imgLayer, a14:imgEffect containers + and the a14:artistic* effect tags defined in the MS-ODRAWXML extension. */ +class ArtisticEffectContext : public ::oox::core::ContextHandler2 +{ +public: + explicit ArtisticEffectContext( + ::oox::core::ContextHandler2Helper& rParent, + ArtisticEffectProperties& rEffect ); + virtual ~ArtisticEffectContext(); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + ArtisticEffectProperties& maEffect; +}; + + + +/** Context handler that imports the a:extLst element inside a:blip and its + children a:ext, which can contain transformations to the bitmap. */ +class BlipExtensionContext : public ::oox::core::ContextHandler2 +{ +public: + explicit BlipExtensionContext( + ::oox::core::ContextHandler2Helper& rParent, + BlipFillProperties& rBlipProps ); + virtual ~BlipExtensionContext(); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + BlipFillProperties& mrBlipProps; +}; + + + +/** Context handler that imports the a:duotone element containing the colors + of a bitmap duotone transformation. */ +class DuotoneContext : public ::oox::core::ContextHandler2 +{ +public: + explicit DuotoneContext( + ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttribs, + BlipFillProperties& rBlipProps ); + virtual ~DuotoneContext(); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + BlipFillProperties& mrBlipProps; + int mnColorIndex; +}; + + + +/** Context handler that imports the a:clrChange element containing the colors + of a bitmap color change transformation. */ +class ColorChangeContext : public ::oox::core::ContextHandler2 +{ +public: + explicit ColorChangeContext( + ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttribs, + BlipFillProperties& rBlipProps ); + virtual ~ColorChangeContext(); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + BlipFillProperties& mrBlipProps; + bool mbUseAlpha; +}; + +/** Context handler that imports the a:blip element containing the fill bitmap + and bitmap color transformation settings. */ +class BlipContext : public ::oox::core::ContextHandler2 +{ +public: + explicit BlipContext( + ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttribs, + BlipFillProperties& rBlipProps ); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + BlipFillProperties& mrBlipProps; +}; + +/** Context handler that imports the a:blipFill element. */ +class BlipFillContext : public ::oox::core::ContextHandler2 +{ +public: + explicit BlipFillContext( + ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttribs, + BlipFillProperties& rBlipProps ); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + BlipFillProperties& mrBlipProps; +}; + +/** Context handler for elements that contain a fill property element + (a:noFill, a:solidFill, a:gradFill, a:pattFill, a:blipFill, a:grpFill). */ +class FillPropertiesContext : public ::oox::core::ContextHandler2 +{ +public: + explicit FillPropertiesContext( + ::oox::core::ContextHandler2Helper& rParent, + FillProperties& rFillProps ); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + + static ::oox::core::ContextHandlerRef + createFillContext( + ::oox::core::ContextHandler2Helper& rParent, + sal_Int32 nElement, + const ::oox::AttributeList& rAttribs, + FillProperties& rFillProps ); + +protected: + FillProperties& mrFillProps; +}; + +/** Context handler for elements that contain a fill property element + (a:noFill, a:solidFill, a:gradFill, a:pattFill, a:blipFill, a:grpFill). + + This context handler takes a simple color instead of a fill properties + struct. The imported fill properties are converted automatically to the + best fitting solid color. + */ +class SimpleFillPropertiesContext : private FillProperties, public FillPropertiesContext +{ +public: + explicit SimpleFillPropertiesContext( + ::oox::core::ContextHandler2Helper& rParent, + Color& rColor ); + virtual ~SimpleFillPropertiesContext(); + +protected: + Color& mrColor; +}; + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/graphicproperties.hxx b/oox/inc/drawingml/graphicproperties.hxx new file mode 100644 index 000000000000..626fe5f0f9b8 --- /dev/null +++ b/oox/inc/drawingml/graphicproperties.hxx @@ -0,0 +1,57 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_GRAPHICPROPERTIES_HXX +#define INCLUDED_OOX_DRAWINGML_GRAPHICPROPERTIES_HXX + +#include <sal/config.h> + +#include <oox/drawingml/fillproperties.hxx> +#include <oox/helper/helper.hxx> +#include <drawingml/embeddedwavaudiofile.hxx> + +namespace oox { + class GraphicHelper; + class PropertyMap; +} + +namespace oox { +namespace drawingml { + +struct GraphicProperties +{ + BlipFillProperties maBlipProps; /// Properties for the graphic. + EmbeddedWAVAudioFile maAudio; /// Audio file details + + /** Overwrites all members that are explicitly set in rSourceProps. */ + void assignUsed( const GraphicProperties& rSourceProps ); + + /** Writes the properties to the passed property map. */ + void pushToPropMap( + PropertyMap& rPropMap, + const GraphicHelper& rGraphicHelper, + sal_Int32 nPhClr = API_RGB_TRANSPARENT ) const; +}; + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/guidcontext.hxx b/oox/inc/drawingml/guidcontext.hxx new file mode 100644 index 000000000000..285a5677ef4d --- /dev/null +++ b/oox/inc/drawingml/guidcontext.hxx @@ -0,0 +1,41 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_GUIDCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_GUIDCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + + class GuidContext : public ::oox::core::ContextHandler2 + { + + public: + GuidContext( ::oox::core::ContextHandler2Helper& rParent, OUString& rGuidId ); + virtual void onCharacters( const OUString& aChars ) SAL_OVERRIDE; + + private: + OUString& mrGuidId; + }; +} } + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/linepropertiescontext.hxx b/oox/inc/drawingml/linepropertiescontext.hxx new file mode 100644 index 000000000000..21e7810505d4 --- /dev/null +++ b/oox/inc/drawingml/linepropertiescontext.hxx @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_LINEPROPERTIESCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_LINEPROPERTIESCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + + + +struct LineProperties; + +class LinePropertiesContext : public ::oox::core::ContextHandler2 +{ +public: + LinePropertiesContext( ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttributes, + LineProperties& rLineProperties ) throw(); + virtual ~LinePropertiesContext(); + + virtual ::oox::core::ContextHandlerRef + onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + LineProperties& mrLineProperties; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_LINEPROPERTIESCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/objectdefaultcontext.hxx b/oox/inc/drawingml/objectdefaultcontext.hxx new file mode 100644 index 000000000000..f92e245d154c --- /dev/null +++ b/oox/inc/drawingml/objectdefaultcontext.hxx @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_OBJECTDEFAULTCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_OBJECTDEFAULTCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + +class Theme; + +class objectDefaultContext : public oox::core::ContextHandler2 +{ +public: + objectDefaultContext( ::oox::core::ContextHandler2Helper& rParent, Theme& rTheme ); + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + Theme& mrTheme; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_OBJECTDEFAULTCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/scene3dcontext.hxx b/oox/inc/drawingml/scene3dcontext.hxx new file mode 100644 index 000000000000..edd92e8df1d0 --- /dev/null +++ b/oox/inc/drawingml/scene3dcontext.hxx @@ -0,0 +1,67 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_SCENE3DCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_SCENE3DCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> +#include "drawingml/shape3dproperties.hxx" + +namespace oox { namespace drawingml { + +struct Shape3DProperties; + +class Scene3DRotationPropertiesContext : public ::oox::core::ContextHandler2 +{ +public: + Scene3DRotationPropertiesContext( ::oox::core::ContextHandler2Helper& rParent, RotationProperties& rRotationProperties ) throw(); + + ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + RotationProperties& mrRotationProperties; +}; + +class Scene3DPropertiesContext : public ::oox::core::ContextHandler2 +{ +public: + Scene3DPropertiesContext( ::oox::core::ContextHandler2Helper& rParent, Shape3DProperties& r3DProperties ) throw(); + + ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + Shape3DProperties& mr3DProperties; +}; + +class Shape3DPropertiesContext : public ::oox::core::ContextHandler2 +{ +public: + Shape3DPropertiesContext( ::oox::core::ContextHandler2Helper& rParent, const ::oox::AttributeList& rAttribs, Shape3DProperties& r3DProperties ) throw(); + + ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + Shape3DProperties& mr3DProperties; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_SCENE3DCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/shape3dproperties.hxx b/oox/inc/drawingml/shape3dproperties.hxx new file mode 100644 index 000000000000..5c3eaa00ead2 --- /dev/null +++ b/oox/inc/drawingml/shape3dproperties.hxx @@ -0,0 +1,98 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_SHAPE3DPROPERTIES_HXX +#define INCLUDED_OOX_DRAWINGML_SHAPE3DPROPERTIES_HXX + +#include <map> +#include <com/sun/star/graphic/XGraphic.hpp> +#include <com/sun/star/geometry/IntegerRectangle2D.hpp> +#include <oox/core/xmlfilterbase.hxx> +#include <oox/drawingml/color.hxx> +#include <oox/helper/helper.hxx> + +namespace oox { class PropertyMap; } +namespace oox { class PropertySet; } +namespace oox { namespace core { class ModelObjectContainer; } } + +namespace oox { +namespace drawingml { + + + +struct RotationProperties +{ + OptValue< sal_Int32 > mnLatitude; + OptValue< sal_Int32 > mnLongitude; + OptValue< sal_Int32 > mnRevolution; +}; + +struct BevelProperties +{ + OptValue< sal_Int32 > mnPreset; + OptValue< sal_Int32 > mnWidth; + OptValue< sal_Int32 > mnHeight; +}; + +struct Shape3DProperties +{ + OptValue< sal_Int32 > mnPreset; + OptValue< float > mfFieldOfVision; + OptValue< float > mfZoom; + OptValue< sal_Int32 > mnLightRigDirection; + OptValue< sal_Int32 > mnLightRigType; + RotationProperties maCameraRotation; + RotationProperties maLightRigRotation; + + OptValue< sal_Int32 > mnExtrusionH; + OptValue< sal_Int32 > mnContourW; + OptValue< sal_Int32 > mnShapeZ; + OptValue< sal_Int32 > mnMaterial; + Color maExtrusionColor; + Color maContourColor; + + OptValue< BevelProperties > maTopBevelProperties; + OptValue< BevelProperties > maBottomBevelProperties; + + /** Overwrites all members that are explicitly set in rSourceProps. */ + void assignUsed( const Shape3DProperties& rSourceProps ); + + OUString getCameraPrstName( sal_Int32 nElement ); + OUString getLightRigName( sal_Int32 nElement ); + OUString getLightRigDirName( sal_Int32 nElement ); + OUString getBevelPresetTypeString( sal_Int32 nType ); + OUString getPresetMaterialTypeString( sal_Int32 nType ); + + css::uno::Sequence< css::beans::PropertyValue > getCameraAttributes(); + css::uno::Sequence< css::beans::PropertyValue > getLightRigAttributes(); + css::uno::Sequence< css::beans::PropertyValue > getShape3DAttributes( + const GraphicHelper& rGraphicHelper, sal_Int32 rPhClr = API_RGB_TRANSPARENT ); + css::uno::Sequence< css::beans::PropertyValue > getBevelAttributes( BevelProperties rProps ); + css::uno::Sequence< css::beans::PropertyValue > getColorAttributes( + const Color& rColor, const GraphicHelper& rGraphicHelper, sal_Int32 rPhClr ); +}; + + + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/shapepropertiescontext.hxx b/oox/inc/drawingml/shapepropertiescontext.hxx new file mode 100644 index 000000000000..4718e3b9a05d --- /dev/null +++ b/oox/inc/drawingml/shapepropertiescontext.hxx @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_SHAPEPROPERTIESCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_SHAPEPROPERTIESCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> +#include <oox/drawingml/shape.hxx> + +namespace oox { namespace drawingml { + +class ShapePropertiesContext : public ::oox::core::ContextHandler2 +{ +public: + ShapePropertiesContext( ::oox::core::ContextHandler2Helper& rParent, Shape& rShape ); + + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + Shape& mrShape; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_SHAPEPROPERTIESCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/shapestylecontext.hxx b/oox/inc/drawingml/shapestylecontext.hxx new file mode 100644 index 000000000000..b7a479124560 --- /dev/null +++ b/oox/inc/drawingml/shapestylecontext.hxx @@ -0,0 +1,44 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_SHAPESTYLECONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_SHAPESTYLECONTEXT_HXX + +#include <oox/drawingml/shape.hxx> +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + +class ShapeStyleContext : public ::oox::core::ContextHandler2 +{ +public: + ShapeStyleContext( ::oox::core::ContextHandler2Helper& rParent, Shape& rShape ); + virtual ~ShapeStyleContext(); + + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + Shape& mrShape; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_SHAPESTYLECONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/spdefcontext.hxx b/oox/inc/drawingml/spdefcontext.hxx new file mode 100644 index 000000000000..2488197cac51 --- /dev/null +++ b/oox/inc/drawingml/spdefcontext.hxx @@ -0,0 +1,42 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_SPDEFCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_SPDEFCONTEXT_HXX + +#include <oox/drawingml/shape.hxx> +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + +class spDefContext : public oox::core::ContextHandler2 +{ +public: + spDefContext( ::oox::core::ContextHandler2Helper& rParent, Shape& rDefaultObject ); + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + Shape& mrDefaultObject; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_SPDEFCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/table/tablecell.hxx b/oox/inc/drawingml/table/tablecell.hxx index c484ed20ba02..e6502104ffc8 100644 --- a/oox/inc/drawingml/table/tablecell.hxx +++ b/oox/inc/drawingml/table/tablecell.hxx @@ -25,7 +25,7 @@ #include <oox/drawingml/drawingmltypes.hxx> #include <oox/drawingml/lineproperties.hxx> #include <oox/drawingml/fillproperties.hxx> -#include <oox/drawingml/textliststyle.hxx> +#include <drawingml/textliststyle.hxx> #include <com/sun/star/table/XCell.hpp> #include <boost/shared_ptr.hpp> diff --git a/oox/inc/drawingml/table/tablestylepart.hxx b/oox/inc/drawingml/table/tablestylepart.hxx index 7177deb5b982..8c29518d46c9 100644 --- a/oox/inc/drawingml/table/tablestylepart.hxx +++ b/oox/inc/drawingml/table/tablestylepart.hxx @@ -23,7 +23,7 @@ #include <rtl/ustring.hxx> #include <boost/optional.hpp> #include <oox/drawingml/color.hxx> -#include <oox/drawingml/textfont.hxx> +#include <drawingml/textfont.hxx> #include <oox/drawingml/fillproperties.hxx> #include <oox/drawingml/lineproperties.hxx> #include <oox/drawingml/shape.hxx> diff --git a/oox/inc/drawingml/table/tablestyletextstylecontext.hxx b/oox/inc/drawingml/table/tablestyletextstylecontext.hxx index 56f190c505f5..0768bc0b4924 100644 --- a/oox/inc/drawingml/table/tablestyletextstylecontext.hxx +++ b/oox/inc/drawingml/table/tablestyletextstylecontext.hxx @@ -20,7 +20,7 @@ #ifndef INCLUDED_OOX_DRAWINGML_TABLE_TABLESTYLETEXTSTYLECONTEXT_HXX #define INCLUDED_OOX_DRAWINGML_TABLE_TABLESTYLETEXTSTYLECONTEXT_HXX -#include <oox/core/contexthandler.hxx> +#include <oox/core/contexthandler2.hxx> #include <drawingml/table/tablestylepart.hxx> namespace oox { namespace drawingml { namespace table { diff --git a/oox/inc/drawingml/textbody.hxx b/oox/inc/drawingml/textbody.hxx new file mode 100644 index 000000000000..ea9bca7e586d --- /dev/null +++ b/oox/inc/drawingml/textbody.hxx @@ -0,0 +1,73 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTBODY_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTBODY_HXX + +#include <oox/drawingml/drawingmltypes.hxx> +#include <drawingml/textbodyproperties.hxx> +#include <drawingml/textliststyle.hxx> + +namespace com { namespace sun { namespace star { + namespace text { class XText; } + namespace text { class XTextCursor; } +} } } + +namespace oox { namespace core { class XmlFilterBase; } } + +namespace oox { namespace drawingml { + +class TextParagraph; +typedef RefVector< TextParagraph > TextParagraphVector; + +class TextBody +{ +public: + TextBody(); + TextBody( TextBodyPtr pBody ); + ~TextBody(); + + const TextParagraphVector& getParagraphs() const { return maParagraphs; } + TextParagraph& addParagraph(); + + const TextListStyle& getTextListStyle() const { return maTextListStyle; } + TextListStyle& getTextListStyle() { return maTextListStyle; } + + const TextBodyProperties& getTextProperties() const { return maTextProperties; } + TextBodyProperties& getTextProperties() { return maTextProperties; } + + /** insert the text body at the text cursor */ + void insertAt( + const ::oox::core::XmlFilterBase& rFilterBase, + const ::com::sun::star::uno::Reference < ::com::sun::star::text::XText > & xText, + const ::com::sun::star::uno::Reference < ::com::sun::star::text::XTextCursor > & xAt, + const TextCharacterProperties& rTextStyleProperties, + const TextListStylePtr& pMasterTextListStyle ) const; + bool isEmpty(); +protected: + TextParagraphVector maParagraphs; + TextBodyProperties maTextProperties; + TextListStyle maTextListStyle; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTBODY_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textbodycontext.hxx b/oox/inc/drawingml/textbodycontext.hxx new file mode 100644 index 000000000000..43e80af578c9 --- /dev/null +++ b/oox/inc/drawingml/textbodycontext.hxx @@ -0,0 +1,62 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTBODYCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTBODYCONTEXT_HXX + +#include <com/sun/star/text/XText.hpp> + +#include <drawingml/textbody.hxx> +#include <drawingml/textrun.hxx> +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + +class TextBodyContext : public ::oox::core::ContextHandler2 +{ +public: + TextBodyContext( ::oox::core::ContextHandler2Helper& rParent, TextBody& rTextBody ); + + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + TextBody& mrTextBody; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > mxText; +}; + +// CT_RegularTextRun +class RegularTextRunContext : public ::oox::core::ContextHandler2 +{ +public: + RegularTextRunContext( ::oox::core::ContextHandler2Helper& rParent, TextRunPtr pRunPtr ); + + virtual void onEndElement() SAL_OVERRIDE; + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + virtual void onCharacters( const OUString& aChars ) SAL_OVERRIDE; + +protected: + TextRunPtr mpRunPtr; + bool mbIsInText; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTBODYCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textbodyproperties.hxx b/oox/inc/drawingml/textbodyproperties.hxx new file mode 100644 index 000000000000..e6ed0fc19011 --- /dev/null +++ b/oox/inc/drawingml/textbodyproperties.hxx @@ -0,0 +1,59 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTBODYPROPERTIES_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTBODYPROPERTIES_HXX + +#include <com/sun/star/drawing/TextVerticalAdjust.hpp> +#include <oox/helper/helper.hxx> +#include <oox/helper/propertymap.hxx> +#include <boost/optional.hpp> + +namespace oox { +namespace drawingml { + + + +struct TextBodyProperties +{ + PropertyMap maPropertyMap; + OptValue< sal_Int32 > moRotation; + bool mbAnchorCtr; + OptValue< sal_Int32 > moVert; + boost::optional< sal_Int32 > moInsets[4]; + boost::optional< sal_Int32 > moTextOffUpper; + boost::optional< sal_Int32 > moTextOffLeft; + boost::optional< sal_Int32 > moTextOffLower; + boost::optional< sal_Int32 > moTextOffRight; + ::com::sun::star::drawing::TextVerticalAdjust meVA; + + explicit TextBodyProperties(); + + void pushRotationAdjustments( sal_Int32 nRotation ); + void pushVertSimulation(); +}; + + + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textbodypropertiescontext.hxx b/oox/inc/drawingml/textbodypropertiescontext.hxx new file mode 100644 index 000000000000..b3ec0326d0b4 --- /dev/null +++ b/oox/inc/drawingml/textbodypropertiescontext.hxx @@ -0,0 +1,46 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTBODYPROPERTIESCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTBODYPROPERTIESCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + +struct TextBodyProperties; + +class TextBodyPropertiesContext : public ::oox::core::ContextHandler2 +{ +public: + TextBodyPropertiesContext( ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttributes, + TextBodyProperties& rTextBodyProp ); + + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + TextBodyProperties& mrTextBodyProp; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTBODYPROPERTIESCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textcharacterproperties.hxx b/oox/inc/drawingml/textcharacterproperties.hxx new file mode 100644 index 000000000000..b873c8838f85 --- /dev/null +++ b/oox/inc/drawingml/textcharacterproperties.hxx @@ -0,0 +1,92 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTCHARACTERPROPERTIES_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTCHARACTERPROPERTIES_HXX + +#include <oox/helper/helper.hxx> +#include <oox/helper/propertymap.hxx> +#include <oox/drawingml/color.hxx> +#include <drawingml/textfont.hxx> +#include <oox/drawingml/fillproperties.hxx> + +namespace oox { class PropertySet; } + +namespace oox { +namespace drawingml { + + + +struct TextCharacterProperties +{ + PropertyMap maHyperlinkPropertyMap; + TextFont maLatinFont; + TextFont maLatinThemeFont; + TextFont maAsianFont; + TextFont maAsianThemeFont; + TextFont maComplexFont; + TextFont maComplexThemeFont; + TextFont maSymbolFont; + Color maCharColor; + Color maUnderlineColor; + Color maHighlightColor; + OptValue< OUString > moLang; + OptValue< sal_Int32 > moHeight; + OptValue< sal_Int32 > moSpacing; + OptValue< sal_Int32 > moUnderline; + OptValue< sal_Int32 > moBaseline; + OptValue< sal_Int32 > moStrikeout; + OptValue< sal_Int32 > moCaseMap; + OptValue< bool > moBold; + OptValue< bool > moItalic; + OptValue< bool > moUnderlineLineFollowText; + OptValue< bool > moUnderlineFillFollowText; + GradientFillProperties maGradientProps; /// Properties for gradient text colors + + std::vector<css::beans::PropertyValue> maTextEffectsProperties; + + /** Overwrites all members that are explicitly set in rSourceProps. */ + void assignUsed( const TextCharacterProperties& rSourceProps ); + + /** Returns the current character size. If possible the masterstyle should + have been applied before, otherwise the character size can be zero and + the default value is returned. */ + float getCharHeightPoints( float fDefault ) const; + + /** Writes the properties to the passed property map. */ + void pushToPropMap( + PropertyMap& rPropMap, + const ::oox::core::XmlFilterBase& rFilter, + bool bUseOptional = false ) const; + + /** Writes the properties to the passed property set. */ + void pushToPropSet( + PropertySet& rPropSet, + const ::oox::core::XmlFilterBase& rFilter, + bool bUseOptional = false ) const; +}; + + + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textcharacterpropertiescontext.hxx b/oox/inc/drawingml/textcharacterpropertiescontext.hxx new file mode 100644 index 000000000000..d44227c96320 --- /dev/null +++ b/oox/inc/drawingml/textcharacterpropertiescontext.hxx @@ -0,0 +1,47 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTCHARACTERPROPERTIESCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTCHARACTERPROPERTIESCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + +struct TextCharacterProperties; + +class TextCharacterPropertiesContext : public ::oox::core::ContextHandler2 +{ +public: + TextCharacterPropertiesContext( ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttribs, + TextCharacterProperties& rTextCharacterProperties ); + virtual ~TextCharacterPropertiesContext(); + + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + TextCharacterProperties& mrTextCharacterProperties; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTCHARACTERPROPERTIESCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/texteffectscontext.hxx b/oox/inc/drawingml/texteffectscontext.hxx new file mode 100644 index 000000000000..b8e3aeb4a4a0 --- /dev/null +++ b/oox/inc/drawingml/texteffectscontext.hxx @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTEFFECTSCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTEFFECTSCONTEXT_HXX + +#include <com/sun/star/beans/PropertyValue.hpp> + +#include <oox/helper/grabbagstack.hxx> +#include <oox/core/contexthandler2.hxx> +#include <boost/scoped_ptr.hpp> +#include <vector> + +namespace oox { namespace drawingml { + +class TextEffectsContext : public oox::core::ContextHandler2 +{ +public: + TextEffectsContext(oox::core::ContextHandler2Helper& rParent, + sal_Int32 aElementToken, + std::vector<css::beans::PropertyValue>& rTextEffectsProperties); + virtual ~TextEffectsContext(); + + virtual void onStartElement(const oox::AttributeList& rAttribs) SAL_OVERRIDE; + virtual void onEndElement() SAL_OVERRIDE; + + virtual oox::core::ContextHandlerRef onCreateContext(sal_Int32 Element, const oox::AttributeList& rAttribs) SAL_OVERRIDE; + +protected: + std::vector<css::beans::PropertyValue>& mrTextEffectsProperties; + boost::scoped_ptr<oox::GrabBagStack> mpGrabBagStack; + sal_Int32 mnCurrentElement; + +private: + void processAttributes(const AttributeList& rAttribs); + void pushAttributeToGrabBag (const sal_Int32& aAttributeId, const OUString& rElementName, const AttributeList& rAttribs); +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTEFFECTSCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textfield.hxx b/oox/inc/drawingml/textfield.hxx new file mode 100644 index 000000000000..80ac53f0e7f2 --- /dev/null +++ b/oox/inc/drawingml/textfield.hxx @@ -0,0 +1,63 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTFIELD_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTFIELD_HXX + +#include <boost/shared_ptr.hpp> + +#include <drawingml/textrun.hxx> +#include <drawingml/textparagraphproperties.hxx> + +namespace oox { namespace drawingml { + +struct TextCharacterProperties; + +class TextField + : public TextRun +{ +public: + TextField(); + + TextParagraphProperties& getTextParagraphProperties() { return maTextParagraphProperties; } + const TextParagraphProperties& getTextParagraphProperties() const { return maTextParagraphProperties; } + + void setType( const OUString& sType ) { msType = sType; } + void setUuid( const OUString & sUuid ) { msUuid = sUuid; } + + virtual sal_Int32 insertAt( + const ::oox::core::XmlFilterBase& rFilterBase, + const ::com::sun::star::uno::Reference < ::com::sun::star::text::XText > & xText, + const ::com::sun::star::uno::Reference < ::com::sun::star::text::XTextCursor > &xAt, + const TextCharacterProperties& rTextCharacterStyle, + float nDefaultCharHeight) const SAL_OVERRIDE; + +private: + TextParagraphProperties maTextParagraphProperties; + OUString msType; + OUString msUuid; +}; + +typedef boost::shared_ptr< TextField > TextFieldPtr; + +} } + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textfieldcontext.hxx b/oox/inc/drawingml/textfieldcontext.hxx new file mode 100644 index 000000000000..425122497c57 --- /dev/null +++ b/oox/inc/drawingml/textfieldcontext.hxx @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTFIELDCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTFIELDCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + +class TextField; + +class TextFieldContext + : public ::oox::core::ContextHandler2 +{ +public: + TextFieldContext( ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttributes, + TextField& rTextField); + virtual void onEndElement( ) SAL_OVERRIDE; + virtual void onCharacters( const OUString& aChars ) SAL_OVERRIDE; + virtual ::oox::core::ContextHandlerRef onCreateContext( + sal_Int32 aElementToken, const ::oox::AttributeList& rAttributes ) SAL_OVERRIDE; + +private: + TextField& mrTextField; + bool mbIsInText; +}; + +} } + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textfont.hxx b/oox/inc/drawingml/textfont.hxx new file mode 100644 index 000000000000..bb6ae6d2af82 --- /dev/null +++ b/oox/inc/drawingml/textfont.hxx @@ -0,0 +1,76 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTFONT_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTFONT_HXX + +#include <rtl/ustring.hxx> + +namespace oox { class AttributeList; } +namespace oox { namespace core { class XmlFilterBase; } } + +namespace oox { +namespace drawingml { + + + +/** carries a CT_TextFont*/ +class TextFont +{ +public: + explicit TextFont(); + + /** Sets attributes from the passed attribute list. */ + void setAttributes( const AttributeList& rAttribs ); + + /** Sets font name and init other attributes. */ + void setAttributes( const OUString& rFontName ); + + /** Overwrites this text font with the passed text font, if it is used. */ + void assignIfUsed( const TextFont& rTextFont ); + + /** Returns the font name, pitch, and family; tries to resolve theme + placeholder names, e.g. '+mj-lt' for the major latin theme font. */ + bool getFontData( + OUString& rFontName, + sal_Int16& rnFontPitch, + sal_Int16& rnFontFamily, + const ::oox::core::XmlFilterBase& rFilter ) const; + +private: + bool implGetFontData( + OUString& rFontName, + sal_Int16& rnFontPitch, + sal_Int16& rnFontFamily ) const; + +private: + OUString maTypeface; + OUString maPanose; + sal_Int32 mnPitch; + sal_Int32 mnCharset; +}; + + + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textliststyle.hxx b/oox/inc/drawingml/textliststyle.hxx new file mode 100644 index 000000000000..1f3c6a0254d0 --- /dev/null +++ b/oox/inc/drawingml/textliststyle.hxx @@ -0,0 +1,62 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTLISTSTYLE_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTLISTSTYLE_HXX + +#include <drawingml/textparagraphproperties.hxx> +#include <oox/helper/refvector.hxx> + +namespace oox { namespace drawingml { + +typedef RefVector< TextParagraphProperties > TextParagraphPropertiesVector; + +class TextListStyle +{ +public: + + TextListStyle(); + ~TextListStyle(); + + TextListStyle(const TextListStyle& rStyle); + TextListStyle& operator=(const TextListStyle& rStyle); + + void apply( const TextListStyle& rTextListStyle ); + + const TextParagraphPropertiesVector& getListStyle() const { return maListStyle; }; + TextParagraphPropertiesVector& getListStyle() { return maListStyle; }; + + const TextParagraphPropertiesVector& getAggregationListStyle() const { return maAggregationListStyle; }; + TextParagraphPropertiesVector& getAggregationListStyle() { return maAggregationListStyle; }; + +#if defined(DBG_UTIL) && OSL_DEBUG_LEVEL > 1 + void dump() const; +#endif + +protected: + + TextParagraphPropertiesVector maListStyle; + TextParagraphPropertiesVector maAggregationListStyle; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTLISTSTYLE_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textliststylecontext.hxx b/oox/inc/drawingml/textliststylecontext.hxx new file mode 100644 index 000000000000..f71fc899cb0f --- /dev/null +++ b/oox/inc/drawingml/textliststylecontext.hxx @@ -0,0 +1,44 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTLISTSTYLECONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTLISTSTYLECONTEXT_HXX + +#include <drawingml/textliststyle.hxx> +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + +class TextListStyleContext : public ::oox::core::ContextHandler2 +{ +public: + TextListStyleContext( ::oox::core::ContextHandler2Helper& rParent, TextListStyle& rTextListStyle ); + virtual ~TextListStyleContext(); + + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + TextListStyle& mrTextListStyle; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTLISTSTYLECONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textparagraph.hxx b/oox/inc/drawingml/textparagraph.hxx new file mode 100644 index 000000000000..c419a65d8cff --- /dev/null +++ b/oox/inc/drawingml/textparagraph.hxx @@ -0,0 +1,72 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTPARAGRAPH_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTPARAGRAPH_HXX + +#include <com/sun/star/text/XTextCursor.hpp> +#include <com/sun/star/text/XText.hpp> + +#include <oox/core/xmlfilterbase.hxx> +#include <drawingml/textrun.hxx> +#include <drawingml/textliststyle.hxx> +#include <drawingml/textparagraphproperties.hxx> + +namespace oox { namespace drawingml { + +typedef RefVector< TextRun > TextRunVector; + +class TextParagraph +{ +public: + TextParagraph(); + ~TextParagraph(); + + TextRunVector& getRuns() { return maRuns; } + const TextRunVector& getRuns() const { return maRuns; } + void addRun( const TextRunPtr & pRun ) { maRuns.push_back( pRun ); } + + TextParagraphProperties& getProperties() { return maProperties; } + const TextParagraphProperties& getProperties() const { return maProperties; } + + TextCharacterProperties& getEndProperties() { return maEndProperties; } + const TextCharacterProperties& getEndProperties() const { return maEndProperties; } + + void insertAt( + const ::oox::core::XmlFilterBase& rFilterBase, + const ::com::sun::star::uno::Reference < ::com::sun::star::text::XText > & xText, + const ::com::sun::star::uno::Reference < ::com::sun::star::text::XTextCursor > &xAt, + const TextCharacterProperties& rTextStyleProperties, + const TextListStyle& rTextListStyle, + bool bFirst = false, + float nDefaultCharHeight = 0) const; + +private: + TextParagraphProperties maProperties; + TextCharacterProperties maEndProperties; + TextRunVector maRuns; +}; + +typedef boost::shared_ptr< TextParagraph > TextParagraphPtr; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTPARAGRAPH_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textparagraphproperties.hxx b/oox/inc/drawingml/textparagraphproperties.hxx new file mode 100644 index 000000000000..e6ba58987bd3 --- /dev/null +++ b/oox/inc/drawingml/textparagraphproperties.hxx @@ -0,0 +1,132 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTPARAGRAPHPROPERTIES_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTPARAGRAPHPROPERTIES_HXX + +#include <com/sun/star/beans/XPropertySet.hpp> +#include <drawingml/fillpropertiesgroupcontext.hxx> +#include <drawingml/textcharacterproperties.hxx> +#include <com/sun/star/style/NumberingType.hpp> +#include <drawingml/textfont.hxx> +#include <drawingml/textspacing.hxx> +#include <boost/optional.hpp> + +namespace com { namespace sun { namespace star { + namespace graphic { class XGraphic; } +} } } + +namespace oox { namespace drawingml { + +class TextParagraphProperties; + +typedef boost::shared_ptr< TextParagraphProperties > TextParagraphPropertiesPtr; + +class BulletList +{ +public: + BulletList( ); + bool is() const; + void apply( const BulletList& ); + void pushToPropMap( const ::oox::core::XmlFilterBase* pFilterBase, PropertyMap& xPropMap ) const; + void setBulletChar( const OUString & sChar ); + void setStartAt( sal_Int32 nStartAt ){ mnStartAt <<= static_cast< sal_Int16 >( nStartAt ); } + void setType( sal_Int32 nType ); + void setNone( ); + void setSuffixParenBoth(); + void setSuffixParenRight(); + void setSuffixPeriod(); + void setSuffixNone(); + void setSuffixMinusRight(); + void setBulletSize(sal_Int16 nSize); + void setFontSize(sal_Int16 nSize); + void setStyleName( const OUString& rStyleName ) { maStyleName <<= rStyleName; } + void setGraphic( ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XGraphic >& rXGraphic ); + + ::oox::drawingml::ColorPtr maBulletColorPtr; + ::com::sun::star::uno::Any mbBulletColorFollowText; + ::com::sun::star::uno::Any mbBulletFontFollowText; + ::oox::drawingml::TextFont maBulletFont; + ::com::sun::star::uno::Any msBulletChar; + ::com::sun::star::uno::Any mnStartAt; + ::com::sun::star::uno::Any mnNumberingType; + ::com::sun::star::uno::Any msNumberingPrefix; + ::com::sun::star::uno::Any msNumberingSuffix; + ::com::sun::star::uno::Any mnSize; + ::com::sun::star::uno::Any mnFontSize; + ::com::sun::star::uno::Any maStyleName; + ::com::sun::star::uno::Any maGraphic; + boost::optional< float > maFollowFontSize; +}; + +class TextParagraphProperties +{ +public: + + TextParagraphProperties(); + ~TextParagraphProperties(); + + void setLevel( sal_Int16 nLevel ) { mnLevel = nLevel; } + sal_Int16 getLevel( ) const { return mnLevel; } + PropertyMap& getTextParagraphPropertyMap() { return maTextParagraphPropertyMap; } + BulletList& getBulletList() { return maBulletList; } + TextCharacterProperties& getTextCharacterProperties() { return maTextCharacterProperties; } + const TextCharacterProperties& getTextCharacterProperties() const { return maTextCharacterProperties; } + + TextSpacing& getParaTopMargin() { return maParaTopMargin; } + TextSpacing& getParaBottomMargin() { return maParaBottomMargin; } + boost::optional< sal_Int32 >& getParaLeftMargin(){ return moParaLeftMargin; } + boost::optional< sal_Int32 >& getFirstLineIndentation(){ return moFirstLineIndentation; } + + boost::optional< sal_Int16 >& getParaAdjust() { return moParaAdjust; } + void setParaAdjust( sal_Int16 nParaAdjust ) { moParaAdjust = nParaAdjust; } + + void apply( const TextParagraphProperties& rSourceProps ); + void pushToPropSet( const ::oox::core::XmlFilterBase* pFilterBase, + const ::com::sun::star::uno::Reference < ::com::sun::star::beans::XPropertySet > & xPropSet, + PropertyMap& rioBulletList, const BulletList* pMasterBuList, bool bApplyBulletList, float fFontSize, bool bPushDefaultValues = false ) const; + void pushToPropSet( const ::com::sun::star::uno::Reference < ::com::sun::star::beans::XPropertySet > & xPropSet) const; + + /** Returns the largest character size of this paragraph. If possible the + masterstyle should have been applied before, otherwise the character + size can be zero and the default value is returned. */ + float getCharHeightPoints( float fDefault ) const; + +#ifdef DBG_UTIL + void dump() const; +#endif + +protected: + + TextCharacterProperties maTextCharacterProperties; + PropertyMap maTextParagraphPropertyMap; + BulletList maBulletList; + TextSpacing maParaTopMargin; + TextSpacing maParaBottomMargin; + boost::optional< sal_Int32 > moParaLeftMargin; + boost::optional< sal_Int32 > moFirstLineIndentation; + boost::optional< sal_Int16 > moParaAdjust; + sal_Int16 mnLevel; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTPARAGRAPHPROPERTIES_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textparagraphpropertiescontext.hxx b/oox/inc/drawingml/textparagraphpropertiescontext.hxx new file mode 100644 index 000000000000..6f5fbc5983ed --- /dev/null +++ b/oox/inc/drawingml/textparagraphpropertiescontext.hxx @@ -0,0 +1,55 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTPARAGRAPHPROPERTIESCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTPARAGRAPHPROPERTIESCONTEXT_HXX + +#include <list> + +#include <com/sun/star/style/TabStop.hpp> +#include <oox/drawingml/drawingmltypes.hxx> +#include <drawingml/textparagraphproperties.hxx> +#include <drawingml/textspacing.hxx> +#include <oox/core/contexthandler2.hxx> + +namespace oox { namespace drawingml { + +class TextParagraphPropertiesContext : public ::oox::core::ContextHandler2 +{ +public: + TextParagraphPropertiesContext( ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttributes, + TextParagraphProperties& rTextParagraphProperties ); + virtual ~TextParagraphPropertiesContext(); + + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + TextParagraphProperties& mrTextParagraphProperties; + TextSpacing maLineSpacing; + BulletList& mrBulletList; + ::std::list< ::com::sun::star::style::TabStop > maTabList; + ::boost::shared_ptr< BlipFillProperties > mxBlipProps; +}; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTPARAGRAPHPROPERTIESCONTEXT_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textrun.hxx b/oox/inc/drawingml/textrun.hxx new file mode 100644 index 000000000000..1b77465f08ed --- /dev/null +++ b/oox/inc/drawingml/textrun.hxx @@ -0,0 +1,63 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTRUN_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTRUN_HXX + +#include <com/sun/star/text/XTextCursor.hpp> +#include <com/sun/star/text/XText.hpp> +#include <com/sun/star/frame/XModel.hpp> +#include <drawingml/textcharacterproperties.hxx> + +namespace oox { namespace drawingml { + +class TextRun +{ +public: + TextRun(); + virtual ~TextRun(); + + OUString& getText() { return msText; } + const OUString& getText() const { return msText; } + + TextCharacterProperties& getTextCharacterProperties() { return maTextCharacterProperties; } + const TextCharacterProperties& getTextCharacterProperties() const { return maTextCharacterProperties; } + + void setLineBreak() { mbIsLineBreak = true; } + + virtual sal_Int32 insertAt( + const ::oox::core::XmlFilterBase& rFilterBase, + const ::com::sun::star::uno::Reference < ::com::sun::star::text::XText >& xText, + const ::com::sun::star::uno::Reference < ::com::sun::star::text::XTextCursor >& xAt, + const TextCharacterProperties& rTextCharacterStyle, + float nDefaultCharHeight) const; + +private: + OUString msText; + TextCharacterProperties maTextCharacterProperties; + bool mbIsLineBreak; +}; + +typedef boost::shared_ptr< TextRun > TextRunPtr; + +} } + +#endif // INCLUDED_OOX_DRAWINGML_TEXTRUN_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/textspacing.hxx b/oox/inc/drawingml/textspacing.hxx new file mode 100644 index 000000000000..4c859d706057 --- /dev/null +++ b/oox/inc/drawingml/textspacing.hxx @@ -0,0 +1,70 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TEXTSPACING_HXX +#define INCLUDED_OOX_DRAWINGML_TEXTSPACING_HXX + +#include <rtl/ustring.hxx> + +#include <com/sun/star/style/LineSpacing.hpp> +#include <com/sun/star/style/LineSpacingMode.hpp> +#include <oox/drawingml/drawingmltypes.hxx> + +namespace oox { namespace drawingml { + + + /** carries a CT_TextSpacing */ + class TextSpacing + { + public: + enum { + POINTS = 0, + PERCENT + }; + TextSpacing() + : nUnit( POINTS ), nValue( 0 ), bHasValue( false ) + { + } + TextSpacing( sal_Int32 nPoints ) : nUnit( POINTS ), nValue( nPoints ), bHasValue( true ){}; + ::com::sun::star::style::LineSpacing toLineSpacing() const + { + ::com::sun::star::style::LineSpacing aSpacing; + aSpacing.Mode = ( nUnit == PERCENT + ? ::com::sun::star::style::LineSpacingMode::PROP + : ::com::sun::star::style::LineSpacingMode::MINIMUM ); + aSpacing.Height = static_cast< sal_Int16 >( nUnit == PERCENT ? nValue / 1000 : nValue ); + return aSpacing; + } + sal_Int32 toMargin( float fFontSize ) const + { + if ( nUnit == PERCENT ) + return GetTextSpacingPoint(static_cast<sal_Int32>((fFontSize*nValue)/1000)); + else + return nValue; + } + sal_Int32 nUnit; + sal_Int32 nValue; + bool bHasValue; + }; + +} } + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/themeelementscontext.hxx b/oox/inc/drawingml/themeelementscontext.hxx new file mode 100644 index 000000000000..47acdc9a6290 --- /dev/null +++ b/oox/inc/drawingml/themeelementscontext.hxx @@ -0,0 +1,46 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_THEMEELEMENTSCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_THEMEELEMENTSCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> + +namespace oox { +namespace drawingml { + +class Theme; + +class ThemeElementsContext : public oox::core::ContextHandler2 +{ +public: + ThemeElementsContext( ::oox::core::ContextHandler2Helper& rParent, Theme& rTheme ); + virtual ::oox::core::ContextHandlerRef onCreateContext( sal_Int32 nElement, + const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +private: + Theme& mrTheme; +}; + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/inc/drawingml/transform2dcontext.hxx b/oox/inc/drawingml/transform2dcontext.hxx new file mode 100644 index 000000000000..dfe49cb0fc08 --- /dev/null +++ b/oox/inc/drawingml/transform2dcontext.hxx @@ -0,0 +1,48 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_OOX_DRAWINGML_TRANSFORM2DCONTEXT_HXX +#define INCLUDED_OOX_DRAWINGML_TRANSFORM2DCONTEXT_HXX + +#include <oox/core/contexthandler2.hxx> + +namespace oox { +namespace drawingml { + +class Shape; + +/** context to import a CT_Transform2D */ +class Transform2DContext : public ::oox::core::ContextHandler2 +{ +public: + Transform2DContext( ::oox::core::ContextHandler2Helper& rParent, + const ::oox::AttributeList& rAttributes, Shape& rShape, bool btxXfrm = false ) throw(); + virtual ::oox::core::ContextHandlerRef onCreateContext( ::sal_Int32 Element, const ::oox::AttributeList& rAttribs ) SAL_OVERRIDE; + +protected: + Shape& mrShape; + bool mbtxXfrm; +}; + +} // namespace drawingml +} // namespace oox + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/oox/source/drawingml/ThemeOverrideFragmentHandler.cxx b/oox/source/drawingml/ThemeOverrideFragmentHandler.cxx index 5f3e7fc85a76..8d710955db6e 100644 --- a/oox/source/drawingml/ThemeOverrideFragmentHandler.cxx +++ b/oox/source/drawingml/ThemeOverrideFragmentHandler.cxx @@ -7,9 +7,9 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -#include "oox/drawingml/ThemeOverrideFragmentHandler.hxx" +#include <drawingml/ThemeOverrideFragmentHandler.hxx> #include "oox/drawingml/theme.hxx" -#include "oox/drawingml/themeelementscontext.hxx" +#include "drawingml/themeelementscontext.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/chart/axiscontext.cxx b/oox/source/drawingml/chart/axiscontext.cxx index c4145043f2c2..295b25f76fe1 100644 --- a/oox/source/drawingml/chart/axiscontext.cxx +++ b/oox/source/drawingml/chart/axiscontext.cxx @@ -19,8 +19,8 @@ #include "drawingml/chart/axiscontext.hxx" -#include "oox/drawingml/shapepropertiescontext.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/shapepropertiescontext.hxx" +#include "drawingml/textbodycontext.hxx" #include "drawingml/chart/axismodel.hxx" #include "drawingml/chart/titlecontext.hxx" diff --git a/oox/source/drawingml/chart/chartcontextbase.cxx b/oox/source/drawingml/chart/chartcontextbase.cxx index f489c2f41e7a..74bc6c112dd2 100644 --- a/oox/source/drawingml/chart/chartcontextbase.cxx +++ b/oox/source/drawingml/chart/chartcontextbase.cxx @@ -20,7 +20,7 @@ #include "drawingml/chart/chartcontextbase.hxx" #include "oox/drawingml/chart/modelbase.hxx" -#include "oox/drawingml/shapepropertiescontext.hxx" +#include "drawingml/shapepropertiescontext.hxx" namespace oox { namespace drawingml { diff --git a/oox/source/drawingml/chart/chartspacefragment.cxx b/oox/source/drawingml/chart/chartspacefragment.cxx index 40ea77a402d7..7117877618b4 100644 --- a/oox/source/drawingml/chart/chartspacefragment.cxx +++ b/oox/source/drawingml/chart/chartspacefragment.cxx @@ -19,8 +19,8 @@ #include "drawingml/chart/chartspacefragment.hxx" -#include "oox/drawingml/shapepropertiescontext.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/shapepropertiescontext.hxx" +#include "drawingml/textbodycontext.hxx" #include "drawingml/chart/chartspacemodel.hxx" #include "drawingml/chart/plotareacontext.hxx" #include "drawingml/chart/titlecontext.hxx" diff --git a/oox/source/drawingml/chart/chartspacemodel.cxx b/oox/source/drawingml/chart/chartspacemodel.cxx index c1a9c6c5c1cc..a1c107e28c48 100644 --- a/oox/source/drawingml/chart/chartspacemodel.cxx +++ b/oox/source/drawingml/chart/chartspacemodel.cxx @@ -18,6 +18,7 @@ */ #include "drawingml/chart/chartspacemodel.hxx" +#include <oox/token/tokens.hxx> namespace oox { namespace drawingml { diff --git a/oox/source/drawingml/chart/objectformatter.cxx b/oox/source/drawingml/chart/objectformatter.cxx index abf5bcb78c20..d0ab4c0bf956 100644 --- a/oox/source/drawingml/chart/objectformatter.cxx +++ b/oox/source/drawingml/chart/objectformatter.cxx @@ -27,8 +27,8 @@ #include "oox/drawingml/fillproperties.hxx" #include "oox/drawingml/lineproperties.hxx" #include "oox/drawingml/shapepropertymap.hxx" -#include "oox/drawingml/textbody.hxx" -#include "oox/drawingml/textparagraph.hxx" +#include "drawingml/textbody.hxx" +#include "drawingml/textparagraph.hxx" #include "oox/drawingml/theme.hxx" #include "drawingml/chart/chartspacemodel.hxx" #include "oox/helper/modelobjecthelper.hxx" diff --git a/oox/source/drawingml/chart/plotareacontext.cxx b/oox/source/drawingml/chart/plotareacontext.cxx index 738fa92b79b5..53cb1ae9c9ee 100644 --- a/oox/source/drawingml/chart/plotareacontext.cxx +++ b/oox/source/drawingml/chart/plotareacontext.cxx @@ -19,7 +19,7 @@ #include "drawingml/chart/plotareacontext.hxx" -#include "oox/drawingml/shapepropertiescontext.hxx" +#include "drawingml/shapepropertiescontext.hxx" #include "drawingml/chart/axiscontext.hxx" #include "drawingml/chart/plotareamodel.hxx" #include "drawingml/chart/seriescontext.hxx" diff --git a/oox/source/drawingml/chart/seriescontext.cxx b/oox/source/drawingml/chart/seriescontext.cxx index 9646851f35cc..e9002f406d8d 100644 --- a/oox/source/drawingml/chart/seriescontext.cxx +++ b/oox/source/drawingml/chart/seriescontext.cxx @@ -19,8 +19,8 @@ #include "drawingml/chart/seriescontext.hxx" -#include "oox/drawingml/shapepropertiescontext.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/shapepropertiescontext.hxx" +#include "drawingml/textbodycontext.hxx" #include "drawingml/chart/datasourcecontext.hxx" #include "drawingml/chart/seriesmodel.hxx" #include "drawingml/chart/titlecontext.hxx" diff --git a/oox/source/drawingml/chart/seriesmodel.cxx b/oox/source/drawingml/chart/seriesmodel.cxx index 8daa50a16c22..5507384a8563 100644 --- a/oox/source/drawingml/chart/seriesmodel.cxx +++ b/oox/source/drawingml/chart/seriesmodel.cxx @@ -18,6 +18,7 @@ */ #include "drawingml/chart/seriesmodel.hxx" +#include <oox/token/tokens.hxx> namespace oox { namespace drawingml { diff --git a/oox/source/drawingml/chart/titlecontext.cxx b/oox/source/drawingml/chart/titlecontext.cxx index 0a627ee6c931..e589335ed649 100644 --- a/oox/source/drawingml/chart/titlecontext.cxx +++ b/oox/source/drawingml/chart/titlecontext.cxx @@ -19,8 +19,8 @@ #include "drawingml/chart/titlecontext.hxx" -#include "oox/drawingml/shapepropertiescontext.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/shapepropertiescontext.hxx" +#include "drawingml/textbodycontext.hxx" #include "drawingml/chart/datasourcecontext.hxx" #include "drawingml/chart/titlemodel.hxx" diff --git a/oox/source/drawingml/chart/titleconverter.cxx b/oox/source/drawingml/chart/titleconverter.cxx index 29dc019bfb02..844aa0a62034 100644 --- a/oox/source/drawingml/chart/titleconverter.cxx +++ b/oox/source/drawingml/chart/titleconverter.cxx @@ -26,8 +26,8 @@ #include <com/sun/star/chart2/XLegend.hpp> #include <com/sun/star/chart2/XTitle.hpp> #include <com/sun/star/chart2/XTitled.hpp> -#include "oox/drawingml/textbody.hxx" -#include "oox/drawingml/textparagraph.hxx" +#include "drawingml/textbody.hxx" +#include "drawingml/textparagraph.hxx" #include "drawingml/chart/datasourceconverter.hxx" #include "drawingml/chart/titlemodel.hxx" #include "oox/helper/containerhelper.hxx" diff --git a/oox/source/drawingml/chart/titlemodel.cxx b/oox/source/drawingml/chart/titlemodel.cxx index 614f212d0a76..3ca7f5d58cd9 100644 --- a/oox/source/drawingml/chart/titlemodel.cxx +++ b/oox/source/drawingml/chart/titlemodel.cxx @@ -18,6 +18,7 @@ */ #include "drawingml/chart/titlemodel.hxx" +#include <oox/token/tokens.hxx> namespace oox { namespace drawingml { diff --git a/oox/source/drawingml/chart/typegroupmodel.cxx b/oox/source/drawingml/chart/typegroupmodel.cxx index 30f1cccd9321..f27f6dac9341 100644 --- a/oox/source/drawingml/chart/typegroupmodel.cxx +++ b/oox/source/drawingml/chart/typegroupmodel.cxx @@ -18,6 +18,7 @@ */ #include "drawingml/chart/typegroupmodel.hxx" +#include <oox/token/tokens.hxx> namespace oox { namespace drawingml { diff --git a/oox/source/drawingml/clrschemecontext.cxx b/oox/source/drawingml/clrschemecontext.cxx index 83244bed6856..d16a14f5992a 100644 --- a/oox/source/drawingml/clrschemecontext.cxx +++ b/oox/source/drawingml/clrschemecontext.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/clrschemecontext.hxx" +#include "drawingml/clrschemecontext.hxx" #include "oox/core/xmlfilterbase.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/colorchoicecontext.cxx b/oox/source/drawingml/colorchoicecontext.cxx index e255fcbd6fa7..3236c5adafb1 100644 --- a/oox/source/drawingml/colorchoicecontext.cxx +++ b/oox/source/drawingml/colorchoicecontext.cxx @@ -18,7 +18,7 @@ */ #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/colorchoicecontext.hxx" +#include "drawingml/colorchoicecontext.hxx" #include "oox/helper/attributelist.hxx" #include "oox/drawingml/color.hxx" diff --git a/oox/source/drawingml/connectorshapecontext.cxx b/oox/source/drawingml/connectorshapecontext.cxx index 4fa115aa99fa..03f346c70051 100644 --- a/oox/source/drawingml/connectorshapecontext.cxx +++ b/oox/source/drawingml/connectorshapecontext.cxx @@ -25,8 +25,8 @@ #include "oox/drawingml/graphicshapecontext.hxx" #include "oox/drawingml/lineproperties.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/customshapegeometry.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/customshapegeometry.hxx" +#include "drawingml/textbodycontext.hxx" using namespace oox::core; using namespace ::com::sun::star; diff --git a/oox/source/drawingml/customshapegeometry.cxx b/oox/source/drawingml/customshapegeometry.cxx index 87d330447fa5..6868e2c3d5d3 100644 --- a/oox/source/drawingml/customshapegeometry.cxx +++ b/oox/source/drawingml/customshapegeometry.cxx @@ -17,7 +17,8 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/customshapegeometry.hxx" +#include "drawingml/customshapegeometry.hxx" +#include <drawingml/customshapeproperties.hxx> #include <com/sun/star/xml/sax/FastToken.hpp> #include <boost/unordered_map.hpp> diff --git a/oox/source/drawingml/customshapepresetdata.cxx b/oox/source/drawingml/customshapepresetdata.cxx index 85d87cba669b..78d0af10fff8 100644 --- a/oox/source/drawingml/customshapepresetdata.cxx +++ b/oox/source/drawingml/customshapepresetdata.cxx @@ -12,7 +12,7 @@ #include <tools/stream.hxx> #include <comphelper/sequenceasvector.hxx> -#include "oox/drawingml/customshapeproperties.hxx" +#include "drawingml/customshapeproperties.hxx" #include "oox/helper/helper.hxx" #include "oox/helper/propertymap.hxx" #include "oox/helper/propertyset.hxx" diff --git a/oox/source/drawingml/customshapeproperties.cxx b/oox/source/drawingml/customshapeproperties.cxx index efaddba265a5..5758d7996592 100644 --- a/oox/source/drawingml/customshapeproperties.cxx +++ b/oox/source/drawingml/customshapeproperties.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/customshapeproperties.hxx" +#include "drawingml/customshapeproperties.hxx" #include "oox/helper/helper.hxx" #include "oox/helper/propertymap.hxx" #include "oox/helper/propertyset.hxx" diff --git a/oox/source/drawingml/diagram/datamodelcontext.cxx b/oox/source/drawingml/diagram/datamodelcontext.cxx index ef8f9e4ab9cd..b5b6dffa1f7a 100644 --- a/oox/source/drawingml/diagram/datamodelcontext.cxx +++ b/oox/source/drawingml/diagram/datamodelcontext.cxx @@ -19,9 +19,9 @@ #include "datamodelcontext.hxx" #include "oox/helper/attributelist.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" -#include "oox/drawingml/shapepropertiescontext.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/shapepropertiescontext.hxx" +#include "drawingml/textbodycontext.hxx" using namespace ::oox::core; using namespace ::com::sun::star::xml::sax; diff --git a/oox/source/drawingml/diagram/diagram.cxx b/oox/source/drawingml/diagram/diagram.cxx index 4d6a421868d4..1c53d7497129 100644 --- a/oox/source/drawingml/diagram/diagram.cxx +++ b/oox/source/drawingml/diagram/diagram.cxx @@ -26,9 +26,9 @@ #include <com/sun/star/xml/sax/XFastSAXSerializable.hpp> #include <rtl/ustrbuf.hxx> #include <editeng/unoprnms.hxx> -#include "oox/drawingml/textbody.hxx" -#include "oox/drawingml/textparagraph.hxx" -#include "oox/drawingml/textrun.hxx" +#include "drawingml/textbody.hxx" +#include "drawingml/textparagraph.hxx" +#include "drawingml/textrun.hxx" #include "drawingml/diagram/diagram.hxx" #include "oox/drawingml/fillproperties.hxx" #include "oox/ppt/pptshapegroupcontext.hxx" diff --git a/oox/source/drawingml/diagram/diagram.hxx b/oox/source/drawingml/diagram/diagram.hxx index 2b811f91f408..9ef921516c73 100644 --- a/oox/source/drawingml/diagram/diagram.hxx +++ b/oox/source/drawingml/diagram/diagram.hxx @@ -30,6 +30,7 @@ #include "oox/drawingml/shape.hxx" #include "oox/drawingml/fillproperties.hxx" +#include <oox/token/tokens.hxx> namespace com { namespace sun { namespace star { namespace xml { namespace dom { class XDocument; } } diff --git a/oox/source/drawingml/diagram/diagramfragmenthandler.cxx b/oox/source/drawingml/diagram/diagramfragmenthandler.cxx index 59b183634e97..f1c3cb7cddf5 100644 --- a/oox/source/drawingml/diagram/diagramfragmenthandler.cxx +++ b/oox/source/drawingml/diagram/diagramfragmenthandler.cxx @@ -22,7 +22,7 @@ #include "diagramdefinitioncontext.hxx" #include "diagramfragmenthandler.hxx" #include "datamodelcontext.hxx" -#include "oox/drawingml/colorchoicecontext.hxx" +#include "drawingml/colorchoicecontext.hxx" using namespace ::oox::core; using namespace ::com::sun::star::xml::sax; diff --git a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx index f1692ec30fb0..049f409d4120 100644 --- a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx +++ b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx @@ -27,10 +27,10 @@ #include "oox/helper/attributelist.hxx" #include "oox/drawingml/fillproperties.hxx" #include "oox/drawingml/lineproperties.hxx" -#include "oox/drawingml/textbody.hxx" -#include "oox/drawingml/textparagraph.hxx" -#include "oox/drawingml/textrun.hxx" -#include "oox/drawingml/customshapeproperties.hxx" +#include "drawingml/textbody.hxx" +#include "drawingml/textparagraph.hxx" +#include "drawingml/textrun.hxx" +#include "drawingml/customshapeproperties.hxx" #include "layoutnodecontext.hxx" using namespace ::com::sun::star; diff --git a/oox/source/drawingml/diagram/layoutnodecontext.cxx b/oox/source/drawingml/diagram/layoutnodecontext.cxx index 4612fcbf9cb5..facfda417762 100644 --- a/oox/source/drawingml/diagram/layoutnodecontext.cxx +++ b/oox/source/drawingml/diagram/layoutnodecontext.cxx @@ -22,7 +22,7 @@ #include "oox/helper/attributelist.hxx" #include "drawingml/diagram/diagram.hxx" #include "oox/drawingml/shapecontext.hxx" -#include "oox/drawingml/customshapeproperties.hxx" +#include "drawingml/customshapeproperties.hxx" #include "diagramdefinitioncontext.hxx" #include "constraintlistcontext.hxx" diff --git a/oox/source/drawingml/effectpropertiescontext.cxx b/oox/source/drawingml/effectpropertiescontext.cxx index 7d6549cc0785..d1d0cd9e935a 100644 --- a/oox/source/drawingml/effectpropertiescontext.cxx +++ b/oox/source/drawingml/effectpropertiescontext.cxx @@ -10,7 +10,7 @@ #include "effectpropertiescontext.hxx" #include "effectproperties.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/helper/attributelist.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/embeddedwavaudiofile.cxx b/oox/source/drawingml/embeddedwavaudiofile.cxx index 6b2f29ef8fd4..c15bc7c56b5c 100644 --- a/oox/source/drawingml/embeddedwavaudiofile.cxx +++ b/oox/source/drawingml/embeddedwavaudiofile.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/embeddedwavaudiofile.hxx" +#include "drawingml/embeddedwavaudiofile.hxx" #include "oox/helper/attributelist.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/fillproperties.cxx b/oox/source/drawingml/fillproperties.cxx index 8401d7a294fb..109fc23a2216 100644 --- a/oox/source/drawingml/fillproperties.cxx +++ b/oox/source/drawingml/fillproperties.cxx @@ -20,7 +20,8 @@ #include <iterator> #include <boost/utility.hpp> -#include "oox/drawingml/fillproperties.hxx" +#include <oox/drawingml/fillproperties.hxx> +#include <drawingml/graphicproperties.hxx> #include <com/sun/star/lang/XMultiServiceFactory.hpp> #include <com/sun/star/beans/XPropertySet.hpp> diff --git a/oox/source/drawingml/fillpropertiesgroupcontext.cxx b/oox/source/drawingml/fillpropertiesgroupcontext.cxx index e60f68947738..a45dd787670d 100644 --- a/oox/source/drawingml/fillpropertiesgroupcontext.cxx +++ b/oox/source/drawingml/fillpropertiesgroupcontext.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/helper/attributelist.hxx" #include "oox/helper/graphichelper.hxx" #include "oox/core/xmlfilterbase.hxx" diff --git a/oox/source/drawingml/graphicshapecontext.cxx b/oox/source/drawingml/graphicshapecontext.cxx index f753783a3737..e78a3e26d710 100644 --- a/oox/source/drawingml/graphicshapecontext.cxx +++ b/oox/source/drawingml/graphicshapecontext.cxx @@ -21,8 +21,9 @@ #include "oox/drawingml/graphicshapecontext.hxx" #include <osl/diagnose.h> -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" -#include "oox/drawingml/customshapeproperties.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/graphicproperties.hxx" +#include "drawingml/customshapeproperties.hxx" #include "drawingml/diagram/diagram.hxx" #include "drawingml/table/tablecontext.hxx" #include "oox/core/xmlfilterbase.hxx" @@ -33,7 +34,7 @@ #include "oox/vml/vmlshape.hxx" #include "oox/vml/vmlshapecontainer.hxx" #include "oox/drawingml/fillproperties.hxx" -#include "oox/drawingml/transform2dcontext.hxx" +#include "drawingml/transform2dcontext.hxx" #include "oox/helper/binaryinputstream.hxx" #include "oox/helper/binaryoutputstream.hxx" #include "oox/ppt/pptshapegroupcontext.hxx" diff --git a/oox/source/drawingml/guidcontext.cxx b/oox/source/drawingml/guidcontext.cxx index 0e000d799e6a..89eff0594f8a 100644 --- a/oox/source/drawingml/guidcontext.cxx +++ b/oox/source/drawingml/guidcontext.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/guidcontext.hxx" +#include "drawingml/guidcontext.hxx" using namespace ::oox::core; using namespace ::com::sun::star::uno; diff --git a/oox/source/drawingml/hyperlinkcontext.cxx b/oox/source/drawingml/hyperlinkcontext.cxx index 6e648dc5ba5b..b2774d1784b1 100644 --- a/oox/source/drawingml/hyperlinkcontext.cxx +++ b/oox/source/drawingml/hyperlinkcontext.cxx @@ -24,7 +24,7 @@ #include "oox/helper/propertymap.hxx" #include "oox/core/relations.hxx" #include "oox/core/xmlfilterbase.hxx" -#include "oox/drawingml/embeddedwavaudiofile.hxx" +#include "drawingml/embeddedwavaudiofile.hxx" using namespace ::oox::core; using namespace ::com::sun::star::uno; diff --git a/oox/source/drawingml/linepropertiescontext.cxx b/oox/source/drawingml/linepropertiescontext.cxx index 45a4a0eb8abb..bc5395dab4d7 100644 --- a/oox/source/drawingml/linepropertiescontext.cxx +++ b/oox/source/drawingml/linepropertiescontext.cxx @@ -17,9 +17,9 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/linepropertiescontext.hxx" +#include "drawingml/linepropertiescontext.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/drawingml/lineproperties.hxx" #include "oox/helper/attributelist.hxx" diff --git a/oox/source/drawingml/objectdefaultcontext.cxx b/oox/source/drawingml/objectdefaultcontext.cxx index 7b1e40c19e5f..0b1024152990 100644 --- a/oox/source/drawingml/objectdefaultcontext.cxx +++ b/oox/source/drawingml/objectdefaultcontext.cxx @@ -17,8 +17,8 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/objectdefaultcontext.hxx" -#include "oox/drawingml/spdefcontext.hxx" +#include "drawingml/objectdefaultcontext.hxx" +#include "drawingml/spdefcontext.hxx" #include "oox/drawingml/theme.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/scene3dcontext.cxx b/oox/source/drawingml/scene3dcontext.cxx index c8d9dd5a8386..2514d8f348b6 100644 --- a/oox/source/drawingml/scene3dcontext.cxx +++ b/oox/source/drawingml/scene3dcontext.cxx @@ -17,12 +17,12 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/scene3dcontext.hxx" +#include "drawingml/scene3dcontext.hxx" #include <com/sun/star/io/XInputStream.hpp> #include <com/sun/star/graphic/XGraphicProvider.hpp> #include <cppuhelper/exc_hlp.hxx> #include <comphelper/anytostring.hxx> -#include "oox/drawingml/colorchoicecontext.hxx" +#include "drawingml/colorchoicecontext.hxx" #include "oox/drawingml/drawingmltypes.hxx" #include "oox/drawingml/fillproperties.hxx" #include "oox/core/xmlfilterbase.hxx" diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx index 8545307558f5..099feb0e6bc2 100644 --- a/oox/source/drawingml/shape.cxx +++ b/oox/source/drawingml/shape.cxx @@ -18,14 +18,16 @@ */ #include "oox/drawingml/shape.hxx" -#include "oox/drawingml/customshapeproperties.hxx" +#include "drawingml/customshapeproperties.hxx" #include "oox/drawingml/theme.hxx" #include "oox/drawingml/fillproperties.hxx" +#include "drawingml/graphicproperties.hxx" +#include <drawingml/scene3dcontext.hxx> #include "oox/drawingml/lineproperties.hxx" #include "effectproperties.hxx" #include "oox/drawingml/shapepropertymap.hxx" -#include "oox/drawingml/textbody.hxx" -#include "oox/drawingml/ThemeOverrideFragmentHandler.hxx" +#include "drawingml/textbody.hxx" +#include <drawingml/ThemeOverrideFragmentHandler.hxx> #include "drawingml/table/tableproperties.hxx" #include "oox/drawingml/chart/chartconverter.hxx" #include "drawingml/chart/chartspacefragment.hxx" diff --git a/oox/source/drawingml/shape3dproperties.cxx b/oox/source/drawingml/shape3dproperties.cxx index 2060f18c52ff..38b26c761e3e 100644 --- a/oox/source/drawingml/shape3dproperties.cxx +++ b/oox/source/drawingml/shape3dproperties.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/shape3dproperties.hxx" +#include "drawingml/shape3dproperties.hxx" #include <com/sun/star/lang/XMultiServiceFactory.hpp> #include <com/sun/star/frame/XFramesSupplier.hpp> #include <com/sun/star/beans/XPropertySet.hpp> diff --git a/oox/source/drawingml/shapecontext.cxx b/oox/source/drawingml/shapecontext.cxx index 536bbc7d4d4a..5bb38a4f9581 100644 --- a/oox/source/drawingml/shapecontext.cxx +++ b/oox/source/drawingml/shapecontext.cxx @@ -25,13 +25,14 @@ #include "oox/helper/attributelist.hxx" #include "oox/drawingml/shapecontext.hxx" -#include "oox/drawingml/shapestylecontext.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include <drawingml/shapepropertiescontext.hxx> +#include "drawingml/shapestylecontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/drawingml/lineproperties.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/customshapegeometry.hxx" -#include "oox/drawingml/textbodycontext.hxx" -#include "oox/drawingml/textbodypropertiescontext.hxx" +#include "drawingml/customshapegeometry.hxx" +#include "drawingml/textbodycontext.hxx" +#include "drawingml/textbodypropertiescontext.hxx" #include "hyperlinkcontext.hxx" using namespace oox::core; diff --git a/oox/source/drawingml/shapegroupcontext.cxx b/oox/source/drawingml/shapegroupcontext.cxx index f4e045437206..a1ae52d367c1 100644 --- a/oox/source/drawingml/shapegroupcontext.cxx +++ b/oox/source/drawingml/shapegroupcontext.cxx @@ -27,8 +27,9 @@ #include "oox/drawingml/graphicshapecontext.hxx" #include "oox/drawingml/lineproperties.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/customshapegeometry.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/customshapegeometry.hxx" +#include <drawingml/shapepropertiescontext.hxx> +#include "drawingml/textbodycontext.hxx" using namespace oox::core; using namespace ::com::sun::star; diff --git a/oox/source/drawingml/shapepropertiescontext.cxx b/oox/source/drawingml/shapepropertiescontext.cxx index 9eb71b2ba08a..e0ac8b005152 100644 --- a/oox/source/drawingml/shapepropertiescontext.cxx +++ b/oox/source/drawingml/shapepropertiescontext.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/shapepropertiescontext.hxx" +#include "drawingml/shapepropertiescontext.hxx" #include <com/sun/star/xml/sax/FastToken.hpp> #include <com/sun/star/drawing/LineStyle.hpp> @@ -25,11 +25,11 @@ #include <com/sun/star/lang/XMultiServiceFactory.hpp> #include <com/sun/star/container/XNamed.hpp> -#include "oox/drawingml/scene3dcontext.hxx" -#include "oox/drawingml/linepropertiescontext.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" -#include "oox/drawingml/transform2dcontext.hxx" -#include "oox/drawingml/customshapegeometry.hxx" +#include "drawingml/scene3dcontext.hxx" +#include "drawingml/linepropertiescontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/transform2dcontext.hxx" +#include "drawingml/customshapegeometry.hxx" #include "effectpropertiescontext.hxx" using namespace oox::core; diff --git a/oox/source/drawingml/shapestylecontext.cxx b/oox/source/drawingml/shapestylecontext.cxx index aeb6278b3ec7..1f805f8bd46a 100644 --- a/oox/source/drawingml/shapestylecontext.cxx +++ b/oox/source/drawingml/shapestylecontext.cxx @@ -17,10 +17,10 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/shapestylecontext.hxx" +#include "drawingml/shapestylecontext.hxx" #include "oox/helper/attributelist.hxx" -#include "oox/drawingml/colorchoicecontext.hxx" +#include "drawingml/colorchoicecontext.hxx" using namespace ::oox::core; using namespace ::com::sun::star::uno; diff --git a/oox/source/drawingml/spdefcontext.cxx b/oox/source/drawingml/spdefcontext.cxx index 2b718334454d..3f84106dd42e 100644 --- a/oox/source/drawingml/spdefcontext.cxx +++ b/oox/source/drawingml/spdefcontext.cxx @@ -17,11 +17,11 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/spdefcontext.hxx" -#include "oox/drawingml/shapepropertiescontext.hxx" -#include "oox/drawingml/textbody.hxx" -#include "oox/drawingml/textbodypropertiescontext.hxx" -#include "oox/drawingml/textliststylecontext.hxx" +#include "drawingml/spdefcontext.hxx" +#include "drawingml/shapepropertiescontext.hxx" +#include "drawingml/textbody.hxx" +#include "drawingml/textbodypropertiescontext.hxx" +#include "drawingml/textliststylecontext.hxx" using namespace ::oox::core; using namespace ::com::sun::star::uno; diff --git a/oox/source/drawingml/table/tablebackgroundstylecontext.cxx b/oox/source/drawingml/table/tablebackgroundstylecontext.cxx index a91da191476a..2281d0423041 100644 --- a/oox/source/drawingml/table/tablebackgroundstylecontext.cxx +++ b/oox/source/drawingml/table/tablebackgroundstylecontext.cxx @@ -20,7 +20,7 @@ #include <osl/diagnose.h> #include "drawingml/table/tablebackgroundstylecontext.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/helper/attributelist.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/table/tablecell.cxx b/oox/source/drawingml/table/tablecell.cxx index 817caba51882..96cb28c47e93 100644 --- a/oox/source/drawingml/table/tablecell.cxx +++ b/oox/source/drawingml/table/tablecell.cxx @@ -21,7 +21,7 @@ #include "drawingml/table/tableproperties.hxx" #include <basegfx/color/bcolor.hxx> #include "oox/drawingml/shapepropertymap.hxx" -#include "oox/drawingml/textbody.hxx" +#include "drawingml/textbody.hxx" #include "oox/drawingml/theme.hxx" #include "oox/core/xmlfilterbase.hxx" #include "oox/helper/propertyset.hxx" diff --git a/oox/source/drawingml/table/tablecellcontext.cxx b/oox/source/drawingml/table/tablecellcontext.cxx index c0de51f552e5..b0df1663c10e 100644 --- a/oox/source/drawingml/table/tablecellcontext.cxx +++ b/oox/source/drawingml/table/tablecellcontext.cxx @@ -20,9 +20,9 @@ #include <osl/diagnose.h> #include "drawingml/table/tablecellcontext.hxx" -#include "oox/drawingml/textbodycontext.hxx" -#include "oox/drawingml/linepropertiescontext.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/textbodycontext.hxx" +#include "drawingml/linepropertiescontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/helper/attributelist.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/table/tablecontext.cxx b/oox/source/drawingml/table/tablecontext.cxx index 52edb76fb6e9..ac6a8624a40a 100644 --- a/oox/source/drawingml/table/tablecontext.cxx +++ b/oox/source/drawingml/table/tablecontext.cxx @@ -19,7 +19,7 @@ #include <osl/diagnose.h> #include "oox/helper/attributelist.hxx" -#include "oox/drawingml/guidcontext.hxx" +#include "drawingml/guidcontext.hxx" #include "drawingml/table/tablecontext.hxx" #include "drawingml/table/tableproperties.hxx" #include "drawingml/table/tablestylecontext.hxx" diff --git a/oox/source/drawingml/table/tablestylecellstylecontext.cxx b/oox/source/drawingml/table/tablestylecellstylecontext.cxx index a318a0ae91a3..ef9be244dfe0 100644 --- a/oox/source/drawingml/table/tablestylecellstylecontext.cxx +++ b/oox/source/drawingml/table/tablestylecellstylecontext.cxx @@ -20,8 +20,8 @@ #include <osl/diagnose.h> #include "drawingml/table/tablestylecellstylecontext.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" -#include "oox/drawingml/linepropertiescontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/linepropertiescontext.hxx" #include "oox/helper/attributelist.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/table/tablestyletextstylecontext.cxx b/oox/source/drawingml/table/tablestyletextstylecontext.cxx index 93277fc15b32..f1e64ff76e13 100644 --- a/oox/source/drawingml/table/tablestyletextstylecontext.cxx +++ b/oox/source/drawingml/table/tablestyletextstylecontext.cxx @@ -20,7 +20,7 @@ #include <osl/diagnose.h> #include "drawingml/table/tablestyletextstylecontext.hxx" -#include "oox/drawingml/colorchoicecontext.hxx" +#include "drawingml/colorchoicecontext.hxx" #include "oox/helper/attributelist.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/textbody.cxx b/oox/source/drawingml/textbody.cxx index 9e9d0ddd2c99..165b9dbdba0a 100644 --- a/oox/source/drawingml/textbody.cxx +++ b/oox/source/drawingml/textbody.cxx @@ -17,11 +17,11 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textbody.hxx" +#include "drawingml/textbody.hxx" #include <com/sun/star/text/XText.hpp> #include <com/sun/star/text/XTextCursor.hpp> #include <com/sun/star/beans/XPropertySet.hpp> -#include "oox/drawingml/textparagraph.hxx" +#include "drawingml/textparagraph.hxx" using namespace ::com::sun::star::uno; using namespace ::com::sun::star::text; diff --git a/oox/source/drawingml/textbodycontext.cxx b/oox/source/drawingml/textbodycontext.cxx index 9cfffdc186f9..4154e1bb727a 100644 --- a/oox/source/drawingml/textbodycontext.cxx +++ b/oox/source/drawingml/textbodycontext.cxx @@ -17,14 +17,14 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textbodycontext.hxx" -#include "oox/drawingml/textbodypropertiescontext.hxx" -#include "oox/drawingml/textparagraph.hxx" -#include "oox/drawingml/textparagraphpropertiescontext.hxx" -#include "oox/drawingml/textcharacterpropertiescontext.hxx" -#include "oox/drawingml/textliststylecontext.hxx" -#include "oox/drawingml/textfield.hxx" -#include "oox/drawingml/textfieldcontext.hxx" +#include "drawingml/textbodycontext.hxx" +#include "drawingml/textbodypropertiescontext.hxx" +#include "drawingml/textparagraph.hxx" +#include "drawingml/textparagraphpropertiescontext.hxx" +#include "drawingml/textcharacterpropertiescontext.hxx" +#include "drawingml/textliststylecontext.hxx" +#include "drawingml/textfield.hxx" +#include "drawingml/textfieldcontext.hxx" using namespace ::oox::core; using namespace ::com::sun::star::uno; diff --git a/oox/source/drawingml/textbodyproperties.cxx b/oox/source/drawingml/textbodyproperties.cxx index 1c1b4f2f861c..9f146c67a32d 100644 --- a/oox/source/drawingml/textbodyproperties.cxx +++ b/oox/source/drawingml/textbodyproperties.cxx @@ -20,7 +20,7 @@ #include <com/sun/star/text/WritingMode.hpp> #include <com/sun/star/drawing/TextHorizontalAdjust.hpp> #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/textbodyproperties.hxx" +#include "drawingml/textbodyproperties.hxx" #include "oox/token/tokens.hxx" using namespace ::com::sun::star::drawing; diff --git a/oox/source/drawingml/textbodypropertiescontext.cxx b/oox/source/drawingml/textbodypropertiescontext.cxx index 80d82a0d6174..89167b666eb4 100644 --- a/oox/source/drawingml/textbodypropertiescontext.cxx +++ b/oox/source/drawingml/textbodypropertiescontext.cxx @@ -17,12 +17,12 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textbodypropertiescontext.hxx" +#include "drawingml/textbodypropertiescontext.hxx" #include <com/sun/star/text/WritingMode.hpp> #include <com/sun/star/drawing/TextFitToSizeType.hpp> #include <com/sun/star/drawing/TextHorizontalAdjust.hpp> -#include "oox/drawingml/textbodyproperties.hxx" +#include "drawingml/textbodyproperties.hxx" #include "oox/drawingml/drawingmltypes.hxx" #include "oox/helper/attributelist.hxx" #include "oox/helper/propertymap.hxx" diff --git a/oox/source/drawingml/textcharacterproperties.cxx b/oox/source/drawingml/textcharacterproperties.cxx index d91988246695..d7a848d99ef1 100644 --- a/oox/source/drawingml/textcharacterproperties.cxx +++ b/oox/source/drawingml/textcharacterproperties.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textcharacterproperties.hxx" +#include "drawingml/textcharacterproperties.hxx" #include <com/sun/star/lang/Locale.hpp> #include <com/sun/star/awt/FontSlant.hpp> #include <com/sun/star/awt/FontWeight.hpp> diff --git a/oox/source/drawingml/textcharacterpropertiescontext.cxx b/oox/source/drawingml/textcharacterpropertiescontext.cxx index 600f4727c582..87d884e98948 100644 --- a/oox/source/drawingml/textcharacterpropertiescontext.cxx +++ b/oox/source/drawingml/textcharacterpropertiescontext.cxx @@ -17,14 +17,14 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textcharacterpropertiescontext.hxx" +#include "drawingml/textcharacterpropertiescontext.hxx" #include "oox/helper/attributelist.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/colorchoicecontext.hxx" -#include "oox/drawingml/texteffectscontext.hxx" +#include "drawingml/colorchoicecontext.hxx" +#include "drawingml/texteffectscontext.hxx" #include "oox/drawingml/lineproperties.hxx" -#include "oox/drawingml/textparagraphproperties.hxx" +#include "drawingml/textparagraphproperties.hxx" #include "oox/core/relations.hxx" #include "hyperlinkcontext.hxx" diff --git a/oox/source/drawingml/texteffectscontext.cxx b/oox/source/drawingml/texteffectscontext.cxx index a4cfd7ace713..e996e1a1afe8 100644 --- a/oox/source/drawingml/texteffectscontext.cxx +++ b/oox/source/drawingml/texteffectscontext.cxx @@ -8,7 +8,7 @@ * */ -#include "oox/drawingml/texteffectscontext.hxx" +#include "drawingml/texteffectscontext.hxx" #include <map> diff --git a/oox/source/drawingml/textfield.cxx b/oox/source/drawingml/textfield.cxx index 55b538b0ee96..2523156ade0d 100644 --- a/oox/source/drawingml/textfield.cxx +++ b/oox/source/drawingml/textfield.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textfield.hxx" +#include "drawingml/textfield.hxx" #include <list> @@ -30,8 +30,8 @@ #include "oox/helper/helper.hxx" #include "oox/helper/propertyset.hxx" #include "oox/core/xmlfilterbase.hxx" -#include "oox/drawingml/textparagraphproperties.hxx" -#include "oox/drawingml/textcharacterproperties.hxx" +#include "drawingml/textparagraphproperties.hxx" +#include "drawingml/textcharacterproperties.hxx" using namespace ::com::sun::star; using namespace ::com::sun::star::uno; diff --git a/oox/source/drawingml/textfieldcontext.cxx b/oox/source/drawingml/textfieldcontext.cxx index 8dcb14d3baeb..d0ea8aa95506 100644 --- a/oox/source/drawingml/textfieldcontext.cxx +++ b/oox/source/drawingml/textfieldcontext.cxx @@ -17,10 +17,10 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textfieldcontext.hxx" -#include "oox/drawingml/textparagraphpropertiescontext.hxx" -#include "oox/drawingml/textcharacterpropertiescontext.hxx" -#include "oox/drawingml/textfield.hxx" +#include "drawingml/textfieldcontext.hxx" +#include "drawingml/textparagraphpropertiescontext.hxx" +#include "drawingml/textcharacterpropertiescontext.hxx" +#include "drawingml/textfield.hxx" using namespace ::oox::core; using namespace ::com::sun::star::uno; diff --git a/oox/source/drawingml/textfont.cxx b/oox/source/drawingml/textfont.cxx index 2bda567cc115..742f020c2ace 100644 --- a/oox/source/drawingml/textfont.cxx +++ b/oox/source/drawingml/textfont.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textfont.hxx" +#include "drawingml/textfont.hxx" #include <com/sun/star/awt/FontFamily.hpp> #include <com/sun/star/awt/FontPitch.hpp> #include "oox/drawingml/theme.hxx" diff --git a/oox/source/drawingml/textliststyle.cxx b/oox/source/drawingml/textliststyle.cxx index 3a92b120ab64..29b359fdf97e 100644 --- a/oox/source/drawingml/textliststyle.cxx +++ b/oox/source/drawingml/textliststyle.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textliststyle.hxx" +#include "drawingml/textliststyle.hxx" namespace oox { namespace drawingml { diff --git a/oox/source/drawingml/textliststylecontext.cxx b/oox/source/drawingml/textliststylecontext.cxx index 117351bea284..b8ada9e836fb 100644 --- a/oox/source/drawingml/textliststylecontext.cxx +++ b/oox/source/drawingml/textliststylecontext.cxx @@ -17,8 +17,8 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textliststylecontext.hxx" -#include "oox/drawingml/textparagraphpropertiescontext.hxx" +#include "drawingml/textliststylecontext.hxx" +#include "drawingml/textparagraphpropertiescontext.hxx" #include "oox/helper/attributelist.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/textparagraph.cxx b/oox/source/drawingml/textparagraph.cxx index 098a9415222f..ce6109983895 100644 --- a/oox/source/drawingml/textparagraph.cxx +++ b/oox/source/drawingml/textparagraph.cxx @@ -17,9 +17,9 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textparagraph.hxx" +#include "drawingml/textparagraph.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/textcharacterproperties.hxx" +#include "drawingml/textcharacterproperties.hxx" #include <rtl/ustring.hxx> #include "oox/helper/propertyset.hxx" diff --git a/oox/source/drawingml/textparagraphproperties.cxx b/oox/source/drawingml/textparagraphproperties.cxx index 924a5e4d14e8..a7b5f6bfba84 100644 --- a/oox/source/drawingml/textparagraphproperties.cxx +++ b/oox/source/drawingml/textparagraphproperties.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textparagraphproperties.hxx" +#include "drawingml/textparagraphproperties.hxx" #include <com/sun/star/text/XNumberingRulesSupplier.hpp> #include <com/sun/star/container/XIndexReplace.hpp> diff --git a/oox/source/drawingml/textparagraphpropertiescontext.cxx b/oox/source/drawingml/textparagraphpropertiescontext.cxx index 035f99ac2a0f..6c01a0a0e06e 100644 --- a/oox/source/drawingml/textparagraphpropertiescontext.cxx +++ b/oox/source/drawingml/textparagraphpropertiescontext.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textparagraphpropertiescontext.hxx" +#include "drawingml/textparagraphpropertiescontext.hxx" #include <com/sun/star/text/WritingMode2.hpp> #include <com/sun/star/awt/FontDescriptor.hpp> @@ -25,8 +25,8 @@ #include <svx/unopage.hxx> -#include "oox/drawingml/colorchoicecontext.hxx" -#include "oox/drawingml/textcharacterpropertiescontext.hxx" +#include "drawingml/colorchoicecontext.hxx" +#include "drawingml/textcharacterpropertiescontext.hxx" #include "oox/drawingml/fillproperties.hxx" #include "oox/helper/attributelist.hxx" #include "textspacingcontext.hxx" diff --git a/oox/source/drawingml/textrun.cxx b/oox/source/drawingml/textrun.cxx index 99e40fc131af..b988522882dd 100644 --- a/oox/source/drawingml/textrun.cxx +++ b/oox/source/drawingml/textrun.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textrun.hxx" +#include "drawingml/textrun.hxx" #include <com/sun/star/text/ControlCharacter.hpp> #include <com/sun/star/beans/XMultiPropertySet.hpp> diff --git a/oox/source/drawingml/textspacingcontext.cxx b/oox/source/drawingml/textspacingcontext.cxx index 8ef0caec6a83..ef0556d3036d 100644 --- a/oox/source/drawingml/textspacingcontext.cxx +++ b/oox/source/drawingml/textspacingcontext.cxx @@ -18,7 +18,7 @@ */ #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/textspacing.hxx" +#include "drawingml/textspacing.hxx" #include "textspacingcontext.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/theme.cxx b/oox/source/drawingml/theme.cxx index 31c3c1bd12cf..8f4b7bcd410e 100644 --- a/oox/source/drawingml/theme.cxx +++ b/oox/source/drawingml/theme.cxx @@ -18,6 +18,8 @@ */ #include "oox/drawingml/theme.hxx" +#include <oox/token/tokens.hxx> +#include <drawingml/textcharacterproperties.hxx> namespace oox { namespace drawingml { diff --git a/oox/source/drawingml/themeelementscontext.cxx b/oox/source/drawingml/themeelementscontext.cxx index 0b6ab7a6b127..d28150b22362 100644 --- a/oox/source/drawingml/themeelementscontext.cxx +++ b/oox/source/drawingml/themeelementscontext.cxx @@ -17,12 +17,13 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/themeelementscontext.hxx" -#include "oox/drawingml/clrschemecontext.hxx" +#include "drawingml/themeelementscontext.hxx" +#include "drawingml/clrschemecontext.hxx" #include "oox/drawingml/lineproperties.hxx" -#include "oox/drawingml/linepropertiescontext.hxx" +#include "drawingml/linepropertiescontext.hxx" #include "oox/drawingml/fillproperties.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/textcharacterproperties.hxx" #include "oox/drawingml/theme.hxx" #include "oox/helper/attributelist.hxx" #include "effectproperties.hxx" diff --git a/oox/source/drawingml/themefragmenthandler.cxx b/oox/source/drawingml/themefragmenthandler.cxx index b0f4f85a3a8d..edb044bbd823 100644 --- a/oox/source/drawingml/themefragmenthandler.cxx +++ b/oox/source/drawingml/themefragmenthandler.cxx @@ -18,9 +18,9 @@ */ #include "oox/drawingml/themefragmenthandler.hxx" -#include "oox/drawingml/objectdefaultcontext.hxx" +#include "drawingml/objectdefaultcontext.hxx" #include "oox/drawingml/theme.hxx" -#include "oox/drawingml/themeelementscontext.hxx" +#include "drawingml/themeelementscontext.hxx" using namespace ::oox::core; diff --git a/oox/source/drawingml/transform2dcontext.cxx b/oox/source/drawingml/transform2dcontext.cxx index d3f7f5ee4df3..a6a39eb60b0a 100644 --- a/oox/source/drawingml/transform2dcontext.cxx +++ b/oox/source/drawingml/transform2dcontext.cxx @@ -17,10 +17,11 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/transform2dcontext.hxx" +#include "drawingml/transform2dcontext.hxx" #include "oox/helper/attributelist.hxx" #include "oox/drawingml/shape.hxx" -#include "oox/drawingml/textbody.hxx" +#include "drawingml/customshapeproperties.hxx" +#include "drawingml/textbody.hxx" using namespace ::com::sun::star; using ::com::sun::star::uno::Reference; diff --git a/oox/source/ppt/animvariantcontext.cxx b/oox/source/ppt/animvariantcontext.cxx index bc5aca0e262c..92cb578e83a6 100644 --- a/oox/source/ppt/animvariantcontext.cxx +++ b/oox/source/ppt/animvariantcontext.cxx @@ -29,7 +29,7 @@ #include "oox/helper/attributelist.hxx" #include "oox/core/fragmenthandler.hxx" #include "oox/core/xmlfilterbase.hxx" -#include "oox/drawingml/colorchoicecontext.hxx" +#include "drawingml/colorchoicecontext.hxx" #include "pptfilterhelpers.hxx" using namespace ::oox::core; diff --git a/oox/source/ppt/backgroundproperties.cxx b/oox/source/ppt/backgroundproperties.cxx index e081a7552965..c2c8ef219553 100644 --- a/oox/source/ppt/backgroundproperties.cxx +++ b/oox/source/ppt/backgroundproperties.cxx @@ -18,7 +18,7 @@ */ #include "oox/ppt/backgroundproperties.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/drawingml/drawingmltypes.hxx" #include "oox/core/contexthandler2.hxx" diff --git a/oox/source/ppt/dgmlayout.cxx b/oox/source/ppt/dgmlayout.cxx index 9af11a27d0c9..678fb71daecf 100644 --- a/oox/source/ppt/dgmlayout.cxx +++ b/oox/source/ppt/dgmlayout.cxx @@ -23,6 +23,7 @@ #include "drawingml/diagram/diagram.hxx" #include "oox/dump/pptxdumper.hxx" +#include <com/sun/star/beans/XPropertySet.hpp> #include <com/sun/star/drawing/XShape.hpp> #include <com/sun/star/drawing/XMasterPageTarget.hpp> #include <com/sun/star/uno/XComponentContext.hpp> diff --git a/oox/source/ppt/pptgraphicshapecontext.cxx b/oox/source/ppt/pptgraphicshapecontext.cxx index 229867d1b7f7..c31cc55b1455 100644 --- a/oox/source/ppt/pptgraphicshapecontext.cxx +++ b/oox/source/ppt/pptgraphicshapecontext.cxx @@ -27,13 +27,13 @@ #include "oox/ppt/pptgraphicshapecontext.hxx" #include "oox/ppt/pptshapepropertiescontext.hxx" #include "oox/ppt/slidepersist.hxx" -#include "oox/drawingml/shapestylecontext.hxx" +#include "drawingml/shapestylecontext.hxx" #include "oox/token/namespaces.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/drawingml/lineproperties.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/customshapegeometry.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/customshapegeometry.hxx" +#include "drawingml/textbodycontext.hxx" #include <oox/token/tokens.hxx> using namespace oox::core; diff --git a/oox/source/ppt/pptshape.cxx b/oox/source/ppt/pptshape.cxx index d02612860ce3..f454f4487fe9 100644 --- a/oox/source/ppt/pptshape.cxx +++ b/oox/source/ppt/pptshape.cxx @@ -19,7 +19,7 @@ #include "oox/ppt/pptshape.hxx" #include "oox/core/xmlfilterbase.hxx" -#include "oox/drawingml/textbody.hxx" +#include "drawingml/textbody.hxx" #include <com/sun/star/container/XNamed.hpp> #include <com/sun/star/beans/XMultiPropertySet.hpp> diff --git a/oox/source/ppt/pptshapecontext.cxx b/oox/source/ppt/pptshapecontext.cxx index c0117aa85b5d..e5e0fce1c634 100644 --- a/oox/source/ppt/pptshapecontext.cxx +++ b/oox/source/ppt/pptshapecontext.cxx @@ -28,13 +28,13 @@ #include "oox/ppt/pptshapecontext.hxx" #include "oox/ppt/pptshapepropertiescontext.hxx" #include "oox/ppt/slidepersist.hxx" -#include "oox/drawingml/shapestylecontext.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/shapestylecontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/drawingml/lineproperties.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/customshapegeometry.hxx" -#include "oox/drawingml/textbodycontext.hxx" -#include "oox/drawingml/transform2dcontext.hxx" +#include "drawingml/customshapegeometry.hxx" +#include "drawingml/textbodycontext.hxx" +#include "drawingml/transform2dcontext.hxx" using namespace oox::core; using namespace ::com::sun::star; diff --git a/oox/source/ppt/pptshapegroupcontext.cxx b/oox/source/ppt/pptshapegroupcontext.cxx index 9bf3d2bd5383..fb6f7803307c 100644 --- a/oox/source/ppt/pptshapegroupcontext.cxx +++ b/oox/source/ppt/pptshapegroupcontext.cxx @@ -29,8 +29,9 @@ #include "oox/drawingml/graphicshapecontext.hxx" #include "oox/drawingml/lineproperties.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/customshapegeometry.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/customshapegeometry.hxx" +#include "drawingml/shapepropertiescontext.hxx" +#include "drawingml/textbodycontext.hxx" #include "oox/drawingml/connectorshapecontext.hxx" #include "oox/drawingml/fillproperties.hxx" #include "extdrawingfragmenthandler.hxx" diff --git a/oox/source/ppt/pptshapepropertiescontext.cxx b/oox/source/ppt/pptshapepropertiescontext.cxx index 77ba83c32f7c..cf1278320ccb 100644 --- a/oox/source/ppt/pptshapepropertiescontext.cxx +++ b/oox/source/ppt/pptshapepropertiescontext.cxx @@ -26,12 +26,12 @@ #include "oox/ppt/pptshape.hxx" #include "oox/ppt/pptshapepropertiescontext.hxx" #include "oox/ppt/slidepersist.hxx" -#include "oox/drawingml/shapestylecontext.hxx" -#include "oox/drawingml/fillpropertiesgroupcontext.hxx" +#include "drawingml/shapestylecontext.hxx" +#include "drawingml/fillpropertiesgroupcontext.hxx" #include "oox/drawingml/lineproperties.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/customshapegeometry.hxx" -#include "oox/drawingml/textbodycontext.hxx" +#include "drawingml/customshapegeometry.hxx" +#include "drawingml/textbodycontext.hxx" using namespace oox::core; using namespace ::com::sun::star; diff --git a/oox/source/ppt/presentationfragmenthandler.cxx b/oox/source/ppt/presentationfragmenthandler.cxx index a0eb00152436..bef84de51bd6 100644 --- a/oox/source/ppt/presentationfragmenthandler.cxx +++ b/oox/source/ppt/presentationfragmenthandler.cxx @@ -35,7 +35,7 @@ #include "oox/drawingml/theme.hxx" #include "oox/drawingml/drawingmltypes.hxx" #include "oox/drawingml/themefragmenthandler.hxx" -#include "oox/drawingml/textliststylecontext.hxx" +#include "drawingml/textliststylecontext.hxx" #include "oox/ppt/pptshape.hxx" #include "oox/ppt/presentationfragmenthandler.hxx" #include "oox/ppt/slidefragmenthandler.hxx" diff --git a/oox/source/ppt/slidefragmenthandler.cxx b/oox/source/ppt/slidefragmenthandler.cxx index 70c9472395d8..0edece08f800 100644 --- a/oox/source/ppt/slidefragmenthandler.cxx +++ b/oox/source/ppt/slidefragmenthandler.cxx @@ -35,7 +35,8 @@ #include "oox/ppt/pptshape.hxx" #include "oox/vml/vmldrawing.hxx" #include "oox/vml/vmldrawingfragment.hxx" -#include "oox/drawingml/clrschemecontext.hxx" +#include "drawingml/clrschemecontext.hxx" +#include "drawingml/textliststyle.hxx" #include "oox/ppt/pptimport.hxx" using namespace ::com::sun::star; diff --git a/oox/source/ppt/slidemastertextstylescontext.cxx b/oox/source/ppt/slidemastertextstylescontext.cxx index 71f67677ce0a..876f495c041e 100644 --- a/oox/source/ppt/slidemastertextstylescontext.cxx +++ b/oox/source/ppt/slidemastertextstylescontext.cxx @@ -17,8 +17,8 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "oox/drawingml/textliststyle.hxx" -#include "oox/drawingml/textliststylecontext.hxx" +#include "drawingml/textliststyle.hxx" +#include "drawingml/textliststylecontext.hxx" #include "oox/ppt/slidemastertextstylescontext.hxx" using namespace ::oox::core; diff --git a/oox/source/ppt/slidepersist.cxx b/oox/source/ppt/slidepersist.cxx index b13c5f7eb889..54b28e6ad96a 100644 --- a/oox/source/ppt/slidepersist.cxx +++ b/oox/source/ppt/slidepersist.cxx @@ -22,9 +22,12 @@ #include "oox/ppt/slidepersist.hxx" #include "oox/drawingml/fillproperties.hxx" #include "oox/drawingml/shapepropertymap.hxx" +#include "oox/helper/propertymap.hxx" #include "oox/helper/propertyset.hxx" #include "oox/vml/vmldrawing.hxx" #include "oox/core/xmlfilterbase.hxx" +#include "drawingml/textliststyle.hxx" +#include "drawingml/textparagraphproperties.hxx" #include <com/sun/star/style/XStyle.hpp> #include <com/sun/star/style/XStyleFamiliesSupplier.hpp> diff --git a/oox/source/ppt/soundactioncontext.cxx b/oox/source/ppt/soundactioncontext.cxx index 9d72e3ebeff1..0996fdb3f947 100644 --- a/oox/source/ppt/soundactioncontext.cxx +++ b/oox/source/ppt/soundactioncontext.cxx @@ -24,7 +24,7 @@ #include "oox/helper/attributelist.hxx" #include "oox/helper/propertymap.hxx" -#include "oox/drawingml/embeddedwavaudiofile.hxx" +#include "drawingml/embeddedwavaudiofile.hxx" using namespace ::oox::core; using namespace ::com::sun::star::xml::sax; diff --git a/oox/source/ppt/timenodelistcontext.cxx b/oox/source/ppt/timenodelistcontext.cxx index a2ab7dce42e3..5f3db9acde88 100644 --- a/oox/source/ppt/timenodelistcontext.cxx +++ b/oox/source/ppt/timenodelistcontext.cxx @@ -41,7 +41,7 @@ #include "oox/helper/attributelist.hxx" #include "oox/core/xmlfilterbase.hxx" #include "oox/drawingml/drawingmltypes.hxx" -#include "oox/drawingml/colorchoicecontext.hxx" +#include "drawingml/colorchoicecontext.hxx" #include "oox/ppt/slidetransition.hxx" #include "animvariantcontext.hxx" diff --git a/oox/source/ppt/timetargetelementcontext.cxx b/oox/source/ppt/timetargetelementcontext.cxx index 93e3dd0d5578..230dd89558ed 100644 --- a/oox/source/ppt/timetargetelementcontext.cxx +++ b/oox/source/ppt/timetargetelementcontext.cxx @@ -26,7 +26,7 @@ #include <com/sun/star/uno/Any.hxx> #include "oox/helper/attributelist.hxx" -#include "oox/drawingml/embeddedwavaudiofile.hxx" +#include "drawingml/embeddedwavaudiofile.hxx" using namespace ::com::sun::star::uno; using namespace ::com::sun::star::xml::sax; diff --git a/oox/source/shape/WpgContext.cxx b/oox/source/shape/WpgContext.cxx index 9b62fef85897..4cbf200f8ce2 100644 --- a/oox/source/shape/WpgContext.cxx +++ b/oox/source/shape/WpgContext.cxx @@ -8,7 +8,7 @@ */ #include "WpgContext.hxx" -#include <oox/drawingml/shapepropertiescontext.hxx> +#include <drawingml/shapepropertiescontext.hxx> #include <oox/drawingml/shapegroupcontext.hxx> #include <oox/drawingml/graphicshapecontext.hxx> diff --git a/oox/source/shape/WpsContext.cxx b/oox/source/shape/WpsContext.cxx index fb42e6268394..4d5863873fd5 100644 --- a/oox/source/shape/WpsContext.cxx +++ b/oox/source/shape/WpsContext.cxx @@ -8,11 +8,15 @@ */ #include "WpsContext.hxx" -#include <oox/drawingml/shapepropertiescontext.hxx> -#include <oox/drawingml/shapestylecontext.hxx> +#include <drawingml/customshapeproperties.hxx> +#include <drawingml/shapepropertiescontext.hxx> +#include <drawingml/shapestylecontext.hxx> +#include <com/sun/star/beans/XPropertySet.hpp> #include <com/sun/star/beans/XPropertyState.hpp> #include <oox/drawingml/drawingmltypes.hxx> +#include <boost/optional.hpp> + using namespace com::sun::star; namespace oox |