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 CHROME_COMMON_SPELLCHECK_RESULT_H_ 6 #define CHROME_COMMON_SPELLCHECK_RESULT_H_ 7 8 #include "base/strings/string16.h" 9 10 // This class mirrors blink::WebTextCheckingResult which holds a 11 // misspelled range inside the checked text. It also contains a 12 // possible replacement of the misspelling if it is available. 13 struct SpellCheckResult { 14 enum Decoration { 15 // Red underline for misspelled words. 16 SPELLING = 1 << 1, 17 18 // Gray underline for correctly spelled words that are incorrectly used in 19 // their context. 20 GRAMMAR = 1 << 2, 21 22 // No underline for words that spellcheck needs to track. For example, a 23 // word in the custom spellcheck dictionary. 24 INVISIBLE = 1 << 3, 25 }; 26 27 explicit SpellCheckResult( 28 Decoration d = SPELLING, 29 int loc = 0, 30 int len = 0, 31 const base::string16& rep = base::string16(), 32 uint32 h = 0) decorationSpellCheckResult33 : decoration(d), location(loc), length(len), replacement(rep), hash(h) { 34 } 35 36 Decoration decoration; 37 int location; 38 int length; 39 base::string16 replacement; 40 uint32 hash; 41 }; 42 43 #endif // CHROME_COMMON_SPELLCHECK_RESULT_H_ 44