Mesh demo improvements.
[platform/core/uifw/dali-demo.git] / examples / bubble-effect / bubble-effect-example.cpp
index 0ac4d76..fbd83db 100644 (file)
@@ -24,27 +24,29 @@ using namespace Dali;
 
 namespace
 {
-const char * const TOOLBAR_IMAGE( DALI_IMAGE_DIR "top-bar.png" );
+const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
 const char * const APPLICATION_TITLE( "Bubble Effect" );
-const char * const CHANGE_BACKGROUND_ICON( DALI_IMAGE_DIR "icon-change.png" );
-const char * const CHANGE_BUBBLE_SHAPE_ICON( DALI_IMAGE_DIR "icon-replace.png" );
+const char * const CHANGE_BACKGROUND_ICON( DEMO_IMAGE_DIR "icon-change.png" );
+const char * const CHANGE_BACKGROUND_ICON_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+const char * const CHANGE_BUBBLE_SHAPE_ICON( DEMO_IMAGE_DIR "icon-replace.png" );
+const char * const CHANGE_BUBBLE_SHAPE_ICON_SELECTED( DEMO_IMAGE_DIR "icon-replace-selected.png" );
 
 const char* BACKGROUND_IMAGES[]=
 {
-  DALI_IMAGE_DIR "background-1.jpg",
-  DALI_IMAGE_DIR "background-2.jpg",
-  DALI_IMAGE_DIR "background-3.jpg",
-  DALI_IMAGE_DIR "background-4.jpg",
-  DALI_IMAGE_DIR "background-5.jpg",
+  DEMO_IMAGE_DIR "background-1.jpg",
+  DEMO_IMAGE_DIR "background-2.jpg",
+  DEMO_IMAGE_DIR "background-3.jpg",
+  DEMO_IMAGE_DIR "background-4.jpg",
+  DEMO_IMAGE_DIR "background-5.jpg",
 };
 const unsigned int NUM_BACKGROUND_IMAGES( sizeof( BACKGROUND_IMAGES ) / sizeof( BACKGROUND_IMAGES[0] ) );
 
 const char* BUBBLE_SHAPE_IMAGES[] =
 {
-  DALI_IMAGE_DIR "bubble-ball.png",
-  DALI_IMAGE_DIR "icon-effect-cross.png",
-  DALI_IMAGE_DIR "icon-item-view-layout-spiral.png",
-  DALI_IMAGE_DIR "icon-replace.png"
+  DEMO_IMAGE_DIR "bubble-ball.png",
+  DEMO_IMAGE_DIR "icon-effect-cross.png",
+  DEMO_IMAGE_DIR "icon-item-view-layout-spiral.png",
+  DEMO_IMAGE_DIR "icon-replace.png"
 };
 const unsigned int NUM_BUBBLE_SHAPE_IMAGES( sizeof( BUBBLE_SHAPE_IMAGES ) / sizeof( BUBBLE_SHAPE_IMAGES[0] ) );
 
@@ -109,7 +111,8 @@ private:
 
     // Add a button to change background. (right of toolbar)
     mChangeBackgroundButton = Toolkit::PushButton::New();
-    mChangeBackgroundButton.SetBackgroundImage( ResourceImage::New( CHANGE_BACKGROUND_ICON ) );
+    mChangeBackgroundButton.SetUnselectedImage( CHANGE_BACKGROUND_ICON );
+    mChangeBackgroundButton.SetSelectedImage( CHANGE_BACKGROUND_ICON_SELECTED );
     mChangeBackgroundButton.ClickedSignal().Connect( this, &BubbleEffectExample::OnChangeIconClicked );
     toolBar.AddControl( mChangeBackgroundButton,
                         DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage,
@@ -117,7 +120,8 @@ private:
                         DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
     // Add a button to change bubble shape. ( left of bar )
     mChangeBubbleShapeButton = Toolkit::PushButton::New();
-    mChangeBubbleShapeButton.SetBackgroundImage( ResourceImage::New( CHANGE_BUBBLE_SHAPE_ICON ) );
+    mChangeBubbleShapeButton.SetUnselectedImage( CHANGE_BUBBLE_SHAPE_ICON );
+    mChangeBubbleShapeButton.SetSelectedImage( CHANGE_BUBBLE_SHAPE_ICON_SELECTED );
     mChangeBubbleShapeButton.ClickedSignal().Connect( this, &BubbleEffectExample::OnChangeIconClicked );
     toolBar.AddControl( mChangeBubbleShapeButton,
                         DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage,
@@ -146,7 +150,7 @@ private:
     mTimerForBubbleEmission.TickSignal().Connect(this, &BubbleEffectExample::OnTimerTick);
 
     // Connect the callback to the touch signal on the background
-    mBackground.TouchedSignal().Connect( this, &BubbleEffectExample::OnTouch );
+    mBackground.TouchSignal().Connect( this, &BubbleEffectExample::OnTouch );
   }
 
 
@@ -201,24 +205,22 @@ private:
   }
 
   // Callback function of the touch signal on the background
-  bool OnTouch(Dali::Actor actor, const Dali::TouchEvent& event)
+  bool OnTouch(Dali::Actor actor, const Dali::TouchData& event)
   {
-    const TouchPoint &point = event.GetPoint(0);
-    switch(point.state)
+    switch( event.GetState( 0 ) )
     {
-      case TouchPoint::Down:
+      case PointState::DOWN:
       {
-        mCurrentTouchPosition = point.screen;
-        mEmitPosition = point.screen;
+        mCurrentTouchPosition = mEmitPosition = event.GetScreenPosition( 0 );
         mTimerForBubbleEmission.Start();
         mNonMovementCount = 0;
 
         break;
       }
-      case TouchPoint::Motion:
+      case PointState::MOTION:
       {
-        Vector2 displacement = point.screen - mCurrentTouchPosition;
-        mCurrentTouchPosition = point.screen;
+        Vector2 displacement = event.GetScreenPosition( 0 ) - mCurrentTouchPosition;
+        mCurrentTouchPosition = event.GetScreenPosition( 0 );
         //emit multiple bubbles along the moving direction when the finger moves quickly
         float step = std::min(5.f, displacement.Length());
         for( float i=0.25f; i<step; i=i+1.f)
@@ -227,9 +229,9 @@ private:
         }
         break;
       }
-      case TouchPoint::Up:
-      case TouchPoint::Leave:
-      case TouchPoint::Interrupted:
+      case PointState::UP:
+      case PointState::LEAVE:
+      case PointState::INTERRUPTED:
       {
         mTimerForBubbleEmission.Stop();
         mEmitAnimation.Play();
@@ -237,8 +239,7 @@ private:
         mAnimateComponentCount = 0;
         break;
       }
-      case TouchPoint::Stationary:
-      case TouchPoint::Last:
+      case PointState::STATIONARY:
       default:
       {
         break;
@@ -315,15 +316,11 @@ RunTest(Application& app)
 
 /*****************************************************************************/
 
-int
-main(int argc, char **argv)
+int DALI_EXPORT_API main(int argc, char **argv)
 {
-  Application app = Application::New(&argc, &argv, DALI_DEMO_THEME_PATH);
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
 
   RunTest(app);
 
   return 0;
 }
-
-
-