X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=examples%2Fnew-window%2Fnew-window-example.cpp;h=7e6c625a0992ee6ef5f818807884bef85224e41a;hb=8841ed7ccb5284d5022dc3a59de7ad9a4f657b0e;hp=8dff27d1d9f6427b6b63cc4ff09b19c17bed3591;hpb=46e6a0e92784c860b2b5425e34941c6574dd8062;p=platform%2Fcore%2Fuifw%2Fdali-demo.git diff --git a/examples/new-window/new-window-example.cpp b/examples/new-window/new-window-example.cpp index 8dff27d..7e6c625 100644 --- a/examples/new-window/new-window-example.cpp +++ b/examples/new-window/new-window-example.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2016 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. @@ -15,15 +15,18 @@ */ // EXTERNAL INCLUDES -#include +#include +#include #include #include +#include #include #include // INTERNAL INCLUDES #include "shared/view.h" +#include "shared/utility.h" using namespace Dali; using namespace Dali::Toolkit; @@ -161,7 +164,8 @@ private: NewWindowController::NewWindowController( Application& application ) : mApplication(application), - mNeedNewAnimation(true) + mNeedNewAnimation(true), + mAnimateComponentCount( 0 ) { mApplication.InitSignal().Connect(this, &NewWindowController::Create); mApplication.TerminateSignal().Connect(this, &NewWindowController::Destroy); @@ -187,8 +191,7 @@ void NewWindowController::Create( Application& app ) "Context recovery" ); Size stageSize = stage.GetSize(); - Image backgroundImage = ResourceImage::New( BACKGROUND_IMAGE, Dali::ImageDimensions( stageSize.x, stageSize.y ), Dali::FittingMode::SCALE_TO_FILL, Dali::SamplingMode::BOX_THEN_LINEAR ); - ImageView backgroundActor = ImageView::New( backgroundImage ); + ImageView backgroundActor = ImageView::New( BACKGROUND_IMAGE, Dali::ImageDimensions( stageSize.x, stageSize.y ) ); backgroundActor.SetParentOrigin( ParentOrigin::CENTER ); mContentLayer.Add(backgroundActor); @@ -212,16 +215,15 @@ void NewWindowController::Create( Application& app ) logoLayoutActor.SetScale(0.5f); backgroundActor.Add(logoLayoutActor); - Image image = ResourceImage::New(LOGO_IMAGE); - ImageView imageView = ImageView::New(image); + ImageView imageView = ImageView::New( LOGO_IMAGE ); imageView.SetName("daliLogo"); imageView.SetParentOrigin(ParentOrigin::CENTER); imageView.SetAnchorPoint(AnchorPoint::BOTTOM_CENTER); logoLayoutActor.Add(imageView); ImageView mirrorImageView = CreateBlurredMirrorImage(LOGO_IMAGE); - mirrorImageView.SetParentOrigin(ParentOrigin::CENTER); - mirrorImageView.SetAnchorPoint(AnchorPoint::TOP_CENTER); + mirrorImageView.SetParentOrigin(ParentOrigin::TOP_CENTER); + mirrorImageView.SetAnchorPoint(AnchorPoint::BOTTOM_CENTER); logoLayoutActor.Add(mirrorImageView); AddBubbles( backgroundActor, stage.GetSize()); @@ -241,10 +243,10 @@ void NewWindowController::Destroy( Application& app ) void NewWindowController::AddBubbles( Actor& parentActor, const Vector2& stageSize) { mEmitter = Toolkit::BubbleEmitter::New( stageSize, - ResourceImage::New( DEMO_IMAGE_DIR "bubble-ball.png" ), + DemoHelper::LoadTexture( DEMO_IMAGE_DIR "bubble-ball.png" ), 200, Vector2( 5.0f, 5.0f ) ); - Image background = ResourceImage::New(BACKGROUND_IMAGE); + Texture background = DemoHelper::LoadTexture(BACKGROUND_IMAGE); mEmitter.SetBackground( background, Vector3(0.5f, 0.f,0.5f) ); mEmitter.SetBubbleDensity( 9.f ); Actor bubbleRoot = mEmitter.GetRootActor(); @@ -263,8 +265,7 @@ void NewWindowController::AddMeshActor( Actor& parentActor ) // Create a coloured mesh Shader shaderColorMesh = Shader::New( VERTEX_COLOR_MESH, FRAGMENT_COLOR_MESH ); - Material colorMeshmaterial = Material::New( shaderColorMesh ); - Renderer colorMeshRenderer = Renderer::New( meshGeometry, colorMeshmaterial ); + Renderer colorMeshRenderer = Renderer::New( meshGeometry, shaderColorMesh ); Actor colorMeshActor = Actor::New(); colorMeshActor.AddRenderer( colorMeshRenderer ); @@ -276,11 +277,12 @@ void NewWindowController::AddMeshActor( Actor& parentActor ) colorMeshActor.SetName("ColorMeshActor"); // Create a textured mesh - Image effectImage = ResourceImage::New(EFFECT_IMAGE); + Texture effectTexture = DemoHelper::LoadTexture(EFFECT_IMAGE); Shader shaderTextureMesh = Shader::New( VERTEX_TEXTURE_MESH, FRAGMENT_TEXTURE_MESH ); - Material textureMeshMaterial = Material::New( shaderTextureMesh ); - textureMeshMaterial.AddTexture(effectImage, "sTexture"); - Renderer textureMeshRenderer = Renderer::New( meshGeometry, textureMeshMaterial ); + TextureSet textureSet = TextureSet::New(); + textureSet.SetTexture( 0u, effectTexture ); + Renderer textureMeshRenderer = Renderer::New( meshGeometry, shaderTextureMesh ); + textureMeshRenderer.SetTextures( textureSet ); Actor textureMeshActor = Actor::New(); textureMeshActor.AddRenderer( textureMeshRenderer ); @@ -320,8 +322,7 @@ void NewWindowController::AddBlendingImageActor( Actor& parentActor ) Property::Map map; map[ "shader" ] = customShader; - Image baseImage = ResourceImage::New(BASE_IMAGE); - ImageView blendActor = ImageView::New( baseImage ); + ImageView blendActor = ImageView::New( BASE_IMAGE ); blendActor.SetProperty( ImageView::Property::IMAGE, map ); blendActor.RegisterProperty( "alpha", 0.5f ); @@ -331,7 +332,8 @@ void NewWindowController::AddBlendingImageActor( Actor& parentActor ) blendActor.SetSize(140, 140); parentActor.Add(blendActor); - blendActor.GetRendererAt(0u).GetMaterial().AddTexture(fb2, "sEffect"); + TextureSet textureSet = blendActor.GetRendererAt(0u).GetTextures(); + TextureSetImage( textureSet, 1u, fb2 ); } void NewWindowController::AddTextLabel( Actor& parentActor ) @@ -345,10 +347,9 @@ void NewWindowController::AddTextLabel( Actor& parentActor ) ImageView NewWindowController::CreateBlurredMirrorImage(const char* imageName) { - Image image = ResourceImage::New(imageName); + Image image = DemoHelper::LoadImage(imageName); - Uint16Pair intFboSize = ResourceImage::GetImageSize(imageName); - Vector2 FBOSize = Vector2( intFboSize.GetWidth(), intFboSize.GetHeight() ); + Vector2 FBOSize = Vector2( image.GetWidth(), image.GetHeight() ); FrameBufferImage fbo = FrameBufferImage::New( FBOSize.width, FBOSize.height, Pixel::RGBA8888); GaussianBlurView gbv = GaussianBlurView::New(5, 2.0f, Pixel::RGBA8888, 0.5f, 0.5f, true); @@ -446,20 +447,16 @@ Geometry NewWindowController::CreateMeshGeometry() vertexFormat["aPosition"] = Property::VECTOR3; vertexFormat["aTexCoord"] = Property::VECTOR2; vertexFormat["aColor"] = Property::VECTOR3; - PropertyBuffer vertices = PropertyBuffer::New( vertexFormat, 5 ); - vertices.SetData( vertexData ); + PropertyBuffer vertices = PropertyBuffer::New( vertexFormat ); + vertices.SetData( vertexData, 5 ); // Specify all the faces - unsigned int indexData[12] = { 0,1,3,0,2,4,0,3,4,0,2,1 }; - Property::Map indexFormat; - indexFormat["indices"] = Property::INTEGER; - PropertyBuffer indices = PropertyBuffer::New( indexFormat, 12 ); - indices.SetData( indexData ); + unsigned short indexData[12] = { 0,1,3,0,2,4,0,3,4,0,2,1 }; // Create the geometry object Geometry geometry = Geometry::New(); geometry.AddVertexBuffer( vertices ); - geometry.SetIndexBuffer( indices ); + geometry.SetIndexBuffer( &indexData[0], 12 ); return geometry; } @@ -561,7 +558,7 @@ void RunTest(Application& app) // Entry point for Linux & Tizen applications // -int main(int argc, char **argv) +int DALI_EXPORT_API main(int argc, char **argv) { gApplication = Application::New(&argc, &argv, DEMO_THEME_PATH); RunTest(gApplication);