aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/PictureRenderer.cpp
diff options
context:
space:
mode:
authorGravatar keyar@chromium.org <keyar@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-08-20 22:04:07 +0000
committerGravatar keyar@chromium.org <keyar@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-08-20 22:04:07 +0000
commitda652c2ad580a96d63a8b19176a102998d9ca612 (patch)
tree94caefe3557996e9b77878070570cc46f0a422af /tools/PictureRenderer.cpp
parent436411b013a160ca8dcd026c371f7bd03c7dcea2 (diff)
Removed the TileInfo struct used in TiledPictureRenderer.
Review URL: https://codereview.appspot.com/6443153 git-svn-id: http://skia.googlecode.com/svn/trunk@5206 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'tools/PictureRenderer.cpp')
-rw-r--r--tools/PictureRenderer.cpp21
1 files changed, 11 insertions, 10 deletions
diff --git a/tools/PictureRenderer.cpp b/tools/PictureRenderer.cpp
index e751bc6a65..290c79a5fe 100644
--- a/tools/PictureRenderer.cpp
+++ b/tools/PictureRenderer.cpp
@@ -179,18 +179,19 @@ TiledPictureRenderer::~TiledPictureRenderer() {
this->deleteTiles();
}
-void TiledPictureRenderer::clipTile(const TileInfo& tile) {
+void TiledPictureRenderer::clipTile(SkCanvas* tile) {
SkRect clip = SkRect::MakeWH(SkIntToScalar(fPicture->width()),
SkIntToScalar(fPicture->height()));
- tile.fCanvas->clipRect(clip);
+ tile->clipRect(clip);
}
void TiledPictureRenderer::addTile(int tile_x_start, int tile_y_start) {
- TileInfo* tile = fTiles.push();
+ SkCanvas* tile = this->setupCanvas(fTileWidth, fTileHeight);
- tile->fCanvas = this->setupCanvas(fTileWidth, fTileHeight);
- tile->fCanvas->translate(SkIntToScalar(-tile_x_start), SkIntToScalar(-tile_y_start));
- this->clipTile(*tile);
+ tile->translate(SkIntToScalar(-tile_x_start), SkIntToScalar(-tile_y_start));
+ this->clipTile(tile);
+
+ fTiles.push(tile);
}
void TiledPictureRenderer::setupTiles() {
@@ -205,7 +206,7 @@ void TiledPictureRenderer::setupTiles() {
void TiledPictureRenderer::deleteTiles() {
for (int i = 0; i < fTiles.count(); ++i) {
- SkDELETE(fTiles[i].fCanvas);
+ SkDELETE(fTiles[i]);
}
fTiles.reset();
@@ -213,13 +214,13 @@ void TiledPictureRenderer::deleteTiles() {
void TiledPictureRenderer::drawTiles() {
for (int i = 0; i < fTiles.count(); ++i) {
- fTiles[i].fCanvas->drawPicture(*(fPicture));
+ fTiles[i]->drawPicture(*(fPicture));
}
}
void TiledPictureRenderer::finishDraw() {
for (int i = 0; i < fTiles.count(); ++i) {
- fTiles[i].fCanvas->flush();
+ fTiles[i]->flush();
}
#if SK_SUPPORT_GPU
@@ -244,7 +245,7 @@ void TiledPictureRenderer::copyTilesToCanvas() {
for (int tile_x_start = 0; tile_x_start < fPicture->width();
tile_x_start += fTileWidth) {
SkASSERT(tile_index < fTiles.count());
- SkBitmap source = fTiles[tile_index].fCanvas->getDevice()->accessBitmap(false);
+ SkBitmap source = fTiles[tile_index]->getDevice()->accessBitmap(false);
fCanvas->drawBitmap(source,
SkIntToScalar(tile_x_start),
SkIntToScalar(tile_y_start));