/*
 * Module code.
 *
 * Generated by SIP 4.8.2 on Sun Oct 11 20:19:25 2009
 *
 * 
 *  This file is part of PyKDE4.
 * 
 *  PyKDE4 is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU Lesser General Public License as
 *  published by the Free Software Foundation; either version 2.1 of
 *  the License, or (at your option) any later version.
 * 
 *  PyKDE4 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 <http:www.gnu.org/licenses/>.
 * 
 */

#include "sipAPIktexteditor.h"

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/variableinterface.sip"
#include <ktexteditor/variableinterface.h>
#line 29 "sipktexteditorpart1.cpp"

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/document.sip"
#include <ktexteditor/document.h>

#include <ktexteditor/modificationinterface.h>
#include <ktexteditor/markinterface.h>
#include <ktexteditor/searchinterface.h>
#include <ktexteditor/sessionconfiginterface.h>
#include <ktexteditor/smartinterface.h>
#include <ktexteditor/templateinterface.h>
#include <ktexteditor/variableinterface.h>
#line 41 "sipktexteditorpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qstring.sip"
#include <qstring.h>
#line 44 "sipktexteditorpart1.cpp"


class sipKTextEditor_VariableInterface : public KTextEditor::VariableInterface
{
public:
    sipKTextEditor_VariableInterface();
    virtual ~sipKTextEditor_VariableInterface();

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    QString variable(const QString&) const;
    void variableChanged(KTextEditor::Document *,const QString&,const QString&);

public:
    sipSimpleWrapper *sipPySelf;

private:
    sipKTextEditor_VariableInterface(const sipKTextEditor_VariableInterface &);
    sipKTextEditor_VariableInterface &operator = (const sipKTextEditor_VariableInterface &);

    char sipPyMethods[2];
};

sipKTextEditor_VariableInterface::sipKTextEditor_VariableInterface(): KTextEditor::VariableInterface(), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipKTextEditor_VariableInterface::~sipKTextEditor_VariableInterface()
{
    sipCommonDtor(sipPySelf);
}

QString sipKTextEditor_VariableInterface::variable(const QString& a0) const
{
    typedef QString (*sipVH_QtCore_0)(sip_gilstate_t,PyObject *,const QString&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[0]),sipPySelf,sipName_VariableInterface,sipName_variable);

    if (!meth)
        return QString();

    return ((sipVH_QtCore_0)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[0]))(sipGILState,meth,a0);
}

void sipKTextEditor_VariableInterface::variableChanged(KTextEditor::Document *a0,const QString& a1,const QString& a2)
{
    extern void sipVH_ktexteditor_11(sip_gilstate_t,PyObject *,KTextEditor::Document *,const QString&,const QString&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[1],sipPySelf,sipName_VariableInterface,sipName_variableChanged);

    if (!meth)
        return;

    sipVH_ktexteditor_11(sipGILState,meth,a0,a1,a2);
}


extern "C" {static PyObject *meth_KTextEditor_VariableInterface_variable(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_VariableInterface_variable(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const QString * a0;
        int a0State = 0;
        KTextEditor::VariableInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ1",&sipSelf,sipType_KTextEditor_VariableInterface,&sipCpp,sipType_QString,&a0,&a0State))
        {
            QString *sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_VariableInterface, sipName_variable);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QString(sipCpp->variable(*a0));
            Py_END_ALLOW_THREADS

            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);

            return sipConvertFromNewType(sipRes,sipType_QString,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_VariableInterface,sipName_variable);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_VariableInterface_variableChanged(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_VariableInterface_variableChanged(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::Document * a0;
        const QString * a1;
        int a1State = 0;
        const QString * a2;
        int a2State = 0;
        KTextEditor::VariableInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8J1J1",&sipSelf,sipType_KTextEditor_VariableInterface,&sipCpp,sipType_KTextEditor_Document,&a0,sipType_QString,&a1,&a1State,sipType_QString,&a2,&a2State))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_VariableInterface, sipName_variableChanged);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->variableChanged(a0,*a1,*a2);
            Py_END_ALLOW_THREADS

            sipReleaseType(const_cast<QString *>(a1),sipType_QString,a1State);
            sipReleaseType(const_cast<QString *>(a2),sipType_QString,a2State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_VariableInterface,sipName_variableChanged);

    return NULL;
}


/* Cast a pointer to a type somewhere in its superclass hierarchy. */
extern "C" {static void *cast_KTextEditor_VariableInterface(void *, const sipTypeDef *);}
static void *cast_KTextEditor_VariableInterface(void *ptr,const sipTypeDef *targetType)
{
    if (targetType == sipType_KTextEditor_VariableInterface)
        return ptr;

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_KTextEditor_VariableInterface(void *, int);}
static void release_KTextEditor_VariableInterface(void *sipCppV,int state)
{
    Py_BEGIN_ALLOW_THREADS

    if (state & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipKTextEditor_VariableInterface *>(sipCppV);
    else
        delete reinterpret_cast<KTextEditor::VariableInterface *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_KTextEditor_VariableInterface(sipSimpleWrapper *);}
static void dealloc_KTextEditor_VariableInterface(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerived(sipSelf))
        reinterpret_cast<sipKTextEditor_VariableInterface *>(sipSelf->u.cppPtr)->sipPySelf = NULL;

    if (sipIsPyOwned(sipSelf))
    {
        release_KTextEditor_VariableInterface(sipSelf->u.cppPtr,sipSelf->flags);
    }
}


extern "C" {static void *init_KTextEditor_VariableInterface(sipSimpleWrapper *, PyObject *, PyObject **, int *);}
static void *init_KTextEditor_VariableInterface(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject **, int *sipArgsParsed)
{
    sipKTextEditor_VariableInterface *sipCpp = 0;

    if (!sipCpp)
    {
        if (sipParseArgs(sipArgsParsed,sipArgs,""))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipKTextEditor_VariableInterface();
            Py_END_ALLOW_THREADS
        }
    }

    if (sipCpp)
        sipCpp->sipPySelf = sipSelf;

    return sipCpp;
}


static PyMethodDef methods_KTextEditor_VariableInterface[] = {
    {SIP_MLNAME_CAST(sipName_variable), meth_KTextEditor_VariableInterface_variable, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_variableChanged), meth_KTextEditor_VariableInterface_variableChanged, METH_VARARGS, NULL}
};


pyqt4ClassTypeDef pyqt4Type_ktexteditor_KTextEditor_VariableInterface = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_ABSTRACT|SIP_TYPE_CLASS,
        sipNameNr_KTextEditor__VariableInterface,
        {0}
    },
    sipNameNr_VariableInterface,
    sipNameNr_PyQt4_QtCore_pyqtWrapperType,
    -1,
    {1, 255, 0},
    0,
    0,
    2, methods_KTextEditor_VariableInterface,
    0, 0,
    0, 0,
    init_KTextEditor_VariableInterface,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_KTextEditor_VariableInterface,
    release_KTextEditor_VariableInterface,
    cast_KTextEditor_VariableInterface,
    0,
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    0,
    0
},
    0,
    0,
    0,
    0
};

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/texthintinterface.sip"
#include <ktexteditor/texthintinterface.h>
#line 305 "sipktexteditorpart1.cpp"

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/cursor.sip"
#include <ktexteditor/cursor.h>
#line 309 "sipktexteditorpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qstring.sip"
#include <qstring.h>
#line 312 "sipktexteditorpart1.cpp"


class sipKTextEditor_TextHintInterface : public KTextEditor::TextHintInterface
{
public:
    sipKTextEditor_TextHintInterface();
    virtual ~sipKTextEditor_TextHintInterface();

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    void enableTextHints(int);
    void disableTextHints();
    void needTextHint(const KTextEditor::Cursor&,QString&);

public:
    sipSimpleWrapper *sipPySelf;

private:
    sipKTextEditor_TextHintInterface(const sipKTextEditor_TextHintInterface &);
    sipKTextEditor_TextHintInterface &operator = (const sipKTextEditor_TextHintInterface &);

    char sipPyMethods[3];
};

sipKTextEditor_TextHintInterface::sipKTextEditor_TextHintInterface(): KTextEditor::TextHintInterface(), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipKTextEditor_TextHintInterface::~sipKTextEditor_TextHintInterface()
{
    sipCommonDtor(sipPySelf);
}

void sipKTextEditor_TextHintInterface::enableTextHints(int a0)
{
    typedef void (*sipVH_QtNetwork_1)(sip_gilstate_t,PyObject *,int);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[0],sipPySelf,sipName_TextHintInterface,sipName_enableTextHints);

    if (!meth)
        return;

    ((sipVH_QtNetwork_1)(sipModuleAPI_ktexteditor_QtNetwork->em_virthandlers[1]))(sipGILState,meth,a0);
}

void sipKTextEditor_TextHintInterface::disableTextHints()
{
    typedef void (*sipVH_QtCore_5)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[1],sipPySelf,sipName_TextHintInterface,sipName_disableTextHints);

    if (!meth)
        return;

    ((sipVH_QtCore_5)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[5]))(sipGILState,meth);
}

void sipKTextEditor_TextHintInterface::needTextHint(const KTextEditor::Cursor& a0,QString& a1)
{
    extern void sipVH_ktexteditor_12(sip_gilstate_t,PyObject *,const KTextEditor::Cursor&,QString&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[2],sipPySelf,sipName_TextHintInterface,sipName_needTextHint);

    if (!meth)
        return;

    sipVH_ktexteditor_12(sipGILState,meth,a0,a1);
}


extern "C" {static PyObject *meth_KTextEditor_TextHintInterface_enableTextHints(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_TextHintInterface_enableTextHints(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        int a0;
        KTextEditor::TextHintInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"Bi",&sipSelf,sipType_KTextEditor_TextHintInterface,&sipCpp,&a0))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_TextHintInterface, sipName_enableTextHints);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->enableTextHints(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_TextHintInterface,sipName_enableTextHints);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_TextHintInterface_disableTextHints(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_TextHintInterface_disableTextHints(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::TextHintInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_TextHintInterface,&sipCpp))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_TextHintInterface, sipName_disableTextHints);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->disableTextHints();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_TextHintInterface,sipName_disableTextHints);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_TextHintInterface_needTextHint(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_TextHintInterface_needTextHint(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const KTextEditor::Cursor * a0;
        QString * a1;
        int a1State = 0;
        KTextEditor::TextHintInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9J1",&sipSelf,sipType_KTextEditor_TextHintInterface,&sipCpp,sipType_KTextEditor_Cursor,&a0,sipType_QString,&a1,&a1State))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_TextHintInterface, sipName_needTextHint);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->needTextHint(*a0,*a1);
            Py_END_ALLOW_THREADS

            sipReleaseType(a1,sipType_QString,a1State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_TextHintInterface,sipName_needTextHint);

    return NULL;
}


/* Cast a pointer to a type somewhere in its superclass hierarchy. */
extern "C" {static void *cast_KTextEditor_TextHintInterface(void *, const sipTypeDef *);}
static void *cast_KTextEditor_TextHintInterface(void *ptr,const sipTypeDef *targetType)
{
    if (targetType == sipType_KTextEditor_TextHintInterface)
        return ptr;

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_KTextEditor_TextHintInterface(void *, int);}
static void release_KTextEditor_TextHintInterface(void *sipCppV,int state)
{
    Py_BEGIN_ALLOW_THREADS

    if (state & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipKTextEditor_TextHintInterface *>(sipCppV);
    else
        delete reinterpret_cast<KTextEditor::TextHintInterface *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_KTextEditor_TextHintInterface(sipSimpleWrapper *);}
static void dealloc_KTextEditor_TextHintInterface(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerived(sipSelf))
        reinterpret_cast<sipKTextEditor_TextHintInterface *>(sipSelf->u.cppPtr)->sipPySelf = NULL;

    if (sipIsPyOwned(sipSelf))
    {
        release_KTextEditor_TextHintInterface(sipSelf->u.cppPtr,sipSelf->flags);
    }
}


extern "C" {static void *init_KTextEditor_TextHintInterface(sipSimpleWrapper *, PyObject *, PyObject **, int *);}
static void *init_KTextEditor_TextHintInterface(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject **, int *sipArgsParsed)
{
    sipKTextEditor_TextHintInterface *sipCpp = 0;

    if (!sipCpp)
    {
        if (sipParseArgs(sipArgsParsed,sipArgs,""))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipKTextEditor_TextHintInterface();
            Py_END_ALLOW_THREADS
        }
    }

    if (sipCpp)
        sipCpp->sipPySelf = sipSelf;

    return sipCpp;
}


static PyMethodDef methods_KTextEditor_TextHintInterface[] = {
    {SIP_MLNAME_CAST(sipName_disableTextHints), meth_KTextEditor_TextHintInterface_disableTextHints, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_enableTextHints), meth_KTextEditor_TextHintInterface_enableTextHints, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_needTextHint), meth_KTextEditor_TextHintInterface_needTextHint, METH_VARARGS, NULL}
};


