• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_RENDERER_SPELLCHECKER_SPELLING_ENGINE_H_
6 #define CHROME_RENDERER_SPELLCHECKER_SPELLING_ENGINE_H_
7 
8 #include <string>
9 #include <vector>
10 
11 #include "base/files/file.h"
12 #include "base/strings/string16.h"
13 
14 // Creates the platform's "native" spelling engine.
15 class SpellingEngine* CreateNativeSpellingEngine();
16 
17 // Interface to different spelling engines.
18 class SpellingEngine {
19  public:
~SpellingEngine()20   virtual ~SpellingEngine() {}
21 
22   // Initialize spelling engine with browser-side info. Must be called before
23   // any other functions are called.
24   virtual void Init(base::File bdict_file) = 0;
25   virtual bool InitializeIfNeeded() = 0;
26   virtual bool IsEnabled() = 0;
27   virtual bool CheckSpelling(const base::string16& word_to_check, int tag) = 0;
28   virtual void FillSuggestionList(
29       const base::string16& wrong_word,
30       std::vector<base::string16>* optional_suggestions) = 0;
31 };
32 
33 #endif  // CHROME_RENDERER_SPELLCHECKER_SPELLING_ENGINE_H_
34 
35