OLD | NEW |
---|---|
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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 #ifndef BASE_GFX_GTK_UTIL_H_ | 5 #ifndef BASE_GFX_GTK_UTIL_H_ |
6 #define BASE_GFX_GTK_UTIL_H_ | 6 #define BASE_GFX_GTK_UTIL_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 typedef struct _GdkColor GdkColor; | |
10 typedef struct _GdkPixbuf GdkPixbuf; | 11 typedef struct _GdkPixbuf GdkPixbuf; |
11 typedef struct _GdkRegion GdkRegion; | 12 typedef struct _GdkRegion GdkRegion; |
13 typedef struct _GtkWidget GtkWidget; | |
12 class SkBitmap; | 14 class SkBitmap; |
13 | 15 |
14 // Define a macro for creating GdkColors from RGB values. This is a macro to | 16 // Define a macro for creating GdkColors from RGB values. This is a macro to |
15 // allow static construction of literals, etc. Use this like: | 17 // allow static construction of literals, etc. Use this like: |
16 // GdkColor white = GDK_COLOR_RGB(0xff, 0xff, 0xff); | 18 // GdkColor white = GDK_COLOR_RGB(0xff, 0xff, 0xff); |
17 #define GDK_COLOR_RGB(r, g, b) {0, r * 257, g * 257, b * 257} | 19 #define GDK_COLOR_RGB(r, g, b) {0, r * 257, g * 257, b * 257} |
18 | 20 |
19 namespace gfx { | 21 namespace gfx { |
20 | 22 |
21 class Rect; | 23 class Rect; |
22 | 24 |
23 // Modify the given region by subtracting the given rectangles. | 25 // Modify the given region by subtracting the given rectangles. |
24 void SubtractRectanglesFromRegion(GdkRegion* region, | 26 void SubtractRectanglesFromRegion(GdkRegion* region, |
25 const std::vector<gfx::Rect>& cutouts); | 27 const std::vector<gfx::Rect>& cutouts); |
26 | 28 |
27 // Convert and copy a SkBitmap to a GdkPixbuf. NOTE: This is an expensive | 29 // Convert and copy a SkBitmap to a GdkPixbuf. NOTE: This is an expensive |
28 // operation, all of the pixels must be copied and their order swapped. | 30 // operation, all of the pixels must be copied and their order swapped. |
29 GdkPixbuf* GdkPixbufFromSkBitmap(const SkBitmap* bitmap); | 31 GdkPixbuf* GdkPixbufFromSkBitmap(const SkBitmap* bitmap); |
30 | 32 |
33 // Create a GtkBin with |child| as its child widget. This bin will paint a | |
34 // border of color |color| with the sizes specified in pixels. | |
35 GtkWidget* CreateGtkBorderBin(GtkWidget* child, const GdkColor* color, | |
36 int top, int bottom, int left, int right); | |
Evan Martin
2009/03/13 16:33:29
I'm a little skeptical we'll use this too often.
| |
37 | |
31 } // namespace gfx | 38 } // namespace gfx |
32 | 39 |
33 #endif // BASE_GFX_GTK_UTIL_H_ | 40 #endif // BASE_GFX_GTK_UTIL_H_ |
OLD | NEW |