SpellcheckHighlighter

Search for usage in LXR

#include <spellcheckhighlighter.h>

Inheritance diagram for SpellcheckHighlighter:

Properties

bool active
 
bool autoDetectLanguageDisabled
 
bool automatic
 
QString currentLanguage
 
int cursorPosition
 
QQuickTextDocument document
 
QColor misspelledColor
 
int selectionEnd
 
int selectionStart
 
bool spellCheckerFound
 
bool wordIsMisspelled
 
QString wordUnderMouse
 
- Properties inherited from QObject
 objectName
 

Signals

void activeChanged ()
 
void activeChanged (const QString &description)
 
void autoDetectLanguageDisabledChanged ()
 
void automaticChanged ()
 
void changeCursorPosition (int start, int end)
 
void currentLanguageChanged ()
 
void cursorPositionChanged ()
 
void documentChanged ()
 
void misspelledColorChanged ()
 
void selectionEndChanged ()
 
void selectionStartChanged ()
 
void wordIsMisspelledChanged ()
 
void wordUnderMouseChanged ()
 

Public Slots

void setCurrentLanguage (const QString &language)
 
void slotAutoDetection ()
 
void slotRehighlight ()
 

Public Member Functions

 SpellcheckHighlighter (QObject *parent=nullptr)
 
bool active () const
 
Q_INVOKABLE void addWordToDictionary (const QString &word)
 
bool autoDetectLanguageDisabled () const
 
bool automatic () const
 
bool checkerEnabledByDefault () const
 
QString currentLanguage () const
 
int cursorPosition () const
 
Q_INVOKABLE void ignoreWord (const QString &word)
 
Q_INVOKABLE bool isWordMisspelled (const QString &word)
 
QColor misspelledColor () const
 
QQuickTextDocumentquickDocument () const
 
QColor quoteColor () const
 
Q_INVOKABLE void replaceWord (const QString &word)
 
int selectionEnd () const
 
int selectionStart () const
 
void setActive (bool active)
 
void setAutoDetectLanguageDisabled (bool autoDetectDisabled)
 
void setAutomatic (bool automatic)
 
void setCursorPosition (int position)
 
void setDocument (QTextDocument *document)
 
void setMisspelledColor (const QColor &color)
 
void setQuickDocument (QQuickTextDocument *document)
 
void setQuoteColor (const QColor &color)
 
void setSelectionEnd (int position)
 
void setSelectionStart (int position)
 
bool spellCheckerFound () const
 
Q_INVOKABLE QStringList suggestions (int position, int max=5)
 
bool wordIsMisspelled () const
 
QString wordUnderMouse () const
 
- Public Member Functions inherited from QSyntaxHighlighter
 QSyntaxHighlighter (QObject *parent)
 
 QSyntaxHighlighter (QTextDocument *parent)
 
QTextDocumentdocument () const const
 
void rehighlight ()
 
void rehighlightBlock (const QTextBlock &block)
 
void setDocument (QTextDocument *doc)
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
bool blockSignals (bool block)
 
const QObjectListchildren () const const
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectInfo ()
 
void dumpObjectInfo () const const
 
void dumpObjectTree ()
 
void dumpObjectTree () const const
 
QList< QByteArraydynamicPropertyNames () const const
 
virtual bool event (QEvent *e)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
bool inherits (const char *className) const const
 
void installEventFilter (QObject *filterObj)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const const
 
void moveToThread (QThread *targetThread)
 
QString objectName () const const
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
QVariant property (const char *name) const const
 
 Q_CLASSINFO (Name, Value)
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_EMIT Q_EMIT
 
 Q_ENUM (...)
 
 Q_ENUM_NS (...)
 
 Q_ENUMS (...)
 
 Q_FLAG (...)
 
 Q_FLAG_NS (...)
 
 Q_FLAGS (...)
 
 Q_GADGET Q_GADGET
 
 Q_INTERFACES (...)
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_OBJECT Q_OBJECT
 
 Q_PROPERTY (...)
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SLOT Q_SLOT
 
 Q_SLOTS Q_SLOTS
 
qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
qobject_cast (const QObject *object)
 
