- DALI_TEST_EQUALS( actor.SetSizeSignal().GetConnectionCount(), 0u, TEST_LOCATION );
- actor.SetSizeSignal().Connect( &dummy, &DummyControl::CustomSlot1 );
- DALI_TEST_EQUALS( actor.SetSizeSignal().GetConnectionCount(), 1u, TEST_LOCATION );
- DALI_TEST_EQUALS( dummy.mCustomSlot1Called, false, TEST_LOCATION );
- DALI_TEST_EQUALS( dummy.mCustomSlot1Value, Vector3::ZERO, TEST_LOCATION );
-
- const Vector3 newSize( 10, 10, 0 );
- actor.SetSize( newSize );
- DALI_TEST_EQUALS( dummy.mCustomSlot1Called, true, TEST_LOCATION );
- DALI_TEST_EQUALS( dummy.mCustomSlot1Value, newSize, TEST_LOCATION );
-
- dummy.mCustomSlot1Called = false;
- actor.SetSizeSignal().Disconnect( &dummy, &DummyControl::CustomSlot1 );
- DALI_TEST_EQUALS( actor.SetSizeSignal().GetConnectionCount(), 0u, TEST_LOCATION );
- const Vector3 ignoredSize( 20, 20, 0 );
- actor.SetSize( ignoredSize );
- DALI_TEST_EQUALS( dummy.mCustomSlot1Called, false, TEST_LOCATION );
- DALI_TEST_EQUALS( dummy.mCustomSlot1Value, newSize/*not ignoredSize*/, TEST_LOCATION );
+ DALI_TEST_EQUALS( actor.OnStageSignal().GetConnectionCount(), 0u, TEST_LOCATION );
+ Toolkit::Internal::Control& control = Toolkit::Internal::GetImplementation( dummy );
+ DummyControlImpl* dummyImpl = dynamic_cast<DummyControlImpl*>(&control);
+
+ if( dummyImpl == NULL )
+ {
+ tet_result( TET_FAIL );
+ END_TEST;
+ }
+
+ actor.OnStageSignal().Connect( dummyImpl, &DummyControlImpl::CustomSlot1 );
+ DALI_TEST_EQUALS( actor.OnStageSignal().GetConnectionCount(), 1u, TEST_LOCATION );
+ DALI_TEST_EQUALS( dummyImpl->mCustomSlot1Called, false, TEST_LOCATION );
+
+ Stage::GetCurrent().Add( actor );
+ DALI_TEST_EQUALS( dummyImpl->mCustomSlot1Called, true, TEST_LOCATION );
+
+ dummyImpl->mCustomSlot1Called = false;
+ actor.OnStageSignal().Disconnect( dummyImpl, &DummyControlImpl::CustomSlot1 );
+ DALI_TEST_EQUALS( actor.OnStageSignal().GetConnectionCount(), 0u, TEST_LOCATION );
+ Stage::GetCurrent().Remove( actor );
+ Stage::GetCurrent().Add( actor );
+ DALI_TEST_EQUALS( dummyImpl->mCustomSlot1Called, false, TEST_LOCATION );