ReplaceImage::ReplaceImage(Sprite* sprite, const ImageRef& oldImage, const ImageRef& newImage) : WithSprite(sprite) , m_oldImageId(oldImage->id()) , m_newImageId(newImage->id()) , m_newImage(newImage) { }
ImageRef SubObjectsFromSprite::getImageRef(ObjectId imageId) { auto it = m_images.find(imageId); if (it != m_images.end()) { ImageRef image = it->second; ASSERT(image->id() == imageId); ASSERT(!m_sprite->getImageRef(imageId)); return image; } else return m_sprite->getImageRef(imageId); }
void SubObjectsFromSprite::addImageRef(const ImageRef& image) { ASSERT(image); ASSERT(!getImageRef(image->id())); m_images.insert(std::make_pair(image->id(), image)); }