Further Setter/Getter public API removal from Dali::Actor
[platform/core/uifw/dali-demo.git] / examples / scroll-view / scroll-view-example.cpp
index 8929d68..8a2a81d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2019 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,6 +33,12 @@ const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
 const char * const APPLICATION_TITLE( "ScrollView" );
 const char * const EFFECT_CAROUSEL_IMAGE( DEMO_IMAGE_DIR "icon-scroll-view-carousel.png" );
 const char * const EFFECT_CAROUSEL_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-scroll-view-carousel-selected.png" );
+const char * const EFFECT_CUBE_IMAGE( DEMO_IMAGE_DIR "icon-scroll-view-inner-cube.png" );
+const char * const EFFECT_CUBE_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-scroll-view-inner-cube-selected.png" );
+const char * const EFFECT_SPIRAL_IMAGE( DEMO_IMAGE_DIR "icon-scroll-view-spiral.png" );
+const char * const EFFECT_SPIRAL_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-scroll-view-spiral-selected.png" );
+const char * const EFFECT_WAVE_IMAGE( DEMO_IMAGE_DIR "icon-effect-wave.png" );
+const char * const EFFECT_WAVE_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-effect-wave-selected.png" );
 
 const Vector3 ICON_SIZE(100.0f, 100.0f, 0.0f);
 
@@ -175,12 +181,12 @@ public:
 
     mEffectIcon[ PageCarouselEffect ] = EFFECT_CAROUSEL_IMAGE;
     mEffectIconSelected[ PageCarouselEffect ] = EFFECT_CAROUSEL_IMAGE_SELECTED;
-    mEffectIcon[ PageCubeEffect ]     = EFFECT_CAROUSEL_IMAGE;
-    mEffectIconSelected[ PageCubeEffect ]     = EFFECT_CAROUSEL_IMAGE_SELECTED;
-    mEffectIcon[ PageSpiralEffect ]   = EFFECT_CAROUSEL_IMAGE;
-    mEffectIconSelected[ PageSpiralEffect ]   = EFFECT_CAROUSEL_IMAGE_SELECTED;
-    mEffectIcon[ PageWaveEffect ]     = EFFECT_CAROUSEL_IMAGE;
-    mEffectIconSelected[ PageWaveEffect ]     = EFFECT_CAROUSEL_IMAGE_SELECTED;
+    mEffectIcon[ PageCubeEffect ]     = EFFECT_CUBE_IMAGE;
+    mEffectIconSelected[ PageCubeEffect ]     = EFFECT_CUBE_IMAGE_SELECTED;
+    mEffectIcon[ PageSpiralEffect ]   = EFFECT_SPIRAL_IMAGE;
+    mEffectIconSelected[ PageSpiralEffect ]   = EFFECT_SPIRAL_IMAGE_SELECTED;
+    mEffectIcon[ PageWaveEffect ]     = EFFECT_WAVE_IMAGE;
+    mEffectIconSelected[ PageWaveEffect ]     = EFFECT_WAVE_IMAGE_SELECTED;
 
     // Create a effect change button. (right of toolbar)
     mEffectChangeButton = Toolkit::PushButton::New();
@@ -208,10 +214,10 @@ private:
     Vector2 stageSize = stage.GetSize();
 
     mScrollView = ScrollView::New();
-    mScrollView.SetAnchorPoint(AnchorPoint::CENTER);
-    mScrollView.SetParentOrigin(ParentOrigin::CENTER);
+    mScrollView.SetProperty( Actor::Property::ANCHOR_POINT,AnchorPoint::CENTER);
+    mScrollView.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::CENTER);
     mContentLayer.Add( mScrollView );
-    mScrollView.SetSize( stageSize );
+    mScrollView.SetProperty( Actor::Property::SIZE, stageSize );
     mScrollView.SetAxisAutoLock( true );
     mScrollView.SetAxisAutoLockGradient( 1.0f );
 