pyqt4ClassTypeDef pyqt4Type_ktexteditor_KTextEditor_TextHintInterface = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_ABSTRACT|SIP_TYPE_CLASS,
        sipNameNr_KTextEditor__TextHintInterface,
        {0}
    },
    sipNameNr_TextHintInterface,
    sipNameNr_PyQt4_QtCore_pyqtWrapperType,
    -1,
    {1, 255, 0},
    0,
    0,
    3, methods_KTextEditor_TextHintInterface,
    0, 0,
    0, 0,
    init_KTextEditor_TextHintInterface,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_KTextEditor_TextHintInterface,
    release_KTextEditor_TextHintInterface,
    cast_KTextEditor_TextHintInterface,
    0,
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    0,
    0
},
    0,
    0,
    0,
    0
};

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/templateinterface.sip"
#include <ktexteditor/templateinterface.h>
#line 616 "sipktexteditorpart1.cpp"

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/cursor.sip"
#include <ktexteditor/cursor.h>
#line 620 "sipktexteditorpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qstring.sip"
#include <qstring.h>
#line 623 "sipktexteditorpart1.cpp"
#line 137 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/kdecore/kservicetype.sip"
#include <qmap.h>
#line 43 "/usr/local/share/py-sip/QtCore/qmap.sip"
#include <qmap.h>
#line 43 "/usr/local/share/py-sip/QtCore/qmap.sip"
#include <qmap.h>
#line 630 "sipktexteditorpart1.cpp"
#line 49 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/kdecore/ktimezone.sip"
#include <ktimezone.h>
#line 633 "sipktexteditorpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qvariant.sip"
#include <qvariant.h>
#line 636 "sipktexteditorpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtGui/qwidget.sip"
#include <qwidget.h>
#line 639 "sipktexteditorpart1.cpp"


class sipKTextEditor_TemplateInterface : public KTextEditor::TemplateInterface
{
public:
    sipKTextEditor_TemplateInterface();
    virtual ~sipKTextEditor_TemplateInterface();

    /*
     * There is a public method for every protected method visible from
     * this class.
     */
    bool sipProtect_insertTemplateTextImplementation(const KTextEditor::Cursor&,const QString&,const QMap<QString,QString>&);

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    bool insertTemplateTextImplementation(const KTextEditor::Cursor&,const QString&,const QMap<QString,QString>&);

public:
    sipSimpleWrapper *sipPySelf;

private:
    sipKTextEditor_TemplateInterface(const sipKTextEditor_TemplateInterface &);
    sipKTextEditor_TemplateInterface &operator = (const sipKTextEditor_TemplateInterface &);

    char sipPyMethods[1];
};

sipKTextEditor_TemplateInterface::sipKTextEditor_TemplateInterface(): KTextEditor::TemplateInterface(), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipKTextEditor_TemplateInterface::~sipKTextEditor_TemplateInterface()
{
    sipCommonDtor(sipPySelf);
}

bool sipKTextEditor_TemplateInterface::insertTemplateTextImplementation(const KTextEditor::Cursor& a0,const QString& a1,const QMap<QString,QString>& a2)
{
    extern bool sipVH_ktexteditor_13(sip_gilstate_t,PyObject *,const KTextEditor::Cursor&,const QString&,const QMap<QString,QString>&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[0],sipPySelf,sipName_TemplateInterface,sipName_insertTemplateTextImplementation);

    if (!meth)
        return 0;

    return sipVH_ktexteditor_13(sipGILState,meth,a0,a1,a2);
}

bool sipKTextEditor_TemplateInterface::sipProtect_insertTemplateTextImplementation(const KTextEditor::Cursor& a0,const QString& a1,const QMap<QString,QString>& a2)
{
    return insertTemplateTextImplementation(a0,a1,a2);
}


extern "C" {static PyObject *meth_KTextEditor_TemplateInterface_expandMacros(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_TemplateInterface_expandMacros(PyObject *,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        QMap<QString,QString> * a0;
        int a0State = 0;
        QWidget * a1;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"J1J8",sipType_QMap_0200QString_0200QString,&a0,&a0State,sipType_QWidget,&a1))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = KTextEditor::TemplateInterface::expandMacros(*a0,a1);
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_QMap_0200QString_0200QString,a0State);

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_TemplateInterface,sipName_expandMacros);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_TemplateInterface_insertTemplateText(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_TemplateInterface_insertTemplateText(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const KTextEditor::Cursor * a0;
        const QString * a1;
        int a1State = 0;
        const QMap<QString,QString> * a2;
        int a2State = 0;
        KTextEditor::TemplateInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9J1J1",&sipSelf,sipType_KTextEditor_TemplateInterface,&sipCpp,sipType_KTextEditor_Cursor,&a0,sipType_QString,&a1,&a1State,sipType_QMap_0200QString_0200QString,&a2,&a2State))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->insertTemplateText(*a0,*a1,*a2);
            Py_END_ALLOW_THREADS

            sipReleaseType(const_cast<QString *>(a1),sipType_QString,a1State);
            sipReleaseType(const_cast<QMap<QString,QString> *>(a2),sipType_QMap_0200QString_0200QString,a2State);

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_TemplateInterface,sipName_insertTemplateText);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_TemplateInterface_insertTemplateTextImplementation(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_TemplateInterface_insertTemplateTextImplementation(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const KTextEditor::Cursor * a0;
        const QString * a1;
        int a1State = 0;
        const QMap<QString,QString> * a2;
        int a2State = 0;
        sipKTextEditor_TemplateInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ9J1J1",&sipSelf,sipType_KTextEditor_TemplateInterface,&sipCpp,sipType_KTextEditor_Cursor,&a0,sipType_QString,&a1,&a1State,sipType_QMap_0200QString_0200QString,&a2,&a2State))
        {
            bool sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_TemplateInterface, sipName_insertTemplateTextImplementation);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->sipProtect_insertTemplateTextImplementation(*a0,*a1,*a2);
            Py_END_ALLOW_THREADS

            sipReleaseType(const_cast<QString *>(a1),sipType_QString,a1State);
            sipReleaseType(const_cast<QMap<QString,QString> *>(a2),sipType_QMap_0200QString_0200QString,a2State);

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_TemplateInterface,sipName_insertTemplateTextImplementation);

    return NULL;
}


/* Cast a pointer to a type somewhere in its superclass hierarchy. */
extern "C" {static void *cast_KTextEditor_TemplateInterface(void *, const sipTypeDef *);}
static void *cast_KTextEditor_TemplateInterface(void *ptr,const sipTypeDef *targetType)
{
    if (targetType == sipType_KTextEditor_TemplateInterface)
        return ptr;

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_KTextEditor_TemplateInterface(void *, int);}
static void release_KTextEditor_TemplateInterface(void *sipCppV,int state)
{
    Py_BEGIN_ALLOW_THREADS

    if (state & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipKTextEditor_TemplateInterface *>(sipCppV);
    else
        delete reinterpret_cast<KTextEditor::TemplateInterface *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_KTextEditor_TemplateInterface(sipSimpleWrapper *);}
static void dealloc_KTextEditor_TemplateInterface(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerived(sipSelf))
        reinterpret_cast<sipKTextEditor_TemplateInterface *>(sipSelf->u.cppPtr)->sipPySelf = NULL;

    if (sipIsPyOwned(sipSelf))
    {
        release_KTextEditor_TemplateInterface(sipSelf->u.cppPtr,sipSelf->flags);
    }
}


extern "C" {static void *init_KTextEditor_TemplateInterface(sipSimpleWrapper *, PyObject *, PyObject **, int *);}
static void *init_KTextEditor_TemplateInterface(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject **, int *sipArgsParsed)
{
    sipKTextEditor_TemplateInterface *sipCpp = 0;

    if (!sipCpp)
    {
        if (sipParseArgs(sipArgsParsed,sipArgs,""))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipKTextEditor_TemplateInterface();
            Py_END_ALLOW_THREADS
        }
    }

    if (sipCpp)
        sipCpp->sipPySelf = sipSelf;

    return sipCpp;
}


static PyMethodDef methods_KTextEditor_TemplateInterface[] = {
    {SIP_MLNAME_CAST(sipName_expandMacros), meth_KTextEditor_TemplateInterface_expandMacros, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_insertTemplateText), meth_KTextEditor_TemplateInterface_insertTemplateText, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_insertTemplateTextImplementation), meth_KTextEditor_TemplateInterface_insertTemplateTextImplementation, METH_VARARGS, NULL}
};


pyqt4ClassTypeDef pyqt4Type_ktexteditor_KTextEditor_TemplateInterface = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_ABSTRACT|SIP_TYPE_CLASS,
        sipNameNr_KTextEditor__TemplateInterface,
        {0}
    },
    sipNameNr_TemplateInterface,
    sipNameNr_PyQt4_QtCore_pyqtWrapperType,
    -1,
    {1, 255, 0},
    0,
    0,
    3, methods_KTextEditor_TemplateInterface,
    0, 0,
    0, 0,
    init_KTextEditor_TemplateInterface,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_KTextEditor_TemplateInterface,
    release_KTextEditor_TemplateInterface,
    cast_KTextEditor_TemplateInterface,
    0,
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    0,
    0
},
    0,
    0,
    0,
    0
};

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/smartrange.sip"
#include <ktexteditor/smartrange.h>
#line 925 "sipktexteditorpart1.cpp"

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/smartrange.sip"
#include <ktexteditor/smartrange.h>
#line 929 "sipktexteditorpart1.cpp"


