Fix various Klocwork errors
[platform/core/uifw/dali-demo.git] / examples / scroll-view / scroll-view-example.cpp
index 0485cad..9bdb300 100644 (file)
@@ -32,6 +32,7 @@ const char * const BACKGROUND_IMAGE( DALI_IMAGE_DIR "background-default.png" );
 const char * const TOOLBAR_IMAGE( DALI_IMAGE_DIR "top-bar.png" );
 const char * const APPLICATION_TITLE( "ScrollView" );
 const char * const EFFECT_CAROUSEL_IMAGE( DALI_IMAGE_DIR "icon-scroll-view-carousel.png" );
+const char * const EFFECT_CAROUSEL_IMAGE_SELECTED( DALI_IMAGE_DIR "icon-scroll-view-carousel-selected.png" );
 
 const Vector3 ICON_SIZE(100.0f, 100.0f, 0.0f);
 
@@ -172,10 +173,14 @@ public:
                                             TOOLBAR_IMAGE,
                                             "" );
 
-    mEffectIcon[ PageCarouselEffect ] = ResourceImage::New( EFFECT_CAROUSEL_IMAGE );
-    mEffectIcon[ PageCubeEffect ]     = ResourceImage::New( EFFECT_CAROUSEL_IMAGE );
-    mEffectIcon[ PageSpiralEffect ]   = ResourceImage::New( EFFECT_CAROUSEL_IMAGE );
-    mEffectIcon[ PageWaveEffect ]     = ResourceImage::New( EFFECT_CAROUSEL_IMAGE );
+    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;
 
     // Create a effect change button. (right of toolbar)
     mEffectChangeButton = Toolkit::PushButton::New();
@@ -239,7 +244,8 @@ private:
     ss << APPLICATION_TITLE << ": " << EFFECT_MODE_NAME[mEffectMode];
     SetTitle(ss.str());
 
-    mEffectChangeButton.SetBackgroundImage( mEffectIcon[ mEffectMode ] );
+    mEffectChangeButton.SetUnselectedImage( mEffectIcon[ mEffectMode ] );
+    mEffectChangeButton.SetSelectedImage( mEffectIconSelected[ mEffectMode ] );
 
     // remove old Effect if exists.
     if(mScrollViewEffect)
@@ -280,7 +286,7 @@ private:
     {
       for(int column = 0;column<imageColumns;column++)
       {
-        ImageActor image = CreateImage( GetNextImagePath(), imageSize.x, imageSize.y );
+        ImageView image = CreateImage( GetNextImagePath(), imageSize.x, imageSize.y );
 
         image.SetParentOrigin( ParentOrigin::CENTER );
         image.SetAnchorPoint( AnchorPoint::CENTER );
@@ -303,7 +309,6 @@ private:
    */
   void ApplyEffectToScrollView()
   {
-    bool wrap(true);
     bool snap(true);
 
     Stage stage = Stage::GetCurrent();
@@ -311,7 +316,7 @@ private:
 
     RulerPtr rulerX = CreateRuler(snap ? stageSize.width : 0.0f);
     RulerPtr rulerY = new DefaultRuler;
-    rulerX->SetDomain(RulerDomain(0.0f, stageSize.x * PAGE_COLUMNS, !wrap));
+    rulerX->SetDomain(RulerDomain(0.0f, stageSize.x * PAGE_COLUMNS, false));
     rulerY->Disable();
 
     Dali::Path path = Dali::Path::New();
@@ -390,14 +395,7 @@ private:
     mScrollView.RemoveConstraintsFromChildren();
 
     rulerX = CreateRuler(snap ? stageSize.width * 0.5f : 0.0f);
-    if( wrap )
-    {
-      rulerX->SetDomain(RulerDomain(0.0f, stageSize.x * 0.5f * PAGE_COLUMNS, !wrap));
-    }
-    else
-    {
-      rulerX->SetDomain(RulerDomain(0.0f, stageSize.x*0.5f* (PAGE_COLUMNS+1), !wrap));
-    }
+    rulerX->SetDomain( RulerDomain( 0.0f, stageSize.x * 0.5f * PAGE_COLUMNS, false ) );
 
     unsigned int currentPage = mScrollView.GetCurrentPage();
     if( mScrollViewEffect )
@@ -405,7 +403,7 @@ private:
       mScrollView.ApplyEffect(mScrollViewEffect);
     }
 
-    mScrollView.SetWrapMode(wrap);
+    mScrollView.SetWrapMode( true );
     mScrollView.SetRulerX( rulerX );
     mScrollView.SetRulerY( rulerY );
 
@@ -452,11 +450,11 @@ private:
    * @param[in] width the width of the image in texels
    * @param[in] height the height of the image in texels.
    */
-  ImageActor CreateImage( const std::string& filename, unsigned int width = IMAGE_THUMBNAIL_WIDTH, unsigned int height = IMAGE_THUMBNAIL_HEIGHT )
+  ImageView CreateImage( const std::string& filename, unsigned int width = IMAGE_THUMBNAIL_WIDTH, unsigned int height = IMAGE_THUMBNAIL_HEIGHT )
   {
     Image img = ResourceImage::New(filename, ImageDimensions( width, height ), Dali::FittingMode::SCALE_TO_FILL, Dali::SamplingMode::BOX_THEN_LINEAR );
 
-    ImageActor actor = ImageActor::New(img);
+    ImageView actor = ImageView::New(img);
     actor.SetName( filename );
     actor.SetParentOrigin(ParentOrigin::CENTER);
     actor.SetAnchorPoint(AnchorPoint::CENTER);
@@ -576,7 +574,8 @@ private:
 
   EffectMode mEffectMode;                               ///< Current Effect mode
 
-  Image mEffectIcon[Total];                             ///< Icons for the effect button
+  std::string mEffectIcon[Total];                       ///< Icons for the effect button
+  std::string mEffectIconSelected[Total];               ///< Icons for the effect button when its selected
   Toolkit::PushButton mEffectChangeButton;              ///< Effect Change Button
 };