Call _set_FMA3_enable(0); to work around VS 2013 CRT AVX bug.
[chromium-blink-merge.git] / ui / gfx / text_constants.h
blob82f2a3b7061386b425c825480db256fe8c9ca446
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
3 // found in the LICENSE file.
5 #ifndef UI_GFX_TEXT_CONSTANTS_H_
6 #define UI_GFX_TEXT_CONSTANTS_H_
8 namespace gfx {
10 // TODO(msw): Distinguish between logical character stops and glyph stops?
11 // TODO(msw): Merge with base::i18n::BreakIterator::BreakType.
12 enum BreakType {
13 CHARACTER_BREAK = 0, // Stop cursor movement on neighboring characters.
14 WORD_BREAK, // Stop cursor movement on nearest word boundaries.
15 LINE_BREAK, // Stop cursor movement on line ends as shown on screen.
18 // Horizontal text alignment modes.
19 enum HorizontalAlignment {
20 ALIGN_LEFT = 0, // Align the text's left edge with that of its display area.
21 ALIGN_CENTER, // Align the text's center with that of its display area.
22 ALIGN_RIGHT, // Align the text's right edge with that of its display area.
23 ALIGN_TO_HEAD, // Align the text to its first strong character's direction.
26 // The directionality modes used to determine the base text direction.
27 enum DirectionalityMode {
28 DIRECTIONALITY_FROM_TEXT = 0, // Use the first strong character's direction.
29 DIRECTIONALITY_FROM_UI, // Use the UI locale's text reading direction.
30 DIRECTIONALITY_FORCE_LTR, // Use LTR regardless of content or UI locale.
31 DIRECTIONALITY_FORCE_RTL, // Use RTL regardless of content or UI locale.
34 // Text styles and adornments.
35 // TODO(msw): Merge with gfx::Font::FontStyle.
36 enum TextStyle {
37 BOLD = 0,
38 ITALIC,
39 STRIKE,
40 DIAGONAL_STRIKE,
41 UNDERLINE,
42 NUM_TEXT_STYLES,
45 // Elision behaviors of text that exceeds constrained dimensions.
46 enum ElideBehavior {
47 NO_ELIDE = 0, // Do not modify the text, it may overflow its available bounds.
48 TRUNCATE, // Do not elide or fade, just truncate at the end of the string.
49 ELIDE_HEAD, // Add an ellipsis at the start of the string.
50 ELIDE_MIDDLE, // Add an ellipsis in the middle of the string.
51 ELIDE_TAIL, // Add an ellipsis at the end of the string.
52 ELIDE_EMAIL, // Add ellipses to username and domain substrings.
53 FADE_TAIL, // Fade the string's end opposite of its horizontal alignment.
56 } // namespace gfx
58 #endif // UI_GFX_TEXT_CONSTANTS_H_