Hello, Jim.
On 13.11.2013 22:49, Jim Graham wrote:
That's could be a problem. Is it possible to wrap imageObserver, which
was passed to the drawImage, and replace one image to another in the
WrapperImageObserver.imageUpdate()?

It's possible - the things to watch out for:

- they could hand the same IO in for multiple drawImage calls to multiple images

- they could hand the same IO in repeatedly for the same image while it is loading if the loading takes a while or the image is animated; you don't want to necessarily create an infinite number of wrappers for the same observer and register them all with the image loading mechanism

- the image that you report to them should probably be the original image, not the resolution-specific underlying images

- we need to deal with making sure that the information flowing to the IO does not report complete until all resolution variants that we plan to load are done

- given Mike's answer to my previous questions, it looks like @2x is not a retina-specific issue, all images do that even non non-retina apparently so maybe we do want to load all variants up front?

- we don't want to pass ERROR conditions to the IO unless all resolution variants are errored, we should silently swallow any ERROR conditions for just some of the resolution variants and make do with what we have
Well, it is necessary to decide that it is simpler to bypass all these problems or to move them to the user. As ScalableToolkitImage implementation is trivial.

            ...jim


--
Best regards, Sergey.

Reply via email to