/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
/**
* Touch handler, start the grow animation and creates additional metaballs
*/
- bool OnTouch( Actor actor, const TouchData& touch );
+ bool OnTouch( Actor actor, const TouchEvent& touch );
/**
* Key event callback to quit the application on escape or back key
void MetaballRefracController::Create( Application& app )
{
- Stage stage = Stage::GetCurrent();
+ Window window = app.GetWindow();
- stage.KeyEventSignal().Connect( this, &MetaballRefracController::OnKeyEvent );
+ window.KeyEventSignal().Connect( this, &MetaballRefracController::OnKeyEvent );
- mScreenSize = stage.GetSize();
+ mScreenSize = window.GetSize();
- stage.SetBackgroundColor(Color::BLACK);
+ window.SetBackgroundColor(Color::BLACK);
// Load background texture
mBackgroundTexture = DemoHelper::LoadTexture( BACKGROUND_IMAGE );
CreateAnimations();
// Connect the callback to the touch signal on the mesh actor
- stage.GetRootLayer().TouchSignal().Connect( this, &MetaballRefracController::OnTouch );
+ window.GetRootLayer().TouchSignal().Connect( this, &MetaballRefracController::OnTouch );
}
Geometry MetaballRefracController::CreateGeometry( bool aspectMappedTexture )
mMetaballs[i].position = Vector2(0.0f, 0.0f);
mMetaballs[i].actor = Actor::New();
- mMetaballs[i].actor.SetName( "Metaball" );
- mMetaballs[i].actor.SetScale( 1.0f );
- mMetaballs[i].actor.SetParentOrigin( ParentOrigin::CENTER );
+ mMetaballs[i].actor.SetProperty( Dali::Actor::Property::NAME, "Metaball" );
+ mMetaballs[i].actor.SetProperty( Actor::Property::SCALE, 1.0f );
+ mMetaballs[i].actor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
mMetaballs[i].actor.AddRenderer( renderer );
//Root creation
mMetaballRoot = Actor::New();
- mMetaballRoot.SetParentOrigin( ParentOrigin::CENTER );
+ mMetaballRoot.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
for( uint32_t i = 0 ; i < METABALL_NUMBER ; i++ )
{
mMetaballRoot.Add( mMetaballs[i].actor );
void MetaballRefracController::CreateMetaballImage()
{
// Create an FBO and a render task to create to render the metaballs with a fragment shader
- Stage stage = Stage::GetCurrent();
+ Window window = mApplication.GetWindow();
mMetaballFBO = FrameBuffer::New( mScreenSize.x, mScreenSize.y );
- stage.Add(mMetaballRoot);
+ window.Add(mMetaballRoot);
//Creation of the render task used to render the metaballs
- RenderTaskList taskList = Stage::GetCurrent().GetRenderTaskList();
+ RenderTaskList taskList = window.GetRenderTaskList();
RenderTask task = taskList.CreateTask();
task.SetRefreshRate( RenderTask::REFRESH_ALWAYS );
task.SetSourceActor( mMetaballRoot );
// Create actor
mCompositionActor = Actor::New( );
- mCompositionActor.SetParentOrigin(ParentOrigin::CENTER);
- mCompositionActor.SetPosition(Vector3(0.0f, 0.0f, 0.0f));
- mCompositionActor.SetSize(mScreenSize.x, mScreenSize.y);
+ mCompositionActor.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::CENTER);
+ mCompositionActor.SetProperty( Actor::Property::POSITION, Vector3(0.0f, 0.0f, 0.0f));
+ mCompositionActor.SetProperty( Actor::Property::SIZE, Vector2(mScreenSize.x, mScreenSize.y) );
// Create geometry
Geometry metaballGeometry = CreateGeometry( false );
mRendererRefraction.SetTextures( mTextureSetNormal );
mCompositionActor.AddRenderer( mRendererRefraction );
- Stage stage = Stage::GetCurrent();
- stage.Add( mCompositionActor );
+ Window window = mApplication.GetWindow();
+ window.Add( mCompositionActor );
}
void MetaballRefracController::CreateAnimations()
}
}
-bool MetaballRefracController::OnTouch( Actor actor, const TouchData& touch )
+bool MetaballRefracController::OnTouch( Actor actor, const TouchEvent& touch )
{
const float aspect = mScreenSize.y / mScreenSize.x;
switch( touch.GetState( 0 ) )