From e315ff15daf26cbc70b6f2da50e6ca18081fc7c4 Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Wed, 19 Sep 2012 23:22:13 +0200 Subject: Integrated spell checking for rekonq2 (lindsay's work imported) - inline spell highlighter. This requires WebKit 2.3 to work. - Addition of a suggested replacement word list to the context menu, for the word right clicked on - A standard modeless spell check dialog that works on the current editable text (or selection). Heavily cribbed from Dawit's work on kdewebkitpart. oops... also a codingstyle script round here... :) --- src/kspellplugin.h | 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 src/kspellplugin.h (limited to 'src/kspellplugin.h') diff --git a/src/kspellplugin.h b/src/kspellplugin.h new file mode 100644 index 00000000..faa83106 --- /dev/null +++ b/src/kspellplugin.h @@ -0,0 +1,76 @@ +/* ============================================================ +* +* This file is a part of the rekonq project +* +* Copyright (C) 2012 by Lindsay Mathieson +* +* +* This program is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License as +* published by the Free Software Foundation; either version 2 of +* the License or (at your option) version 3 or any later version +* accepted by the membership of KDE e.V. (or its successor approved +* by the membership of KDE e.V.), which shall act as a proxy +* defined in Section 14 of version 3 of the license. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program. If not, see . +* +* ============================================================ */ + + +#ifndef TESTQWEBSPELLCHECKER_H +#define TESTQWEBSPELLCHECKER_H + + +#include +#include +#include +#include "qwebkitplatformplugin.h" + + + + +class KWebSpellChecker : public QWebSpellChecker +{ + Q_OBJECT +public: + Sonnet::Speller *m_speller; + + KWebSpellChecker(); + ~KWebSpellChecker(); + + virtual bool isContinousSpellCheckingEnabled() const; + virtual void toggleContinousSpellChecking(); + virtual void learnWord(const QString& word); + virtual void ignoreWordInSpellDocument(const QString& word); + virtual void checkSpellingOfString(const QString& word, int* misspellingLocation, int* misspellingLength); + virtual QString autoCorrectSuggestionForMisspelledWord(const QString& word); + virtual void guessesForWord(const QString& word, const QString& context, QStringList& guesses); + + virtual bool isGrammarCheckingEnabled(); + virtual void toggleGrammarChecking(); + virtual void checkGrammarOfString(const QString&, QList&, int* badGrammarLocation, int* badGrammarLength); +}; + + +class KWebKitPlatformPlugin : public QObject, public QWebKitPlatformPlugin +{ + Q_OBJECT + Q_INTERFACES(QWebKitPlatformPlugin) + +public: + KWebKitPlatformPlugin(); + ~KWebKitPlatformPlugin(); + + virtual bool supportsExtension(Extension) const; + virtual QObject* createExtension(Extension) const; + +}; + +#endif \ No newline at end of file -- cgit v1.2.1