| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "skia/ext/bitmap_platform_device_mac.h" | 5 #include "skia/ext/bitmap_platform_device_mac.h" |
| 6 | 6 |
| 7 #include <time.h> | 7 #include <time.h> |
| 8 | 8 |
| 9 #include "base/ref_counted.h" | 9 #include "base/ref_counted.h" |
| 10 #include "skia/ext/skia_utils_mac.h" | 10 #include "skia/ext/skia_utils_mac.h" |
| (...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 168 t.setTranslateX(-t.getTranslateX()); | 168 t.setTranslateX(-t.getTranslateX()); |
| 169 t.setTranslateY(-t.getTranslateY()); | 169 t.setTranslateY(-t.getTranslateY()); |
| 170 LoadClippingRegionToCGContext(bitmap_context_, clip_region_, t); | 170 LoadClippingRegionToCGContext(bitmap_context_, clip_region_, t); |
| 171 } | 171 } |
| 172 | 172 |
| 173 | 173 |
| 174 // We use this static factory function instead of the regular constructor so | 174 // We use this static factory function instead of the regular constructor so |
| 175 // that we can create the pixel data before calling the constructor. This is | 175 // that we can create the pixel data before calling the constructor. This is |
| 176 // required so that we can call the base class' constructor with the pixel | 176 // required so that we can call the base class' constructor with the pixel |
| 177 // data. | 177 // data. |
| 178 BitmapPlatformDevice* BitmapPlatformDevice::CreateWithContext( | 178 BitmapPlatformDevice* BitmapPlatformDevice::Create(CGContextRef context, |
| 179 CGContextRef context, int width, int height, bool is_opaque) { | 179 int width, |
| 180 int height, |
| 181 bool is_opaque) { |
| 180 SkBitmap bitmap; | 182 SkBitmap bitmap; |
| 181 bitmap.setConfig(SkBitmap::kARGB_8888_Config, width, height); | 183 bitmap.setConfig(SkBitmap::kARGB_8888_Config, width, height); |
| 182 if (bitmap.allocPixels() != true) | 184 if (bitmap.allocPixels() != true) |
| 183 return NULL; | 185 return NULL; |
| 184 | 186 |
| 185 void* data = NULL; | 187 void* data = NULL; |
| 186 if (context) { | 188 if (context) { |
| 187 data = CGBitmapContextGetData(context); | 189 data = CGBitmapContextGetData(context); |
| 188 bitmap.setPixels(data); | 190 bitmap.setPixels(data); |
| 189 } else { | 191 } else { |
| (...skipping 24 matching lines...) Expand all Loading... |
| 214 } | 216 } |
| 215 | 217 |
| 216 BitmapPlatformDevice* BitmapPlatformDevice::CreateWithData(uint8_t* data, | 218 BitmapPlatformDevice* BitmapPlatformDevice::CreateWithData(uint8_t* data, |
| 217 int width, | 219 int width, |
| 218 int height, | 220 int height, |
| 219 bool is_opaque) { | 221 bool is_opaque) { |
| 220 CGContextRef context = NULL; | 222 CGContextRef context = NULL; |
| 221 if (data) | 223 if (data) |
| 222 context = CGContextForData(data, width, height); | 224 context = CGContextForData(data, width, height); |
| 223 | 225 |
| 224 return CreateWithContext(context, width, height, is_opaque); | 226 return Create(context, width, height, is_opaque); |
| 225 } | 227 } |
| 226 | 228 |
| 227 // The device will own the bitmap, which corresponds to also owning the pixel | 229 // The device will own the bitmap, which corresponds to also owning the pixel |
| 228 // data. Therefore, we do not transfer ownership to the SkDevice's bitmap. | 230 // data. Therefore, we do not transfer ownership to the SkDevice's bitmap. |
| 229 BitmapPlatformDevice::BitmapPlatformDevice( | 231 BitmapPlatformDevice::BitmapPlatformDevice( |
| 230 BitmapPlatformDeviceData* data, const SkBitmap& bitmap) | 232 BitmapPlatformDeviceData* data, const SkBitmap& bitmap) |
| 231 : PlatformDevice(bitmap), | 233 : PlatformDevice(bitmap), |
| 232 data_(data) { | 234 data_(data) { |
| 233 } | 235 } |
| 234 | 236 |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 323 for (int i = 0; i < height; i++) { | 325 for (int i = 0; i < height; i++) { |
| 324 size_t offset = (i + bitmap_start_y) * row_words + bitmap_start_x; | 326 size_t offset = (i + bitmap_start_y) * row_words + bitmap_start_x; |
| 325 for (int j = 0; j < width; j++) { | 327 for (int j = 0; j < width; j++) { |
| 326 adjustor(data + offset + j); | 328 adjustor(data + offset + j); |
| 327 } | 329 } |
| 328 } | 330 } |
| 329 } | 331 } |
| 330 } | 332 } |
| 331 | 333 |
| 332 } // namespace skia | 334 } // namespace skia |
| OLD | NEW |