mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-28 12:26:59 +00:00
42015a8ebd
- LFUN_INSET_APPLY handling goes to GuiView. - Dialog needs a GuiView instead of a LyXView. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21734 a592a061-630c-0410-9148-cb99ea01b6c8
116 lines
2.4 KiB
C++
116 lines
2.4 KiB
C++
// -*- C++ -*-
|
|
/**
|
|
* \file GuiSpellchecker.h
|
|
* This file is part of LyX, the document processor.
|
|
* Licence details can be found in the file COPYING.
|
|
*
|
|
* \author John Levon
|
|
* \author Kalle Dalheimer
|
|
* \author Edwin Leuven
|
|
*
|
|
* Full author contact details are available in file CREDITS.
|
|
*/
|
|
|
|
#ifndef GUISPELLCHECKER_H
|
|
#define GUISPELLCHECKER_H
|
|
|
|
#include "GuiDialog.h"
|
|
#include "ui_SpellcheckerUi.h"
|
|
#include "Dialog.h"
|
|
#include "WordLangTuple.h"
|
|
|
|
class QListWidgetItem;
|
|
|
|
namespace lyx {
|
|
|
|
class SpellBase;
|
|
|
|
namespace frontend {
|
|
|
|
class GuiSpellchecker : public GuiDialog, public Ui::SpellcheckerUi
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
GuiSpellchecker(GuiView & lv);
|
|
~GuiSpellchecker();
|
|
|
|
public Q_SLOTS:
|
|
void suggestionChanged(QListWidgetItem *);
|
|
|
|
private Q_SLOTS:
|
|
void accept();
|
|
void add();
|
|
void ignore();
|
|
void replace();
|
|
void replaceChanged(const QString &);
|
|
void reject();
|
|
|
|
private:
|
|
///
|
|
void closeEvent(QCloseEvent * e);
|
|
/// update from controller
|
|
void partialUpdate(int id);
|
|
///
|
|
void updateContents();
|
|
|
|
///
|
|
enum State {
|
|
SPELL_PROGRESSED, //< update progress bar
|
|
SPELL_FOUND_WORD //< found a bad word
|
|
};
|
|
|
|
///
|
|
bool initialiseParams(std::string const & data);
|
|
///
|
|
void clearParams();
|
|
/// Not needed here
|
|
void dispatchParams() {}
|
|
///
|
|
bool isBufferDependent() const { return true; }
|
|
///
|
|
bool exitEarly() const { return exitEarly_; }
|
|
|
|
/// replace word with replacement
|
|
void replace(docstring const &);
|
|
|
|
/// replace all occurances of word
|
|
void replaceAll(docstring const &);
|
|
/// insert word in personal dictionary
|
|
void insert();
|
|
/// ignore all occurances of word
|
|
void ignoreAll();
|
|
/// check text until next misspelled/unknown word
|
|
/// returns true when finished
|
|
void check();
|
|
/// get suggestion
|
|
docstring getSuggestion() const;
|
|
/// get word
|
|
docstring getWord() const;
|
|
/// returns progress value
|
|
int getProgress() const { return oldval_; }
|
|
/// returns word count
|
|
int getCount() const { return count_; }
|
|
/// give error message is spellchecker dies
|
|
bool checkAlive();
|
|
/// show count of checked words at normal exit
|
|
void showSummary();
|
|
|
|
/// set to true when spellchecking is finished
|
|
bool exitEarly_;
|
|
/// current word being checked and lang code
|
|
WordLangTuple word_;
|
|
/// values for progress
|
|
int oldval_;
|
|
int newvalue_;
|
|
/// word count
|
|
int count_;
|
|
/// The actual spellchecker object
|
|
SpellBase * speller_;
|
|
};
|
|
|
|
} // namespace frontend
|
|
} // namespace lyx
|
|
|
|
#endif // GUISPELLCHECKER_H
|