| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) | 2 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) |
| 3 * Copyright (C) 2004, 2005, 2006 Apple Computer, Inc. All rights reserved. | 3 * Copyright (C) 2004, 2005, 2006 Apple Computer, Inc. All rights reserved. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
| 7 * are met: | 7 * are met: |
| 8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
| (...skipping 13 matching lines...) Expand all Loading... |
| 24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 25 */ | 25 */ |
| 26 | 26 |
| 27 #ifndef Image_h | 27 #ifndef Image_h |
| 28 #define Image_h | 28 #define Image_h |
| 29 | 29 |
| 30 #include "platform/PlatformExport.h" | 30 #include "platform/PlatformExport.h" |
| 31 #include "platform/geometry/IntRect.h" | 31 #include "platform/geometry/IntRect.h" |
| 32 #include "platform/graphics/Color.h" | 32 #include "platform/graphics/Color.h" |
| 33 #include "platform/graphics/GraphicsTypes.h" | 33 #include "platform/graphics/GraphicsTypes.h" |
| 34 #include "platform/graphics/ImageAnimationPolicy.h" |
| 34 #include "platform/graphics/ImageOrientation.h" | 35 #include "platform/graphics/ImageOrientation.h" |
| 35 #include "platform/graphics/skia/NativeImageSkia.h" | 36 #include "platform/graphics/skia/NativeImageSkia.h" |
| 36 #include "third_party/skia/include/core/SkXfermode.h" | 37 #include "third_party/skia/include/core/SkXfermode.h" |
| 37 #include "wtf/Assertions.h" | 38 #include "wtf/Assertions.h" |
| 38 #include "wtf/PassRefPtr.h" | 39 #include "wtf/PassRefPtr.h" |
| 39 #include "wtf/RefCounted.h" | 40 #include "wtf/RefCounted.h" |
| 40 #include "wtf/RefPtr.h" | 41 #include "wtf/RefPtr.h" |
| 41 #include "wtf/RetainPtr.h" | 42 #include "wtf/RetainPtr.h" |
| 42 #include "wtf/text/WTFString.h" | 43 #include "wtf/text/WTFString.h" |
| 43 | 44 |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 // Animation begins whenever someone draws the image, so startAnimation() is
not normally called. | 109 // Animation begins whenever someone draws the image, so startAnimation() is
not normally called. |
| 109 // It will automatically pause once all observers no longer want to render t
he image anywhere. | 110 // It will automatically pause once all observers no longer want to render t
he image anywhere. |
| 110 enum CatchUpAnimation { DoNotCatchUp, CatchUp }; | 111 enum CatchUpAnimation { DoNotCatchUp, CatchUp }; |
| 111 virtual void startAnimation(CatchUpAnimation = CatchUp) { } | 112 virtual void startAnimation(CatchUpAnimation = CatchUp) { } |
| 112 virtual void stopAnimation() {} | 113 virtual void stopAnimation() {} |
| 113 virtual void resetAnimation() {} | 114 virtual void resetAnimation() {} |
| 114 | 115 |
| 115 // True if this image can potentially animate. | 116 // True if this image can potentially animate. |
| 116 virtual bool maybeAnimated() { return false; } | 117 virtual bool maybeAnimated() { return false; } |
| 117 | 118 |
| 119 // Set animationPolicy |
| 120 virtual void setAnimationPolicy(ImageAnimationPolicy) { } |
| 121 virtual ImageAnimationPolicy animationPolicy() { return ImageAnimationPolicy
Allowed; } |
| 122 |
| 118 // Typically the ImageResource that owns us. | 123 // Typically the ImageResource that owns us. |
| 119 ImageObserver* imageObserver() const { return m_imageObserver; } | 124 ImageObserver* imageObserver() const { return m_imageObserver; } |
| 120 void setImageObserver(ImageObserver* observer) { m_imageObserver = observer;
} | 125 void setImageObserver(ImageObserver* observer) { m_imageObserver = observer;
} |
| 121 | 126 |
| 122 enum TileRule { StretchTile, RoundTile, SpaceTile, RepeatTile }; | 127 enum TileRule { StretchTile, RoundTile, SpaceTile, RepeatTile }; |
| 123 | 128 |
| 124 virtual PassRefPtr<NativeImageSkia> nativeImageForCurrentFrame() { return nu
llptr; } | 129 virtual PassRefPtr<NativeImageSkia> nativeImageForCurrentFrame() { return nu
llptr; } |
| 125 | 130 |
| 126 virtual PassRefPtr<Image> imageForDefaultFrame(); | 131 virtual PassRefPtr<Image> imageForDefaultFrame(); |
| 127 | 132 |
| (...skipping 24 matching lines...) Expand all Loading... |
| 152 RefPtr<SharedBuffer> m_encodedImageData; | 157 RefPtr<SharedBuffer> m_encodedImageData; |
| 153 ImageObserver* m_imageObserver; | 158 ImageObserver* m_imageObserver; |
| 154 }; | 159 }; |
| 155 | 160 |
| 156 #define DEFINE_IMAGE_TYPE_CASTS(typeName) \ | 161 #define DEFINE_IMAGE_TYPE_CASTS(typeName) \ |
| 157 DEFINE_TYPE_CASTS(typeName, Image, image, image->is##typeName(), image.is##t
ypeName()) | 162 DEFINE_TYPE_CASTS(typeName, Image, image, image->is##typeName(), image.is##t
ypeName()) |
| 158 | 163 |
| 159 } // namespace blink | 164 } // namespace blink |
| 160 | 165 |
| 161 #endif | 166 #endif |
| OLD | NEW |