OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 CHROME_COMMON_BADGE_UTIL_H_ | 5 #ifndef CHROME_COMMON_BADGE_UTIL_H_ |
6 #define CHROME_COMMON_BADGE_UTIL_H_ | 6 #define CHROME_COMMON_BADGE_UTIL_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/strings/string16.h" | 10 #include "base/strings/string16.h" |
11 #include "chrome/common/extensions/api/extension_action/action_info.h" | 11 #include "chrome/common/extensions/api/extension_action/action_info.h" |
12 #include "third_party/skia/include/core/SkBitmap.h" | 12 #include "third_party/skia/include/core/SkBitmap.h" |
13 | 13 |
14 class SkPaint; | 14 class SkPaint; |
15 | 15 |
16 namespace gfx { | 16 namespace gfx { |
17 class Canvas; | 17 class Canvas; |
18 class Rect; | 18 class Rect; |
19 } | 19 } |
20 | 20 |
21 // badge_util provides a set of helper routines for rendering dynamically | 21 // badge_util provides a set of helper routines for rendering dynamically |
22 // generated text overlays ("badges") on toolbar icons. | 22 // generated text overlays ("badges") on toolbar icons. |
23 namespace badge_util { | 23 namespace badge_util { |
24 | 24 |
25 // Helper routine that returns a singleton SkPaint object configured for | 25 // Helper routine that returns a singleton SkPaint object configured for |
26 // rendering badge overlay text (correct font, typeface, etc). | 26 // rendering badge overlay text (correct font, typeface, etc). |
27 SkPaint* GetBadgeTextPaintSingleton(); | 27 SkPaint* GetBadgeTextPaintSingleton(); |
28 | 28 |
29 // Given an |icon|, renders the |text| centered on the |icon|. If |text| is | |
30 // too large to fit within the bounds of the image, the |fallback| string is | |
31 // rendered instead (or nothing, if |fallback| is empty). | |
32 SkBitmap DrawBadgeIconOverlay(const SkBitmap& icon, | |
33 float font_size_in_pixels, | |
34 const base::string16& text, | |
35 const base::string16& fallback); | |
36 | |
37 // Paints badge with specified parameters to |canvas|. | 29 // Paints badge with specified parameters to |canvas|. |
38 void PaintBadge(gfx::Canvas* canvas, | 30 void PaintBadge(gfx::Canvas* canvas, |
39 const gfx::Rect& bounds, | 31 const gfx::Rect& bounds, |
40 const std::string& text, | 32 const std::string& text, |
41 const SkColor& text_color_in, | 33 const SkColor& text_color_in, |
42 const SkColor& background_color_in, | 34 const SkColor& background_color_in, |
43 int icon_width, | 35 int icon_width, |
44 extensions::ActionInfo::Type action_type); | 36 extensions::ActionInfo::Type action_type); |
45 | 37 |
46 } // namespace badge_util; | 38 } // namespace badge_util |
47 | 39 |
48 #endif // CHROME_COMMON_BADGE_UTIL_H_ | 40 #endif // CHROME_COMMON_BADGE_UTIL_H_ |
OLD | NEW |