dba33f: #i53377# make property IsReadOnly bound
This commit is contained in:
@@ -73,7 +73,7 @@ ORowSetColumn::ORowSetColumn( const Reference < XResultSetMetaData >& _xMetaDa
|
||||
DECL_PROP1_BOOL( ISCURRENCY, READONLY );
|
||||
DECL_PROP1_BOOL( ISDEFINITELYWRITABLE, READONLY );
|
||||
DECL_PROP1( ISNULLABLE, sal_Int32, READONLY );
|
||||
DECL_PROP1_BOOL( ISREADONLY, READONLY );
|
||||
DECL_PROP1_BOOL( ISREADONLY, BOUND );
|
||||
DECL_PROP1_BOOL( ISROWVERSION, READONLY );
|
||||
DECL_PROP1_BOOL( ISSEARCHABLE, READONLY );
|
||||
DECL_PROP1_BOOL( ISSIGNED, READONLY );
|
||||
|
@@ -107,7 +107,7 @@ ORowSetDataColumn::~ORowSetDataColumn()
|
||||
DECL_PROP1_BOOL( ISCURRENCY, READONLY );
|
||||
DECL_PROP1_BOOL( ISDEFINITELYWRITABLE, READONLY );
|
||||
DECL_PROP1( ISNULLABLE, sal_Int32, READONLY );
|
||||
DECL_PROP1_BOOL( ISREADONLY, READONLY );
|
||||
DECL_PROP1_BOOL( ISREADONLY, BOUND );
|
||||
DECL_PROP1_BOOL( ISROWVERSION, READONLY );
|
||||
DECL_PROP1_BOOL( ISSEARCHABLE, READONLY );
|
||||
DECL_PROP1_BOOL( ISSIGNED, READONLY );
|
||||
@@ -160,13 +160,21 @@ void SAL_CALL ORowSetDataColumn::getFastPropertyValue( Any& rValue, sal_Int32 nH
|
||||
// -------------------------------------------------------------------------
|
||||
void SAL_CALL ORowSetDataColumn::setFastPropertyValue_NoBroadcast(sal_Int32 nHandle,const Any& rValue )throw (Exception)
|
||||
{
|
||||
if ( PROPERTY_ID_VALUE == nHandle )
|
||||
switch( nHandle )
|
||||
{
|
||||
case PROPERTY_ID_VALUE:
|
||||
updateObject(rValue);
|
||||
}
|
||||
else
|
||||
break;
|
||||
case PROPERTY_ID_ISREADONLY:
|
||||
{
|
||||
sal_Bool bVal = sal_False;
|
||||
rValue >>= bVal;
|
||||
m_isReadOnly.reset(bVal);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
ODataColumn::setFastPropertyValue_NoBroadcast( nHandle,rValue );
|
||||
break;
|
||||
}
|
||||
}
|
||||
// -------------------------------------------------------------------------
|
||||
@@ -176,14 +184,26 @@ sal_Bool SAL_CALL ORowSetDataColumn::convertFastPropertyValue( Any & rConvertedV
|
||||
const Any& rValue ) throw (IllegalArgumentException)
|
||||
{
|
||||
sal_Bool bModified = sal_False;
|
||||
if ( PROPERTY_ID_VALUE == nHandle )
|
||||
switch( nHandle )
|
||||
{
|
||||
case PROPERTY_ID_VALUE:
|
||||
{
|
||||
rConvertedValue = rValue;
|
||||
getFastPropertyValue(rOldValue, PROPERTY_ID_VALUE);
|
||||
bModified = rConvertedValue != rOldValue;
|
||||
}
|
||||
else
|
||||
break;
|
||||
case PROPERTY_ID_ISREADONLY:
|
||||
{
|
||||
rConvertedValue = rValue;
|
||||
getFastPropertyValue(rOldValue, PROPERTY_ID_ISREADONLY);
|
||||
bModified = rConvertedValue != rOldValue;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
bModified = ODataColumn::convertFastPropertyValue(rConvertedValue, rOldValue, nHandle, rValue);
|
||||
break;
|
||||
}
|
||||
|
||||
return bModified;
|
||||
}
|
||||
|
@@ -83,7 +83,6 @@ namespace dbaccess
|
||||
virtual void SAL_CALL setFastPropertyValue_NoBroadcast(sal_Int32 nHandle,const ::com::sun::star::uno::Any& rValue )throw (::com::sun::star::uno::Exception);
|
||||
|
||||
virtual void fireValueChange(const ::connectivity::ORowSetValue& _rOldValue);
|
||||
|
||||
protected:
|
||||
using ODataColumn::getFastPropertyValue;
|
||||
};
|
||||
|
Reference in New Issue
Block a user