X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=examples%2Fhello-world%2Fhello-world-example.cpp;h=1f3599a9a39fcd96ec5e45abd020802155996859;hb=1a473d5189ca7e7d55aca3a64a8a4ff2dc3b6c67;hp=2c5763a596436466f90513578997ab85768fe6c5;hpb=24c8baf69f0196d4a9a6ad746b370d026532a585;p=platform%2Fcore%2Fuifw%2Fdali-demo.git diff --git a/examples/hello-world/hello-world-example.cpp b/examples/hello-world/hello-world-example.cpp index 2c5763a..1f3599a 100644 --- a/examples/hello-world/hello-world-example.cpp +++ b/examples/hello-world/hello-world-example.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 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. @@ -33,25 +33,25 @@ public: mApplication.InitSignal().Connect( this, &HelloWorldController::Create ); } - ~HelloWorldController() - { - // Nothing to do here; - } + ~HelloWorldController() = default; // Nothing to do in destructor // The Init signal is received once (only) during the Application lifetime void Create( Application& application ) { - // Get a handle to the stage - Stage stage = Stage::GetCurrent(); - stage.SetBackgroundColor( Color::WHITE ); + // Get a handle to the window + Window window = application.GetWindow(); + window.SetBackgroundColor( Color::WHITE ); TextLabel textLabel = TextLabel::New( "Hello World" ); - textLabel.SetAnchorPoint( AnchorPoint::TOP_LEFT ); - textLabel.SetName( "helloWorldLabel" ); - stage.Add( textLabel ); + textLabel.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + textLabel.SetProperty( Dali::Actor::Property::NAME, "helloWorldLabel" ); + window.Add( textLabel ); + + // Respond to a touch anywhere on the window + window.GetRootLayer().TouchedSignal().Connect( this, &HelloWorldController::OnTouch ); - // Respond to a click anywhere on the stage - stage.GetRootLayer().TouchedSignal().Connect( this, &HelloWorldController::OnTouch ); + // Respond to key events + window.KeyEventSignal().Connect( this, &HelloWorldController::OnKeyEvent ); } bool OnTouch( Actor actor, const TouchEvent& touch ) @@ -61,24 +61,25 @@ public: return true; } + void OnKeyEvent( const KeyEvent& event ) + { + if( event.GetState() == KeyEvent::DOWN ) + { + if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) ) + { + mApplication.Quit(); + } + } + } + private: Application& mApplication; }; -void RunTest( Application& application ) -{ - HelloWorldController test( application ); - - application.MainLoop(); -} - -// Entry point for Linux & Tizen applications -// int DALI_EXPORT_API main( int argc, char **argv ) { Application application = Application::New( &argc, &argv ); - - RunTest( application ); - + HelloWorldController test( application ); + application.MainLoop(); return 0; }