summaryrefslogtreecommitdiff
path: root/forms/source/component/Columns.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'forms/source/component/Columns.cxx')
-rw-r--r--forms/source/component/Columns.cxx9
1 files changed, 9 insertions, 0 deletions
diff --git a/forms/source/component/Columns.cxx b/forms/source/component/Columns.cxx
index 9bc330360e56..f98b6cb862cc 100644
--- a/forms/source/component/Columns.cxx
+++ b/forms/source/component/Columns.cxx
@@ -42,9 +42,11 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/form/binding/XBindableValue.hpp>
#include <com/sun/star/beans/XPropertyContainer.hpp>
+#include <com/sun/star/text/XText.hpp>
#include <comphelper/sequence.hxx>
#include <comphelper/property.hxx>
#include <comphelper/basicio.hxx>
+#include <comphelper/types.hxx>
#include "services.hxx"
#include "frm_resource.hrc"
#include <tools/debug.hxx>
@@ -63,6 +65,7 @@ using namespace ::com::sun::star::awt;
using namespace ::com::sun::star::io;
using namespace ::com::sun::star::lang;
using namespace ::com::sun::star::util;
+using namespace ::com::sun::star::text;
using namespace ::com::sun::star::form::binding;
const sal_uInt16 WIDTH = 0x0001;
@@ -173,6 +176,7 @@ Sequence<Type> SAL_CALL OGridColumn::getTypes() throw(RuntimeException)
aTypes.removeType( XServiceInfo::static_type() );
aTypes.removeType( XBindableValue::static_type() );
aTypes.removeType( XPropertyContainer::static_type() );
+
// but re-add their base class(es)
aTypes.addType( XChild::static_type() );
@@ -180,6 +184,10 @@ Sequence<Type> SAL_CALL OGridColumn::getTypes() throw(RuntimeException)
if ( query_aggregation( m_xAggregate, xProv ))
aTypes.addTypes( xProv->getTypes() );
+ aTypes.removeType( XTextRange::static_type() );
+ aTypes.removeType( XSimpleText::static_type() );
+ aTypes.removeType( XText::static_type() );
+
return aTypes.getTypes();
}
@@ -192,6 +200,7 @@ Any SAL_CALL OGridColumn::queryAggregation( const Type& _rType ) throw (RuntimeE
|| _rType.equals(::getCppuType(static_cast< Reference< XServiceInfo >* >(NULL)))
|| _rType.equals(::getCppuType(static_cast< Reference< XBindableValue >* >(NULL)))
|| _rType.equals(::getCppuType(static_cast< Reference< XPropertyContainer >* >(NULL)))
+ || comphelper::isAssignableFrom(::getCppuType(static_cast< Reference< XTextRange >* >(NULL)),_rType)
)
return aReturn;