- const PositionedImage& imageSource = *i;
- const Vector2 imageSize = imageSource.imageGridDims * cellSize - Vector2( GRID_CELL_PADDING * 2, GRID_CELL_PADDING * 2 );
- const Vector2 imageRegionCorner = gridOrigin + cellSize * Vector2( imageSource.cellX, imageSource.cellY );
- const Vector2 imagePosition = imageRegionCorner + Vector2( GRID_CELL_PADDING , GRID_CELL_PADDING ) + imageSize * 0.5f;
-
- ImageView image = CreateImageView( imageSource.configuration.path, imageSize.x, imageSize.y, fittingMode );
- image.SetPosition( Vector3( imagePosition.x, imagePosition.y, 0 ) );
- image.SetSize( imageSize );
- image.TouchedSignal().Connect( this, &ImageScalingIrregularGridController::OnTouchImage );
- mFittingModes[image.GetId()] = fittingMode;
- mResourceUrls[image.GetId()] = imageSource.configuration.path;
- mSizes[image.GetId()] = imageSize;
-
- gridActor.Add( image );
+ const PositionedImage& imageSource = *i;
+ const Vector2 imageSize = imageSource.imageGridDims * cellSize - Vector2(GRID_CELL_PADDING * 2, GRID_CELL_PADDING * 2);
+ const Vector2 imageRegionCorner = gridOrigin + cellSize * Vector2(imageSource.cellX, imageSource.cellY);
+ const Vector2 imagePosition = imageRegionCorner + Vector2(GRID_CELL_PADDING, GRID_CELL_PADDING) + imageSize * 0.5f;
+
+ ImageView image = CreateImageView(imageSource.configuration.path, imageSize.x, imageSize.y, fittingMode);
+ image.SetProperty(Actor::Property::POSITION, Vector3(imagePosition.x, imagePosition.y, 0));
+ image.SetProperty(Actor::Property::SIZE, imageSize);
+ image.TouchedSignal().Connect(this, &ImageScalingIrregularGridController::OnTouchImage);
+ image.ResourceReadySignal().Connect(this, &ImageScalingIrregularGridController::ResourceReadySignal);
+ mFittingModes[image.GetProperty<int>(Actor::Property::ID)] = fittingMode;
+ mResourceUrls[image.GetProperty<int>(Actor::Property::ID)] = imageSource.configuration.path;
+ mSizes[image.GetProperty<int>(Actor::Property::ID)] = imageSize;
+ if(count < INITIAL_IMAGES_TO_LOAD)
+ {
+ gridActor.Add(image);
+ }
+ else
+ {
+ // Store the ImageView in an offwindow actor until the inital batch of ImageViews have finished loading their images
+ // Required
+ mOffWindowImageViews.Add(image);
+ }