blob: eecd5a1e8f96c42dc9fb0a8f4df0b324580d05f6 [file] [log] [blame]
package com.android.ex.photo.loaders;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
public interface PhotoBitmapLoaderInterface {
public void setPhotoUri(String photoUri);
public void forceLoad();
public static class BitmapResult {
public static final int STATUS_SUCCESS = 0;
public static final int STATUS_EXCEPTION = 1;
public Drawable drawable;
public Bitmap bitmap;
public int status;
/**
* Returns a drawable to be used in the {@link com.android.ex.photo.views.PhotoView}.
* Should return null if the drawable is not ready to be shown (for instance, if
* the underlying bitmap is null).
*/
public Drawable getDrawable(Resources resources) {
if (resources == null) {
throw new IllegalArgumentException("resources can not be null!");
}
if (drawable != null) {
return drawable;
}
// Don't create a new drawable if there's no bitmap. PhotoViewFragment regards
// a null drawable as a signal to keep showing the loading stuff.
// b/12348405.
if (bitmap == null) {
return null;
}
return new BitmapDrawable(resources, bitmap);
}
}
}