/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2017 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.
#include <cstring> // for strcmp
#include <dali/public-api/object/type-registry.h>
#include <dali/public-api/object/type-registry-helper.h>
-#include <dali-toolkit/devel-api/controls/renderer-factory/renderer-factory.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
#include <dali/integration-api/debug.h>
+// INTERNAL INCLUDES
+#include <dali-toolkit/internal/visuals/visual-factory-cache.h>
+
namespace Dali
{
const Vector4 CubeTransitionEffect::HALF_BRIGHTNESS( 0.5f, 0.5f, 0.5f, 1.0f );
CubeTransitionEffect::CubeTransitionEffect( unsigned int rows, unsigned int columns )
-: Control( ControlBehaviour( 0 ) ),
+: Control( ControlBehaviour( DISABLE_STYLE_CHANGE_SIGNALS ) ),
mRows( rows ),
mColumns( columns ),
mIsAnimating( false ),
void CubeTransitionEffect::OnStageConnection( int depth )
{
- Control::OnStageConnection( depth );
-
- Geometry geometry = Geometry::QUAD();
+ Geometry geometry = VisualFactoryCache::CreateQuadGeometry();
Shader shader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
TextureSet textureSet = TextureSet::New();
- if( mCurrentImage )
+ if( mCurrentTexture )
{
- textureSet.SetImage( 0u, mCurrentImage );
+ textureSet.SetTexture( 0u, mCurrentTexture );
}
mCurrentRenderer = Renderer::New( geometry, shader );
mCurrentRenderer.SetTextures( textureSet );
mCurrentRenderer.SetProperty( Renderer::Property::DEPTH_INDEX, depth );
Self().AddRenderer( mCurrentRenderer );
+
+ Control::OnStageConnection( depth );
}
void CubeTransitionEffect::OnStageDisconnection()
return mIsAnimating;
}
-void CubeTransitionEffect::SetCurrentImage( Image image )
+void CubeTransitionEffect::SetCurrentTexture( Texture texture )
{
- mCurrentImage = image;
+ mCurrentTexture = texture;
+
if( mCurrentRenderer )
{
TextureSet textureSet = mCurrentRenderer.GetTextures();
- textureSet.SetImage( 0u, mCurrentImage );
+ textureSet.SetTexture( 0u, mCurrentTexture);
}
}
-void CubeTransitionEffect::SetTargetImage( Image image )
+void CubeTransitionEffect::SetTargetTexture( Texture texture )
{
- mTargetImage = image;
+ mTargetTexture = texture;
if( mTargetRenderer )
{
TextureSet textureSet = mTargetRenderer.GetTextures();
- textureSet.SetImage( 0u, mTargetImage );
+ textureSet.SetTexture( 0u, mTargetTexture );
}
}
{
if( !mCurrentRenderer )
{
- DALI_LOG_ERROR( "Trying to transition a cube transition without an image set" );
+ DALI_LOG_ERROR( "Trying to transition a cube transition without an image set\n" );
return;
}
//create the target renderer
TextureSet textureSet = TextureSet::New();
- if( mTargetImage )
+ if( mTargetTexture )
{
- textureSet.SetImage( 0u, mTargetImage );
+ textureSet.SetTexture( 0u, mTargetTexture );
}
Geometry geometry = mCurrentRenderer.GetGeometry();
Shader shader( mCurrentRenderer.GetShader() );
std::swap( mCurrentTiles, mTargetTiles );
std::swap( mCurrentRenderer, mTargetRenderer );
- std::swap( mCurrentImage, mTargetImage );
+ std::swap( mCurrentTexture, mTargetTexture );
ResetToInitialState();
//Emit signal
Toolkit::CubeTransitionEffect handle( GetOwner() );
- mTransitionCompletedSignal.Emit( handle, mCurrentImage );
+ mTransitionCompletedSignal.Emit( handle, mCurrentTexture );
}
Toolkit::CubeTransitionEffect::TransitionCompletedSignalType& CubeTransitionEffect::TransitionCompletedSignal()