summaryrefslogtreecommitdiff
path: root/forms/source/xforms/datatyperepository.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'forms/source/xforms/datatyperepository.cxx')
-rw-r--r--forms/source/xforms/datatyperepository.cxx110
1 files changed, 72 insertions, 38 deletions
diff --git a/forms/source/xforms/datatyperepository.cxx b/forms/source/xforms/datatyperepository.cxx
index fdfbd138871a..aba911c3f714 100644
--- a/forms/source/xforms/datatyperepository.cxx
+++ b/forms/source/xforms/datatyperepository.cxx
@@ -36,7 +36,6 @@ namespace xforms
using ::com::sun::star::uno::Reference;
using ::com::sun::star::uno::Any;
using ::com::sun::star::uno::Type;
- using ::com::sun::star::uno::makeAny;
using ::com::sun::star::uno::Sequence;
using ::com::sun::star::util::VetoException;
using ::com::sun::star::container::NoSuchElementException;
@@ -49,40 +48,40 @@ namespace xforms
{
// insert some basic types
- OUString sName( FRM_RES_STRING( RID_STR_DATATYPE_STRING ) );
+ OUString sName( ResourceManager::loadString(RID_STR_DATATYPE_STRING) );
m_aRepository[ sName ] = new OStringType( sName, css::xsd::DataTypeClass::STRING );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_URL );
- m_aRepository[ sName ] = new OStringType( sName, css::xsd::DataTypeClass::anyURI );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_URL);
+ m_aRepository[ sName ] = new OAnyURIType( sName, css::xsd::DataTypeClass::anyURI );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_BOOLEAN );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_BOOLEAN);
m_aRepository[ sName ] = new OBooleanType( sName );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_DECIMAL );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_DECIMAL);
m_aRepository[ sName ] = new ODecimalType( sName, css::xsd::DataTypeClass::DECIMAL );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_FLOAT );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_FLOAT);
m_aRepository[ sName ] = new ODecimalType( sName, css::xsd::DataTypeClass::FLOAT );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_DOUBLE );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_DOUBLE);
m_aRepository[ sName ] = new ODecimalType( sName, css::xsd::DataTypeClass::DOUBLE );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_DATE );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_DATE);
m_aRepository[ sName ] = new ODateType( sName );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_TIME );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_TIME);
m_aRepository[ sName ] = new OTimeType( sName );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_DATETIME );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_DATETIME);
m_aRepository[ sName ] = new ODateTimeType( sName );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_YEAR );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_YEAR);
m_aRepository[ sName ] = new OShortIntegerType( sName, css::xsd::DataTypeClass::gYear );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_MONTH );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_MONTH);
m_aRepository[ sName ] = new OShortIntegerType( sName, css::xsd::DataTypeClass::gMonth );
- sName = FRM_RES_STRING( RID_STR_DATATYPE_DAY );
+ sName = ResourceManager::loadString(RID_STR_DATATYPE_DAY);
m_aRepository[ sName ] = new OShortIntegerType( sName, css::xsd::DataTypeClass::gDay );
}
@@ -131,7 +130,7 @@ namespace xforms
throw ElementExistException( OUString(), *this );
aTypePos = implLocate( sourceName );
- OXSDDataType* pClone = aTypePos->second->clone( newName );
+ rtl::Reference<OXSDDataType> pClone = aTypePos->second->clone( newName );
m_aRepository[ newName ] = pClone;
return pClone;
@@ -145,7 +144,7 @@ namespace xforms
Repository::iterator aTypePos = implLocate( typeName );
if ( aTypePos->second->getIsBasic() )
// "This is a built-in type and cannot be removed."
- throw VetoException(FRM_RES_STRING( RID_STR_XFORMS_CANT_REMOVE_TYPE ), *this );
+ throw VetoException(ResourceManager::loadString(RID_STR_XFORMS_CANT_REMOVE_TYPE), *this );
m_aRepository.erase( aTypePos );
}
@@ -154,7 +153,7 @@ namespace xforms
Reference< XDataType > SAL_CALL ODataTypeRepository::getDataType( const OUString& typeName )
{
::osl::MutexGuard aGuard( m_aMutex );
- return implLocate( typeName )->second.get();
+ return implLocate( typeName )->second;
}
@@ -166,7 +165,7 @@ namespace xforms
Any SAL_CALL ODataTypeRepository::getByName( const OUString& aName )
{
- return makeAny( getDataType( aName ) );
+ return Any( getDataType( aName ) );
}
@@ -205,10 +204,17 @@ namespace xforms
{
OValueLimitedType_Base::registerProperties();
- REGISTER_VOID_PROP( XSD_MAX_INCLUSIVE_DATE, m_aMaxInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MAX_EXCLUSIVE_DATE, m_aMaxExclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_INCLUSIVE_DATE, m_aMinInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_EXCLUSIVE_DATE, m_aMinExclusive, ValueType );
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_INCLUSIVE_DATE, PROPERTY_ID_XSD_MAX_INCLUSIVE_DATE, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_EXCLUSIVE_DATE, PROPERTY_ID_XSD_MAX_EXCLUSIVE_DATE, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxExclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_INCLUSIVE_DATE, PROPERTY_ID_XSD_MIN_INCLUSIVE_DATE, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_EXCLUSIVE_DATE, PROPERTY_ID_XSD_MIN_EXCLUSIVE_DATE, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinExclusive, cppu::UnoType<ValueType>::get() );
}
template<>
@@ -216,10 +222,17 @@ namespace xforms
{
OValueLimitedType_Base::registerProperties();
- REGISTER_VOID_PROP( XSD_MAX_INCLUSIVE_TIME, m_aMaxInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MAX_EXCLUSIVE_TIME, m_aMaxExclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_INCLUSIVE_TIME, m_aMinInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_EXCLUSIVE_TIME, m_aMinExclusive, ValueType );
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_INCLUSIVE_TIME, PROPERTY_ID_XSD_MAX_INCLUSIVE_TIME, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_EXCLUSIVE_TIME, PROPERTY_ID_XSD_MAX_EXCLUSIVE_TIME, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxExclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_INCLUSIVE_TIME, PROPERTY_ID_XSD_MIN_INCLUSIVE_TIME, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_EXCLUSIVE_TIME, PROPERTY_ID_XSD_MIN_EXCLUSIVE_TIME, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinExclusive, cppu::UnoType<ValueType>::get() );
}
template<>
@@ -227,10 +240,17 @@ namespace xforms
{
OValueLimitedType_Base::registerProperties();
- REGISTER_VOID_PROP( XSD_MAX_INCLUSIVE_DATE_TIME, m_aMaxInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MAX_EXCLUSIVE_DATE_TIME, m_aMaxExclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_INCLUSIVE_DATE_TIME, m_aMinInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_EXCLUSIVE_DATE_TIME, m_aMinExclusive, ValueType );
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_INCLUSIVE_DATE_TIME, PROPERTY_ID_XSD_MAX_INCLUSIVE_DATE_TIME, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_EXCLUSIVE_DATE_TIME, PROPERTY_ID_XSD_MAX_EXCLUSIVE_DATE_TIME, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxExclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_INCLUSIVE_DATE_TIME, PROPERTY_ID_XSD_MIN_INCLUSIVE_DATE_TIME, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_EXCLUSIVE_DATE_TIME, PROPERTY_ID_XSD_MIN_EXCLUSIVE_DATE_TIME, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinExclusive, cppu::UnoType<ValueType>::get() );
}
template<>
@@ -238,10 +258,17 @@ namespace xforms
{
OValueLimitedType_Base::registerProperties();
- REGISTER_VOID_PROP( XSD_MAX_INCLUSIVE_DOUBLE, m_aMaxInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MAX_EXCLUSIVE_DOUBLE, m_aMaxExclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_INCLUSIVE_DOUBLE, m_aMinInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_EXCLUSIVE_DOUBLE, m_aMinExclusive, ValueType );
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_INCLUSIVE_DOUBLE, PROPERTY_ID_XSD_MAX_INCLUSIVE_DOUBLE, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_EXCLUSIVE_DOUBLE, PROPERTY_ID_XSD_MAX_EXCLUSIVE_DOUBLE, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxExclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_INCLUSIVE_DOUBLE, PROPERTY_ID_XSD_MIN_INCLUSIVE_DOUBLE, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_EXCLUSIVE_DOUBLE, PROPERTY_ID_XSD_MIN_EXCLUSIVE_DOUBLE, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinExclusive, cppu::UnoType<ValueType>::get() );
}
template<>
@@ -249,10 +276,17 @@ namespace xforms
{
OValueLimitedType_Base::registerProperties();
- REGISTER_VOID_PROP( XSD_MAX_INCLUSIVE_INT, m_aMaxInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MAX_EXCLUSIVE_INT, m_aMaxExclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_INCLUSIVE_INT, m_aMinInclusive, ValueType );
- REGISTER_VOID_PROP( XSD_MIN_EXCLUSIVE_INT, m_aMinExclusive, ValueType );
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_INCLUSIVE_INT, PROPERTY_ID_XSD_MAX_INCLUSIVE_INT, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MAX_EXCLUSIVE_INT, PROPERTY_ID_XSD_MAX_EXCLUSIVE_INT, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMaxExclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_INCLUSIVE_INT, PROPERTY_ID_XSD_MIN_INCLUSIVE_INT, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinInclusive, cppu::UnoType<ValueType>::get() );
+
+ registerMayBeVoidProperty( PROPERTY_XSD_MIN_EXCLUSIVE_INT, PROPERTY_ID_XSD_MIN_EXCLUSIVE_INT, css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::MAYBEVOID,
+ &m_aMinExclusive, cppu::UnoType<ValueType>::get() );
}
} // namespace xforms