KeyEvent class pimpling
[platform/core/uifw/dali-demo.git] / examples / text-overlap / text-overlap-example.cpp
index 560ebe0..dbcf030 100644 (file)
@@ -25,19 +25,19 @@ TextOverlapController::TextOverlapController( Application& app )
 
 void TextOverlapController::Create( Application& app )
 {
-  Stage stage = Stage::GetCurrent();
-  stage.KeyEventSignal().Connect( this, &TextOverlapController::OnKeyEvent );
+  Window window = app.GetWindow();
+  window.KeyEventSignal().Connect( this, &TextOverlapController::OnKeyEvent );
 
-  Vector2 stageSize = stage.GetSize();
+  Vector2 windowSize = window.GetSize();
 
   mLabels[0] = TextLabel::New("Text Label 1");
   mLabels[1] = TextLabel::New("Text Label 2");
 
-  mLabels[0].SetName("Label1");
-  mLabels[1].SetName("Label2");
+  mLabels[0].SetProperty( Dali::Actor::Property::NAME,"Label1");
+  mLabels[1].SetProperty( Dali::Actor::Property::NAME,"Label2");
 
-  mLabels[0].SetProperty( DevelActor::Property::SIBLING_ORDER, 1 );
-  mLabels[1].SetProperty( DevelActor::Property::SIBLING_ORDER, 2 );
+  mLabels[0].SetProperty( Dali::DevelActor::Property::SIBLING_ORDER, 1 );
+  mLabels[1].SetProperty( Dali::DevelActor::Property::SIBLING_ORDER, 2 );
 
   mLabels[0].SetProperty( Control::Property::BACKGROUND, Color::RED );
   mLabels[1].SetProperty( Control::Property::BACKGROUND, Color::YELLOW );
@@ -45,26 +45,26 @@ void TextOverlapController::Create( Application& app )
   for(int i=0; i<NUMBER_OF_LABELS; ++i )
   {
     mLabels[i].SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
-    mLabels[i].SetAnchorPoint( AnchorPoint::TOP_LEFT );
-    mLabels[i].SetParentOrigin( ParentOrigin::TOP_LEFT );
-    mLabels[i].SetPosition( 0, (i*2+1) * stageSize.height * 0.25f );
+    mLabels[i].SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT );
+    mLabels[i].SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT );
+    mLabels[i].SetProperty( Actor::Property::POSITION, Vector2( 0, (i*2+1) * windowSize.height * 0.25f ));
   }
 
-  stage.Add( mLabels[0] );
-  stage.Add( mLabels[1] );
+  window.Add( mLabels[0] );
+  window.Add( mLabels[1] );
 
   mSwapButton = PushButton::New();
   mSwapButton.SetProperty( Button::Property::LABEL, "Swap depth order");
-  mSwapButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
-  mSwapButton.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+  mSwapButton.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::BOTTOM_CENTER );
+  mSwapButton.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::BOTTOM_CENTER );
   mSwapButton.ClickedSignal().Connect( this, &TextOverlapController::OnClicked );
   mSwapButton.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
   mSwapButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
-  stage.Add( mSwapButton );
+  window.Add( mSwapButton );
 
 
-  Layer rootLayer = stage.GetRootLayer();
-  rootLayer.SetName("RootLayer");
+  Layer rootLayer = window.GetRootLayer();
+  rootLayer.SetProperty( Dali::Actor::Property::NAME,"RootLayer");
 
   mPanDetector = PanGestureDetector::New();
   mPanDetector.Attach( rootLayer );
@@ -79,8 +79,8 @@ void TextOverlapController::OnPan( Actor actor, const PanGesture& gesture )
   {
     for( int i=0; i<NUMBER_OF_LABELS; ++i )
     {
-      Vector3 position = mLabels[i].GetCurrentPosition();
-      Vector3 size = mLabels[i].GetCurrentSize();
+      Vector3 position = mLabels[i].GetCurrentProperty< Vector3 >( Actor::Property::POSITION );
+      Vector3 size = mLabels[i].GetCurrentProperty< Vector3 >( Actor::Property::SIZE );
       if( gesture.position.y > position.y - size.y * 0.5f &&
           gesture.position.y <= position.y + size.y * 0.5f )
       {
@@ -91,10 +91,10 @@ void TextOverlapController::OnPan( Actor actor, const PanGesture& gesture )
   }
   else if( mGrabbedActor && gesture.state == PanGesture::Continuing )
   {
-    Vector2 stageSize = Stage::GetCurrent().GetSize();
-    Vector3 size = mGrabbedActor.GetCurrentSize();
-    float y = Clamp( gesture.position.y, size.y * 0.5f, stageSize.y - size.y*0.5f );
-    mGrabbedActor.SetPosition( 0, y );
+    Vector2 windowSize = mApplication.GetWindow().GetSize();
+    Vector3 size = mGrabbedActor.GetCurrentProperty< Vector3 >( Actor::Property::SIZE );
+    float y = Clamp( gesture.position.y, size.y * 0.5f, windowSize.y - size.y*0.5f );
+    mGrabbedActor.SetProperty( Actor::Property::POSITION, Vector2( 0, y ));
   }
   else
   {
@@ -113,14 +113,14 @@ void TextOverlapController::Destroy( Application& app )
 bool TextOverlapController::OnClicked( Button button )
 {
   mTopmostLabel = 1-mTopmostLabel; // toggles between 0 and 1
-  DevelActor::RaiseToTop(mLabels[mTopmostLabel]);
+  mLabels[mTopmostLabel].RaiseToTop();
   return false;
 }
 
 
 void TextOverlapController::OnKeyEvent( const KeyEvent& keyEvent )
 {
-  if( keyEvent.state == KeyEvent::Down &&
+  if( keyEvent.GetState() == KeyEvent::Down &&
       ( IsKey( keyEvent, DALI_KEY_BACK ) ||
         IsKey( keyEvent, DALI_KEY_ESCAPE ) ) )
   {
@@ -128,7 +128,7 @@ void TextOverlapController::OnKeyEvent( const KeyEvent& keyEvent )
   }
   else
   {
-    Dali::Layer l = Dali::Stage::GetCurrent().GetRootLayer();
+    Dali::Layer l = mApplication.GetWindow().GetRootLayer();
     int so = l.GetProperty<int>(Dali::DevelActor::Property::SIBLING_ORDER);
     l.SetProperty(Dali::DevelActor::Property::SIBLING_ORDER, so+1);
   }
@@ -137,8 +137,7 @@ void TextOverlapController::OnKeyEvent( const KeyEvent& keyEvent )
 
 } // namespace Demo
 
-
-int main( int argc, char** argv )
+int DALI_EXPORT_API main( int argc, char** argv )
 {
   {
     Application app = Application::New( &argc, &argv );