namespace
{
-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 BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-default.png" );
+const char * const TOOLBAR_IMAGE( DEMO_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( 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 Vector3 ICON_SIZE(100.0f, 100.0f, 0.0f);
};
const char * const IMAGE_PATHS[] = {
- DALI_IMAGE_DIR "gallery-medium-1.jpg",
- DALI_IMAGE_DIR "gallery-medium-2.jpg",
- DALI_IMAGE_DIR "gallery-medium-3.jpg",
- DALI_IMAGE_DIR "gallery-medium-4.jpg",
- DALI_IMAGE_DIR "gallery-medium-5.jpg",
- DALI_IMAGE_DIR "gallery-medium-6.jpg",
- DALI_IMAGE_DIR "gallery-medium-7.jpg",
- DALI_IMAGE_DIR "gallery-medium-8.jpg",
- DALI_IMAGE_DIR "gallery-medium-9.jpg",
- DALI_IMAGE_DIR "gallery-medium-10.jpg",
- DALI_IMAGE_DIR "gallery-medium-11.jpg",
- DALI_IMAGE_DIR "gallery-medium-12.jpg",
- DALI_IMAGE_DIR "gallery-medium-13.jpg",
- DALI_IMAGE_DIR "gallery-medium-14.jpg",
- DALI_IMAGE_DIR "gallery-medium-15.jpg",
- DALI_IMAGE_DIR "gallery-medium-16.jpg",
- DALI_IMAGE_DIR "gallery-medium-17.jpg",
- DALI_IMAGE_DIR "gallery-medium-18.jpg",
- DALI_IMAGE_DIR "gallery-medium-19.jpg",
- DALI_IMAGE_DIR "gallery-medium-20.jpg",
- DALI_IMAGE_DIR "gallery-medium-21.jpg",
- DALI_IMAGE_DIR "gallery-medium-22.jpg",
- DALI_IMAGE_DIR "gallery-medium-23.jpg",
- DALI_IMAGE_DIR "gallery-medium-24.jpg",
- DALI_IMAGE_DIR "gallery-medium-25.jpg",
- DALI_IMAGE_DIR "gallery-medium-26.jpg",
- DALI_IMAGE_DIR "gallery-medium-27.jpg",
- DALI_IMAGE_DIR "gallery-medium-28.jpg",
- DALI_IMAGE_DIR "gallery-medium-29.jpg",
- DALI_IMAGE_DIR "gallery-medium-30.jpg",
- DALI_IMAGE_DIR "gallery-medium-31.jpg",
- DALI_IMAGE_DIR "gallery-medium-32.jpg",
- DALI_IMAGE_DIR "gallery-medium-33.jpg",
- DALI_IMAGE_DIR "gallery-medium-34.jpg",
- DALI_IMAGE_DIR "gallery-medium-35.jpg",
- DALI_IMAGE_DIR "gallery-medium-36.jpg",
- DALI_IMAGE_DIR "gallery-medium-37.jpg",
- DALI_IMAGE_DIR "gallery-medium-38.jpg",
- DALI_IMAGE_DIR "gallery-medium-39.jpg",
- DALI_IMAGE_DIR "gallery-medium-40.jpg",
- DALI_IMAGE_DIR "gallery-medium-41.jpg",
- DALI_IMAGE_DIR "gallery-medium-42.jpg",
- DALI_IMAGE_DIR "gallery-medium-43.jpg",
- DALI_IMAGE_DIR "gallery-medium-44.jpg",
- DALI_IMAGE_DIR "gallery-medium-45.jpg",
- DALI_IMAGE_DIR "gallery-medium-46.jpg",
- DALI_IMAGE_DIR "gallery-medium-47.jpg",
- DALI_IMAGE_DIR "gallery-medium-48.jpg",
- DALI_IMAGE_DIR "gallery-medium-49.jpg",
- DALI_IMAGE_DIR "gallery-medium-50.jpg",
- DALI_IMAGE_DIR "gallery-medium-51.jpg",
- DALI_IMAGE_DIR "gallery-medium-52.jpg",
- DALI_IMAGE_DIR "gallery-medium-53.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-1.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-2.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-3.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-4.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-5.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-6.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-7.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-8.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-9.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-10.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-11.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-12.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-13.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-14.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-15.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-16.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-17.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-18.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-19.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-20.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-21.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-22.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-23.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-24.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-25.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-26.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-27.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-28.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-29.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-30.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-31.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-32.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-33.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-34.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-35.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-36.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-37.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-38.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-39.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-40.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-41.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-42.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-43.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-44.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-45.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-46.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-47.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-48.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-49.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-50.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-51.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-52.jpg",
+ DEMO_IMAGE_DIR "gallery-medium-53.jpg",
NULL
};
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();
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)
{
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 );
*/
void ApplyEffectToScrollView()
{
- bool wrap(true);
bool snap(true);
Stage stage = Stage::GetCurrent();
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();
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 )
mScrollView.ApplyEffect(mScrollViewEffect);
}
- mScrollView.SetWrapMode(wrap);
+ mScrollView.SetWrapMode( true );
mScrollView.SetRulerX( rulerX );
mScrollView.SetRulerY( rulerY );
* @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, int width = IMAGE_THUMBNAIL_WIDTH, int height = IMAGE_THUMBNAIL_HEIGHT )
{
- Image img = ResourceImage::New(filename, ImageDimensions( width, height ), Dali::FittingMode::SCALE_TO_FILL, Dali::SamplingMode::BOX_THEN_LINEAR );
+ 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";
+ actor.SetProperty( ImageView::Property::IMAGE, map );
- ImageActor actor = ImageActor::New(img);
actor.SetName( filename );
actor.SetParentOrigin(ParentOrigin::CENTER);
actor.SetAnchorPoint(AnchorPoint::CENTER);
- actor.TouchedSignal().Connect( this, &ExampleController::OnTouchImage );
+ actor.TouchSignal().Connect( this, &ExampleController::OnTouchImage );
return actor;
}
* 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 TouchEvent& event )
+ bool OnTouchImage( Actor actor, const TouchData& event )
{
- if( (event.points.size() > 0) && (!mScrolling) )
+ if( (event.GetPointCount() > 0) && (!mScrolling) )
{
- TouchPoint point = event.points[0];
- if(point.state == TouchPoint::Up)
+ if( event.GetState( 0 ) == PointState::UP )
{
// Spin the Image a few times.
Animation animation = Animation::New(SPIN_DURATION);
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
};
-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);
ExampleController test(app);
app.MainLoop();
return 0;