@@ -224,7 +230,7 @@ private:
       {
         Actor page = CreatePage();
 
-        page.SetPosition( column * stageSize.x, row * stageSize.y );
+        page.SetProperty( Actor::Property::POSITION, Vector2( column * stageSize.x, row * stageSize.y ));
         mScrollView.Add( page );
 
         mPages.push_back(page);
@@ -244,8 +250,8 @@ private:
     ss << APPLICATION_TITLE << ": " << EFFECT_MODE_NAME[mEffectMode];
     SetTitle(ss.str());
 
-    mEffectChangeButton.SetUnselectedImage( mEffectIcon[ mEffectMode ] );
-    mEffectChangeButton.SetSelectedImage( mEffectIconSelected[ mEffectMode ] );
+    mEffectChangeButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, mEffectIcon[ mEffectMode ] );
+    mEffectChangeButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, mEffectIconSelected[ mEffectMode ] );
 
     // remove old Effect if exists.
     if(mScrollViewEffect)
@@ -270,8 +276,8 @@ private:
   {
     Actor page = Actor::New();
     page.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
-    page.SetParentOrigin( ParentOrigin::CENTER );
-    page.SetAnchorPoint( AnchorPoint::CENTER );
+    page.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
+    page.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER );
 
     Stage stage = Stage::GetCurrent();
     Vector2 stageSize = stage.GetSize();
@@ -288,14 +294,14 @@ private:
       {
         ImageView image = CreateImage( GetNextImagePath(), imageSize.x, imageSize.y );
 
-        image.SetParentOrigin( ParentOrigin::CENTER );
-        image.SetAnchorPoint( AnchorPoint::CENTER );
+        image.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
+        image.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER );
 
         Vector3 position( margin * 0.5f + (imageSize.x + margin) * column - stageSize.width * 0.5f,
                          margin * 0.5f + (imageSize.y + margin) * row - stageSize.height * 0.5f,
                           0.0f);
-        image.SetPosition( position + imageSize * 0.5f );
-        image.SetSize( imageSize );
+        image.SetProperty( Actor::Property::POSITION, position + imageSize * 0.5f );
+        image.SetProperty( Actor::Property::SIZE, imageSize );
         page.Add(image);
       }
     }
@@ -454,17 +460,17 @@ private:
   {
     ImageView actor = ImageView::New();
     Property::Map map;
-    map["rendererType"] = "image";
-    map["url"] = filename;
-    map["desiredWidth"] = width;
-    map["desiredHeight"] = height;
-    map["fittingMode"] = "SCALE_TO_FILL";
-    map["samplingMode"] = "BOX_THEN_LINEAR";
+    map[Visual::Property::TYPE] = Visual::IMAGE;
+    map[ImageVisual::Property::URL] = filename;
+    map[ImageVisual::Property::DESIRED_WIDTH] = width;
+    map[ImageVisual::Property::DESIRED_HEIGHT] = height;
+    map[ImageVisual::Property::FITTING_MODE] = FittingMode::SCALE_TO_FILL;
+    map[ImageVisual::Property::SAMPLING_MODE] = SamplingMode::BOX_THEN_LINEAR;
     actor.SetProperty( ImageView::Property::IMAGE, map );
 
-    actor.SetName( filename );
-    actor.SetParentOrigin(ParentOrigin::CENTER);
-    actor.SetAnchorPoint(AnchorPoint::CENTER);
+    actor.SetProperty( Dali::Actor::Property::NAME, filename );
+    actor.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::CENTER);
+    actor.SetProperty( Actor::Property::ANCHOR_POINT,AnchorPoint::CENTER);
 
     actor.TouchSignal().Connect( this, &ExampleController::OnTouchImage );
     return actor;
@@ -494,7 +500,7 @@ private:
    * Upon Touching an image (Release), make it spin
    * (provided we're not scrolling).
    * @param[in] actor The actor touched
-   * @param[in] event The TouchEvent.
+   * @param[in] event The touch information.
    */
   bool OnTouchImage( Actor actor, const TouchData& event )
   {