summaryrefslogtreecommitdiffstats
path: root/libs/hwui/DisplayListRenderer.cpp
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2011-01-23 14:18:41 -0800
committerRomain Guy <romainguy@google.com>2011-01-23 14:18:41 -0800
commitc1cd9ba335b293f11e1082447ef08e474710a05f (patch)
tree3f07bf1887e0cd5602c2f1e356e3efe92d7f766b /libs/hwui/DisplayListRenderer.cpp
parentf6834478b379856d3e5de92ddce7de0e6ba9fa4a (diff)
downloadframeworks_base-c1cd9ba335b293f11e1082447ef08e474710a05f.zip
frameworks_base-c1cd9ba335b293f11e1082447ef08e474710a05f.tar.gz
frameworks_base-c1cd9ba335b293f11e1082447ef08e474710a05f.tar.bz2
Add support for ovals and stroked rectangles.
Change-Id: I1292e241386763c82e6622c8f7ed90b0f5b7bd4f
Diffstat (limited to 'libs/hwui/DisplayListRenderer.cpp')
-rw-r--r--libs/hwui/DisplayListRenderer.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/libs/hwui/DisplayListRenderer.cpp b/libs/hwui/DisplayListRenderer.cpp
index 58ef7b3..8714997 100644
--- a/libs/hwui/DisplayListRenderer.cpp
+++ b/libs/hwui/DisplayListRenderer.cpp
@@ -107,6 +107,7 @@ const char* DisplayList::OP_NAMES[] = {
"DrawRect",
"DrawRoundRect",
"DrawCircle",
+ "DrawOval",
"DrawPath",
"DrawLines",
"DrawText",
@@ -358,6 +359,10 @@ void DisplayList::replay(OpenGLRenderer& renderer, uint32_t level) {
renderer.drawCircle(getFloat(), getFloat(), getFloat(), getPaint());
}
break;
+ case DrawOval: {
+ renderer.drawOval(getFloat(), getFloat(), getFloat(), getFloat(), getPaint());
+ }
+ break;
case DrawPath: {
renderer.drawPath(getPath(), getPaint());
}
@@ -663,6 +668,13 @@ void DisplayListRenderer::drawCircle(float x, float y, float radius, SkPaint* pa
addPaint(paint);
}
+void DisplayListRenderer::drawOval(float left, float top, float right, float bottom,
+ SkPaint* paint) {
+ addOp(DisplayList::DrawOval);
+ addBounds(left, top, right, bottom);
+ addPaint(paint);
+}
+
void DisplayListRenderer::drawPath(SkPath* path, SkPaint* paint) {
addOp(DisplayList::DrawPath);
addPath(path);