The sender object does seem to contain the required object... but when type cast in the slot code null is returned....
Tracing through the generated C code….
/* 'C' function for method : 'Data::SequenceSaver.SequenceAdded()' */
void DataSequenceSaver_SequenceAdded( DataSequenceSaver _this, XObject sender )
{
XClass clsof;
MWModelRowTransaction transaction;
EwTrace( "%s", EwLoadString( &_Const003B ));
EwTrace( "%s%*", EwLoadString( &_Const003C ), _this->NewSequence );
clsof = EwClassOf( sender );
transaction = EwCastObject( sender, MWModelRowTransaction );
EwTrace( "%s%$", EwLoadString( &_Const003D ), clsof );
EwTrace( "%s%*", EwLoadString( &_Const003E ), sender );
if (( transaction != 0 ) && ( _this->NewSequence != 0 ))
{
_this->NewSequenceID = transaction->NewUUID;
EwTrace( "%s", EwConcatString( EwConcatString( EwLoadString( &_Const003F ),
EwNewStringInt( _this->NewSequenceID, 0, 10 )), EwLoadString( &_Const0033 )));
DataSequenceSaver_addTests( _this );
}
else
EwSignal( _this->Super1.OnFinished, ((XObject)_this ));
}
The sender object passed into the function (XObject sender) seems to be of the correct type
Looking at the debugger trace (MWModelRowTransaction),

But then the sender is cast to MWModelRowTransaction in the code a null is returned (examining transaction using the debugger) ???
Yet the types should match, so why is a null returned,
and why casting the sender to a raw class pointer also returns a null?
