Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Side by Side Diff: ui/gfx/image.cc

Issue 6533013: Move ui::gfx::Image out of the ui namespace to be just gfx::Image. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « ui/gfx/image.h ('k') | ui/gfx/image_mac.mm » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "ui/gfx/image.h" 5 #include "ui/gfx/image.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 8
9 #if defined(OS_LINUX) 9 #if defined(OS_LINUX)
10 #include <gdk-pixbuf/gdk-pixbuf.h> 10 #include <gdk-pixbuf/gdk-pixbuf.h>
11 #include <glib-object.h> 11 #include <glib-object.h>
12 #include "ui/gfx/canvas_skia.h" 12 #include "ui/gfx/canvas_skia.h"
13 #include "ui/gfx/gtk_util.h" 13 #include "ui/gfx/gtk_util.h"
14 #elif defined(OS_MACOSX) 14 #elif defined(OS_MACOSX)
15 #include "base/mac/mac_util.h" 15 #include "base/mac/mac_util.h"
16 #include "skia/ext/skia_utils_mac.h" 16 #include "skia/ext/skia_utils_mac.h"
17 #endif 17 #endif
18 18
19 namespace ui {
20 namespace gfx { 19 namespace gfx {
21 20
22 namespace internal { 21 namespace internal {
23 22
24 #if defined(OS_MACOSX) 23 #if defined(OS_MACOSX)
25 // This is a wrapper around gfx::NSImageToSkBitmap() because this cross-platform 24 // This is a wrapper around gfx::NSImageToSkBitmap() because this cross-platform
26 // file cannot include the [square brackets] of ObjC. 25 // file cannot include the [square brackets] of ObjC.
27 const SkBitmap* NSImageToSkBitmap(NSImage* image); 26 const SkBitmap* NSImageToSkBitmap(NSImage* image);
28 #endif 27 #endif
29 28
30 #if defined(OS_LINUX) 29 #if defined(OS_LINUX)
31 const SkBitmap* GdkPixbufToSkBitmap(GdkPixbuf* pixbuf) { 30 const SkBitmap* GdkPixbufToSkBitmap(GdkPixbuf* pixbuf) {
32 ::gfx::CanvasSkia canvas(gdk_pixbuf_get_width(pixbuf), 31 gfx::CanvasSkia canvas(gdk_pixbuf_get_width(pixbuf),
33 gdk_pixbuf_get_height(pixbuf), 32 gdk_pixbuf_get_height(pixbuf),
34 false); 33 false);
35 canvas.DrawGdkPixbuf(pixbuf, 0, 0); 34 canvas.DrawGdkPixbuf(pixbuf, 0, 0);
36 return new SkBitmap(canvas.ExtractBitmap()); 35 return new SkBitmap(canvas.ExtractBitmap());
37 } 36 }
38 #endif 37 #endif
39 38
40 class SkBitmapRep; 39 class SkBitmapRep;
41 class GdkPixbufRep; 40 class GdkPixbufRep;
42 class NSImageRep; 41 class NSImageRep;
43 42
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
245 } 244 }
246 NOTREACHED(); 245 NOTREACHED();
247 } 246 }
248 247
249 // Handle Skia-to-native conversions. 248 // Handle Skia-to-native conversions.
250 if (default_rep->type() == Image::kSkBitmapRep) { 249 if (default_rep->type() == Image::kSkBitmapRep) {
251 internal::SkBitmapRep* skia_rep = default_rep->AsSkBitmapRep(); 250 internal::SkBitmapRep* skia_rep = default_rep->AsSkBitmapRep();
252 internal::ImageRep* native_rep = NULL; 251 internal::ImageRep* native_rep = NULL;
253 #if defined(OS_LINUX) 252 #if defined(OS_LINUX)
254 if (rep_type == Image::kGdkPixbufRep) { 253 if (rep_type == Image::kGdkPixbufRep) {
255 GdkPixbuf* pixbuf = ::gfx::GdkPixbufFromSkBitmap(skia_rep->bitmap()); 254 GdkPixbuf* pixbuf = gfx::GdkPixbufFromSkBitmap(skia_rep->bitmap());
256 native_rep = new internal::GdkPixbufRep(pixbuf); 255 native_rep = new internal::GdkPixbufRep(pixbuf);
257 } 256 }
258 #elif defined(OS_MACOSX) 257 #elif defined(OS_MACOSX)
259 if (rep_type == Image::kNSImageRep) { 258 if (rep_type == Image::kNSImageRep) {
260 NSImage* image = ::gfx::SkBitmapToNSImage(*(skia_rep->bitmap())); 259 NSImage* image = gfx::SkBitmapToNSImage(*(skia_rep->bitmap()));
261 base::mac::NSObjectRetain(image); 260 base::mac::NSObjectRetain(image);
262 native_rep = new internal::NSImageRep(image); 261 native_rep = new internal::NSImageRep(image);
263 } 262 }
264 #endif 263 #endif
265 if (native_rep) { 264 if (native_rep) {
266 AddRepresentation(native_rep); 265 AddRepresentation(native_rep);
267 return native_rep; 266 return native_rep;
268 } 267 }
269 NOTREACHED(); 268 NOTREACHED();
270 } 269 }
271 270
272 // Something went seriously wrong... 271 // Something went seriously wrong...
273 return NULL; 272 return NULL;
274 } 273 }
275 274
276 void Image::AddRepresentation(internal::ImageRep* rep) { 275 void Image::AddRepresentation(internal::ImageRep* rep) {
277 representations_.insert(std::make_pair(rep->type(), rep)); 276 representations_.insert(std::make_pair(rep->type(), rep));
278 } 277 }
279 278
280 } // namespace gfx 279 } // namespace gfx
281 } // namespace ui
OLDNEW
« no previous file with comments | « ui/gfx/image.h ('k') | ui/gfx/image_mac.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698