X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=examples%2Frendering-line%2Frendering-line.cpp;h=3b10e561108a339d49977d9d13afb7398b7f2377;hb=5a56ed534cbc24150d68f03ea7fba7cfcc653835;hp=ecf4616067b8cb2fb77f753e5861dba27a2e458e;hpb=6d69b52359f4a6ccaea9c9c517b09684081052f0;p=platform%2Fcore%2Fuifw%2Fdali-demo.git diff --git a/examples/rendering-line/rendering-line.cpp b/examples/rendering-line/rendering-line.cpp index ecf4616..3b10e56 100644 --- a/examples/rendering-line/rendering-line.cpp +++ b/examples/rendering-line/rendering-line.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2021 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,56 +15,25 @@ * */ -#include #include +#include + +#include "generated/rendering-line-frag.h" +#include "generated/rendering-line-vert.h" using namespace Dali; using namespace Toolkit; -namespace -{ - -/* - * Vertex shader - */ -const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( -attribute mediump vec2 aPosition;\n // DALi shader builtin -uniform mediump mat4 uMvpMatrix;\n // DALi shader builtin -uniform mediump vec3 uSize;\n // DALi shader builtin -\n -void main()\n -{\n - mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\n - vertexPosition.xyz *= uSize;\n - gl_Position = uMvpMatrix * vertexPosition;\n -}\n -); - -/* - * Fragment shader - */ -const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER( -uniform mediump vec4 uColor;\n -\n -void main()\n -{\n - gl_FragColor = uColor;\n -}\n -); - -} - // This example shows how to draw a line in actor's color // class DrawLineController : public ConnectionTracker { public: - - DrawLineController( Application& application ) - : mApplication( application ) + DrawLineController(Application& application) + : mApplication(application) { // Connect to the Application's Init signal - mApplication.InitSignal().Connect( this, &DrawLineController::Create ); + mApplication.InitSignal().Connect(this, &DrawLineController::Create); } ~DrawLineController() @@ -73,11 +42,11 @@ public: } // The Init signal is received once (only) during the Application lifetime - void Create( Application& application ) + void Create(Application& application) { // Get a handle to the window Window window = application.GetWindow(); - window.SetBackgroundColor( Color::WHITE ); + window.SetBackgroundColor(Color::WHITE); // Step 1. Create shader CreateLineShader(); @@ -92,13 +61,13 @@ public: CreateActor(); // Respond to a click anywhere on the window - window.GetRootLayer().TouchSignal().Connect( this, &DrawLineController::OnTouch ); + window.GetRootLayer().TouchedSignal().Connect(this, &DrawLineController::OnTouch); // Respond to key events - window.KeyEventSignal().Connect( this, &DrawLineController::OnKeyEvent ); + window.KeyEventSignal().Connect(this, &DrawLineController::OnKeyEvent); } - bool OnTouch( Actor actor, const TouchEvent& touch ) + bool OnTouch(Actor actor, const TouchEvent& touch) { // quit the application mApplication.Quit(); @@ -111,11 +80,11 @@ public: * Will use this to quit the application if Back or the Escape key is received * @param[in] event The key event information */ - void OnKeyEvent( const KeyEvent& event ) + void OnKeyEvent(const KeyEvent& event) { - if( event.GetState() == KeyEvent::Down ) + if(event.GetState() == KeyEvent::DOWN) { - if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) ) + if(IsKey(event, Dali::DALI_KEY_ESCAPE) || IsKey(event, Dali::DALI_KEY_BACK)) { mApplication.Quit(); } @@ -129,27 +98,26 @@ public: void CreateLineGeometry() { Vector2 vertices[] = { - Vector2( -1.0f, -1.0f ), - Vector2( 1.0f, 1.0f ) - }; + Vector2(-1.0f, -1.0f), + Vector2(1.0f, 1.0f)}; - PropertyBuffer vertexBuffer = PropertyBuffer::New( Property::Map() - .Add( "aPosition", Property::VECTOR2 ) ); - vertexBuffer.SetData( vertices, sizeof(vertices) / sizeof(Vector2) ); + VertexBuffer vertexBuffer = VertexBuffer::New(Property::Map() + .Add("aPosition", Property::VECTOR2)); + vertexBuffer.SetData(vertices, sizeof(vertices) / sizeof(Vector2)); mGeometry = Geometry::New(); - mGeometry.AddVertexBuffer( vertexBuffer ); - mGeometry.SetType( Geometry::LINES ); + mGeometry.AddVertexBuffer(vertexBuffer); + mGeometry.SetType(Geometry::LINES); } /** - * Creates a shader using inlined variable VERTEX_SHADER and FRAGMENT_SHADER + * Creates a shader using inlined variable SHADER_RENDERING_LINE_VERT and SHADER_RENDERING_LINE_FRAG * * Shaders are very basic and all they do is transforming vertices and applying actor's colour. */ void CreateLineShader() { - mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER ); + mShader = Shader::New(SHADER_RENDERING_LINE_VERT, SHADER_RENDERING_LINE_FRAG); } /** @@ -157,7 +125,7 @@ public: */ void CreateRenderer() { - mRenderer = Renderer::New( mGeometry, mShader ); + mRenderer = Renderer::New(mGeometry, mShader); } /** @@ -166,30 +134,30 @@ public: void CreateActor() { Window window = mApplication.GetWindow(); - Size size = Vector2(window.GetSize()) * 0.25f; - mActor = Actor::New(); - mActor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER ); - mActor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER ); - mActor.SetProperty( Actor::Property::POSITION, Vector3( 0.0f, 0.0f, 0.0f ) ); - mActor.SetProperty( Actor::Property::COLOR, Color::BLACK ); - mActor.SetProperty( Actor::Property::SIZE, Vector3( size.x, size.x, size.x ) ); - mActor.AddRenderer( mRenderer ); - window.Add( mActor ); + Size size = Vector2(window.GetSize()) * 0.25f; + mActor = Actor::New(); + mActor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER); + mActor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER); + mActor.SetProperty(Actor::Property::POSITION, Vector3(0.0f, 0.0f, 0.0f)); + mActor.SetProperty(Actor::Property::COLOR, Color::BLACK); + mActor.SetProperty(Actor::Property::SIZE, Vector3(size.x, size.x, size.x)); + mActor.AddRenderer(mRenderer); + window.Add(mActor); } private: - Application& mApplication; + Application& mApplication; Renderer mRenderer; - Shader mShader; + Shader mShader; Geometry mGeometry; - Actor mActor; + Actor mActor; }; -int DALI_EXPORT_API main( int argc, char **argv ) +int DALI_EXPORT_API main(int argc, char** argv) { - Application application = Application::New( &argc, &argv ); - DrawLineController test( application ); + Application application = Application::New(&argc, &argv); + DrawLineController test(application); application.MainLoop(); return 0; }