4 * Copyright 2002 the LyX Team
5 * Read the file COPYING
13 #include "SpellBase.h"
15 #include <boost/scoped_ptr.hpp>
26 /// i/a spell process-based spellchecker
27 class ISpell : public SpellBase {
29 ISpell(BufferParams const & params, string const & lang);
33 /// return true if the spellchecker instance still exists
36 /// check the given word and return the result
37 virtual enum Result check(WordLangTuple const & word);
39 /// insert the given word into the personal dictionary
40 virtual void insert(WordLangTuple const & word);
42 /// accept the given word temporarily
43 virtual void accept(WordLangTuple const & word);
45 /// return the next near miss after a MISSED result
46 virtual string const nextMiss();
48 /// give an error message on messy exit
49 virtual string const error();
52 /// read some data. Returns true on an error. Sets err_read
53 /// to true if the data was from stderr.
54 bool select(bool & err_read);
56 /// instream to communicate with ispell
58 /// outstream to communicate with ispell
60 /// errstream for ispell
68 /// buffer for reading
74 boost::scoped_ptr<lyx::support::ForkedProcess> child_;
76 // vileness below ... please FIXME