Further Setter/Getter public API removal from Dali::Actor
[platform/core/uifw/dali-demo.git] / examples / simple-text-field / simple-text-field.cpp
index d96906b..3f3731f 100644 (file)
@@ -53,11 +53,12 @@ public:
   void Create( Application& application )
   {
     Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &SimpleTextFieldExample::OnKeyEvent);
     stage.SetBackgroundColor( Vector4( 0.04f, 0.345f, 0.392f, 1.0f ) );
 
     TextField field = TextField::New();
-    field.SetParentOrigin( ParentOrigin::CENTER );
-    field.SetSize( 300.f, 60.f );
+    field.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
+    field.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 60.f ) );
     field.SetBackgroundColor( Color::WHITE );
     field.SetBackgroundColor( Vector4( 1.f, 1.f, 1.f, 0.15f ) );
 
@@ -68,6 +69,20 @@ public:
     stage.Add( field );
   }
 
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
 private:
 
   Application& mApplication;
@@ -81,7 +96,7 @@ void RunTest( Application& application )
 }
 
 /** Entry point for Linux & Tizen applications */
-int main( int argc, char **argv )
+int DALI_EXPORT_API main( int argc, char **argv )
 {
   // DALI_DEMO_THEME_PATH not passed to Application so TextField example uses default Toolkit style sheet.
   Application application = Application::New( &argc, &argv );