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. 4 5 #ifndef UI_GFX_TEXT_CONSTANTS_H_ 6 #define UI_GFX_TEXT_CONSTANTS_H_ 7 8 namespace gfx { 9 10 // TODO(msw): Distinguish between logical character stops and glyph stops? 11 // TODO(msw): Merge with base::i18n::BreakIterator::BreakType. 12 enum BreakType { 13 // Stop cursor movement on neighboring characters. 14 CHARACTER_BREAK = 0, 15 // Stop cursor movement on nearest word boundaries. 16 WORD_BREAK, 17 // Stop cursor movement on line ends as shown on screen. 18 LINE_BREAK, 19 }; 20 21 // Horizontal text alignment modes. 22 enum HorizontalAlignment { 23 // Align the text's left edge with that of its display area. 24 ALIGN_LEFT = 0, 25 // Align the text's center with that of its display area. 26 ALIGN_CENTER, 27 // Align the text's right edge with that of its display area. 28 ALIGN_RIGHT, 29 }; 30 31 // Vertical text alignment modes. 32 enum VerticalAlignment { 33 // Align the text's top edge with that of its display area. 34 ALIGN_TOP = 0, 35 // Align the text's center with that of its display area. 36 ALIGN_VCENTER, 37 // Align the text's bottom edge with that of its display area. 38 ALIGN_BOTTOM, 39 }; 40 41 // The directionality modes used to determine the base text direction. 42 enum DirectionalityMode { 43 // Use the first strong character's direction. 44 DIRECTIONALITY_FROM_TEXT = 0, 45 // Use the UI locale's text reading direction. 46 DIRECTIONALITY_FROM_UI, 47 // Use LTR regardless of content or UI locale. 48 DIRECTIONALITY_FORCE_LTR, 49 // Use RTL regardless of content or UI locale. 50 DIRECTIONALITY_FORCE_RTL, 51 }; 52 53 // Text styles and adornments. 54 // TODO(msw): Merge with gfx::Font::FontStyle. 55 enum TextStyle { 56 BOLD = 0, 57 ITALIC, 58 STRIKE, 59 DIAGONAL_STRIKE, 60 UNDERLINE, 61 NUM_TEXT_STYLES, 62 }; 63 64 } // namespace gfx 65 66 #endif // UI_GFX_TEXT_CONSTANTS_H_ 67