extern "C" {static int slot_KTextEditor_SmartRange_InsertBehaviors___bool__(PyObject *sipSelf);}
static int slot_KTextEditor_SmartRange_InsertBehaviors___bool__(PyObject *sipSelf)
{
    KTextEditor::SmartRange::InsertBehaviors *sipCpp = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipGetCppPtr((sipSimpleWrapper *)sipSelf,sipType_KTextEditor_SmartRange_InsertBehaviors));

    if (!sipCpp)
        return -1;


    {
        {
            int sipRes = 0;

#line 271 "/usr/local/share/py-sip/QtCore/qglobal.sip"
        sipRes = (sipCpp->operator int() != 0);
#line 947 "sipktexteditorpart1.cpp"

            return sipRes;
        }
    }
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___ne__(PyObject *sipSelf,PyObject *sipArg);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___ne__(PyObject *sipSelf,PyObject *sipArg)
{
    KTextEditor::SmartRange::InsertBehaviors *sipCpp = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipGetCppPtr((sipSimpleWrapper *)sipSelf,sipType_KTextEditor_SmartRange_InsertBehaviors));

    if (!sipCpp)
        return 0;

    int sipArgsParsed = 0;

    {
        const KTextEditor::SmartRange::InsertBehaviors * a0;
        int a0State = 0;

        if (sipParseArgs(&sipArgsParsed,sipArg,"1J1",sipType_KTextEditor_SmartRange_InsertBehaviors,&a0,&a0State))
        {
            bool sipRes = 0;

#line 266 "/usr/local/share/py-sip/QtCore/qglobal.sip"
        sipRes = (sipCpp->operator int() != a0->operator int());
#line 975 "sipktexteditorpart1.cpp"

            sipReleaseType(const_cast<KTextEditor::SmartRange::InsertBehaviors *>(a0),sipType_KTextEditor_SmartRange_InsertBehaviors,a0State);

            return PyBool_FromLong(sipRes);
        }
    }

    return sipPySlotExtend(&sipModuleAPI_ktexteditor,ne_slot,sipType_KTextEditor_SmartRange_InsertBehaviors,sipSelf,sipArg);
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___eq__(PyObject *sipSelf,PyObject *sipArg);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___eq__(PyObject *sipSelf,PyObject *sipArg)
{
    KTextEditor::SmartRange::InsertBehaviors *sipCpp = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipGetCppPtr((sipSimpleWrapper *)sipSelf,sipType_KTextEditor_SmartRange_InsertBehaviors));

    if (!sipCpp)
        return 0;

    int sipArgsParsed = 0;

    {
        const KTextEditor::SmartRange::InsertBehaviors * a0;
        int a0State = 0;

        if (sipParseArgs(&sipArgsParsed,sipArg,"1J1",sipType_KTextEditor_SmartRange_InsertBehaviors,&a0,&a0State))
        {
            bool sipRes = 0;

#line 261 "/usr/local/share/py-sip/QtCore/qglobal.sip"
        sipRes = (sipCpp->operator int() == a0->operator int());
#line 1007 "sipktexteditorpart1.cpp"

            sipReleaseType(const_cast<KTextEditor::SmartRange::InsertBehaviors *>(a0),sipType_KTextEditor_SmartRange_InsertBehaviors,a0State);

            return PyBool_FromLong(sipRes);
        }
    }

    return sipPySlotExtend(&sipModuleAPI_ktexteditor,eq_slot,sipType_KTextEditor_SmartRange_InsertBehaviors,sipSelf,sipArg);
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___invert__(PyObject *sipSelf);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___invert__(PyObject *sipSelf)
{
    KTextEditor::SmartRange::InsertBehaviors *sipCpp = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipGetCppPtr((sipSimpleWrapper *)sipSelf,sipType_KTextEditor_SmartRange_InsertBehaviors));

    if (!sipCpp)
        return 0;


    {
        {
            KTextEditor::SmartRange::InsertBehaviors *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new KTextEditor::SmartRange::InsertBehaviors(~(*sipCpp));
            Py_END_ALLOW_THREADS

            return sipConvertFromNewType(sipRes,sipType_KTextEditor_SmartRange_InsertBehaviors,NULL);
        }
    }
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___and__(PyObject *sipArg0,PyObject *sipArg1);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___and__(PyObject *sipArg0,PyObject *sipArg1)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange::InsertBehaviors * a0;
        int a0State = 0;
        int a1;

        if (sipParsePair(&sipArgsParsed,sipArg0,sipArg1,"J1i",sipType_KTextEditor_SmartRange_InsertBehaviors,&a0,&a0State,&a1))
        {
            KTextEditor::SmartRange::InsertBehaviors *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new KTextEditor::SmartRange::InsertBehaviors((*a0 & a1));
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_KTextEditor_SmartRange_InsertBehaviors,a0State);

            return sipConvertFromNewType(sipRes,sipType_KTextEditor_SmartRange_InsertBehaviors,NULL);
        }
    }

    return sipPySlotExtend(&sipModuleAPI_ktexteditor,and_slot,NULL,sipArg0,sipArg1);
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___xor__(PyObject *sipArg0,PyObject *sipArg1);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___xor__(PyObject *sipArg0,PyObject *sipArg1)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange::InsertBehaviors * a0;
        int a0State = 0;
        KTextEditor::SmartRange::InsertBehaviors * a1;
        int a1State = 0;

        if (sipParsePair(&sipArgsParsed,sipArg0,sipArg1,"J1J1",sipType_KTextEditor_SmartRange_InsertBehaviors,&a0,&a0State,sipType_KTextEditor_SmartRange_InsertBehaviors,&a1,&a1State))
        {
            KTextEditor::SmartRange::InsertBehaviors *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new KTextEditor::SmartRange::InsertBehaviors((*a0 ^ *a1));
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_KTextEditor_SmartRange_InsertBehaviors,a0State);
            sipReleaseType(a1,sipType_KTextEditor_SmartRange_InsertBehaviors,a1State);

            return sipConvertFromNewType(sipRes,sipType_KTextEditor_SmartRange_InsertBehaviors,NULL);
        }
    }

    return sipPySlotExtend(&sipModuleAPI_ktexteditor,xor_slot,NULL,sipArg0,sipArg1);
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___or__(PyObject *sipArg0,PyObject *sipArg1);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___or__(PyObject *sipArg0,PyObject *sipArg1)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange::InsertBehaviors * a0;
        int a0State = 0;
        KTextEditor::SmartRange::InsertBehaviors * a1;
        int a1State = 0;

        if (sipParsePair(&sipArgsParsed,sipArg0,sipArg1,"J1J1",sipType_KTextEditor_SmartRange_InsertBehaviors,&a0,&a0State,sipType_KTextEditor_SmartRange_InsertBehaviors,&a1,&a1State))
        {
            KTextEditor::SmartRange::InsertBehaviors *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new KTextEditor::SmartRange::InsertBehaviors((*a0 | *a1));
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_KTextEditor_SmartRange_InsertBehaviors,a0State);
            sipReleaseType(a1,sipType_KTextEditor_SmartRange_InsertBehaviors,a1State);

            return sipConvertFromNewType(sipRes,sipType_KTextEditor_SmartRange_InsertBehaviors,NULL);
        }
    }

    return sipPySlotExtend(&sipModuleAPI_ktexteditor,or_slot,NULL,sipArg0,sipArg1);
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___int__(PyObject *sipSelf);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___int__(PyObject *sipSelf)
{
    KTextEditor::SmartRange::InsertBehaviors *sipCpp = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipGetCppPtr((sipSimpleWrapper *)sipSelf,sipType_KTextEditor_SmartRange_InsertBehaviors));

    if (!sipCpp)
        return 0;


    {
        {
            int sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = *sipCpp;
            Py_END_ALLOW_THREADS

            return SIPLong_FromLong(sipRes);
        }
    }
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___ixor__(PyObject *sipSelf,PyObject *sipArg);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___ixor__(PyObject *sipSelf,PyObject *sipArg)
{
    if (!PyObject_TypeCheck(sipSelf, sipTypeAsPyTypeObject(sipType_KTextEditor_SmartRange_InsertBehaviors)))
    {
        Py_INCREF(Py_NotImplemented);
        return Py_NotImplemented;
    }

    KTextEditor::SmartRange::InsertBehaviors *sipCpp = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipGetCppPtr((sipSimpleWrapper *)sipSelf,sipType_KTextEditor_SmartRange_InsertBehaviors));

    if (!sipCpp)
        return 0;

    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange::InsertBehaviors * a0;
        int a0State = 0;

        if (sipParseArgs(&sipArgsParsed,sipArg,"1J1",sipType_KTextEditor_SmartRange_InsertBehaviors,&a0,&a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->KTextEditor::SmartRange::InsertBehaviors::operator^=(*a0);
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_KTextEditor_SmartRange_InsertBehaviors,a0State);

            Py_INCREF(sipSelf);
            return sipSelf;
        }
    }

    PyErr_Clear();

    Py_INCREF(Py_NotImplemented);
    return Py_NotImplemented;
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___ior__(PyObject *sipSelf,PyObject *sipArg);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___ior__(PyObject *sipSelf,PyObject *sipArg)
{
    if (!PyObject_TypeCheck(sipSelf, sipTypeAsPyTypeObject(sipType_KTextEditor_SmartRange_InsertBehaviors)))
    {
        Py_INCREF(Py_NotImplemented);
        return Py_NotImplemented;
    }

    KTextEditor::SmartRange::InsertBehaviors *sipCpp = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipGetCppPtr((sipSimpleWrapper *)sipSelf,sipType_KTextEditor_SmartRange_InsertBehaviors));

    if (!sipCpp)
        return 0;

    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange::InsertBehaviors * a0;
        int a0State = 0;

        if (sipParseArgs(&sipArgsParsed,sipArg,"1J1",sipType_KTextEditor_SmartRange_InsertBehaviors,&a0,&a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->KTextEditor::SmartRange::InsertBehaviors::operator|=(*a0);
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_KTextEditor_SmartRange_InsertBehaviors,a0State);

            Py_INCREF(sipSelf);
            return sipSelf;
        }
    }

    PyErr_Clear();

    Py_INCREF(Py_NotImplemented);
    return Py_NotImplemented;
}


extern "C" {static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___iand__(PyObject *sipSelf,PyObject *sipArg);}
static PyObject *slot_KTextEditor_SmartRange_InsertBehaviors___iand__(PyObject *sipSelf,PyObject *sipArg)
{
    if (!PyObject_TypeCheck(sipSelf, sipTypeAsPyTypeObject(sipType_KTextEditor_SmartRange_InsertBehaviors)))
    {
        Py_INCREF(Py_NotImplemented);
        return Py_NotImplemented;
    }

    KTextEditor::SmartRange::InsertBehaviors *sipCpp = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipGetCppPtr((sipSimpleWrapper *)sipSelf,sipType_KTextEditor_SmartRange_InsertBehaviors));

    if (!sipCpp)
        return 0;

    int sipArgsParsed = 0;

    {
        int a0;

        if (sipParseArgs(&sipArgsParsed,sipArg,"1i",&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->KTextEditor::SmartRange::InsertBehaviors::operator&=(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(sipSelf);
            return sipSelf;
        }
    }

    PyErr_Clear();

    Py_INCREF(Py_NotImplemented);
    return Py_NotImplemented;
}


/* Cast a pointer to a type somewhere in its superclass hierarchy. */
extern "C" {static void *cast_KTextEditor_SmartRange_InsertBehaviors(void *, const sipTypeDef *);}
static void *cast_KTextEditor_SmartRange_InsertBehaviors(void *ptr,const sipTypeDef *targetType)
{
    if (targetType == sipType_KTextEditor_SmartRange_InsertBehaviors)
        return ptr;

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_KTextEditor_SmartRange_InsertBehaviors(void *, int);}
static void release_KTextEditor_SmartRange_InsertBehaviors(void *sipCppV,int)
{
    Py_BEGIN_ALLOW_THREADS

    delete reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void assign_KTextEditor_SmartRange_InsertBehaviors(void *, const void*);}
static void assign_KTextEditor_SmartRange_InsertBehaviors(void *sipDst, const void *sipSrc)
{
    *reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipDst) = *reinterpret_cast<const KTextEditor::SmartRange::InsertBehaviors *>(sipSrc);
}


extern "C" {static void dealloc_KTextEditor_SmartRange_InsertBehaviors(sipSimpleWrapper *);}
static void dealloc_KTextEditor_SmartRange_InsertBehaviors(sipSimpleWrapper *sipSelf)
{
    if (sipIsPyOwned(sipSelf))
    {
        release_KTextEditor_SmartRange_InsertBehaviors(sipSelf->u.cppPtr,0);
    }
}


extern "C" {static void *init_KTextEditor_SmartRange_InsertBehaviors(sipSimpleWrapper *, PyObject *, PyObject **, int *);}
static void *init_KTextEditor_SmartRange_InsertBehaviors(sipSimpleWrapper *, PyObject *sipArgs, PyObject **, int *sipArgsParsed)
{
    KTextEditor::SmartRange::InsertBehaviors *sipCpp = 0;

    if (!sipCpp)
    {
        const KTextEditor::SmartRange::InsertBehaviors * a0;
        int a0State = 0;

        if (sipParseArgs(sipArgsParsed,sipArgs,"J1",sipType_KTextEditor_SmartRange_InsertBehaviors,&a0,&a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new KTextEditor::SmartRange::InsertBehaviors(*a0);
            Py_END_ALLOW_THREADS

            sipReleaseType(const_cast<KTextEditor::SmartRange::InsertBehaviors *>(a0),sipType_KTextEditor_SmartRange_InsertBehaviors,a0State);
        }
    }

    if (!sipCpp)
    {
        int a0;

        if (sipParseArgs(sipArgsParsed,sipArgs,"i",&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new KTextEditor::SmartRange::InsertBehaviors(a0);
            Py_END_ALLOW_THREADS
        }
    }

    if (!sipCpp)
    {
        if (sipParseArgs(sipArgsParsed,sipArgs,""))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new KTextEditor::SmartRange::InsertBehaviors();
            Py_END_ALLOW_THREADS
        }
    }

    return sipCpp;
}


extern "C" {static int convertTo_KTextEditor_SmartRange_InsertBehaviors(PyObject *, void **, int *, PyObject *);}
static int convertTo_KTextEditor_SmartRange_InsertBehaviors(PyObject *sipPy,void **sipCppPtrV,int *sipIsErr,PyObject *sipTransferObj)
{
    KTextEditor::SmartRange::InsertBehaviors **sipCppPtr = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors **>(sipCppPtrV);

#line 276 "/usr/local/share/py-sip/QtCore/qglobal.sip"
// Allow an instance of the base enum whenever a KTextEditor::SmartRange::InsertBehaviors is expected.

if (sipIsErr == NULL)
    return (PyObject_TypeCheck(sipPy, sipTypeAsPyTypeObject(sipType_KTextEditor_SmartRange_InsertBehavior)) ||
            sipCanConvertToType(sipPy, sipType_KTextEditor_SmartRange_InsertBehaviors, SIP_NO_CONVERTORS));

if (PyObject_TypeCheck(sipPy, sipTypeAsPyTypeObject(sipType_KTextEditor_SmartRange_InsertBehavior)))
{
    *sipCppPtr = new KTextEditor::SmartRange::InsertBehaviors(SIPLong_AsLong(sipPy));

    return sipGetState(sipTransferObj);
}

*sipCppPtr = reinterpret_cast<KTextEditor::SmartRange::InsertBehaviors *>(sipConvertToType(sipPy, sipType_KTextEditor_SmartRange_InsertBehaviors, sipTransferObj, SIP_NO_CONVERTORS, 0, sipIsErr));

return 0;
#line 1378 "sipktexteditorpart1.cpp"
}


/* Define this type's Python slots. */
static sipPySlotDef slots_KTextEditor_SmartRange_InsertBehaviors[] = {
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___bool__, bool_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___ne__, ne_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___eq__, eq_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___invert__, invert_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___and__, and_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___xor__, xor_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___or__, or_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___int__, int_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___ixor__, ixor_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___ior__, ior_slot},
    {(void *)slot_KTextEditor_SmartRange_InsertBehaviors___iand__, iand_slot},
    {0, (sipPySlotType)0}
};


