//
//     Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
//     may also apply


//                 Generated by preSip
//            module kspell  version KDE 3.5.3


// This software 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) any later version.
//
// This software 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 library; see the file COPYING.
// If not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.


%If ( KDE_3_2_0 -  )

class KSyntaxHighlighter : QSyntaxHighlighter
{
%TypeHeaderCode
#include <ksyntaxhighlighter.h>
%End


public:

    enum SyntaxMode
    {
        PlainTextMode, 
        RichTextMode
    };

                         KSyntaxHighlighter (QTextEdit*, bool = 0, const QColor& = Qt ::black , const QColor& = QColor (0x00 ,0x80 ,0x00 ), const QColor& = QColor (0x00 ,0x80 ,0x00 ), const QColor& = QColor (0x00 ,0x80 ,0x00 ), KSyntaxHighlighter::SyntaxMode = PlainTextMode );
    int                  highlightParagraph (const QString&, int);

};  // class KSyntaxHighlighter

%End


%If ( KDE_3_2_0 -  )

class KSpellingHighlighter : KSyntaxHighlighter
{
%TypeHeaderCode
#include <ksyntaxhighlighter.h>
%End


public:
                         KSpellingHighlighter (QTextEdit*, const QColor& = Qt ::red , bool = 0, const QColor& = Qt ::black , const QColor& = QColor (0x00 ,0x80 ,0x00 ), const QColor& = QColor (0x00 ,0x80 ,0x00 ), const QColor& = QColor (0x00 ,0x80 ,0x00 ));
    virtual int          highlightParagraph (const QString&, int);
    virtual bool         isMisspelled (const QString&)  = 0;
    bool                 intraWordEditing () const;
    void                 setIntraWordEditing (bool);
    static QStringList   personalWords ();

};  // class KSpellingHighlighter

%End


%If ( KDE_3_2_0 -  )

class KDictSpellingHighlighter : QObject, KSpellingHighlighter
{
%TypeHeaderCode
#include <ksyntaxhighlighter.h>
%End


public:
                         KDictSpellingHighlighter (QTextEdit*, bool = 1, bool = 1, const QColor& = Qt ::red , bool = 0, const QColor& = Qt ::black , const QColor& = QColor (0x00 ,0x80 ,0x00 ), const QColor& = QColor (0x00 ,0x70 ,0x00 ), const QColor& = QColor (0x00 ,0x60 ,0x00 ), KSpellConfig* = 0);
    virtual bool         isMisspelled (const QString&);
    static void          dictionaryChanged ();
    void                 restartBackgroundSpellCheck ();
    void                 setActive (bool);
    bool                 isActive () const;
    void                 setAutomatic (bool);
    bool                 automatic () const;

signals:
    void                 activeChanged (const QString&);
    void                 newSuggestions (const QString&, const QStringList&, uint);

protected:
    QString              spellKey ();
    bool                 eventFilter (QObject*, QEvent*);

protected slots:
    void                 slotMisspelling (const QString&, const QStringList&, uint);
    void                 slotCorrected (const QString&, const QString&, uint);
    void                 slotRehighlight ();
    void                 slotDictionaryChanged ();
    void                 slotSpellReady (KSpell*);
    void                 slotAutoDetection ();
    void                 slotLocalSpellConfigChanged ();
    void                 slotKSpellNotResponding ();

};  // class KDictSpellingHighlighter

%End

