OLD | NEW |
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 // | |
5 // This file defines utility functions for working with text in views. | |
6 | 4 |
7 #ifndef VIEWS_VIEW_TEXT_UTILS_H_ | 5 #ifndef UI_VIEWS_VIEW_TEXT_UTILS_H_ |
8 #define VIEWS_VIEW_TEXT_UTILS_H_ | 6 #define UI_VIEWS_VIEW_TEXT_UTILS_H_ |
9 #pragma once | 7 #pragma once |
10 | 8 |
11 #include "base/string16.h" | 9 #include "base/string16.h" |
12 #include "views/views_export.h" | 10 #include "ui/views/views_export.h" |
13 | 11 |
14 namespace gfx { | 12 namespace gfx { |
15 class Canvas; | 13 class Canvas; |
16 class Font; | 14 class Font; |
17 class Rect; | 15 class Rect; |
18 class Size; | 16 class Size; |
19 } | 17 } |
20 | 18 |
21 namespace views { | 19 namespace views { |
22 class Label; | 20 class Label; |
23 class Link; | 21 class Link; |
24 } | 22 } |
25 | 23 |
| 24 // This file defines utility functions for working with text in views. |
| 25 |
26 namespace view_text_utils { | 26 namespace view_text_utils { |
27 | 27 |
28 // Draws a string onto the canvas (wrapping if needed) while also keeping | 28 // Draws a string onto the canvas (wrapping if needed) while also keeping |
29 // track of where it ends so we can position a URL after the text. The | 29 // track of where it ends so we can position a URL after the text. The |
30 // parameter |bounds| represents the boundary we have to work with, |position| | 30 // parameter |bounds| represents the boundary we have to work with, |position| |
31 // specifies where to draw the string (relative to the top left corner of the | 31 // specifies where to draw the string (relative to the top left corner of the |
32 // |bounds| rectangle and |font| specifies the font to use when drawing. When | 32 // |bounds| rectangle and |font| specifies the font to use when drawing. When |
33 // the function returns, the parameter |rect| contains where to draw the URL | 33 // the function returns, the parameter |rect| contains where to draw the URL |
34 // (to the right of where we just drew the text) and |position| is updated to | 34 // (to the right of where we just drew the text) and |position| is updated to |
35 // reflect where to draw the next string after the URL. |label| is a dummy | 35 // reflect where to draw the next string after the URL. |label| is a dummy |
(...skipping 30 matching lines...) Expand all Loading... |
66 // A simply utility function that calculates whether a word of width | 66 // A simply utility function that calculates whether a word of width |
67 // |word_width| fits at position |position| within the |bounds| rectangle. If | 67 // |word_width| fits at position |position| within the |bounds| rectangle. If |
68 // not, |position| is updated to wrap to the beginning of the next line. | 68 // not, |position| is updated to wrap to the beginning of the next line. |
69 void WrapIfWordDoesntFit(int word_width, | 69 void WrapIfWordDoesntFit(int word_width, |
70 int font_height, | 70 int font_height, |
71 gfx::Size* position, | 71 gfx::Size* position, |
72 const gfx::Rect& bounds); | 72 const gfx::Rect& bounds); |
73 | 73 |
74 } // namespace view_text_utils | 74 } // namespace view_text_utils |
75 | 75 |
76 #endif // CHROME_BROWSER_VIEWS_VIEW_TEXT_UTILS_H_ | 76 #endif // UI_VIEWS_VIEW_TEXT_UTILS_H_ |
OLD | NEW |