diff options
-rw-r--r-- | svgio/inc/svgio/svgreader/svgstyleattributes.hxx | 5 | ||||
-rw-r--r-- | svgio/source/svgreader/svgstyleattributes.cxx | 23 |
2 files changed, 21 insertions, 7 deletions
diff --git a/svgio/inc/svgio/svgreader/svgstyleattributes.hxx b/svgio/inc/svgio/svgreader/svgstyleattributes.hxx index e138eb5ec1ce..828bfb160e9e 100644 --- a/svgio/inc/svgio/svgreader/svgstyleattributes.hxx +++ b/svgio/inc/svgio/svgreader/svgstyleattributes.hxx @@ -155,6 +155,7 @@ namespace svgio enum Visibility { + Visibility_notset, Visibility_visible, Visibility_hidden, Visibility_collapse, @@ -412,8 +413,8 @@ namespace svgio void setOpacity(const SvgNumber& rOpacity = SvgNumber()) { maOpacity = rOpacity; } /// Visibility - Visibility getVisibility() const { return maVisibility; } - void setVisibility(Visibility eVisibility) { maVisibility = eVisibility; } + Visibility getVisibility() const; + void setVisibility(const Visibility aVisibility = Visibility_notset) { maVisibility = aVisibility; } // Title content const OUString& getTitle() const { return maTitle; } diff --git a/svgio/source/svgreader/svgstyleattributes.cxx b/svgio/source/svgreader/svgstyleattributes.cxx index 5d557ac10a02..765f8f8599cf 100644 --- a/svgio/source/svgreader/svgstyleattributes.cxx +++ b/svgio/source/svgreader/svgstyleattributes.cxx @@ -1216,7 +1216,7 @@ namespace svgio maTextAnchor(TextAnchor_notset), maColor(), maOpacity(), - maVisibility(Visibility_visible), + maVisibility(Visibility_notset), maTitle(), maDesc(), maClipPathXLink(), @@ -1242,10 +1242,6 @@ namespace svgio mbIsClipPathContent = pParentStyle->mbIsClipPathContent; } } - if(pParentStyle) - { - maVisibility = pParentStyle->maVisibility; - } } SvgStyleAttributes::~SvgStyleAttributes() @@ -2144,6 +2140,23 @@ namespace svgio return SvgNumber(1.0); } + Visibility SvgStyleAttributes::getVisibility() const + { + if(Visibility_notset == maVisibility || Visibility_inherit == maVisibility) + { + const SvgStyleAttributes* pSvgStyleAttributes = getParentStyle(); + + if(pSvgStyleAttributes) + { + return pSvgStyleAttributes->getVisibility(); + } + //default is Visible + return Visibility_visible; + } + + return maVisibility; + } + FillRule SvgStyleAttributes::getFillRule() const { if(FillRule_notset != maFillRule) |