pyqt4ClassTypeDef pyqt4Type_ktexteditor_KTextEditor_SmartRange_InsertBehaviors = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_CLASS,
        sipNameNr_KTextEditor__SmartRange__InsertBehaviors,
        {0}
    },
    sipNameNr_InsertBehaviors,
    sipNameNr_PyQt4_QtCore_pyqtWrapperType,
    -1,
    {46, 255, 0},
    0,
    slots_KTextEditor_SmartRange_InsertBehaviors,
    0, 0,
    0, 0,
    0, 0,
    init_KTextEditor_SmartRange_InsertBehaviors,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_KTextEditor_SmartRange_InsertBehaviors,
    release_KTextEditor_SmartRange_InsertBehaviors,
    cast_KTextEditor_SmartRange_InsertBehaviors,
    convertTo_KTextEditor_SmartRange_InsertBehaviors,
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    0,
    0
},
    assign_KTextEditor_SmartRange_InsertBehaviors,
    0,
    1,
    0
};

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/smartrange.sip"
#include <ktexteditor/smartrange.h>
#line 1446 "sipktexteditorpart1.cpp"

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/smartcursor.sip"
#include <ktexteditor/smartcursor.h>
#line 1450 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/smartrange.sip"
#include <ktexteditor/smartrange.h>
#line 1453 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/rangefeedback.sip"
#include <ktexteditor/rangefeedback.h>
#line 1456 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/cursor.sip"
#include <ktexteditor/cursor.h>
#line 1459 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/range.sip"
#include <ktexteditor/range.h>
#line 1462 "sipktexteditorpart1.cpp"
#line 60 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/rangefeedback.sip"
#include <ktexteditor/rangefeedback.h>
#line 1465 "sipktexteditorpart1.cpp"
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 1480 "sipktexteditorpart1.cpp"
#line 27 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/kdeui/kaction.sip"
#include <kaction.h>
#line 1483 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/commandinterface.sip"
#include <ktexteditor/commandinterface.h>
#line 1486 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/view.sip"
#include <ktexteditor/view.h>

#include <ktexteditor/codecompletioninterface.h>
#include <ktexteditor/sessionconfiginterface.h>
#include <ktexteditor/texthintinterface.h>
#line 1493 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/document.sip"
#include <ktexteditor/document.h>

#include <ktexteditor/modificationinterface.h>
#include <ktexteditor/markinterface.h>
#include <ktexteditor/searchinterface.h>
#include <ktexteditor/sessionconfiginterface.h>
#include <ktexteditor/smartinterface.h>
#include <ktexteditor/templateinterface.h>
#include <ktexteditor/variableinterface.h>
#line 1504 "sipktexteditorpart1.cpp"
#line 224 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/kdecore/typedefs.sip"
#include <ksharedptr.h>
#line 1507 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/attribute.sip"
#include <ktexteditor/attribute.h>
#line 1510 "sipktexteditorpart1.cpp"
#line 757 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/kdecore/typedefs.sip"
#include <qstack.h>
#line 1513 "sipktexteditorpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qstringlist.sip"
#include <qstringlist.h>
#line 1516 "sipktexteditorpart1.cpp"


class sipKTextEditor_SmartRange : public KTextEditor::SmartRange
{
public:
    sipKTextEditor_SmartRange(KTextEditor::SmartCursor *,KTextEditor::SmartCursor *,KTextEditor::SmartRange *,KTextEditor::SmartRange::InsertBehaviors);
    virtual ~sipKTextEditor_SmartRange();

    /*
     * There is a public method for every protected method visible from
     * this class.
     */
    void sipProtectVirt_rangeChanged(bool,KTextEditor::Cursor *,const KTextEditor::Range&);
    void sipProtectVirt_checkFeedback(bool);
    KTextEditor::SmartRangeNotifier * sipProtect_createNotifier();

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    bool isSmartRange() const;
    KTextEditor::SmartRange * toSmartRange() const;
    void setRange(const KTextEditor::Range&);
    bool confineToRange(const KTextEditor::Range&);
    bool expandToRange(const KTextEditor::Range&);
    QStringList text(bool) const;
    bool replaceText(const QStringList&,bool);
    bool removeText(bool);
    void setParentRange(KTextEditor::SmartRange *);
    void rangeChanged(KTextEditor::Cursor *,const KTextEditor::Range&);
    void checkFeedback();
    KTextEditor::SmartRangeNotifier * createNotifier();
    bool isValid() const;

public:
    sipSimpleWrapper *sipPySelf;

private:
    sipKTextEditor_SmartRange(const sipKTextEditor_SmartRange &);
    sipKTextEditor_SmartRange &operator = (const sipKTextEditor_SmartRange &);

    char sipPyMethods[13];
};

sipKTextEditor_SmartRange::sipKTextEditor_SmartRange(KTextEditor::SmartCursor *a0,KTextEditor::SmartCursor *a1,KTextEditor::SmartRange *a2,KTextEditor::SmartRange::InsertBehaviors a3): KTextEditor::SmartRange(a0,a1,a2,a3), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipKTextEditor_SmartRange::~sipKTextEditor_SmartRange()
{
    sipCommonDtor(sipPySelf);
}

bool sipKTextEditor_SmartRange::isSmartRange() const
{
    typedef bool (*sipVH_QtCore_1)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[0]),sipPySelf,NULL,sipName_isSmartRange);

    if (!meth)
        return KTextEditor::SmartRange::isSmartRange();

    return ((sipVH_QtCore_1)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[1]))(sipGILState,meth);
}

KTextEditor::SmartRange * sipKTextEditor_SmartRange::toSmartRange() const
{
    extern KTextEditor::SmartRange * sipVH_ktexteditor_20(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[1]),sipPySelf,NULL,sipName_toSmartRange);

    if (!meth)
        return KTextEditor::SmartRange::toSmartRange();

    return sipVH_ktexteditor_20(sipGILState,meth);
}

void sipKTextEditor_SmartRange::setRange(const KTextEditor::Range& a0)
{
    extern void sipVH_ktexteditor_19(sip_gilstate_t,PyObject *,const KTextEditor::Range&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[2],sipPySelf,NULL,sipName_setRange);

    if (!meth)
    {
        KTextEditor::SmartRange::setRange(a0);
        return;
    }

    sipVH_ktexteditor_19(sipGILState,meth,a0);
}

bool sipKTextEditor_SmartRange::confineToRange(const KTextEditor::Range& a0)
{
    extern bool sipVH_ktexteditor_2(sip_gilstate_t,PyObject *,const KTextEditor::Range&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[3],sipPySelf,NULL,sipName_confineToRange);

    if (!meth)
        return KTextEditor::SmartRange::confineToRange(a0);

    return sipVH_ktexteditor_2(sipGILState,meth,a0);
}

bool sipKTextEditor_SmartRange::expandToRange(const KTextEditor::Range& a0)
{
    extern bool sipVH_ktexteditor_2(sip_gilstate_t,PyObject *,const KTextEditor::Range&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[4],sipPySelf,NULL,sipName_expandToRange);

    if (!meth)
        return KTextEditor::SmartRange::expandToRange(a0);

    return sipVH_ktexteditor_2(sipGILState,meth,a0);
}

QStringList sipKTextEditor_SmartRange::text(bool a0) const
{
    extern QStringList sipVH_ktexteditor_18(sip_gilstate_t,PyObject *,bool);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[5]),sipPySelf,NULL,sipName_text);

    if (!meth)
        return KTextEditor::SmartRange::text(a0);

    return sipVH_ktexteditor_18(sipGILState,meth,a0);
}

bool sipKTextEditor_SmartRange::replaceText(const QStringList& a0,bool a1)
{
    extern bool sipVH_ktexteditor_17(sip_gilstate_t,PyObject *,const QStringList&,bool);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[6],sipPySelf,NULL,sipName_replaceText);

    if (!meth)
        return KTextEditor::SmartRange::replaceText(a0,a1);

    return sipVH_ktexteditor_17(sipGILState,meth,a0,a1);
}

bool sipKTextEditor_SmartRange::removeText(bool a0)
{
    typedef bool (*sipVH_QtGui_12)(sip_gilstate_t,PyObject *,bool);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[7],sipPySelf,NULL,sipName_removeText);

    if (!meth)
        return KTextEditor::SmartRange::removeText(a0);

    return ((sipVH_QtGui_12)(sipModuleAPI_ktexteditor_QtGui->em_virthandlers[12]))(sipGILState,meth,a0);
}

void sipKTextEditor_SmartRange::setParentRange(KTextEditor::SmartRange *a0)
{
    extern void sipVH_ktexteditor_16(sip_gilstate_t,PyObject *,KTextEditor::SmartRange *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[8],sipPySelf,NULL,sipName_setParentRange);

    if (!meth)
    {
        KTextEditor::SmartRange::setParentRange(a0);
        return;
    }

    sipVH_ktexteditor_16(sipGILState,meth,a0);
}

void sipKTextEditor_SmartRange::rangeChanged(KTextEditor::Cursor *a0,const KTextEditor::Range& a1)
{
    extern void sipVH_ktexteditor_15(sip_gilstate_t,PyObject *,KTextEditor::Cursor *,const KTextEditor::Range&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[9],sipPySelf,NULL,sipName_rangeChanged);

    if (!meth)
    {
        KTextEditor::SmartRange::rangeChanged(a0,a1);
        return;
    }

    sipVH_ktexteditor_15(sipGILState,meth,a0,a1);
}

void sipKTextEditor_SmartRange::checkFeedback()
{
    typedef void (*sipVH_QtCore_5)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[10],sipPySelf,NULL,sipName_checkFeedback);

    if (!meth)
    {
        KTextEditor::SmartRange::checkFeedback();
        return;
    }

    ((sipVH_QtCore_5)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[5]))(sipGILState,meth);
}

KTextEditor::SmartRangeNotifier * sipKTextEditor_SmartRange::createNotifier()
{
    extern KTextEditor::SmartRangeNotifier * sipVH_ktexteditor_14(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[11],sipPySelf,sipName_SmartRange,sipName_createNotifier);

    if (!meth)
        return 0;

    return sipVH_ktexteditor_14(sipGILState,meth);
}

bool sipKTextEditor_SmartRange::isValid() const
{
    typedef bool (*sipVH_QtCore_1)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[12]),sipPySelf,NULL,sipName_isValid);

    if (!meth)
        return KTextEditor::Range::isValid();

    return ((sipVH_QtCore_1)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[1]))(sipGILState,meth);
}

void sipKTextEditor_SmartRange::sipProtectVirt_rangeChanged(bool sipSelfWasArg,KTextEditor::Cursor *a0,const KTextEditor::Range& a1)
{
    (sipSelfWasArg ? KTextEditor::SmartRange::rangeChanged(a0,a1) : rangeChanged(a0,a1));
}

void sipKTextEditor_SmartRange::sipProtectVirt_checkFeedback(bool sipSelfWasArg)
{
    (sipSelfWasArg ? KTextEditor::SmartRange::checkFeedback() : checkFeedback());
}

KTextEditor::SmartRangeNotifier * sipKTextEditor_SmartRange::sipProtect_createNotifier()
{
    return createNotifier();
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_isSmartRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_isSmartRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->KTextEditor::SmartRange::isSmartRange() : sipCpp->isSmartRange());
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_isSmartRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_toSmartRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_toSmartRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->KTextEditor::SmartRange::toSmartRange() : sipCpp->toSmartRange());
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_toSmartRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_setRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_setRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const KTextEditor::Range * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_Range,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->KTextEditor::SmartRange::setRange(*a0) : sipCpp->setRange(*a0));
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_setRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_smartStart(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_smartStart(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::SmartCursor *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = &sipCpp->smartStart();
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartCursor,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_smartStart);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_smartEnd(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_smartEnd(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::SmartCursor *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = &sipCpp->smartEnd();
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartCursor,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_smartEnd);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_confineToRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_confineToRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const KTextEditor::Range * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_Range,&a0))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->KTextEditor::SmartRange::confineToRange(*a0) : sipCpp->confineToRange(*a0));
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_confineToRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_expandToRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_expandToRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const KTextEditor::Range * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_Range,&a0))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->KTextEditor::SmartRange::expandToRange(*a0) : sipCpp->expandToRange(*a0));
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_expandToRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_document(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_document(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::Document *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->document();
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_Document,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_document);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_text(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_text(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        bool a0 = 0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B|b",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,&a0))
        {
            QStringList *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QStringList((sipSelfWasArg ? sipCpp->KTextEditor::SmartRange::text(a0) : sipCpp->text(a0)));
            Py_END_ALLOW_THREADS

            return sipConvertFromNewType(sipRes,sipType_QStringList,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_text);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_replaceText(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_replaceText(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const QStringList * a0;
        int a0State = 0;
        bool a1 = 0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ1|b",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_QStringList,&a0,&a0State,&a1))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->KTextEditor::SmartRange::replaceText(*a0,a1) : sipCpp->replaceText(*a0,a1));
            Py_END_ALLOW_THREADS

            sipReleaseType(const_cast<QStringList *>(a0),sipType_QStringList,a0State);

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_replaceText);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_removeText(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_removeText(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        bool a0 = 0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B|b",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,&a0))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->KTextEditor::SmartRange::removeText(a0) : sipCpp->removeText(a0));
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_removeText);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_insertBehavior(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_insertBehavior(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::SmartRange::InsertBehaviors *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new KTextEditor::SmartRange::InsertBehaviors(sipCpp->insertBehavior());
            Py_END_ALLOW_THREADS

            return sipConvertFromNewType(sipRes,sipType_KTextEditor_SmartRange_InsertBehaviors,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_insertBehavior);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_setInsertBehavior(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_setInsertBehavior(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange::InsertBehaviors * a0;
        int a0State = 0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ1",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_SmartRange_InsertBehaviors,&a0,&a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->setInsertBehavior(*a0);
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_KTextEditor_SmartRange_InsertBehaviors,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_setInsertBehavior);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_parentRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_parentRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->parentRange();
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_parentRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_setParentRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_setParentRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartRange * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_SmartRange,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->KTextEditor::SmartRange::setParentRange(a0) : sipCpp->setParentRange(a0));
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_setParentRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_hasParent(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_hasParent(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_SmartRange,&a0))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->hasParent(a0);
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_hasParent);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_depth(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_depth(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            int sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->depth();
            Py_END_ALLOW_THREADS

            return SIPLong_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_depth);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_topParentRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_topParentRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->topParentRange();
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_topParentRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_childRanges(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_childRanges(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            QList<KTextEditor::SmartRange *> *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<KTextEditor::SmartRange *>(sipCpp->childRanges());
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_QList_0201KTextEditor_SmartRange,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_childRanges);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_clearChildRanges(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_clearChildRanges(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->clearChildRanges();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_clearChildRanges);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_deleteChildRanges(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_deleteChildRanges(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->deleteChildRanges();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_deleteChildRanges);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_clearAndDeleteChildRanges(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_clearAndDeleteChildRanges(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->clearAndDeleteChildRanges();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_clearAndDeleteChildRanges);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_childBefore(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_childBefore(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const KTextEditor::SmartRange * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_SmartRange,&a0))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->childBefore(a0);
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_childBefore);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_childAfter(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_childAfter(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const KTextEditor::SmartRange * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_SmartRange,&a0))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->childAfter(a0);
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_childAfter);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_mostSpecificRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_mostSpecificRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const KTextEditor::Range * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_Range,&a0))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->mostSpecificRange(*a0);
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_mostSpecificRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_firstRangeContaining(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_firstRangeContaining(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const KTextEditor::Cursor * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_Cursor,&a0))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->firstRangeContaining(*a0);
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_firstRangeContaining);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_deepestRangeContaining(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_deepestRangeContaining(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const KTextEditor::Cursor * a0;
        QStack<KTextEditor::SmartRange *> * a1 = 0;
        int a1State = 0;
        QStack<KTextEditor::SmartRange *> * a2 = 0;
        int a2State = 0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9|J0J0",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_Cursor,&a0,sipType_QStack_0201KTextEditor_SmartRange,&a1,&a1State,sipType_QStack_0201KTextEditor_SmartRange,&a2,&a2State))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->deepestRangeContaining(*a0,a1,a2);
            Py_END_ALLOW_THREADS

            sipReleaseType(a1,sipType_QStack_0201KTextEditor_SmartRange,a1State);
            sipReleaseType(a2,sipType_QStack_0201KTextEditor_SmartRange,a2State);

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_deepestRangeContaining);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_attribute(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_attribute(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::Attribute::Ptr *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new KTextEditor::Attribute::Ptr(sipCpp->attribute());
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_KSharedPtr_0200KTextEditor_Attribute,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_attribute);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_setAttribute(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_setAttribute(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::Attribute::Ptr * a0;
        int a0State = 0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ1",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KSharedPtr_0200KTextEditor_Attribute,&a0,&a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->setAttribute(*a0);
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_KSharedPtr_0200KTextEditor_Attribute,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_setAttribute);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_associateAction(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_associateAction(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KAction * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KAction,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->associateAction(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_associateAction);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_dissociateAction(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_dissociateAction(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KAction * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KAction,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->dissociateAction(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_dissociateAction);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_associatedActions(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_associatedActions(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            QList<KAction *> *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<KAction *>(sipCpp->associatedActions());
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_QList_0201KAction,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_associatedActions);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_clearAssociatedActions(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_clearAssociatedActions(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->clearAssociatedActions();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_clearAssociatedActions);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_primaryNotifier(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_primaryNotifier(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::SmartRangeNotifier *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->primaryNotifier();
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRangeNotifier,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_primaryNotifier);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_notifiers(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_notifiers(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            QList<KTextEditor::SmartRangeNotifier *> *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<KTextEditor::SmartRangeNotifier *>(sipCpp->notifiers());
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_QList_0201KTextEditor_SmartRangeNotifier,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_notifiers);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_addNotifier(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_addNotifier(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRangeNotifier * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_SmartRangeNotifier,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->addNotifier(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_addNotifier);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_removeNotifier(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_removeNotifier(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRangeNotifier * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_SmartRangeNotifier,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->removeNotifier(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_removeNotifier);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_deletePrimaryNotifier(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_deletePrimaryNotifier(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->deletePrimaryNotifier();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_deletePrimaryNotifier);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_watchers(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_watchers(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            QList<KTextEditor::SmartRangeWatcher *> *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<KTextEditor::SmartRangeWatcher *>(sipCpp->watchers());
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_QList_0201KTextEditor_SmartRangeWatcher,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_watchers);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_addWatcher(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_addWatcher(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRangeWatcher * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_SmartRangeWatcher,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->addWatcher(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_addWatcher);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_removeWatcher(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_removeWatcher(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartRangeWatcher * a0;
        KTextEditor::SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_SmartRangeWatcher,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->removeWatcher(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_removeWatcher);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_rangeChanged(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_rangeChanged(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::Cursor * a0;
        const KTextEditor::Range * a1;
        sipKTextEditor_SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ8J9",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp,sipType_KTextEditor_Cursor,&a0,sipType_KTextEditor_Range,&a1))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_rangeChanged(sipSelfWasArg,a0,*a1);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_rangeChanged);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_checkFeedback(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_checkFeedback(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        sipKTextEditor_SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"p",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_checkFeedback(sipSelfWasArg);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_checkFeedback);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartRange_createNotifier(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartRange_createNotifier(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        sipKTextEditor_SmartRange *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"p",&sipSelf,sipType_KTextEditor_SmartRange,&sipCpp))
        {
            KTextEditor::SmartRangeNotifier *sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartRange, sipName_createNotifier);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->sipProtect_createNotifier();
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRangeNotifier,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartRange,sipName_createNotifier);

    return NULL;
}


/* Cast a pointer to a type somewhere in its superclass hierarchy. */
extern "C" {static void *cast_KTextEditor_SmartRange(void *, const sipTypeDef *);}
static void *cast_KTextEditor_SmartRange(void *ptr,const sipTypeDef *targetType)
{
    void *res;

    if (targetType == sipType_KTextEditor_SmartRange)
        return ptr;

    if ((res = ((const sipClassTypeDef *)sipType_KTextEditor_Range)->ctd_cast((KTextEditor::Range *)(KTextEditor::SmartRange *)ptr,targetType)) != NULL)
        return res;

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_KTextEditor_SmartRange(void *, int);}
static void release_KTextEditor_SmartRange(void *sipCppV,int state)
{
    Py_BEGIN_ALLOW_THREADS

    if (state & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipKTextEditor_SmartRange *>(sipCppV);
    else
        delete reinterpret_cast<KTextEditor::SmartRange *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_KTextEditor_SmartRange(sipSimpleWrapper *);}
static void dealloc_KTextEditor_SmartRange(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerived(sipSelf))
        reinterpret_cast<sipKTextEditor_SmartRange *>(sipSelf->u.cppPtr)->sipPySelf = NULL;

    if (sipIsPyOwned(sipSelf))
    {
        release_KTextEditor_SmartRange(sipSelf->u.cppPtr,sipSelf->flags);
    }
}


extern "C" {static void *init_KTextEditor_SmartRange(sipSimpleWrapper *, PyObject *, PyObject **, int *);}
static void *init_KTextEditor_SmartRange(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject **, int *sipArgsParsed)
{
    sipKTextEditor_SmartRange *sipCpp = 0;

    if (!sipCpp)
    {
        KTextEditor::SmartCursor * a0;
        KTextEditor::SmartCursor * a1;
        KTextEditor::SmartRange * a2 = 0;
        KTextEditor::SmartRange::InsertBehaviors a3def = KTextEditor::SmartRange::DoNotExpand;
        KTextEditor::SmartRange::InsertBehaviors * a3 = &a3def;
        int a3State = 0;

        if (sipParseArgs(sipArgsParsed,sipArgs,"J8J8|J8J1",sipType_KTextEditor_SmartCursor,&a0,sipType_KTextEditor_SmartCursor,&a1,sipType_KTextEditor_SmartRange,&a2,sipType_KTextEditor_SmartRange_InsertBehaviors,&a3,&a3State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipKTextEditor_SmartRange(a0,a1,a2,*a3);
            Py_END_ALLOW_THREADS

            sipReleaseType(a3,sipType_KTextEditor_SmartRange_InsertBehaviors,a3State);
        }
    }

    if (sipCpp)
        sipCpp->sipPySelf = sipSelf;

    return sipCpp;
}


/* Define this type's super-types. */
static sipEncodedClassDef supers_KTextEditor_SmartRange[] = {{34, 255, 1}};


static PyMethodDef methods_KTextEditor_SmartRange[] = {
    {SIP_MLNAME_CAST(sipName_addNotifier), meth_KTextEditor_SmartRange_addNotifier, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_addWatcher), meth_KTextEditor_SmartRange_addWatcher, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_associateAction), meth_KTextEditor_SmartRange_associateAction, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_associatedActions), meth_KTextEditor_SmartRange_associatedActions, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_attribute), meth_KTextEditor_SmartRange_attribute, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_checkFeedback), meth_KTextEditor_SmartRange_checkFeedback, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_childAfter), meth_KTextEditor_SmartRange_childAfter, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_childBefore), meth_KTextEditor_SmartRange_childBefore, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_childRanges), meth_KTextEditor_SmartRange_childRanges, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearAndDeleteChildRanges), meth_KTextEditor_SmartRange_clearAndDeleteChildRanges, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearAssociatedActions), meth_KTextEditor_SmartRange_clearAssociatedActions, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearChildRanges), meth_KTextEditor_SmartRange_clearChildRanges, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_confineToRange), meth_KTextEditor_SmartRange_confineToRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_createNotifier), meth_KTextEditor_SmartRange_createNotifier, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_deepestRangeContaining), meth_KTextEditor_SmartRange_deepestRangeContaining, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_deleteChildRanges), meth_KTextEditor_SmartRange_deleteChildRanges, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_deletePrimaryNotifier), meth_KTextEditor_SmartRange_deletePrimaryNotifier, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_depth), meth_KTextEditor_SmartRange_depth, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_dissociateAction), meth_KTextEditor_SmartRange_dissociateAction, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_document), meth_KTextEditor_SmartRange_document, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_expandToRange), meth_KTextEditor_SmartRange_expandToRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_firstRangeContaining), meth_KTextEditor_SmartRange_firstRangeContaining, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_hasParent), meth_KTextEditor_SmartRange_hasParent, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_insertBehavior), meth_KTextEditor_SmartRange_insertBehavior, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_isSmartRange), meth_KTextEditor_SmartRange_isSmartRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_mostSpecificRange), meth_KTextEditor_SmartRange_mostSpecificRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_notifiers), meth_KTextEditor_SmartRange_notifiers, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_parentRange), meth_KTextEditor_SmartRange_parentRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_primaryNotifier), meth_KTextEditor_SmartRange_primaryNotifier, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_rangeChanged), meth_KTextEditor_SmartRange_rangeChanged, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_removeNotifier), meth_KTextEditor_SmartRange_removeNotifier, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_removeText), meth_KTextEditor_SmartRange_removeText, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_removeWatcher), meth_KTextEditor_SmartRange_removeWatcher, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_replaceText), meth_KTextEditor_SmartRange_replaceText, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setAttribute), meth_KTextEditor_SmartRange_setAttribute, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setInsertBehavior), meth_KTextEditor_SmartRange_setInsertBehavior, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setParentRange), meth_KTextEditor_SmartRange_setParentRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setRange), meth_KTextEditor_SmartRange_setRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_smartEnd), meth_KTextEditor_SmartRange_smartEnd, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_smartStart), meth_KTextEditor_SmartRange_smartStart, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_text), meth_KTextEditor_SmartRange_text, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_toSmartRange), meth_KTextEditor_SmartRange_toSmartRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_topParentRange), meth_KTextEditor_SmartRange_topParentRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_watchers), meth_KTextEditor_SmartRange_watchers, METH_VARARGS, NULL}
};

static sipEnumMemberDef enummembers_KTextEditor_SmartRange[] = {
    {sipName_DoNotExpand, KTextEditor::SmartRange::DoNotExpand, 47},
    {sipName_ExpandLeft, KTextEditor::SmartRange::ExpandLeft, 47},
    {sipName_ExpandRight, KTextEditor::SmartRange::ExpandRight, 47},
};


pyqt4ClassTypeDef pyqt4Type_ktexteditor_KTextEditor_SmartRange = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_ABSTRACT|SIP_TYPE_CLASS,
        sipNameNr_KTextEditor__SmartRange,
        {0}
    },
    sipNameNr_SmartRange,
    -1,
    -1,
    {1, 255, 0},
    supers_KTextEditor_SmartRange,
    0,
    44, methods_KTextEditor_SmartRange,
    3, enummembers_KTextEditor_SmartRange,
    0, 0,
    init_KTextEditor_SmartRange,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_KTextEditor_SmartRange,
    release_KTextEditor_SmartRange,
    cast_KTextEditor_SmartRange,
    0,
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    0,
    0
},
    0,
    0,
    0,
    0
};

#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/smartinterface.sip"
#include <ktexteditor/smartinterface.h>
#line 3219 "sipktexteditorpart1.cpp"

#line 224 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/kdecore/typedefs.sip"
#include <ksharedptr.h>
#line 3223 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/attribute.sip"
#include <ktexteditor/attribute.h>
#line 3226 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/view.sip"
#include <ktexteditor/view.h>

#include <ktexteditor/codecompletioninterface.h>
#include <ktexteditor/sessionconfiginterface.h>
#include <ktexteditor/texthintinterface.h>
#line 3233 "sipktexteditorpart1.cpp"
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 3248 "sipktexteditorpart1.cpp"
#line 27 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/kdeui/kaction.sip"
#include <kaction.h>
#line 3251 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/commandinterface.sip"
#include <ktexteditor/commandinterface.h>
#line 3254 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/document.sip"
#include <ktexteditor/document.h>

#include <ktexteditor/modificationinterface.h>
#include <ktexteditor/markinterface.h>
#include <ktexteditor/searchinterface.h>
#include <ktexteditor/sessionconfiginterface.h>
#include <ktexteditor/smartinterface.h>
#include <ktexteditor/templateinterface.h>
#include <ktexteditor/variableinterface.h>
#line 3265 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/smartrange.sip"
#include <ktexteditor/smartrange.h>
#line 3268 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/rangefeedback.sip"
#include <ktexteditor/rangefeedback.h>
#line 3271 "sipktexteditorpart1.cpp"
#line 60 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/rangefeedback.sip"
#include <ktexteditor/rangefeedback.h>
#line 3274 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/range.sip"
#include <ktexteditor/range.h>
#line 3277 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/smartrange.sip"
#include <ktexteditor/smartrange.h>
#line 3280 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/cursor.sip"
#include <ktexteditor/cursor.h>
#line 3283 "sipktexteditorpart1.cpp"
#line 30 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/ktexteditor/smartcursor.sip"
#include <ktexteditor/smartcursor.h>
#line 3286 "sipktexteditorpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qmutex.sip"
#include <qmutex.h>
#line 3289 "sipktexteditorpart1.cpp"


class sipKTextEditor_SmartInterface : public KTextEditor::SmartInterface
{
public:
    sipKTextEditor_SmartInterface();
    virtual ~sipKTextEditor_SmartInterface();

    /*
     * There is a public method for every protected method visible from
     * this class.
     */
    void sipProtect_attributeDynamic(KTextEditor::Attribute::Ptr);
    void sipProtect_attributeNotDynamic(KTextEditor::Attribute::Ptr);

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    void clearSmartInterface();
    int currentRevision() const;
    void releaseRevision(int) const;
    void useRevision(int);
    KTextEditor::Cursor translateFromRevision(const KTextEditor::Cursor&,KTextEditor::SmartCursor::InsertBehavior) const;
    KTextEditor::Range translateFromRevision(const KTextEditor::Range&,KTextEditor::SmartRange::InsertBehaviors) const;
    KTextEditor::SmartCursor * newSmartCursor(const KTextEditor::Cursor&,KTextEditor::SmartCursor::InsertBehavior);
    void deleteCursors();
    KTextEditor::SmartRange * newSmartRange(const KTextEditor::Range&,KTextEditor::SmartRange *,KTextEditor::SmartRange::InsertBehaviors);
    KTextEditor::SmartRange * newSmartRange(KTextEditor::SmartCursor *,KTextEditor::SmartCursor *,KTextEditor::SmartRange *,KTextEditor::SmartRange::InsertBehaviors);
    void unbindSmartRange(KTextEditor::SmartRange *);
    void deleteRanges();
    void addHighlightToDocument(KTextEditor::SmartRange *,bool);
    void removeHighlightFromDocument(KTextEditor::SmartRange *);
    const QList<KTextEditor::SmartRange *> documentHighlights() const;
    void clearDocumentHighlights();
    void addHighlightToView(KTextEditor::View *,KTextEditor::SmartRange *,bool);
    void removeHighlightFromView(KTextEditor::View *,KTextEditor::SmartRange *);
    const QList<KTextEditor::SmartRange *> viewHighlights(KTextEditor::View *) const;
    void clearViewHighlights(KTextEditor::View *);
    void addActionsToDocument(KTextEditor::SmartRange *);
    void removeActionsFromDocument(KTextEditor::SmartRange *);
    const QList<KTextEditor::SmartRange *> documentActions() const;
    void clearDocumentActions();
    void addActionsToView(KTextEditor::View *,KTextEditor::SmartRange *);
    void removeActionsFromView(KTextEditor::View *,KTextEditor::SmartRange *);
    const QList<KTextEditor::SmartRange *> viewActions(KTextEditor::View *) const;
    void clearViewActions(KTextEditor::View *);
    void attributeDynamic(KTextEditor::Attribute::Ptr);
    void attributeNotDynamic(KTextEditor::Attribute::Ptr);

public:
    sipSimpleWrapper *sipPySelf;

private:
    sipKTextEditor_SmartInterface(const sipKTextEditor_SmartInterface &);
    sipKTextEditor_SmartInterface &operator = (const sipKTextEditor_SmartInterface &);

    char sipPyMethods[30];
};

sipKTextEditor_SmartInterface::sipKTextEditor_SmartInterface(): KTextEditor::SmartInterface(), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipKTextEditor_SmartInterface::~sipKTextEditor_SmartInterface()
{
    sipCommonDtor(sipPySelf);
}

void sipKTextEditor_SmartInterface::clearSmartInterface()
{
    typedef void (*sipVH_QtCore_5)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[0],sipPySelf,sipName_SmartInterface,sipName_clearSmartInterface);

    if (!meth)
        return;

    ((sipVH_QtCore_5)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[5]))(sipGILState,meth);
}

int sipKTextEditor_SmartInterface::currentRevision() const
{
    typedef int (*sipVH_QtCore_8)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[1]),sipPySelf,sipName_SmartInterface,sipName_currentRevision);

    if (!meth)
        return 0;

    return ((sipVH_QtCore_8)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[8]))(sipGILState,meth);
}

void sipKTextEditor_SmartInterface::releaseRevision(int a0) const
{
    typedef void (*sipVH_QtNetwork_1)(sip_gilstate_t,PyObject *,int);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[2]),sipPySelf,sipName_SmartInterface,sipName_releaseRevision);

    if (!meth)
        return;

    ((sipVH_QtNetwork_1)(sipModuleAPI_ktexteditor_QtNetwork->em_virthandlers[1]))(sipGILState,meth,a0);
}

void sipKTextEditor_SmartInterface::useRevision(int a0)
{
    typedef void (*sipVH_QtNetwork_1)(sip_gilstate_t,PyObject *,int);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[3],sipPySelf,sipName_SmartInterface,sipName_useRevision);

    if (!meth)
        return;

    ((sipVH_QtNetwork_1)(sipModuleAPI_ktexteditor_QtNetwork->em_virthandlers[1]))(sipGILState,meth,a0);
}

KTextEditor::Cursor sipKTextEditor_SmartInterface::translateFromRevision(const KTextEditor::Cursor& a0,KTextEditor::SmartCursor::InsertBehavior a1) const
{
    extern KTextEditor::Cursor sipVH_ktexteditor_32(sip_gilstate_t,PyObject *,const KTextEditor::Cursor&,KTextEditor::SmartCursor::InsertBehavior);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[4]),sipPySelf,NULL,sipName_translateFromRevision);

    if (!meth)
        return KTextEditor::SmartInterface::translateFromRevision(a0,a1);

    return sipVH_ktexteditor_32(sipGILState,meth,a0,a1);
}

KTextEditor::Range sipKTextEditor_SmartInterface::translateFromRevision(const KTextEditor::Range& a0,KTextEditor::SmartRange::InsertBehaviors a1) const
{
    extern KTextEditor::Range sipVH_ktexteditor_31(sip_gilstate_t,PyObject *,const KTextEditor::Range&,KTextEditor::SmartRange::InsertBehaviors);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[5]),sipPySelf,NULL,sipName_translateFromRevision);

    if (!meth)
        return KTextEditor::SmartInterface::translateFromRevision(a0,a1);

    return sipVH_ktexteditor_31(sipGILState,meth,a0,a1);
}

KTextEditor::SmartCursor * sipKTextEditor_SmartInterface::newSmartCursor(const KTextEditor::Cursor& a0,KTextEditor::SmartCursor::InsertBehavior a1)
{
    extern KTextEditor::SmartCursor * sipVH_ktexteditor_30(sip_gilstate_t,PyObject *,const KTextEditor::Cursor&,KTextEditor::SmartCursor::InsertBehavior);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[6],sipPySelf,sipName_SmartInterface,sipName_newSmartCursor);

    if (!meth)
        return 0;

    return sipVH_ktexteditor_30(sipGILState,meth,a0,a1);
}

void sipKTextEditor_SmartInterface::deleteCursors()
{
    typedef void (*sipVH_QtCore_5)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[7],sipPySelf,sipName_SmartInterface,sipName_deleteCursors);

    if (!meth)
        return;

    ((sipVH_QtCore_5)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[5]))(sipGILState,meth);
}

KTextEditor::SmartRange * sipKTextEditor_SmartInterface::newSmartRange(const KTextEditor::Range& a0,KTextEditor::SmartRange *a1,KTextEditor::SmartRange::InsertBehaviors a2)
{
    extern KTextEditor::SmartRange * sipVH_ktexteditor_29(sip_gilstate_t,PyObject *,const KTextEditor::Range&,KTextEditor::SmartRange *,KTextEditor::SmartRange::InsertBehaviors);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[8],sipPySelf,sipName_SmartInterface,sipName_newSmartRange);

    if (!meth)
        return 0;

    return sipVH_ktexteditor_29(sipGILState,meth,a0,a1,a2);
}

KTextEditor::SmartRange * sipKTextEditor_SmartInterface::newSmartRange(KTextEditor::SmartCursor *a0,KTextEditor::SmartCursor *a1,KTextEditor::SmartRange *a2,KTextEditor::SmartRange::InsertBehaviors a3)
{
    extern KTextEditor::SmartRange * sipVH_ktexteditor_28(sip_gilstate_t,PyObject *,KTextEditor::SmartCursor *,KTextEditor::SmartCursor *,KTextEditor::SmartRange *,KTextEditor::SmartRange::InsertBehaviors);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[9],sipPySelf,sipName_SmartInterface,sipName_newSmartRange);

    if (!meth)
        return 0;

    return sipVH_ktexteditor_28(sipGILState,meth,a0,a1,a2,a3);
}

void sipKTextEditor_SmartInterface::unbindSmartRange(KTextEditor::SmartRange *a0)
{
    extern void sipVH_ktexteditor_16(sip_gilstate_t,PyObject *,KTextEditor::SmartRange *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[10],sipPySelf,sipName_SmartInterface,sipName_unbindSmartRange);

    if (!meth)
        return;

    sipVH_ktexteditor_16(sipGILState,meth,a0);
}

void sipKTextEditor_SmartInterface::deleteRanges()
{
    typedef void (*sipVH_QtCore_5)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[11],sipPySelf,sipName_SmartInterface,sipName_deleteRanges);

    if (!meth)
        return;

    ((sipVH_QtCore_5)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[5]))(sipGILState,meth);
}

void sipKTextEditor_SmartInterface::addHighlightToDocument(KTextEditor::SmartRange *a0,bool a1)
{
    extern void sipVH_ktexteditor_27(sip_gilstate_t,PyObject *,KTextEditor::SmartRange *,bool);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[12],sipPySelf,sipName_SmartInterface,sipName_addHighlightToDocument);

    if (!meth)
        return;

    sipVH_ktexteditor_27(sipGILState,meth,a0,a1);
}

