aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar halcanary <halcanary@google.com>2015-12-10 09:30:57 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2015-12-10 09:30:57 -0800
commit9907371f0a79776d90b68d534aeb44eb46acafe5 (patch)
tree6a6de90e8bde9e3ebef742b0fc9da0bc0ee5d25b
parent1acabf3787bdaccd70ed53e64b3957d27ea34f79 (diff)
SkPixelSerializer: remove deprecated virtual
-rw-r--r--include/core/SkPixelSerializer.h19
-rw-r--r--tests/ImageTest.cpp2
-rw-r--r--tools/sk_tool_utils.cpp13
-rw-r--r--tools/sk_tool_utils.h8
4 files changed, 19 insertions, 23 deletions
diff --git a/include/core/SkPixelSerializer.h b/include/core/SkPixelSerializer.h
index cd0187e552..b168f79dd1 100644
--- a/include/core/SkPixelSerializer.h
+++ b/include/core/SkPixelSerializer.h
@@ -32,16 +32,12 @@ public:
* Call to get the client's version of encoding these pixels. If it
* returns NULL, serialize the raw pixels.
*/
- SkData* encode(const SkPixmap& pixmap) {
- SkData* data = this->onEncode(pixmap);
- return data ? data : this->onEncodePixels(
- pixmap.info(), pixmap.addr(), pixmap.rowBytes());
- }
+ SkData* encode(const SkPixmap& pixmap) { return this->onEncode(pixmap); }
protected:
/**
* Return true if you want to serialize the encoded data, false if you want
- * another version serialized (e.g. the result of encodePixels).
+ * another version serialized (e.g. the result of this->encode()).
*/
virtual bool onUseEncodedData(const void* data, size_t len) = 0;
@@ -49,15 +45,6 @@ protected:
* If you want to encode these pixels, return the encoded data as an SkData
* Return null if you want to serialize the raw pixels.
*/
- // NOTE: onEncodePixels() is deprecated and removed in a later CL.
- // Subclasses should implement onEncode() instead. Subclasses
- // should implement at least one of onEncodePixels() or
- // onUseEncodedData().
- virtual SkData* onEncodePixels(const SkImageInfo&,
- const void* /*pixels*/,
- size_t /*rowBytes*/) {
- return nullptr;
- }
- virtual SkData* onEncode(const SkPixmap&) { return nullptr; }
+ virtual SkData* onEncode(const SkPixmap&) = 0;
};
#endif // SkPixelSerializer_DEFINED
diff --git a/tests/ImageTest.cpp b/tests/ImageTest.cpp
index 2bc2accf8f..575fc1c287 100644
--- a/tests/ImageTest.cpp
+++ b/tests/ImageTest.cpp
@@ -169,7 +169,7 @@ protected:
return false;
}
- SkData* onEncodePixels(const SkImageInfo&, const void*, size_t) override {
+ SkData* onEncode(const SkPixmap&) override {
fDidEncode = true;
return fFunc();
}
diff --git a/tools/sk_tool_utils.cpp b/tools/sk_tool_utils.cpp
index e2bc0fc42c..8c3097602c 100644
--- a/tools/sk_tool_utils.cpp
+++ b/tools/sk_tool_utils.cpp
@@ -222,6 +222,19 @@ SkBitmap create_string_bitmap(int w, int h, SkColor c, int x, int y,
return bitmap;
}
+bool PngPixelSerializer::onUseEncodedData(const void*, size_t) { return true; }
+SkData* PngPixelSerializer::onEncode(const SkPixmap& pixmap) {
+ SkBitmap bm;
+ if (!bm.installPixels(pixmap.info(),
+ const_cast<void*>(pixmap.addr()),
+ pixmap.rowBytes(),
+ pixmap.ctable(),
+ nullptr, nullptr)) {
+ return nullptr;
+ }
+ return SkImageEncoder::EncodeData(bm, SkImageEncoder::kPNG_Type, 100);
+}
+
void add_to_text_blob(SkTextBlobBuilder* builder, const char* text, const SkPaint& origPaint,
SkScalar x, SkScalar y) {
SkPaint paint(origPaint);
diff --git a/tools/sk_tool_utils.h b/tools/sk_tool_utils.h
index 67fd869a87..3eabcdcd0f 100644
--- a/tools/sk_tool_utils.h
+++ b/tools/sk_tool_utils.h
@@ -118,12 +118,8 @@ namespace sk_tool_utils {
// used.
class PngPixelSerializer : public SkPixelSerializer {
public:
- bool onUseEncodedData(const void*, size_t) override { return true; }
- SkData* onEncodePixels(const SkImageInfo& info, const void* pixels,
- size_t rowBytes) override {
- return SkImageEncoder::EncodeData(info, pixels, rowBytes,
- SkImageEncoder::kPNG_Type, 100);
- }
+ bool onUseEncodedData(const void*, size_t) override;
+ SkData* onEncode(const SkPixmap&) override;
};
// A helper for inserting a drawtext call into a SkTextBlobBuilder