tdf#39593 Remove xforms::Submission::getSubmission
Replace with comphelper::getUnoTunnelImplementation.
Change-Id: I8dcd0bf1cfbaa02fbb7c128421506f1c30d87773
Reviewed-on: https://gerrit.libreoffice.org/74387
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
diff --git a/forms/source/xforms/model.cxx b/forms/source/xforms/model.cxx
index f92e839..c413581 100644
--- a/forms/source/xforms/model.cxx
+++ b/forms/source/xforms/model.cxx
@@ -449,7 +449,7 @@
if( mxSubmissions->hasItem( sID ) )
{
Submission* pSubmission =
Submission::getSubmission( mxSubmissions->getItem( sID ) );
comphelper::getUnoTunnelImplementation<Submission>( mxSubmissions->getItem( sID ) );
OSL_ENSURE( pSubmission != nullptr, "no submission?" );
OSL_ENSURE( pSubmission->getModel() == Reference<XModel>( this ),
"wrong model" );
diff --git a/forms/source/xforms/model_helper.hxx b/forms/source/xforms/model_helper.hxx
index b70bc23..f0a6c46 100644
--- a/forms/source/xforms/model_helper.hxx
+++ b/forms/source/xforms/model_helper.hxx
@@ -34,6 +34,7 @@
#include <com/sun/star/lang/XUnoTunnel.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <comphelper/servicehelper.hxx>
namespace xforms
{
@@ -82,20 +83,22 @@
virtual bool isValid( const T& t ) const override
{
return Submission::getSubmission( t ) != nullptr;
return comphelper::getUnoTunnelImplementation<Submission>( t ) != nullptr;
}
protected:
virtual void _insert( const T& t ) override
{
OSL_ENSURE( Submission::getSubmission( t ) != nullptr, "invalid item?" );
Submission::getSubmission( t )->setModel( css::uno::Reference<css::xforms::XModel>( mpModel ) );
auto pSubmission = comphelper::getUnoTunnelImplementation<Submission>( t );
OSL_ENSURE( pSubmission != nullptr, "invalid item?" );
pSubmission->setModel( css::uno::Reference<css::xforms::XModel>( mpModel ) );
}
virtual void _remove( const T& t ) override
{
OSL_ENSURE( Submission::getSubmission( t ) != nullptr, "invalid item?" );
Submission::getSubmission( t )->setModel( css::uno::Reference<css::xforms::XModel>( ) );
auto pSubmission = comphelper::getUnoTunnelImplementation<Submission>( t );
OSL_ENSURE( pSubmission != nullptr, "invalid item?" );
pSubmission->setModel( css::uno::Reference<css::xforms::XModel>( ) );
}
};
diff --git a/forms/source/xforms/submission.cxx b/forms/source/xforms/submission.cxx
index 3074619..9c7a0fb 100644
--- a/forms/source/xforms/submission.cxx
+++ b/forms/source/xforms/submission.cxx
@@ -263,22 +263,12 @@
return ( aResult == CSubmission::SUCCESS );
}
Sequence<sal_Int8> Submission::getUnoTunnelID()
Sequence<sal_Int8> Submission::getUnoTunnelId()
{
static cppu::OImplementationId aImplementationId;
return aImplementationId.getImplementationId();
}
Submission* Submission::getSubmission(
const Reference<XPropertySet>& xPropertySet )
{
Reference<XUnoTunnel> xTunnel( xPropertySet, UNO_QUERY );
return xTunnel.is()
? reinterpret_cast<Submission*>(
xTunnel->getSomething( getUnoTunnelID() ) )
: nullptr;
}
void Submission::liveCheck()
{
@@ -386,7 +376,7 @@
sal_Int64 SAL_CALL Submission::getSomething(
const Sequence<sal_Int8>& aId )
{
return ( aId == getUnoTunnelID() ) ? reinterpret_cast<sal_Int64>(this) : 0;
return ( aId == getUnoTunnelId() ) ? reinterpret_cast<sal_Int64>(this) : 0;
}
diff --git a/forms/source/xforms/submission.hxx b/forms/source/xforms/submission.hxx
index fc095d7..3f3921f 100644
--- a/forms/source/xforms/submission.hxx
+++ b/forms/source/xforms/submission.hxx
@@ -158,8 +158,7 @@
bool doSubmit( const css::uno::Reference< css::task::XInteractionHandler >& aHandler );
// helpers for UNO tunnel
static css::uno::Sequence<sal_Int8> getUnoTunnelID();
static Submission* getSubmission( const css::uno::Reference<css::beans::XPropertySet>& );
static css::uno::Sequence<sal_Int8> getUnoTunnelId();
private: