summaryrefslogtreecommitdiff
path: root/xmloff
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@collabora.com>2016-06-23 10:18:35 +0200
committerJan Holesovsky <kendy@collabora.com>2016-06-23 10:58:32 +0200
commita07a69850acddae631d6bd9496ace0c35accdda5 (patch)
tree55dd27860faecd4e8e39e40abf576cb8585e8f4f /xmloff
parent535ac37c5ff9b9dc60f6f56e4cfd518eff764975 (diff)
Introduce FillAutoStyle() method to reduce copy'n'paste.
Change-Id: Ibdb6ae15790cc117d3d8c41c57924f9b22e85cba
Diffstat (limited to 'xmloff')
-rw-r--r--xmloff/source/chart/SchXMLAxisContext.cxx14
-rw-r--r--xmloff/source/chart/SchXMLChartContext.cxx30
-rw-r--r--xmloff/source/chart/SchXMLImport.cxx18
-rw-r--r--xmloff/source/chart/SchXMLLegendContext.cxx10
-rw-r--r--xmloff/source/chart/SchXMLPlotAreaContext.cxx27
5 files changed, 27 insertions, 72 deletions
diff --git a/xmloff/source/chart/SchXMLAxisContext.cxx b/xmloff/source/chart/SchXMLAxisContext.cxx
index 9feded25e6e1..652e223214ed 100644
--- a/xmloff/source/chart/SchXMLAxisContext.cxx
+++ b/xmloff/source/chart/SchXMLAxisContext.cxx
@@ -219,18 +219,8 @@ void SchXMLAxisContext::CreateGrid( const OUString& sAutoStyleName, bool bIsMajo
// the line color is black as default, in the model it is a light gray
xGridProp->setPropertyValue("LineColor",
uno::makeAny( COL_BLACK ));
- if( !sAutoStyleName.isEmpty())
- {
- const SvXMLStylesContext* pStylesCtxt = m_rImportHelper.GetAutoStylesContext();
- if( pStylesCtxt )
- {
- const SvXMLStyleContext* pStyle = pStylesCtxt->FindStyleChildContext(
- SchXMLImportHelper::GetChartFamilyID(), sAutoStyleName );
-
- if( pStyle && dynamic_cast<const XMLPropStyleContext*>( pStyle) != nullptr)
- const_cast<XMLPropStyleContext*>( static_cast< const XMLPropStyleContext* >( pStyle ))->FillPropertySet( xGridProp );
- }
- }
+ if (!sAutoStyleName.isEmpty())
+ m_rImportHelper.FillAutoStyle(sAutoStyleName, xGridProp);
}
}
diff --git a/xmloff/source/chart/SchXMLChartContext.cxx b/xmloff/source/chart/SchXMLChartContext.cxx
index 5cc699f61c38..f9e2dab38a91 100644
--- a/xmloff/source/chart/SchXMLChartContext.cxx
+++ b/xmloff/source/chart/SchXMLChartContext.cxx
@@ -364,19 +364,8 @@ void SchXMLChartContext::StartElement( const uno::Reference< xml::sax::XAttribut
}
// set auto-styles for Area
- uno::Reference< beans::XPropertySet > xProp( mrImportHelper.GetChartDocument()->getArea(), uno::UNO_QUERY );
- if( xProp.is())
- {
- const SvXMLStylesContext* pStylesCtxt = mrImportHelper.GetAutoStylesContext();
- if( pStylesCtxt )
- {
- const SvXMLStyleContext* pStyle = pStylesCtxt->FindStyleChildContext(
- SchXMLImportHelper::GetChartFamilyID(), sAutoStyleName );
-
- if( pStyle && dynamic_cast< const XMLPropStyleContext*>(pStyle) != nullptr)
- const_cast<XMLPropStyleContext*>( static_cast< const XMLPropStyleContext* >( pStyle ) )->FillPropertySet( xProp );
- }
- }
+ uno::Reference<beans::XPropertySet> xProp(mrImportHelper.GetChartDocument()->getArea(), uno::UNO_QUERY);
+ mrImportHelper.FillAutoStyle(sAutoStyleName, xProp);
}
namespace
@@ -1183,19 +1172,8 @@ void SchXMLTitleContext::StartElement( const uno::Reference< xml::sax::XAttribut
if( bHasXPosition && bHasYPosition )
mxTitleShape->setPosition( aPosition );
- uno::Reference< beans::XPropertySet > xProp( mxTitleShape, uno::UNO_QUERY );
- if( xProp.is())
- {
- const SvXMLStylesContext* pStylesCtxt = mrImportHelper.GetAutoStylesContext();
- if( pStylesCtxt )
- {
- const SvXMLStyleContext* pStyle = pStylesCtxt->FindStyleChildContext(
- SchXMLImportHelper::GetChartFamilyID(), msAutoStyleName );
-
- if( pStyle && dynamic_cast< const XMLPropStyleContext*>(pStyle) != nullptr)
- const_cast<XMLPropStyleContext*>( static_cast< const XMLPropStyleContext* >( pStyle ) )->FillPropertySet( xProp );
- }
- }
+ uno::Reference<beans::XPropertySet> xProp(mxTitleShape, uno::UNO_QUERY);
+ mrImportHelper.FillAutoStyle(msAutoStyleName, xProp);
}
}
diff --git a/xmloff/source/chart/SchXMLImport.cxx b/xmloff/source/chart/SchXMLImport.cxx
index 3b903be7c28b..17645c9896be 100644
--- a/xmloff/source/chart/SchXMLImport.cxx
+++ b/xmloff/source/chart/SchXMLImport.cxx
@@ -26,10 +26,11 @@
#include <rtl/ustrbuf.hxx>
#include <comphelper/processfactory.hxx>
+#include <xmloff/nmspmap.hxx>
+#include <xmloff/prstylei.hxx>
#include <xmloff/xmlnmspe.hxx>
#include <xmloff/xmltoken.hxx>
#include <xmloff/xmluconv.hxx>
-#include <xmloff/nmspmap.hxx>
#include <xmloff/xmlictxt.hxx>
#include <xmloff/xmlstyle.hxx>
#include <com/sun/star/task/XStatusIndicatorSupplier.hpp>
@@ -140,6 +141,21 @@ SvXMLImportContext* SchXMLImportHelper::CreateChartContext(
return pContext;
}
+void SchXMLImportHelper::FillAutoStyle(const OUString& rAutoStyleName, const uno::Reference<beans::XPropertySet>& rProp)
+{
+ if (!rProp.is())
+ return;
+
+ const SvXMLStylesContext* pStylesCtxt = GetAutoStylesContext();
+ if (pStylesCtxt)
+ {
+ SvXMLStyleContext* pStyle = const_cast<SvXMLStyleContext*>(pStylesCtxt->FindStyleChildContext(SchXMLImportHelper::GetChartFamilyID(), rAutoStyleName));
+
+ if (XMLPropStyleContext* pPropStyle = dynamic_cast<XMLPropStyleContext*>(pStyle))
+ pPropStyle->FillPropertySet(rProp);
+ }
+}
+
// get various token maps
const SvXMLTokenMap& SchXMLImportHelper::GetDocElemTokenMap()
diff --git a/xmloff/source/chart/SchXMLLegendContext.cxx b/xmloff/source/chart/SchXMLLegendContext.cxx
index 04d06c067c53..600b6b96c878 100644
--- a/xmloff/source/chart/SchXMLLegendContext.cxx
+++ b/xmloff/source/chart/SchXMLLegendContext.cxx
@@ -198,15 +198,7 @@ void SchXMLLegendContext::StartElement( const uno::Reference< xml::sax::XAttribu
xLegendProps->setPropertyValue("FillStyle", uno::makeAny( drawing::FillStyle_NONE ));
// set auto-styles for Legend
- const SvXMLStylesContext* pStylesCtxt = mrImportHelper.GetAutoStylesContext();
- if( pStylesCtxt )
- {
- const SvXMLStyleContext* pStyle = pStylesCtxt->FindStyleChildContext(
- SchXMLImportHelper::GetChartFamilyID(), sAutoStyleName );
-
- if( pStyle && dynamic_cast< const XMLPropStyleContext*>(pStyle) != nullptr)
- const_cast<XMLPropStyleContext*>( static_cast<const XMLPropStyleContext*>( pStyle ) )->FillPropertySet( xLegendProps );
- }
+ mrImportHelper.FillAutoStyle(sAutoStyleName, xLegendProps);
}
SchXMLLegendContext::~SchXMLLegendContext()
diff --git a/xmloff/source/chart/SchXMLPlotAreaContext.cxx b/xmloff/source/chart/SchXMLPlotAreaContext.cxx
index 65ddc9a59133..a0d2e092727a 100644
--- a/xmloff/source/chart/SchXMLPlotAreaContext.cxx
+++ b/xmloff/source/chart/SchXMLPlotAreaContext.cxx
@@ -798,20 +798,9 @@ void SchXMLWallFloorContext::StartElement( const uno::Reference< xml::sax::XAttr
? mxWallFloorSupplier->getWall()
: mxWallFloorSupplier->getFloor(),
uno::UNO_QUERY );
- if (xProp.is())
- {
- if (!sAutoStyleName.isEmpty())
- {
- const SvXMLStylesContext* pStylesCtxt = mrImportHelper.GetAutoStylesContext();
- if (pStylesCtxt)
- {
- SvXMLStyleContext* pStyle = const_cast<SvXMLStyleContext*>(pStylesCtxt->FindStyleChildContext(SchXMLImportHelper::GetChartFamilyID(), sAutoStyleName));
- if (XMLPropStyleContext* pPropStyle = dynamic_cast<XMLPropStyleContext*>(pStyle))
- pPropStyle->FillPropertySet(xProp);
- }
- }
- }
+ if (!sAutoStyleName.isEmpty())
+ mrImportHelper.FillAutoStyle(sAutoStyleName, xProp);
}
}
@@ -870,17 +859,7 @@ void SchXMLStockContext::StartElement( const uno::Reference< xml::sax::XAttribut
break;
}
- if (xProp.is())
- {
- const SvXMLStylesContext* pStylesCtxt = mrImportHelper.GetAutoStylesContext();
- if (pStylesCtxt)
- {
- SvXMLStyleContext* pStyle = const_cast<SvXMLStyleContext*>(pStylesCtxt->FindStyleChildContext(SchXMLImportHelper::GetChartFamilyID(), sAutoStyleName));
-
- if (XMLPropStyleContext* pPropStyle = dynamic_cast<XMLPropStyleContext*>(pStyle))
- pPropStyle->FillPropertySet(xProp);
- }
- }
+ mrImportHelper.FillAutoStyle(sAutoStyleName, xProp);
}
}
}