don't try to set property mapping if there is no value

Change-Id: I422d651e303553e2ce30895b44b8d96664418c19
This commit is contained in:
Markus Mohrhard 2014-06-22 03:11:35 +02:00
parent 48fe2c0375
commit d005413c2e
5 changed files with 28 additions and 14 deletions

View File

@ -808,9 +808,12 @@ void BarChart::createShapes()
if(bHasFillColorMapping)
{
uno::Reference< beans::XPropertySet > xProps( xShape, uno::UNO_QUERY_THROW );
xProps->setPropertyValue("FillColor", uno::makeAny(static_cast<sal_Int32>(
pSeries->getValueByProperty(nPointIndex, "FillColor"))));
double nPropVal = pSeries->getValueByProperty(nPointIndex, "FillColor");
if(!rtl::math::isNan(nPropVal))
{
uno::Reference< beans::XPropertySet > xProps( xShape, uno::UNO_QUERY_THROW );
xProps->setPropertyValue("FillColor", uno::makeAny(static_cast<sal_Int32>(nPropVal)));
}
}
//set name/classified ObjectID (CID)
ShapeFactory::setShapeName(xShape

View File

@ -324,15 +324,21 @@ void BubbleChart::createShapes()
if(bHasFillColorMapping)
{
uno::Reference< beans::XPropertySet > xProps( xShape, uno::UNO_QUERY_THROW );
xProps->setPropertyValue("FillColor", uno::makeAny(static_cast<sal_Int32>(
pSeries->getValueByProperty(nIndex, "FillColor"))));
double nPropVal = pSeries->getValueByProperty(nIndex, "FillColor");
if(!rtl::math::isNan(nPropVal))
{
uno::Reference< beans::XPropertySet > xProps( xShape, uno::UNO_QUERY_THROW );
xProps->setPropertyValue("FillColor", uno::makeAny(static_cast<sal_Int32>(nPropVal)));
}
}
if(bHasBorderColorMapping)
{
uno::Reference< beans::XPropertySet > xProps( xShape, uno::UNO_QUERY_THROW );
xProps->setPropertyValue("LineColor", uno::makeAny(static_cast<sal_Int32>(
pSeries->getValueByProperty(nIndex, "LineColor"))));
double nPropVal = pSeries->getValueByProperty(nIndex, "LineColor");
if(!rtl::math::isNan(nPropVal))
{
uno::Reference< beans::XPropertySet > xProps( xShape, uno::UNO_QUERY_THROW );
xProps->setPropertyValue("LineColor", uno::makeAny(static_cast<sal_Int32>(nPropVal)));
}
}
::chart::AbstractShapeFactory::setShapeName( xShape, "MarkHandles" );

View File

@ -169,7 +169,9 @@ void GL3DBarChart::create3DShapes(const boost::ptr_vector<VDataSeries>& rDataSer
{
if(bMappedFillProperty)
{
nColor = static_cast<sal_uInt32>(rDataSeries.getValueByProperty(nIndex, "FillColor"));
double nPropVal = rDataSeries.getValueByProperty(nIndex, "FillColor");
if(!rtl::math::isNan(nPropVal))
nColor = static_cast<sal_uInt32>(nPropVal);
}
float nVal = rDataSeries.getYValue(nIndex);

View File

@ -436,9 +436,12 @@ void PieChart::createShapes()
if(bHasFillColorMapping)
{
uno::Reference< beans::XPropertySet > xProps( xPointShape, uno::UNO_QUERY_THROW );
xProps->setPropertyValue("FillColor", uno::makeAny(static_cast<sal_Int32>(
pSeries->getValueByProperty(nPointIndex, "FillColor"))));
double nPropVal = pSeries->getValueByProperty(nPointIndex, "FillColor");
if(!rtl::math::isNan(nPropVal))
{
uno::Reference< beans::XPropertySet > xProps( xPointShape, uno::UNO_QUERY_THROW );
xProps->setPropertyValue("FillColor", uno::makeAny(static_cast<sal_Int32>( nPropVal)));
}
}
//create label

View File

@ -1065,7 +1065,7 @@ double VDataSeries::getValueByProperty( sal_Int32 nIndex, const OUString& rPropN
if(itr == maPropertyMap.end())
{
double fNan;
::rtl::math::setNan( & fNan );
::rtl::math::setNan( &fNan );
return fNan;
}