LCOV - code coverage report
Current view: top level - writerfilter/source/dmapper - TextEffectsHandler.cxx (source / functions) Hit Total Coverage
Test: commit 0e63ca4fde4e446f346e35849c756a30ca294aab Lines: 259 494 52.4 %
Date: 2014-04-11 Functions: 22 25 88.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  *
       9             :  */
      10             : 
      11             : #include <sal/config.h>
      12             : 
      13             : #include <map>
      14             : 
      15             : #include <TextEffectsHandler.hxx>
      16             : 
      17             : #include <rtl/ustrbuf.hxx>
      18             : #include <comphelper/string.hxx>
      19             : #include <ooxml/resourceids.hxx>
      20             : #include "dmapperLoggers.hxx"
      21             : 
      22             : namespace writerfilter {
      23             : namespace dmapper
      24             : {
      25             : 
      26             : using namespace std;
      27             : using namespace oox;
      28             : using namespace css::uno;
      29             : using namespace css::beans;
      30             : 
      31             : namespace
      32             : {
      33             : 
      34         662 : OUString lclGetNameForElementId(sal_uInt32 aId)
      35             : {
      36         662 :     static std::map<sal_uInt32, OUString> aIdMap;
      37         662 :     if(aIdMap.empty())
      38             :     {
      39           4 :         aIdMap[NS_ooxml::LN_EG_ColorChoice_srgbClr]             = "srgbClr";
      40           4 :         aIdMap[NS_ooxml::LN_EG_ColorChoice_schemeClr]           = "schemeClr";
      41           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_tint]             = "tint";
      42           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_shade]            = "shade";
      43           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_alpha]            = "alpha";
      44           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_hueMod]           = "hueMod";
      45           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_sat]              = "sat";
      46           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_satOff]           = "satOff";
      47           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_satMod]           = "satMod";
      48           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_lum]              = "lum";
      49           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_lumOff]           = "lumOff";
      50           4 :         aIdMap[NS_ooxml::LN_EG_ColorTransform_lumMod]           = "lumMod";
      51           4 :         aIdMap[NS_ooxml::LN_EG_FillProperties_noFill]           = "noFill";
      52           4 :         aIdMap[NS_ooxml::LN_EG_FillProperties_solidFill]        = "solidFill";
      53           4 :         aIdMap[NS_ooxml::LN_EG_FillProperties_gradFill]         = "gradFill";
      54           4 :         aIdMap[NS_ooxml::LN_CT_GradientFillProperties_gsLst]    = "gsLst";
      55           4 :         aIdMap[NS_ooxml::LN_CT_GradientStopList_gs]             = "gs";
      56           4 :         aIdMap[NS_ooxml::LN_CT_GradientStop_pos]                = "pos";
      57           4 :         aIdMap[NS_ooxml::LN_EG_ShadeProperties_lin]             = "lin";
      58           4 :         aIdMap[NS_ooxml::LN_EG_ShadeProperties_path]            = "path";
      59           4 :         aIdMap[NS_ooxml::LN_CT_PathShadeProperties_fillToRect]  = "fillToRect";
      60           4 :         aIdMap[NS_ooxml::LN_EG_LineDashProperties_prstDash]     = "prstDash";
      61           4 :         aIdMap[NS_ooxml::LN_EG_LineJoinProperties_round]        = "round";
      62           4 :         aIdMap[NS_ooxml::LN_EG_LineJoinProperties_bevel]        = "bevel";
      63           4 :         aIdMap[NS_ooxml::LN_EG_LineJoinProperties_miter]        = "miter";
      64           4 :         aIdMap[NS_ooxml::LN_CT_Scene3D_camera]                  = "camera";
      65           4 :         aIdMap[NS_ooxml::LN_CT_Scene3D_lightRig]                = "lightRig";
      66           4 :         aIdMap[NS_ooxml::LN_CT_LightRig_rot]                    = "rot";
      67           4 :         aIdMap[NS_ooxml::LN_CT_Props3D_bevelT]                  = "bevelT";
      68           4 :         aIdMap[NS_ooxml::LN_CT_Props3D_bevelB]                  = "bevelB";
      69           4 :         aIdMap[NS_ooxml::LN_CT_Props3D_extrusionClr]            = "extrusionClr";
      70           4 :         aIdMap[NS_ooxml::LN_CT_Props3D_contourClr]              = "contourClr";
      71           4 :         aIdMap[NS_ooxml::LN_CT_StylisticSets_styleSet]          = "styleSet";
      72             :     }
      73         662 :     return aIdMap[aId];
      74             : }
      75             : 
      76             : const char constAttributesSequenceName[] = "attributes";
      77             : 
      78             : }
      79             : 
      80          89 : OUString TextEffectsHandler::getSchemeColorValTypeString(sal_Int32 nType)
      81             : {
      82          89 :     switch (nType)
      83             :     {
      84           0 :         case NS_ooxml::LN_ST_SchemeColorVal_bg1: return OUString("bg1");
      85           0 :         case NS_ooxml::LN_ST_SchemeColorVal_tx1: return OUString("tx1");
      86           0 :         case NS_ooxml::LN_ST_SchemeColorVal_bg2: return OUString("bg2");
      87           0 :         case NS_ooxml::LN_ST_SchemeColorVal_tx2: return OUString("tx2");
      88          64 :         case NS_ooxml::LN_ST_SchemeColorVal_accent1: return OUString("accent1");
      89          13 :         case NS_ooxml::LN_ST_SchemeColorVal_accent2: return OUString("accent2");
      90           3 :         case NS_ooxml::LN_ST_SchemeColorVal_accent3: return OUString("accent3");
      91           6 :         case NS_ooxml::LN_ST_SchemeColorVal_accent4: return OUString("accent4");
      92           0 :         case NS_ooxml::LN_ST_SchemeColorVal_accent5: return OUString("accent5");
      93           3 :         case NS_ooxml::LN_ST_SchemeColorVal_accent6: return OUString("accent6");
      94           0 :         case NS_ooxml::LN_ST_SchemeColorVal_hlink: return OUString("hlink");
      95           0 :         case NS_ooxml::LN_ST_SchemeColorVal_folHlink: return OUString("folHlink");
      96           0 :         case NS_ooxml::LN_ST_SchemeColorVal_dk1: return OUString("dk1");
      97           0 :         case NS_ooxml::LN_ST_SchemeColorVal_lt1: return OUString("lt1");
      98           0 :         case NS_ooxml::LN_ST_SchemeColorVal_dk2: return OUString("dk2");
      99           0 :         case NS_ooxml::LN_ST_SchemeColorVal_lt2: return OUString("lt2");
     100           0 :         case NS_ooxml::LN_ST_SchemeColorVal_phClr: return OUString("phClr");
     101           0 :         default: break;
     102             :     }
     103           0 :     return OUString();
     104             : }
     105             : 
     106          32 : OUString TextEffectsHandler::getRectAlignmentString(sal_Int32 nType)
     107             : {
     108          32 :     switch (nType)
     109             :     {
     110           4 :         case NS_ooxml::LN_ST_RectAlignment_none: return OUString("none");
     111           0 :         case NS_ooxml::LN_ST_RectAlignment_tl: return OUString("tl");
     112           0 :         case NS_ooxml::LN_ST_RectAlignment_t: return OUString("t");
     113           0 :         case NS_ooxml::LN_ST_RectAlignment_tr: return OUString("tr");
     114           0 :         case NS_ooxml::LN_ST_RectAlignment_l: return OUString("l");
     115           5 :         case NS_ooxml::LN_ST_RectAlignment_ctr: return OUString("ctr");
     116           0 :         case NS_ooxml::LN_ST_RectAlignment_r: return OUString("r");
     117          16 :         case NS_ooxml::LN_ST_RectAlignment_bl: return OUString("bl");
     118           7 :         case NS_ooxml::LN_ST_RectAlignment_b: return OUString("b");
     119           0 :         case NS_ooxml::LN_ST_RectAlignment_br: return OUString("br");
     120             : 
     121           0 :         default: break;
     122             :     }
     123           0 :     return OUString();
     124             : }
     125             : 
     126          31 : OUString TextEffectsHandler::getLineCapString(sal_Int32 nType)
     127             : {
     128          31 :     switch (nType)
     129             :     {
     130          28 :         case NS_ooxml::LN_ST_LineCap_rnd: return OUString("rnd");
     131           0 :         case NS_ooxml::LN_ST_LineCap_sq: return OUString("sq");
     132           3 :         case NS_ooxml::LN_ST_LineCap_flat: return OUString("flat");
     133           0 :         default: break;
     134             :     }
     135           0 :     return OUString();
     136             : }
     137             : 
     138          31 : OUString TextEffectsHandler::getCompoundLineString(sal_Int32 nType)
     139             : {
     140          31 :     switch (nType)
     141             :     {
     142          25 :         case NS_ooxml::LN_ST_CompoundLine_sng: return OUString("sng");
     143           6 :         case NS_ooxml::LN_ST_CompoundLine_dbl: return OUString("dbl");
     144           0 :         case NS_ooxml::LN_ST_CompoundLine_thickThin: return OUString("thickThin");
     145           0 :         case NS_ooxml::LN_ST_CompoundLine_thinThick: return OUString("thinThick");
     146           0 :         case NS_ooxml::LN_ST_CompoundLine_tri: return OUString("tri");
     147           0 :         default: break;
     148             :     }
     149           0 :     return OUString();
     150             : }
     151             : 
     152          31 : OUString TextEffectsHandler::getPenAlignmentString(sal_Int32 nType)
     153             : {
     154          31 :     switch (nType)
     155             :     {
     156          31 :         case NS_ooxml::LN_ST_PenAlignment_ctr: return OUString("ctr");
     157           0 :         case NS_ooxml::LN_ST_PenAlignment_in: return OUString("in");
     158           0 :         default: break;
     159             :     }
     160           0 :     return OUString();
     161             : }
     162             : 
     163          11 : OUString TextEffectsHandler::getOnOffString(sal_Int32 nType)
     164             : {
     165          11 :     switch (nType)
     166             :     {
     167           0 :         case NS_ooxml::LN_ST_OnOff_true: return OUString("true");
     168           0 :         case NS_ooxml::LN_ST_OnOff_false: return OUString("false");
     169           0 :         case NS_ooxml::LN_ST_OnOff_1: return OUString("1");
     170          11 :         case NS_ooxml::LN_ST_OnOff_0: return OUString("0");
     171           0 :         default: break;
     172             :     }
     173           0 :     return OUString();
     174             : }
     175             : 
     176           7 : OUString TextEffectsHandler::getPathShadeTypeString(sal_Int32 nType)
     177             : {
     178           7 :     switch (nType)
     179             :     {
     180           0 :         case NS_ooxml::LN_ST_PathShadeType_shape: return OUString("shape");
     181           7 :         case NS_ooxml::LN_ST_PathShadeType_circle: return OUString("circle");
     182           0 :         case NS_ooxml::LN_ST_PathShadeType_rect: return OUString("rect");
     183           0 :         default: break;
     184             :     }
     185           0 :     return OUString();
     186             : }
     187             : 
     188          31 : OUString TextEffectsHandler::getPresetLineDashValString(sal_Int32 nType)
     189             : {
     190          31 :     switch (nType)
     191             :     {
     192          25 :         case NS_ooxml::LN_ST_PresetLineDashVal_solid: return OUString("solid");
     193           0 :         case NS_ooxml::LN_ST_PresetLineDashVal_dot: return OUString("dot");
     194           0 :         case NS_ooxml::LN_ST_PresetLineDashVal_sysDot: return OUString("sysDot");
     195           6 :         case NS_ooxml::LN_ST_PresetLineDashVal_dash: return OUString("dash");
     196           0 :         case NS_ooxml::LN_ST_PresetLineDashVal_sysDash: return OUString("sysDash");
     197           0 :         case NS_ooxml::LN_ST_PresetLineDashVal_lgDash: return OUString("lgDash");
     198           0 :         case NS_ooxml::LN_ST_PresetLineDashVal_dashDot: return OUString("dashDot");
     199           0 :         case NS_ooxml::LN_ST_PresetLineDashVal_sysDashDot: return OUString("sysDashDot");
     200           0 :         case NS_ooxml::LN_ST_PresetLineDashVal_lgDashDot: return OUString("lgDashDot");
     201           0 :         case NS_ooxml::LN_ST_PresetLineDashVal_lgDashDotDot: return OUString("lgDashDotDot");
     202           0 :         case NS_ooxml::LN_ST_PresetLineDashVal_sysDashDotDot: return OUString("sysDashDotDot");
     203           0 :         default: break;
     204             :     }
     205           0 :     return OUString();
     206             : }
     207             : 
     208           0 : OUString TextEffectsHandler::getPresetCameraTypeString(sal_Int32 nType)
     209             : {
     210           0 :     switch (nType)
     211             :     {
     212           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyObliqueTopLeft: return OUString("legacyObliqueTopLeft");
     213           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyObliqueTop: return OUString("legacyObliqueTop");
     214           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyObliqueTopRight: return OUString("legacyObliqueTopRight");
     215           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyObliqueLeft: return OUString("legacyObliqueLeft");
     216           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyObliqueFront: return OUString("legacyObliqueFront");
     217           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyObliqueRight: return OUString("legacyObliqueRight");
     218           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyObliqueBottomLeft: return OUString("legacyObliqueBottomLeft");
     219           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyObliqueBottom: return OUString("legacyObliqueBottom");
     220           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyObliqueBottomRight: return OUString("legacyObliqueBottomRight");
     221           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyPerspectiveTopLeft: return OUString("legacyPerspectiveTopLeft");
     222           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyPerspectiveTop: return OUString("legacyPerspectiveTop");
     223           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyPerspectiveTopRight: return OUString("legacyPerspectiveTopRight");
     224           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyPerspectiveLeft: return OUString("legacyPerspectiveLeft");
     225           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyPerspectiveFront: return OUString("legacyPerspectiveFront");
     226           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyPerspectiveRight: return OUString("legacyPerspectiveRight");
     227           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyPerspectiveBottomLeft: return OUString("legacyPerspectiveBottomLeft");
     228           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyPerspectiveBottom: return OUString("legacyPerspectiveBottom");
     229           0 :         case NS_ooxml::LN_ST_PresetCameraType_legacyPerspectiveBottomRight: return OUString("legacyPerspectiveBottomRight");
     230           0 :         case NS_ooxml::LN_ST_PresetCameraType_orthographicFront: return OUString("orthographicFront");
     231           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricTopUp: return OUString("isometricTopUp");
     232           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricTopDown: return OUString("isometricTopDown");
     233           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricBottomUp: return OUString("isometricBottomUp");
     234           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricBottomDown: return OUString("isometricBottomDown");
     235           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricLeftUp: return OUString("isometricLeftUp");
     236           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricLeftDown: return OUString("isometricLeftDown");
     237           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricRightUp: return OUString("isometricRightUp");
     238           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricRightDown: return OUString("isometricRightDown");
     239           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis1Left: return OUString("isometricOffAxis1Left");
     240           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis1Right: return OUString("isometricOffAxis1Right");
     241           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis1Top: return OUString("isometricOffAxis1Top");
     242           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis2Left: return OUString("isometricOffAxis2Left");
     243           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis2Right: return OUString("isometricOffAxis2Right");
     244           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis2Top: return OUString("isometricOffAxis2Top");
     245           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis3Left: return OUString("isometricOffAxis3Left");
     246           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis3Right: return OUString("isometricOffAxis3Right");
     247           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis3Bottom: return OUString("isometricOffAxis3Bottom");
     248           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis4Left: return OUString("isometricOffAxis4Left");
     249           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis4Right: return OUString("isometricOffAxis4Right");
     250           0 :         case NS_ooxml::LN_ST_PresetCameraType_isometricOffAxis4Bottom: return OUString("isometricOffAxis4Bottom");
     251           0 :         case NS_ooxml::LN_ST_PresetCameraType_obliqueTopLeft: return OUString("obliqueTopLeft");
     252           0 :         case NS_ooxml::LN_ST_PresetCameraType_obliqueTop: return OUString("obliqueTop");
     253           0 :         case NS_ooxml::LN_ST_PresetCameraType_obliqueTopRight: return OUString("obliqueTopRight");
     254           0 :         case NS_ooxml::LN_ST_PresetCameraType_obliqueLeft: return OUString("obliqueLeft");
     255           0 :         case NS_ooxml::LN_ST_PresetCameraType_obliqueRight: return OUString("obliqueRight");
     256           0 :         case NS_ooxml::LN_ST_PresetCameraType_obliqueBottomLeft: return OUString("obliqueBottomLeft");
     257           0 :         case NS_ooxml::LN_ST_PresetCameraType_obliqueBottom: return OUString("obliqueBottom");
     258           0 :         case NS_ooxml::LN_ST_PresetCameraType_obliqueBottomRight: return OUString("obliqueBottomRight");
     259           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveFront: return OUString("perspectiveFront");
     260           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveLeft: return OUString("perspectiveLeft");
     261           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveRight: return OUString("perspectiveRight");
     262           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveAbove: return OUString("perspectiveAbove");
     263           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveBelow: return OUString("perspectiveBelow");
     264           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveAboveLeftFacing: return OUString("perspectiveAboveLeftFacing");
     265           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveAboveRightFacing: return OUString("perspectiveAboveRightFacing");
     266           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveContrastingLeftFacing: return OUString("perspectiveContrastingLeftFacing");
     267           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveContrastingRightFacing: return OUString("perspectiveContrastingRightFacing");
     268           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveHeroicLeftFacing: return OUString("perspectiveHeroicLeftFacing");
     269           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveHeroicRightFacing: return OUString("perspectiveHeroicRightFacing");
     270           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveHeroicExtremeLeftFacing: return OUString("perspectiveHeroicExtremeLeftFacing");
     271           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveHeroicExtremeRightFacing: return OUString("perspectiveHeroicExtremeRightFacing");
     272           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveRelaxed: return OUString("perspectiveRelaxed");
     273           0 :         case NS_ooxml::LN_ST_PresetCameraType_perspectiveRelaxedModerately: return OUString("perspectiveRelaxedModerately");
     274           0 :         default: break;
     275             :     }
     276           0 :     return OUString();
     277             : }
     278             : 
     279             : 
     280           0 : OUString TextEffectsHandler::getLightRigTypeString(sal_Int32 nType)
     281             : {
     282           0 :     switch (nType)
     283             :     {
     284           0 :         case NS_ooxml::LN_ST_LightRigType_legacyFlat1: return OUString("legacyFlat1");
     285           0 :         case NS_ooxml::LN_ST_LightRigType_legacyFlat2: return OUString("legacyFlat2");
     286           0 :         case NS_ooxml::LN_ST_LightRigType_legacyFlat3: return OUString("legacyFlat3");
     287           0 :         case NS_ooxml::LN_ST_LightRigType_legacyFlat4: return OUString("legacyFlat4");
     288           0 :         case NS_ooxml::LN_ST_LightRigType_legacyNormal1: return OUString("legacyNormal1");
     289           0 :         case NS_ooxml::LN_ST_LightRigType_legacyNormal2: return OUString("legacyNormal2");
     290           0 :         case NS_ooxml::LN_ST_LightRigType_legacyNormal3: return OUString("legacyNormal3");
     291           0 :         case NS_ooxml::LN_ST_LightRigType_legacyNormal4: return OUString("legacyNormal4");
     292           0 :         case NS_ooxml::LN_ST_LightRigType_legacyHarsh1: return OUString("legacyHarsh1");
     293           0 :         case NS_ooxml::LN_ST_LightRigType_legacyHarsh2: return OUString("legacyHarsh2");
     294           0 :         case NS_ooxml::LN_ST_LightRigType_legacyHarsh3: return OUString("legacyHarsh3");
     295           0 :         case NS_ooxml::LN_ST_LightRigType_legacyHarsh4: return OUString("legacyHarsh4");
     296           0 :         case NS_ooxml::LN_ST_LightRigType_threePt: return OUString("threePt");
     297           0 :         case NS_ooxml::LN_ST_LightRigType_balanced: return OUString("balanced");
     298           0 :         case NS_ooxml::LN_ST_LightRigType_soft: return OUString("soft");
     299           0 :         case NS_ooxml::LN_ST_LightRigType_harsh: return OUString("harsh");
     300           0 :         case NS_ooxml::LN_ST_LightRigType_flood: return OUString("flood");
     301           0 :         case NS_ooxml::LN_ST_LightRigType_contrasting: return OUString("contrasting");
     302           0 :         case NS_ooxml::LN_ST_LightRigType_morning: return OUString("morning");
     303           0 :         case NS_ooxml::LN_ST_LightRigType_sunrise: return OUString("sunrise");
     304           0 :         case NS_ooxml::LN_ST_LightRigType_sunset: return OUString("sunset");
     305           0 :         case NS_ooxml::LN_ST_LightRigType_chilly: return OUString("chilly");
     306           0 :         case NS_ooxml::LN_ST_LightRigType_freezing: return OUString("freezing");
     307           0 :         case NS_ooxml::LN_ST_LightRigType_flat: return OUString("flat");
     308           0 :         case NS_ooxml::LN_ST_LightRigType_twoPt: return OUString("twoPt");
     309           0 :         case NS_ooxml::LN_ST_LightRigType_glow: return OUString("glow");
     310           0 :         case NS_ooxml::LN_ST_LightRigType_brightRoom: return OUString("brightRoom");
     311           0 :         default: break;
     312             :     }
     313           0 :     return OUString();
     314             : }
     315             : 
     316           0 : OUString TextEffectsHandler::getLightRigDirectionString(sal_Int32 nType)
     317             : {
     318           0 :     switch (nType)
     319             :     {
     320           0 :         case NS_ooxml::LN_ST_LightRigDirection_tl: return OUString("tl");
     321           0 :         case NS_ooxml::LN_ST_LightRigDirection_t: return OUString("t");
     322           0 :         case NS_ooxml::LN_ST_LightRigDirection_tr: return OUString("tr");
     323           0 :         case NS_ooxml::LN_ST_LightRigDirection_l: return OUString("l");
     324           0 :         case NS_ooxml::LN_ST_LightRigDirection_r: return OUString("r");
     325           0 :         case NS_ooxml::LN_ST_LightRigDirection_bl: return OUString("bl");
     326           0 :         case NS_ooxml::LN_ST_LightRigDirection_b: return OUString("b");
     327           0 :         case NS_ooxml::LN_ST_LightRigDirection_br: return OUString("br");
     328             : 
     329           0 :         default: break;
     330             :     }
     331           0 :     return OUString();
     332             : }
     333             : 
     334          26 : OUString TextEffectsHandler::getBevelPresetTypeString(sal_Int32 nType)
     335             : {
     336          26 :     switch (nType)
     337             :     {
     338           6 :         case NS_ooxml::LN_ST_BevelPresetType_relaxedInset: return OUString("relaxedInset");
     339           0 :         case NS_ooxml::LN_ST_BevelPresetType_circle: return OUString("circle");
     340           0 :         case NS_ooxml::LN_ST_BevelPresetType_slope: return OUString("slope");
     341           6 :         case NS_ooxml::LN_ST_BevelPresetType_cross: return OUString("cross");
     342           7 :         case NS_ooxml::LN_ST_BevelPresetType_angle: return OUString("angle");
     343           0 :         case NS_ooxml::LN_ST_BevelPresetType_softRound: return OUString("softRound");
     344           0 :         case NS_ooxml::LN_ST_BevelPresetType_convex: return OUString("convex");
     345           0 :         case NS_ooxml::LN_ST_BevelPresetType_coolSlant: return OUString("coolSlant");
     346           7 :         case NS_ooxml::LN_ST_BevelPresetType_divot: return OUString("divot");
     347           0 :         case NS_ooxml::LN_ST_BevelPresetType_riblet: return OUString("riblet");
     348           0 :         case NS_ooxml::LN_ST_BevelPresetType_hardEdge: return OUString("hardEdge");
     349           0 :         case NS_ooxml::LN_ST_BevelPresetType_artDeco: return OUString("artDeco");
     350           0 :         default: break;
     351             :     }
     352           0 :     return OUString();
     353             : }
     354             : 
     355          13 : OUString TextEffectsHandler::getPresetMaterialTypeString(sal_Int32 nType)
     356             : {
     357          13 :     switch (nType)
     358             :     {
     359           0 :         case NS_ooxml::LN_ST_PresetMaterialType_legacyMatte: return OUString("legacyMatte");
     360           0 :         case NS_ooxml::LN_ST_PresetMaterialType_legacyPlastic: return OUString("legacyPlastic");
     361           0 :         case NS_ooxml::LN_ST_PresetMaterialType_legacyMetal: return OUString("legacyMetal");
     362           0 :         case NS_ooxml::LN_ST_PresetMaterialType_legacyWireframe: return OUString("legacyWireframe");
     363           0 :         case NS_ooxml::LN_ST_PresetMaterialType_matte: return OUString("matte");
     364           0 :         case NS_ooxml::LN_ST_PresetMaterialType_plastic: return OUString("plastic");
     365           7 :         case NS_ooxml::LN_ST_PresetMaterialType_metal: return OUString("metal");
     366           0 :         case NS_ooxml::LN_ST_PresetMaterialType_warmMatte: return OUString("warmMatte");
     367           0 :         case NS_ooxml::LN_ST_PresetMaterialType_translucentPowder: return OUString("translucentPowder");
     368           0 :         case NS_ooxml::LN_ST_PresetMaterialType_powder: return OUString("powder");
     369           0 :         case NS_ooxml::LN_ST_PresetMaterialType_dkEdge: return OUString("dkEdge");
     370           6 :         case NS_ooxml::LN_ST_PresetMaterialType_softEdge: return OUString("softEdge");
     371           0 :         case NS_ooxml::LN_ST_PresetMaterialType_clear: return OUString("clear");
     372           0 :         case NS_ooxml::LN_ST_PresetMaterialType_flat: return OUString("flat");
     373           0 :         case NS_ooxml::LN_ST_PresetMaterialType_softmetal: return OUString("softmetal");
     374           0 :         case NS_ooxml::LN_ST_PresetMaterialType_none: return OUString("none");
     375           0 :         default: break;
     376             :     }
     377           0 :     return OUString();
     378             : }
     379             : 
     380          16 : OUString TextEffectsHandler::getLigaturesString(sal_Int32 nType)
     381             : {
     382          16 :     switch (nType)
     383             :     {
     384           0 :         case NS_ooxml::LN_ST_Ligatures_none: return OUString("none");
     385          10 :         case NS_ooxml::LN_ST_Ligatures_standard: return OUString("standard");
     386           0 :         case NS_ooxml::LN_ST_Ligatures_contextual: return OUString("contextual");
     387           0 :         case NS_ooxml::LN_ST_Ligatures_historical: return OUString("historical");
     388           0 :         case NS_ooxml::LN_ST_Ligatures_discretional: return OUString("discretional");
     389           6 :         case NS_ooxml::LN_ST_Ligatures_standardContextual: return OUString("standardContextual");
     390           0 :         case NS_ooxml::LN_ST_Ligatures_standardHistorical: return OUString("standardHistorical");
     391           0 :         case NS_ooxml::LN_ST_Ligatures_contextualHistorical: return OUString("contextualHistorical");
     392           0 :         case NS_ooxml::LN_ST_Ligatures_standardDiscretional: return OUString("standardDiscretional");
     393           0 :         case NS_ooxml::LN_ST_Ligatures_contextualDiscretional: return OUString("contextualDiscretional");
     394           0 :         case NS_ooxml::LN_ST_Ligatures_historicalDiscretional: return OUString("historicalDiscretional");
     395           0 :         case NS_ooxml::LN_ST_Ligatures_standardContextualHistorical: return OUString("standardContextualHistorical");
     396           0 :         case NS_ooxml::LN_ST_Ligatures_standardContextualDiscretional: return OUString("standardContextualDiscretional");
     397           0 :         case NS_ooxml::LN_ST_Ligatures_standardHistoricalDiscretional: return OUString("standardHistoricalDiscretional");
     398           0 :         case NS_ooxml::LN_ST_Ligatures_contextualHistoricalDiscretional: return OUString("contextualHistoricalDiscretional");
     399           0 :         case NS_ooxml::LN_ST_Ligatures_all: return OUString("all");
     400           0 :         default: break;
     401             :     }
     402           0 :     return OUString();
     403             : }
     404             : 
     405          13 : OUString TextEffectsHandler::getNumFormString(sal_Int32 nType)
     406             : {
     407          13 :     switch (nType)
     408             :     {
     409           0 :         case NS_ooxml::LN_ST_NumForm_default: return OUString("default");
     410          10 :         case NS_ooxml::LN_ST_NumForm_lining: return OUString("lining");
     411           3 :         case NS_ooxml::LN_ST_NumForm_oldStyle: return OUString("oldStyle");
     412           0 :         default: break;
     413             :     }
     414           0 :     return OUString();
     415             : }
     416             : 
     417          13 : OUString TextEffectsHandler::getNumSpacingString(sal_Int32 nType)
     418             : {
     419          13 :     switch (nType)
     420             :     {
     421           0 :         case NS_ooxml::LN_ST_NumSpacing_default: return OUString("default");
     422          10 :         case NS_ooxml::LN_ST_NumSpacing_proportional: return OUString("proportional");
     423           3 :         case NS_ooxml::LN_ST_NumSpacing_tabular: return OUString("tabular");
     424           0 :         default: break;
     425             :     }
     426           0 :     return OUString();
     427             : }
     428             : 
     429         205 : void TextEffectsHandler::convertElementIdToPropertyId(sal_Int32 aElementId)
     430             : {
     431         205 :     switch(aElementId)
     432             :     {
     433             :         case NS_ooxml::LN_glow_glow:
     434          13 :             maPropertyId = PROP_CHAR_GLOW_TEXT_EFFECT;
     435          13 :             maElementName = "glow";
     436          13 :             break;
     437             :         case NS_ooxml::LN_shadow_shadow:
     438          19 :             maPropertyId = PROP_CHAR_SHADOW_TEXT_EFFECT;
     439          19 :             maElementName = "shadow";
     440          19 :             break;
     441             :         case NS_ooxml::LN_reflection_reflection:
     442          13 :             maPropertyId = PROP_CHAR_REFLECTION_TEXT_EFFECT;
     443          13 :             maElementName = "reflection";
     444          13 :             break;
     445             :         case NS_ooxml::LN_textOutline_textOutline:
     446          31 :             maPropertyId = PROP_CHAR_TEXTOUTLINE_TEXT_EFFECT;
     447          31 :             maElementName = "textOutline";
     448          31 :             break;
     449             :         case NS_ooxml::LN_textFill_textFill:
     450          24 :             maPropertyId = PROP_CHAR_TEXTFILL_TEXT_EFFECT;
     451          24 :             maElementName = "textFill";
     452          24 :             break;
     453             :         case NS_ooxml::LN_scene3d_scene3d:
     454           0 :             maPropertyId = PROP_CHAR_SCENE3D_TEXT_EFFECT;
     455           0 :             maElementName = "scene3d";
     456           0 :             break;
     457             :         case NS_ooxml::LN_props3d_props3d:
     458          13 :             maPropertyId = PROP_CHAR_PROPS3D_TEXT_EFFECT;
     459          13 :             maElementName = "props3d";
     460          13 :             break;
     461             :         case NS_ooxml::LN_ligatures_ligatures:
     462          16 :             maPropertyId = PROP_CHAR_LIGATURES_TEXT_EFFECT;
     463          16 :             maElementName = "ligatures";
     464          16 :             break;
     465             :         case NS_ooxml::LN_numForm_numForm:
     466          13 :             maPropertyId = PROP_CHAR_NUMFORM_TEXT_EFFECT;
     467          13 :             maElementName = "numForm";
     468          13 :             break;
     469             :         case NS_ooxml::LN_numSpacing_numSpacing:
     470          13 :             maPropertyId = PROP_CHAR_NUMSPACING_TEXT_EFFECT;
     471          13 :             maElementName = "numSpacing";
     472          13 :             break;
     473             :         case NS_ooxml::LN_stylisticSets_stylisticSets:
     474          34 :             maPropertyId = PROP_CHAR_STYLISTICSETS_TEXT_EFFECT;
     475          34 :             maElementName = "stylisticSets";
     476          34 :             break;
     477             :         case NS_ooxml::LN_cntxtAlts_cntxtAlts:
     478          16 :             maPropertyId = PROP_CHAR_CNTXTALTS_TEXT_EFFECT;
     479          16 :             maElementName = "cntxtAlts";
     480          16 :             break;
     481             :         default:
     482           0 :             break;
     483             :     }
     484         205 : }
     485             : 
     486         205 : TextEffectsHandler::TextEffectsHandler(sal_uInt32 aElementId) :
     487             :     LoggedProperties(dmapper_logger, "TextEffectsHandler"),
     488         205 :     mpGrabBagStack(NULL)
     489             : {
     490         205 :     convertElementIdToPropertyId(aElementId);
     491         205 :     mpGrabBagStack.reset(new GrabBagStack(maElementName));
     492         205 : }
     493             : 
     494         410 : TextEffectsHandler::~TextEffectsHandler()
     495             : {
     496         410 : }
     497             : 
     498         205 : boost::optional<PropertyIds> TextEffectsHandler::getGrabBagPropertyId()
     499             : {
     500         205 :     return maPropertyId;
     501             : }
     502             : 
     503        1161 : void TextEffectsHandler::lcl_attribute(Id aName, Value& aValue)
     504             : {
     505        1161 :     if (mpGrabBagStack->getCurrentName() != constAttributesSequenceName)
     506         669 :         mpGrabBagStack->push(constAttributesSequenceName);
     507             : 
     508        1161 :     switch(aName)
     509             :     {
     510             :         case NS_ooxml::LN_CT_Percentage_val:
     511             :         case NS_ooxml::LN_CT_PositiveFixedPercentage_val:
     512             :         case NS_ooxml::LN_CT_PositivePercentage_val:
     513         219 :             mpGrabBagStack->addInt32("val", sal_Int32(aValue.getInt()));
     514         219 :             break;
     515             :         case NS_ooxml::LN_CT_Glow_rad:
     516          13 :             mpGrabBagStack->addInt32("rad", sal_Int32(aValue.getInt()));
     517          13 :             break;
     518             :         case NS_ooxml::LN_CT_SchemeColor_val:
     519             :             {
     520          89 :                 OUString aString = getSchemeColorValTypeString(sal_Int32(aValue.getInt()));
     521          89 :                 mpGrabBagStack->addString("val", aString);
     522             :             }
     523          89 :             break;
     524             :         case NS_ooxml::LN_CT_SRgbColor_val:
     525             :             {
     526          48 :                 OUStringBuffer aBuffer = OUString::number(aValue.getInt(), 16);
     527          96 :                 OUStringBuffer aString;
     528          48 :                 comphelper::string::padToLength(aString, 6 - aBuffer.getLength(), '0');
     529          48 :                 aString.append(aBuffer.getStr());
     530          96 :                 mpGrabBagStack->addString("val", aString.makeStringAndClear().toAsciiUpperCase());
     531             :             }
     532          48 :             break;
     533             :         case NS_ooxml::LN_CT_Shadow_blurRad:
     534             :         case NS_ooxml::LN_CT_Reflection_blurRad:
     535          32 :             mpGrabBagStack->addInt32("blurRad", sal_Int32(aValue.getInt()));
     536          32 :             break;
     537             :         case NS_ooxml::LN_CT_Reflection_stA:
     538          13 :             mpGrabBagStack->addInt32("stA", sal_Int32(aValue.getInt()));
     539          13 :             break;
     540             :         case NS_ooxml::LN_CT_Reflection_stPos:
     541          13 :             mpGrabBagStack->addInt32("stPos", sal_Int32(aValue.getInt()));
     542          13 :             break;
     543             :         case NS_ooxml::LN_CT_Reflection_endA:
     544          13 :             mpGrabBagStack->addInt32("endA", sal_Int32(aValue.getInt()));
     545          13 :             break;
     546             :         case NS_ooxml::LN_CT_Reflection_endPos:
     547          13 :             mpGrabBagStack->addInt32("endPos", sal_Int32(aValue.getInt()));
     548          13 :             break;
     549             :         case NS_ooxml::LN_CT_Shadow_dist:
     550             :         case NS_ooxml::LN_CT_Reflection_dist:
     551          32 :             mpGrabBagStack->addInt32("dist", sal_Int32(aValue.getInt()));
     552          32 :             break;
     553             :         case NS_ooxml::LN_CT_Shadow_dir:
     554             :         case NS_ooxml::LN_CT_Reflection_dir:
     555          32 :             mpGrabBagStack->addInt32("dir", sal_Int32(aValue.getInt()));
     556          32 :             break;
     557             :         case NS_ooxml::LN_CT_Reflection_fadeDir:
     558          13 :             mpGrabBagStack->addInt32("fadeDir", sal_Int32(aValue.getInt()));
     559          13 :             break;
     560             :         case NS_ooxml::LN_CT_Shadow_sx:
     561             :         case NS_ooxml::LN_CT_Reflection_sx:
     562          32 :             mpGrabBagStack->addInt32("sx", sal_Int32(aValue.getInt()));
     563          32 :             break;
     564             :         case NS_ooxml::LN_CT_Shadow_sy:
     565             :         case NS_ooxml::LN_CT_Reflection_sy:
     566          32 :             mpGrabBagStack->addInt32("sy", sal_Int32(aValue.getInt()));
     567          32 :             break;
     568             :         case NS_ooxml::LN_CT_Shadow_kx:
     569             :         case NS_ooxml::LN_CT_Reflection_kx:
     570          32 :             mpGrabBagStack->addInt32("kx", sal_Int32(aValue.getInt()));
     571          32 :             break;
     572             :         case NS_ooxml::LN_CT_Shadow_ky:
     573             :         case NS_ooxml::LN_CT_Reflection_ky:
     574          32 :             mpGrabBagStack->addInt32("ky", sal_Int32(aValue.getInt()));
     575          32 :             break;
     576             :         case NS_ooxml::LN_CT_Shadow_algn:
     577             :         case NS_ooxml::LN_CT_Reflection_algn:
     578             :             {
     579          32 :                 uno::Any aAny = makeAny(getRectAlignmentString(sal_Int32(aValue.getInt())));
     580          32 :                 mpGrabBagStack->appendElement("algn", aAny);
     581             :             }
     582          32 :             break;
     583             :         case NS_ooxml::LN_CT_TextOutlineEffect_w:
     584          31 :             mpGrabBagStack->addInt32("w", sal_Int32(aValue.getInt()));
     585          31 :             break;
     586             :         case NS_ooxml::LN_CT_TextOutlineEffect_cap:
     587             :             {
     588          31 :                 uno::Any aAny = makeAny(getLineCapString(sal_Int32(aValue.getInt())));
     589          31 :                 mpGrabBagStack->appendElement("cap", aAny);
     590             :             }
     591          31 :             break;
     592             :         case NS_ooxml::LN_CT_TextOutlineEffect_cmpd:
     593             :             {
     594          31 :                 uno::Any aAny = makeAny(getCompoundLineString(sal_Int32(aValue.getInt())));
     595          31 :                 mpGrabBagStack->appendElement("cmpd", aAny);
     596             :             }
     597          31 :             break;
     598             :         case NS_ooxml::LN_CT_TextOutlineEffect_algn:
     599             :             {
     600          31 :                 uno::Any aAny = makeAny(getPenAlignmentString(sal_Int32(aValue.getInt())));
     601          31 :                 mpGrabBagStack->appendElement("algn", aAny);
     602             :             }
     603          31 :             break;
     604             :         case NS_ooxml::LN_CT_GradientStop_pos:
     605          60 :             mpGrabBagStack->addInt32("pos", sal_Int32(aValue.getInt()));
     606          60 :             break;
     607             :         case NS_ooxml::LN_CT_LinearShadeProperties_ang:
     608          11 :             mpGrabBagStack->addInt32("ang", sal_Int32(aValue.getInt()));
     609          11 :             break;
     610             :         case NS_ooxml::LN_CT_LinearShadeProperties_scaled:
     611             :             {
     612          11 :                 uno::Any aAny = makeAny(getOnOffString(sal_Int32(aValue.getInt())));
     613          11 :                 mpGrabBagStack->appendElement("scaled", aAny);
     614             :             }
     615          11 :             break;
     616             :         case NS_ooxml::LN_CT_PathShadeProperties_path:
     617             :             {
     618           7 :                 uno::Any aAny = makeAny(getPathShadeTypeString(sal_Int32(aValue.getInt())));
     619           7 :                 mpGrabBagStack->appendElement("path", aAny);
     620             :             }
     621           7 :             break;
     622             :         case NS_ooxml::LN_CT_RelativeRect_l:
     623           7 :             mpGrabBagStack->addInt32("l", sal_Int32(aValue.getInt()));
     624           7 :             break;
     625             :         case NS_ooxml::LN_CT_RelativeRect_t:
     626           7 :             mpGrabBagStack->addInt32("t", sal_Int32(aValue.getInt()));
     627           7 :             break;
     628             :         case NS_ooxml::LN_CT_RelativeRect_r:
     629           7 :             mpGrabBagStack->addInt32("r", sal_Int32(aValue.getInt()));
     630           7 :             break;
     631             :         case NS_ooxml::LN_CT_RelativeRect_b:
     632           7 :             mpGrabBagStack->addInt32("b", sal_Int32(aValue.getInt()));
     633           7 :             break;
     634             :         case NS_ooxml::LN_CT_PresetLineDashProperties_val:
     635             :             {
     636          31 :                 uno::Any aAny = makeAny(getPresetLineDashValString(sal_Int32(aValue.getInt())));
     637          31 :                 mpGrabBagStack->appendElement("val", aAny);
     638             :             }
     639          31 :             break;
     640             :         case NS_ooxml::LN_CT_LineJoinMiterProperties_lim:
     641           6 :             mpGrabBagStack->addInt32("lim", sal_Int32(aValue.getInt()));
     642           6 :             break;
     643             :         case NS_ooxml::LN_CT_Camera_prst:
     644             :             {
     645           0 :                 uno::Any aAny = makeAny(getPresetCameraTypeString(sal_Int32(aValue.getInt())));
     646           0 :                 mpGrabBagStack->appendElement("prst", aAny);
     647             :             }
     648           0 :             break;
     649             :         case NS_ooxml::LN_CT_LightRig_rig:
     650             :             {
     651           0 :                 uno::Any aAny = makeAny(getLightRigTypeString(sal_Int32(aValue.getInt())));
     652           0 :                 mpGrabBagStack->appendElement("rig", aAny);
     653             :             }
     654           0 :             break;
     655             :         case NS_ooxml::LN_CT_LightRig_dir:
     656             :             {
     657           0 :                 uno::Any aAny = makeAny(getLightRigDirectionString(sal_Int32(aValue.getInt())));
     658           0 :                 mpGrabBagStack->appendElement("dir", aAny);
     659             :             }
     660           0 :             break;
     661             :         case NS_ooxml::LN_CT_SphereCoords_lat:
     662           0 :             mpGrabBagStack->addInt32("lat", sal_Int32(aValue.getInt()));
     663           0 :             break;
     664             :         case NS_ooxml::LN_CT_SphereCoords_lon:
     665           0 :             mpGrabBagStack->addInt32("lon", sal_Int32(aValue.getInt()));
     666           0 :             break;
     667             :         case NS_ooxml::LN_CT_SphereCoords_rev:
     668           0 :             mpGrabBagStack->addInt32("rev", sal_Int32(aValue.getInt()));
     669           0 :             break;
     670             :         case NS_ooxml::LN_CT_Props3D_extrusionH:
     671          13 :             mpGrabBagStack->addInt32("extrusionH", sal_Int32(aValue.getInt()));
     672          13 :             break;
     673             :         case NS_ooxml::LN_CT_Props3D_contourW:
     674          13 :             mpGrabBagStack->addInt32("contourW", sal_Int32(aValue.getInt()));
     675          13 :             break;
     676             :         case NS_ooxml::LN_CT_Props3D_prstMaterial:
     677             :             {
     678          13 :                 uno::Any aAny = makeAny(getPresetMaterialTypeString(sal_Int32(aValue.getInt())));
     679          13 :                 mpGrabBagStack->appendElement("prstMaterial", aAny);
     680             :             }
     681          13 :             break;
     682             :         case NS_ooxml::LN_CT_Bevel_w:
     683          26 :             mpGrabBagStack->addInt32("w", sal_Int32(aValue.getInt()));
     684          26 :             break;
     685             :         case NS_ooxml::LN_CT_Bevel_h:
     686          26 :             mpGrabBagStack->addInt32("h", sal_Int32(aValue.getInt()));
     687          26 :             break;
     688             :         case NS_ooxml::LN_CT_Bevel_prst:
     689             :             {
     690          26 :                 uno::Any aAny = makeAny(getBevelPresetTypeString(sal_Int32(aValue.getInt())));
     691          26 :                 mpGrabBagStack->appendElement("prst", aAny);
     692             :             }
     693          26 :             break;
     694             :         case NS_ooxml::LN_CT_Ligatures_val:
     695             :             {
     696          16 :                 uno::Any aAny = makeAny(getLigaturesString(sal_Int32(aValue.getInt())));
     697          16 :                 mpGrabBagStack->appendElement("val", aAny);
     698             :             }
     699          16 :             break;
     700             :         case NS_ooxml::LN_CT_NumForm_val:
     701             :             {
     702          13 :                 uno::Any aAny = makeAny(getNumFormString(sal_Int32(aValue.getInt())));
     703          13 :                 mpGrabBagStack->appendElement("val", aAny);
     704             :             }
     705          13 :             break;
     706             :         case NS_ooxml::LN_CT_NumSpacing_val:
     707             :             {
     708          13 :                 uno::Any aAny = makeAny(getNumSpacingString(sal_Int32(aValue.getInt())));
     709          13 :                 mpGrabBagStack->appendElement("val", aAny);
     710             :             }
     711          13 :             break;
     712             :         case NS_ooxml::LN_CT_StyleSet_id:
     713          34 :             mpGrabBagStack->addInt32("id", sal_Int32(aValue.getInt()));
     714          34 :             break;
     715             :         case NS_ooxml::LN_CT_StyleSet_val:
     716             :         case NS_ooxml::LN_CT_OnOff_val:
     717             :             {
     718           0 :                 uno::Any aAny = makeAny(getOnOffString(sal_Int32(aValue.getInt())));
     719           0 :                 mpGrabBagStack->appendElement("val", aAny);
     720             :             }
     721           0 :             break;
     722             :         default:
     723           0 :             break;
     724             :     }
     725        1161 : }
     726             : 
     727         662 : void TextEffectsHandler::lcl_sprm(Sprm& rSprm)
     728             : {
     729         662 :     if (mpGrabBagStack->getCurrentName() == constAttributesSequenceName)
     730         252 :         mpGrabBagStack->pop();
     731             : 
     732         662 :     sal_uInt32 nSprmId = rSprm.getId();
     733         662 :     OUString aElementName = lclGetNameForElementId(nSprmId);
     734         662 :     if(aElementName.isEmpty())
     735             :     {
     736             :         // Element is unknown -> leave.
     737           0 :         return;
     738             :     }
     739             : 
     740         662 :     mpGrabBagStack->push(aElementName);
     741             : 
     742        1324 :     writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
     743         662 :     if( !pProperties.get())
     744           0 :         return;
     745             : 
     746         662 :     pProperties.get()->resolve( *this );
     747             : 
     748         662 :     if (mpGrabBagStack->getCurrentName() == constAttributesSequenceName)
     749         362 :         mpGrabBagStack->pop();
     750             : 
     751        1324 :     mpGrabBagStack->pop();
     752             : }
     753             : 
     754         205 : beans::PropertyValue TextEffectsHandler::getInteropGrabBag()
     755             : {
     756         205 :     beans::PropertyValue aReturn = mpGrabBagStack->getRootProperty();
     757         205 :     mpGrabBagStack.reset();
     758         205 :     return aReturn;
     759             : }
     760             : 
     761             : }//namespace dmapper
     762             : } //namespace writerfilter
     763             : 
     764             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10