void sipKTextEditor_SmartInterface::removeHighlightFromDocument(KTextEditor::SmartRange *a0)
{
    extern void sipVH_ktexteditor_16(sip_gilstate_t,PyObject *,KTextEditor::SmartRange *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[13],sipPySelf,sipName_SmartInterface,sipName_removeHighlightFromDocument);

    if (!meth)
        return;

    sipVH_ktexteditor_16(sipGILState,meth,a0);
}

const QList<KTextEditor::SmartRange *> sipKTextEditor_SmartInterface::documentHighlights() const
{
    extern const QList<KTextEditor::SmartRange *> sipVH_ktexteditor_25(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[14]),sipPySelf,sipName_SmartInterface,sipName_documentHighlights);

    if (!meth)
        return QList<KTextEditor::SmartRange *>();

    return sipVH_ktexteditor_25(sipGILState,meth);
}

void sipKTextEditor_SmartInterface::clearDocumentHighlights()
{
    typedef void (*sipVH_QtCore_5)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[15],sipPySelf,sipName_SmartInterface,sipName_clearDocumentHighlights);

    if (!meth)
        return;

    ((sipVH_QtCore_5)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[5]))(sipGILState,meth);
}

void sipKTextEditor_SmartInterface::addHighlightToView(KTextEditor::View *a0,KTextEditor::SmartRange *a1,bool a2)
{
    extern void sipVH_ktexteditor_26(sip_gilstate_t,PyObject *,KTextEditor::View *,KTextEditor::SmartRange *,bool);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[16],sipPySelf,sipName_SmartInterface,sipName_addHighlightToView);

    if (!meth)
        return;

    sipVH_ktexteditor_26(sipGILState,meth,a0,a1,a2);
}

void sipKTextEditor_SmartInterface::removeHighlightFromView(KTextEditor::View *a0,KTextEditor::SmartRange *a1)
{
    extern void sipVH_ktexteditor_24(sip_gilstate_t,PyObject *,KTextEditor::View *,KTextEditor::SmartRange *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[17],sipPySelf,sipName_SmartInterface,sipName_removeHighlightFromView);

    if (!meth)
        return;

    sipVH_ktexteditor_24(sipGILState,meth,a0,a1);
}

const QList<KTextEditor::SmartRange *> sipKTextEditor_SmartInterface::viewHighlights(KTextEditor::View *a0) const
{
    extern const QList<KTextEditor::SmartRange *> sipVH_ktexteditor_23(sip_gilstate_t,PyObject *,KTextEditor::View *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[18]),sipPySelf,sipName_SmartInterface,sipName_viewHighlights);

    if (!meth)
        return QList<KTextEditor::SmartRange *>();

    return sipVH_ktexteditor_23(sipGILState,meth,a0);
}

void sipKTextEditor_SmartInterface::clearViewHighlights(KTextEditor::View *a0)
{
    extern void sipVH_ktexteditor_22(sip_gilstate_t,PyObject *,KTextEditor::View *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[19],sipPySelf,sipName_SmartInterface,sipName_clearViewHighlights);

    if (!meth)
        return;

    sipVH_ktexteditor_22(sipGILState,meth,a0);
}

void sipKTextEditor_SmartInterface::addActionsToDocument(KTextEditor::SmartRange *a0)
{
    extern void sipVH_ktexteditor_16(sip_gilstate_t,PyObject *,KTextEditor::SmartRange *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[20],sipPySelf,sipName_SmartInterface,sipName_addActionsToDocument);

    if (!meth)
        return;

    sipVH_ktexteditor_16(sipGILState,meth,a0);
}

void sipKTextEditor_SmartInterface::removeActionsFromDocument(KTextEditor::SmartRange *a0)
{
    extern void sipVH_ktexteditor_16(sip_gilstate_t,PyObject *,KTextEditor::SmartRange *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[21],sipPySelf,sipName_SmartInterface,sipName_removeActionsFromDocument);

    if (!meth)
        return;

    sipVH_ktexteditor_16(sipGILState,meth,a0);
}

const QList<KTextEditor::SmartRange *> sipKTextEditor_SmartInterface::documentActions() const
{
    extern const QList<KTextEditor::SmartRange *> sipVH_ktexteditor_25(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[22]),sipPySelf,sipName_SmartInterface,sipName_documentActions);

    if (!meth)
        return QList<KTextEditor::SmartRange *>();

    return sipVH_ktexteditor_25(sipGILState,meth);
}

void sipKTextEditor_SmartInterface::clearDocumentActions()
{
    typedef void (*sipVH_QtCore_5)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[23],sipPySelf,sipName_SmartInterface,sipName_clearDocumentActions);

    if (!meth)
        return;

    ((sipVH_QtCore_5)(sipModuleAPI_ktexteditor_QtCore->em_virthandlers[5]))(sipGILState,meth);
}

void sipKTextEditor_SmartInterface::addActionsToView(KTextEditor::View *a0,KTextEditor::SmartRange *a1)
{
    extern void sipVH_ktexteditor_24(sip_gilstate_t,PyObject *,KTextEditor::View *,KTextEditor::SmartRange *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[24],sipPySelf,sipName_SmartInterface,sipName_addActionsToView);

    if (!meth)
        return;

    sipVH_ktexteditor_24(sipGILState,meth,a0,a1);
}

void sipKTextEditor_SmartInterface::removeActionsFromView(KTextEditor::View *a0,KTextEditor::SmartRange *a1)
{
    extern void sipVH_ktexteditor_24(sip_gilstate_t,PyObject *,KTextEditor::View *,KTextEditor::SmartRange *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[25],sipPySelf,sipName_SmartInterface,sipName_removeActionsFromView);

    if (!meth)
        return;

    sipVH_ktexteditor_24(sipGILState,meth,a0,a1);
}

const QList<KTextEditor::SmartRange *> sipKTextEditor_SmartInterface::viewActions(KTextEditor::View *a0) const
{
    extern const QList<KTextEditor::SmartRange *> sipVH_ktexteditor_23(sip_gilstate_t,PyObject *,KTextEditor::View *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[26]),sipPySelf,sipName_SmartInterface,sipName_viewActions);

    if (!meth)
        return QList<KTextEditor::SmartRange *>();

    return sipVH_ktexteditor_23(sipGILState,meth,a0);
}

void sipKTextEditor_SmartInterface::clearViewActions(KTextEditor::View *a0)
{
    extern void sipVH_ktexteditor_22(sip_gilstate_t,PyObject *,KTextEditor::View *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[27],sipPySelf,sipName_SmartInterface,sipName_clearViewActions);

    if (!meth)
        return;

    sipVH_ktexteditor_22(sipGILState,meth,a0);
}

void sipKTextEditor_SmartInterface::attributeDynamic(KTextEditor::Attribute::Ptr a0)
{
    extern void sipVH_ktexteditor_21(sip_gilstate_t,PyObject *,KSharedPtr<KTextEditor::Attribute>);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[28],sipPySelf,sipName_SmartInterface,sipName_attributeDynamic);

    if (!meth)
        return;

    sipVH_ktexteditor_21(sipGILState,meth,a0);
}

void sipKTextEditor_SmartInterface::attributeNotDynamic(KTextEditor::Attribute::Ptr a0)
{
    extern void sipVH_ktexteditor_21(sip_gilstate_t,PyObject *,KSharedPtr<KTextEditor::Attribute>);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[29],sipPySelf,sipName_SmartInterface,sipName_attributeNotDynamic);

    if (!meth)
        return;

    sipVH_ktexteditor_21(sipGILState,meth,a0);
}

void sipKTextEditor_SmartInterface::sipProtect_attributeDynamic(KTextEditor::Attribute::Ptr a0)
{
    attributeDynamic(a0);
}

