diff options
Diffstat (limited to 'sw/source')
-rw-r--r-- | sw/source/core/unocore/unotbl.cxx | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/sw/source/core/unocore/unotbl.cxx b/sw/source/core/unocore/unotbl.cxx index 578556ab6b5f..9d4570da1f14 100644 --- a/sw/source/core/unocore/unotbl.cxx +++ b/sw/source/core/unocore/unotbl.cxx @@ -1088,24 +1088,16 @@ void SwXCell::setPropertyValue(const OUString& rPropertyName, const uno::Any& aV { auto pEntry(m_pPropSet->getPropertyMap().getByName(rPropertyName)); if(!pEntry) - { - beans::UnknownPropertyException aEx; - aEx.Message = rPropertyName; - throw(aEx); - } - if(pEntry->nWID == FN_UNO_CELL_ROW_SPAN) - { - sal_Int32 nRowSpan = 0; - if(aValue >>= nRowSpan) - pBox->setRowSpan(nRowSpan); - } - else + throw beans::UnknownPropertyException(rPropertyName, static_cast<cppu::OWeakObject*>(this)); + if(pEntry->nWID != FN_UNO_CELL_ROW_SPAN) { SwFrmFmt* pBoxFmt = pBox->ClaimFrmFmt(); SwAttrSet aSet(pBoxFmt->GetAttrSet()); m_pPropSet->setPropertyValue(rPropertyName, aValue, aSet); pBoxFmt->GetDoc()->SetAttr(aSet, *pBoxFmt); } + else if(aValue.isExtractableTo(cppu::UnoType<sal_Int32>::get())) + pBox->setRowSpan(aValue.get<sal_Int32>()); } } |