From 1cdb723b27d7359097891c7c370264c9974079db Mon Sep 17 00:00:00 2001 From: Lionel Elie Mamane Date: Fri, 19 Dec 2014 19:36:12 +0100 Subject: teach XML import/export about unsigned integer types resolves a shitload of warnings like warn:legacy.osl:941:1:xmloff/source/forms/elementimport.cxx:426: OElementImport::implImportGenericProperties: unsupported value type! warn:legacy.osl:941:1:xmloff/source/forms/elementimport.cxx:443: OElementImport::EndElement: could not set the property "ObjIDinMSO"! warn:legacy.osl:941:1:xmloff/source/forms/elementimport.cxx:444: caught an exception! in function:void xmloff::OElementImport::implApplyGenericProperties() type: com.sun.star.lang.IllegalArgumentException Change-Id: Ia598d12e7d9429fe4ad3b1e7173e11e75060a613 --- xmloff/source/forms/elementimport.cxx | 9 +++++++++ xmloff/source/forms/propertyexport.cxx | 8 ++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) (limited to 'xmloff/source') diff --git a/xmloff/source/forms/elementimport.cxx b/xmloff/source/forms/elementimport.cxx index eede26ad743a..14b09e342e94 100644 --- a/xmloff/source/forms/elementimport.cxx +++ b/xmloff/source/forms/elementimport.cxx @@ -415,10 +415,19 @@ namespace xmloff case TypeClass_SHORT: aPropValues->Value <<= static_cast< sal_Int16 >( nVal ); break; + case TypeClass_UNSIGNED_SHORT: + aPropValues->Value <<= static_cast< sal_uInt16 >( nVal ); + break; case TypeClass_LONG: case TypeClass_ENUM: aPropValues->Value <<= static_cast< sal_Int32 >( nVal ); break; + case TypeClass_UNSIGNED_LONG: + aPropValues->Value <<= static_cast< sal_uInt32 >( nVal ); + break; + case TypeClass_UNSIGNED_HYPER: + aPropValues->Value <<= static_cast< sal_uInt64 >( nVal ); + break; case TypeClass_HYPER: aPropValues->Value <<= static_cast< sal_Int64 >( nVal ); break; diff --git a/xmloff/source/forms/propertyexport.cxx b/xmloff/source/forms/propertyexport.cxx index 501c88a2227c..a2a611238666 100644 --- a/xmloff/source/forms/propertyexport.cxx +++ b/xmloff/source/forms/propertyexport.cxx @@ -539,14 +539,18 @@ namespace xmloff aBuffer = getBOOL(_rValue) ? m_sValueTrue : m_sValueFalse; break; case TypeClass_BYTE: + case TypeClass_UNSIGNED_SHORT: case TypeClass_SHORT: case TypeClass_LONG: // let the unit converter format is as string ::sax::Converter::convertNumber(aBuffer, getINT32(_rValue)); break; + case TypeClass_UNSIGNED_LONG: case TypeClass_HYPER: - // TODO - OSL_FAIL("OPropertyExport::implConvertAny: missing implementation for sal_Int64!"); + ::sax::Converter::convertNumber(aBuffer, getINT64(_rValue)); + break; + case TypeClass_UNSIGNED_HYPER: + ::sax::Converter::convertNumber(aBuffer, _rValue.get()); break; case TypeClass_ENUM: { -- cgit