void sipKTextEditor_SmartInterface::sipProtect_attributeNotDynamic(KTextEditor::Attribute::Ptr a0)
{
    attributeNotDynamic(a0);
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_smartMutex(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_smartMutex(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            QMutex *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->smartMutex();
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_QMutex,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_smartMutex);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_clearSmartInterface(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_clearSmartInterface(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_clearSmartInterface);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->clearSmartInterface();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_clearSmartInterface);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_clearOnDocumentReload(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_clearOnDocumentReload(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->clearOnDocumentReload();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_clearOnDocumentReload);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_setClearOnDocumentReload(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_setClearOnDocumentReload(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        bool a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"Bb",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->setClearOnDocumentReload(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_setClearOnDocumentReload);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_currentRevision(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_currentRevision(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            int sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_currentRevision);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->currentRevision();
            Py_END_ALLOW_THREADS

            return SIPLong_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_currentRevision);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_releaseRevision(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_releaseRevision(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        int a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"Bi",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,&a0))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_releaseRevision);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->releaseRevision(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_releaseRevision);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_useRevision(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_useRevision(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        int a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"Bi",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,&a0))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_useRevision);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->useRevision(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_useRevision);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_clearRevision(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_clearRevision(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->clearRevision();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_clearRevision);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_translateFromRevision(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_translateFromRevision(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const KTextEditor::Cursor * a0;
        KTextEditor::SmartCursor::InsertBehavior a1 = KTextEditor::SmartCursor::StayOnInsert;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9|E",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_Cursor,&a0,sipType_KTextEditor_SmartCursor_InsertBehavior,&a1))
        {
            KTextEditor::Cursor *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new KTextEditor::Cursor((sipSelfWasArg ? sipCpp->KTextEditor::SmartInterface::translateFromRevision(*a0,a1) : sipCpp->translateFromRevision(*a0,a1)));
            Py_END_ALLOW_THREADS

            return sipConvertFromNewType(sipRes,sipType_KTextEditor_Cursor,NULL);
        }
    }

    {
        const KTextEditor::Range * a0;
        KTextEditor::SmartRange::InsertBehaviors * a1;
        int a1State = 0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9J1",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_Range,&a0,sipType_KTextEditor_SmartRange_InsertBehaviors,&a1,&a1State))
        {
            KTextEditor::Range *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new KTextEditor::Range((sipSelfWasArg ? sipCpp->KTextEditor::SmartInterface::translateFromRevision(*a0,*a1) : sipCpp->translateFromRevision(*a0,*a1)));
            Py_END_ALLOW_THREADS

            sipReleaseType(a1,sipType_KTextEditor_SmartRange_InsertBehaviors,a1State);

            return sipConvertFromNewType(sipRes,sipType_KTextEditor_Range,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_translateFromRevision);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_newSmartCursor(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_newSmartCursor(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const KTextEditor::Cursor& a0def = KTextEditor::Cursor::start();
        const KTextEditor::Cursor * a0 = &a0def;
        KTextEditor::SmartCursor::InsertBehavior a1 = KTextEditor::SmartCursor::MoveOnInsert;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B|J9E",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_Cursor,&a0,sipType_KTextEditor_SmartCursor_InsertBehavior,&a1))
        {
            KTextEditor::SmartCursor *sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_newSmartCursor);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->newSmartCursor(*a0,a1);
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartCursor,NULL);
        }
    }

    {
        int a0;
        int a1;
        KTextEditor::SmartCursor::InsertBehavior a2 = KTextEditor::SmartCursor::MoveOnInsert;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"Bii|E",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,&a0,&a1,sipType_KTextEditor_SmartCursor_InsertBehavior,&a2))
        {
            KTextEditor::SmartCursor *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->newSmartCursor(a0,a1,a2);
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartCursor,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_newSmartCursor);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_deleteCursors(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_deleteCursors(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_deleteCursors);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->deleteCursors();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_deleteCursors);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_newSmartRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_newSmartRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const KTextEditor::Range& a0def = KTextEditor::Range();
        const KTextEditor::Range * a0 = &a0def;
        KTextEditor::SmartRange * a1 = 0;
        KTextEditor::SmartRange::InsertBehaviors a2def = KTextEditor::SmartRange::DoNotExpand;
        KTextEditor::SmartRange::InsertBehaviors * a2 = &a2def;
        int a2State = 0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B|J9J8J1",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_Range,&a0,sipType_KTextEditor_SmartRange,&a1,sipType_KTextEditor_SmartRange_InsertBehaviors,&a2,&a2State))
        {
            KTextEditor::SmartRange *sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_newSmartRange);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->newSmartRange(*a0,a1,*a2);
            Py_END_ALLOW_THREADS

            sipReleaseType(a2,sipType_KTextEditor_SmartRange_InsertBehaviors,a2State);

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    {
        const KTextEditor::Cursor * a0;
        const KTextEditor::Cursor * a1;
        KTextEditor::SmartRange * a2 = 0;
        KTextEditor::SmartRange::InsertBehaviors a3def = KTextEditor::SmartRange::DoNotExpand;
        KTextEditor::SmartRange::InsertBehaviors * a3 = &a3def;
        int a3State = 0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9J9|J8J1",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_Cursor,&a0,sipType_KTextEditor_Cursor,&a1,sipType_KTextEditor_SmartRange,&a2,sipType_KTextEditor_SmartRange_InsertBehaviors,&a3,&a3State))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->newSmartRange(*a0,*a1,a2,*a3);
            Py_END_ALLOW_THREADS

            sipReleaseType(a3,sipType_KTextEditor_SmartRange_InsertBehaviors,a3State);

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    {
        int a0;
        int a1;
        int a2;
        int a3;
        KTextEditor::SmartRange * a4 = 0;
        KTextEditor::SmartRange::InsertBehaviors a5def = KTextEditor::SmartRange::DoNotExpand;
        KTextEditor::SmartRange::InsertBehaviors * a5 = &a5def;
        int a5State = 0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"Biiii|J8J1",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,&a0,&a1,&a2,&a3,sipType_KTextEditor_SmartRange,&a4,sipType_KTextEditor_SmartRange_InsertBehaviors,&a5,&a5State))
        {
            KTextEditor::SmartRange *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->newSmartRange(a0,a1,a2,a3,a4,*a5);
            Py_END_ALLOW_THREADS

            sipReleaseType(a5,sipType_KTextEditor_SmartRange_InsertBehaviors,a5State);

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    {
        KTextEditor::SmartCursor * a0;
        KTextEditor::SmartCursor * a1;
        KTextEditor::SmartRange * a2 = 0;
        KTextEditor::SmartRange::InsertBehaviors a3def = KTextEditor::SmartRange::DoNotExpand;
        KTextEditor::SmartRange::InsertBehaviors * a3 = &a3def;
        int a3State = 0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8J8|J8J1",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_SmartCursor,&a0,sipType_KTextEditor_SmartCursor,&a1,sipType_KTextEditor_SmartRange,&a2,sipType_KTextEditor_SmartRange_InsertBehaviors,&a3,&a3State))
        {
            KTextEditor::SmartRange *sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_newSmartRange);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->newSmartRange(a0,a1,a2,*a3);
            Py_END_ALLOW_THREADS

            sipReleaseType(a3,sipType_KTextEditor_SmartRange_InsertBehaviors,a3State);

            return sipConvertFromType(sipRes,sipType_KTextEditor_SmartRange,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_newSmartRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_unbindSmartRange(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_unbindSmartRange(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartRange * a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_SmartRange,&a0))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_unbindSmartRange);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->unbindSmartRange(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_unbindSmartRange);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_deleteRanges(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_deleteRanges(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_deleteRanges);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->deleteRanges();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_deleteRanges);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_addHighlightToDocument(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_addHighlightToDocument(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartRange * a0;
        bool a1 = 0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8|b",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_SmartRange,&a0,&a1))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_addHighlightToDocument);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->addHighlightToDocument(a0,a1);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_addHighlightToDocument);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_removeHighlightFromDocument(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_removeHighlightFromDocument(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartRange * a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_SmartRange,&a0))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_removeHighlightFromDocument);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->removeHighlightFromDocument(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_removeHighlightFromDocument);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_documentHighlights(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_documentHighlights(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            QList<KTextEditor::SmartRange *> *sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_documentHighlights);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<KTextEditor::SmartRange *>(sipCpp->documentHighlights());
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_QList_0201KTextEditor_SmartRange,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_documentHighlights);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_clearDocumentHighlights(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_clearDocumentHighlights(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_clearDocumentHighlights);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->clearDocumentHighlights();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_clearDocumentHighlights);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_addHighlightToView(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_addHighlightToView(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::View * a0;
        KTextEditor::SmartRange * a1;
        bool a2 = 0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8J8|b",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_View,&a0,sipType_KTextEditor_SmartRange,&a1,&a2))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_addHighlightToView);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->addHighlightToView(a0,a1,a2);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_addHighlightToView);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_removeHighlightFromView(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_removeHighlightFromView(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::View * a0;
        KTextEditor::SmartRange * a1;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8J8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_View,&a0,sipType_KTextEditor_SmartRange,&a1))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_removeHighlightFromView);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->removeHighlightFromView(a0,a1);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_removeHighlightFromView);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_viewHighlights(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_viewHighlights(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::View * a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_View,&a0))
        {
            QList<KTextEditor::SmartRange *> *sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_viewHighlights);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<KTextEditor::SmartRange *>(sipCpp->viewHighlights(a0));
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_QList_0201KTextEditor_SmartRange,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_viewHighlights);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_clearViewHighlights(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_clearViewHighlights(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::View * a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_View,&a0))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_clearViewHighlights);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->clearViewHighlights(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_clearViewHighlights);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_addActionsToDocument(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_addActionsToDocument(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartRange * a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_SmartRange,&a0))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_addActionsToDocument);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->addActionsToDocument(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_addActionsToDocument);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_removeActionsFromDocument(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_removeActionsFromDocument(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartRange * a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_SmartRange,&a0))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_removeActionsFromDocument);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->removeActionsFromDocument(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_removeActionsFromDocument);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_documentActions(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_documentActions(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            QList<KTextEditor::SmartRange *> *sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_documentActions);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<KTextEditor::SmartRange *>(sipCpp->documentActions());
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_QList_0201KTextEditor_SmartRange,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_documentActions);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_clearDocumentActions(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_clearDocumentActions(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_clearDocumentActions);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->clearDocumentActions();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_clearDocumentActions);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_addActionsToView(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_addActionsToView(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::View * a0;
        KTextEditor::SmartRange * a1;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8J8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_View,&a0,sipType_KTextEditor_SmartRange,&a1))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_addActionsToView);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->addActionsToView(a0,a1);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_addActionsToView);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_removeActionsFromView(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_removeActionsFromView(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::View * a0;
        KTextEditor::SmartRange * a1;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8J8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_View,&a0,sipType_KTextEditor_SmartRange,&a1))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_removeActionsFromView);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->removeActionsFromView(a0,a1);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_removeActionsFromView);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_viewActions(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_viewActions(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::View * a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_View,&a0))
        {
            QList<KTextEditor::SmartRange *> *sipRes;

            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_viewActions);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<KTextEditor::SmartRange *>(sipCpp->viewActions(a0));
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_QList_0201KTextEditor_SmartRange,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_viewActions);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_clearViewActions(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_clearViewActions(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::View * a0;
        KTextEditor::SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ8",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KTextEditor_View,&a0))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_clearViewActions);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->clearViewActions(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_clearViewActions);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_attributeDynamic(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_attributeDynamic(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::Attribute::Ptr * a0;
        int a0State = 0;
        sipKTextEditor_SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ1",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KSharedPtr_0200KTextEditor_Attribute,&a0,&a0State))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_attributeDynamic);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_attributeDynamic(*a0);
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_KSharedPtr_0200KTextEditor_Attribute,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_attributeDynamic);

    return NULL;
}


extern "C" {static PyObject *meth_KTextEditor_SmartInterface_attributeNotDynamic(PyObject *, PyObject *);}
static PyObject *meth_KTextEditor_SmartInterface_attributeNotDynamic(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        KTextEditor::Attribute::Ptr * a0;
        int a0State = 0;
        sipKTextEditor_SmartInterface *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ1",&sipSelf,sipType_KTextEditor_SmartInterface,&sipCpp,sipType_KSharedPtr_0200KTextEditor_Attribute,&a0,&a0State))
        {
            if (sipSelfWasArg)
            {
                sipAbstractMethod(sipName_SmartInterface, sipName_attributeNotDynamic);
                return NULL;
            }

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_attributeNotDynamic(*a0);
            Py_END_ALLOW_THREADS

            sipReleaseType(a0,sipType_KSharedPtr_0200KTextEditor_Attribute,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_SmartInterface,sipName_attributeNotDynamic);

    return NULL;
}


/* Cast a pointer to a type somewhere in its superclass hierarchy. */
extern "C" {static void *cast_KTextEditor_SmartInterface(void *, const sipTypeDef *);}
static void *cast_KTextEditor_SmartInterface(void *ptr,const sipTypeDef *targetType)
{
    if (targetType == sipType_KTextEditor_SmartInterface)
        return ptr;

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_KTextEditor_SmartInterface(void *, int);}
static void release_KTextEditor_SmartInterface(void *sipCppV,int state)
{
    Py_BEGIN_ALLOW_THREADS

    if (state & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipKTextEditor_SmartInterface *>(sipCppV);
    else
        delete reinterpret_cast<KTextEditor::SmartInterface *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_KTextEditor_SmartInterface(sipSimpleWrapper *);}
static void dealloc_KTextEditor_SmartInterface(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerived(sipSelf))
        reinterpret_cast<sipKTextEditor_SmartInterface *>(sipSelf->u.cppPtr)->sipPySelf = NULL;

    if (sipIsPyOwned(sipSelf))
    {
        release_KTextEditor_SmartInterface(sipSelf->u.cppPtr,sipSelf->flags);
    }
}


extern "C" {static void *init_KTextEditor_SmartInterface(sipSimpleWrapper *, PyObject *, PyObject **, int *);}
static void *init_KTextEditor_SmartInterface(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject **, int *sipArgsParsed)
{
    sipKTextEditor_SmartInterface *sipCpp = 0;

    if (!sipCpp)
    {
        if (sipParseArgs(sipArgsParsed,sipArgs,""))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipKTextEditor_SmartInterface();
            Py_END_ALLOW_THREADS
        }
    }

    if (sipCpp)
        sipCpp->sipPySelf = sipSelf;

    return sipCpp;
}


static PyMethodDef methods_KTextEditor_SmartInterface[] = {
    {SIP_MLNAME_CAST(sipName_addActionsToDocument), meth_KTextEditor_SmartInterface_addActionsToDocument, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_addActionsToView), meth_KTextEditor_SmartInterface_addActionsToView, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_addHighlightToDocument), meth_KTextEditor_SmartInterface_addHighlightToDocument, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_addHighlightToView), meth_KTextEditor_SmartInterface_addHighlightToView, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_attributeDynamic), meth_KTextEditor_SmartInterface_attributeDynamic, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_attributeNotDynamic), meth_KTextEditor_SmartInterface_attributeNotDynamic, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearDocumentActions), meth_KTextEditor_SmartInterface_clearDocumentActions, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearDocumentHighlights), meth_KTextEditor_SmartInterface_clearDocumentHighlights, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearOnDocumentReload), meth_KTextEditor_SmartInterface_clearOnDocumentReload, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearRevision), meth_KTextEditor_SmartInterface_clearRevision, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearSmartInterface), meth_KTextEditor_SmartInterface_clearSmartInterface, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearViewActions), meth_KTextEditor_SmartInterface_clearViewActions, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_clearViewHighlights), meth_KTextEditor_SmartInterface_clearViewHighlights, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_currentRevision), meth_KTextEditor_SmartInterface_currentRevision, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_deleteCursors), meth_KTextEditor_SmartInterface_deleteCursors, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_deleteRanges), meth_KTextEditor_SmartInterface_deleteRanges, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_documentActions), meth_KTextEditor_SmartInterface_documentActions, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_documentHighlights), meth_KTextEditor_SmartInterface_documentHighlights, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_newSmartCursor), meth_KTextEditor_SmartInterface_newSmartCursor, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_newSmartRange), meth_KTextEditor_SmartInterface_newSmartRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_releaseRevision), meth_KTextEditor_SmartInterface_releaseRevision, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_removeActionsFromDocument), meth_KTextEditor_SmartInterface_removeActionsFromDocument, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_removeActionsFromView), meth_KTextEditor_SmartInterface_removeActionsFromView, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_removeHighlightFromDocument), meth_KTextEditor_SmartInterface_removeHighlightFromDocument, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_removeHighlightFromView), meth_KTextEditor_SmartInterface_removeHighlightFromView, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setClearOnDocumentReload), meth_KTextEditor_SmartInterface_setClearOnDocumentReload, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_smartMutex), meth_KTextEditor_SmartInterface_smartMutex, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_translateFromRevision), meth_KTextEditor_SmartInterface_translateFromRevision, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_unbindSmartRange), meth_KTextEditor_SmartInterface_unbindSmartRange, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_useRevision), meth_KTextEditor_SmartInterface_useRevision, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_viewActions), meth_KTextEditor_SmartInterface_viewActions, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_viewHighlights), meth_KTextEditor_SmartInterface_viewHighlights, METH_VARARGS, NULL}
};


pyqt4ClassTypeDef pyqt4Type_ktexteditor_KTextEditor_SmartInterface = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_ABSTRACT|SIP_TYPE_CLASS,
        sipNameNr_KTextEditor__SmartInterface,
        {0}
    },
    sipNameNr_SmartInterface,
    sipNameNr_PyQt4_QtCore_pyqtWrapperType,
    -1,
    {1, 255, 0},
    0,
    0,
    32, methods_KTextEditor_SmartInterface,
    0, 0,
    0, 0,
    init_KTextEditor_SmartInterface,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_KTextEditor_SmartInterface,
    release_KTextEditor_SmartInterface,
    cast_KTextEditor_SmartInterface,
    0,
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    0,
    0
},
    0,
    0,
    0,
    0
};