qobject_cast (QObject *object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
void removeEventFilter (QObject *obj)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const const
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
QThreadthread () const const
 

Protected Member Functions

bool eventFilter (QObject *o, QEvent *e) override
 
void highlightBlock (const QString &text) override
 
bool intraWordEditing () const
 
void setIntraWordEditing (bool editing)
 
virtual void setMisspelled (int start, int count)
 
virtual void unsetMisspelled (int start, int count)
 
- Protected Member Functions inherited from QSyntaxHighlighter
QTextBlock currentBlock () const const
 
int currentBlockState () const const
 
QTextBlockUserDatacurrentBlockUserData () const const
 
QTextCharFormat format (int position) const const
 
int previousBlockState () const const
 
void setCurrentBlockState (int newState)
 
void setCurrentBlockUserData (QTextBlockUserData *data)
 
void setFormat (int start, int count, const QColor &color)
 
void setFormat (int start, int count, const QFont &font)
 
void setFormat (int start, int count, const QTextCharFormat &format)
 
- Protected Member Functions inherited from QObject
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
int receivers (const char *signal) const const
 
QObjectsender () const const
 
int senderSignalIndex () const const
 
virtual void timerEvent (QTimerEvent *event)
 

Additional Inherited Members

- Static Public Member Functions inherited from QObject
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
- Public Attributes inherited from QObject
typedef QObjectList
 

Detailed Description

The Sonnet Highlighter class, used for drawing red lines in text fields when detecting spelling mistakes.

SpellcheckHighlighter is adapted for QML applications. In usual Kirigami/QQC2-desktop-style applications, this can be used directly by adding Kirigami.SpellChecking.enabled: true on a TextArea/TextField.

On other QML applications, you can add the SpellcheckHighlighter as a child of a TextArea/TextField.

TextArea {
id: textArea
Sonnet.SpellcheckHighlighter {
id: spellcheckhighlighter
cursorPosition: textArea.cursorPosition
selectionStart: textArea.selectionStart
selectionEnd: textArea.selectionEnd
misspelledColor: Kirigami.Theme.negativeTextColor
active: true
onChangeCursorPosition: {
textArea.cursorPosition = start;
textArea.moveCursorSelection(end, TextEdit.SelectCharacters);
}
}
}

Additionally SpellcheckHighlighter provides some convenient methods to create a context menu with suggestions.

See also
suggestions
Since
5.88

Definition at line 51 of file spellcheckhighlighter.h.

Property Documentation

◆ active

bool SpellcheckHighlighter::active
readwrite

This property holds whether spell checking is enabled.

If active is true then spell checking is enabled; otherwise it is disabled. Note that you have to disable automatic (de)activation with automatic before you change the state of spell checking if you want to persistently enable/disable spell checking.

See also
automatic
Since
5.88

Definition at line 101 of file spellcheckhighlighter.h.

◆ autoDetectLanguageDisabled

bool SpellcheckHighlighter::autoDetectLanguageDisabled
readwrite

This property holds whether the automatic language detection is disabled overriding the Sonnet global settings.

Since
5.88

Definition at line 111 of file spellcheckhighlighter.h.

◆ automatic

bool SpellcheckHighlighter::automatic
readwrite

This property holds whether spell checking is automatically disabled if there's too many errors.

Since
5.88

Definition at line 106 of file spellcheckhighlighter.h.

◆ currentLanguage

QString SpellcheckHighlighter::currentLanguage
read

This property holds the current language used for spell checking.

Since
5.88

Definition at line 84 of file spellcheckhighlighter.h.

◆ cursorPosition

int SpellcheckHighlighter::cursorPosition
readwrite

This property holds the current cursor position.

Since
5.88

Definition at line 60 of file spellcheckhighlighter.h.

◆ document

QQuickTextDocument SpellcheckHighlighter::document
readwrite

This property holds the underneath document from a QML TextEdit.

Since
5.88

Definition at line 56 of file spellcheckhighlighter.h.

◆ misspelledColor

QColor SpellcheckHighlighter::misspelledColor
readwrite

This property holds the spell color.

By default, it's red.

Since
5.88

Definition at line 80 of file spellcheckhighlighter.h.

◆ selectionEnd

int SpellcheckHighlighter::selectionEnd
readwrite

This property holds the end of the selection.

Since
5.88

Definition at line 68 of file spellcheckhighlighter.h.

◆ selectionStart

int SpellcheckHighlighter::selectionStart
readwrite

This property holds the start of the selection.

Since
5.88

Definition at line 64 of file spellcheckhighlighter.h.

◆ spellCheckerFound

bool SpellcheckHighlighter::spellCheckerFound
read

This property holds whether a spell checking backend with support for the currentLanguage was found.

Since
5.88

Definition at line 89 of file spellcheckhighlighter.h.

◆ wordIsMisspelled

bool SpellcheckHighlighter::wordIsMisspelled
read

This property holds whether the current word under the mouse is misspelled.

Since
5.88

Definition at line 72 of file spellcheckhighlighter.h.

◆ wordUnderMouse

QString SpellcheckHighlighter::wordUnderMouse
read

This property holds the current word under the mouse.

Since
5.88

Definition at line 76 of file spellcheckhighlighter.h.

Member Function Documentation

◆ activeChanged

void SpellcheckHighlighter::activeChanged ( const QString description)
signal

Emitted when as-you-type spell checking is enabled or disabled.

Parameters
descriptionis a i18n description of the new state, with an optional reason
Since
5.88

◆ addWordToDictionary()

void SpellcheckHighlighter::addWordToDictionary ( const QString word)

Adds the given word permanently to the dictionary.

It will never be marked as misspelled again, even after restarting the application.

Parameters
wordthe word which will be added to the dictionary
Since
5.88

Definition at line 471 of file spellcheckhighlighter.cpp.

◆ checkerEnabledByDefault()

bool SpellcheckHighlighter::checkerEnabledByDefault ( ) const

Return true if checker is enabled by default.

Since
5.88

◆ ignoreWord()

void SpellcheckHighlighter::ignoreWord ( const QString word)

Ignores the given word.

This word will not be marked misspelled for this session. It will again be marked as misspelled when creating new highlighters.

Parameters
wordthe word which will be ignored
Since
5.88

Definition at line 477 of file spellcheckhighlighter.cpp.

◆ isWordMisspelled()

bool SpellcheckHighlighter::isWordMisspelled ( const QString word)

Checks if a given word is marked as misspelled by the highlighter.

Parameters
wordthe word to be checked
Returns
true if the given word is misspelled.
Since
5.88

Definition at line 610 of file spellcheckhighlighter.cpp.

◆ replaceWord()

void SpellcheckHighlighter::replaceWord ( const QString word)

Replace word at the current cursor position.

Since
5.88

Definition at line 483 of file spellcheckhighlighter.cpp.

◆ setCurrentLanguage

void SpellcheckHighlighter::setCurrentLanguage ( const QString language)
slot

Set language to use for spell checking.

Parameters
languagethe language code for the new language to use.
Since
5.88

Definition at line 444 of file spellcheckhighlighter.cpp.

◆ setDocument()

void SpellcheckHighlighter::setDocument ( QTextDocument document)

Set a new QTextDocument for this highlighter to operate on.

Parameters
documentthe new document to operate on.
Since
5.88

Definition at line 509 of file spellcheckhighlighter.cpp.

◆ slotAutoDetection

void SpellcheckHighlighter::slotAutoDetection ( )
slot

Run auto detection, disabling spell checking if too many errors are found.

Since
5.88

Definition at line 215 of file spellcheckhighlighter.cpp.

◆ slotRehighlight

void SpellcheckHighlighter::slotRehighlight ( )
slot

Force a new highlighting.

Since
5.88

Definition at line 159 of file spellcheckhighlighter.cpp.

◆ suggestions()

QStringList SpellcheckHighlighter::suggestions ( int  position,
int  max = 5 
)

Returns a list of suggested replacements for the given misspelled word.

If the word is not misspelled, the list will be empty.

Parameters
wordthe misspelled word
maxat most this many suggestions will be returned. If this is -1, as many suggestions as the spell backend supports will be returned.
Returns
a list of suggested replacements for the word
Since
5.88

Definition at line 369 of file spellcheckhighlighter.cpp.


The documentation for this class was generated from the following files:
Q_SCRIPTABLE Q_NOREPLY void start()
int selectionStart
This property holds the start of the selection.
bool active
This property holds whether spell checking is enabled.
int cursorPosition
This property holds the current cursor position.
int selectionEnd
This property holds the end of the selection.
QColor misspelledColor
This property holds the spell color.
QQuickTextDocument document
This property holds the underneath document from a QML TextEdit.
QTextDocument * textDocument() const const
The sonnet namespace.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Thu Dec 7 2023 04:06:36 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.