
// Auto generated

// include header:
//#include "qtextlayoutwrapper.h"
//#include "header_cpp.h"

#include "qtextlayout_wrapper.h"


// list of registered base casters for this wrapper class:
QList<RJSBasecaster_QTextLayout*> QTextLayout_Wrapper::basecasters_QTextLayout;

// static functions implementation in singleton wrapper:

#ifndef QT_NO_RAWFONT

#endif

#if !defined(QT_NO_RAWFONT)

#endif

void QTextLayout_Wrapper::init(RJSApi& handler) {

    //qmlRegisterType<QTextLayout_Wrapper>("org.qcad", 1, 0, "QTextLayout_Wrapper");
    qmlRegisterInterface<QTextLayout_Wrapper>("QTextLayout_Wrapper", 1);


    QJSEngine* engine = handler.getEngine();


    // make type scriptable for JS files:
    QJSValue global = engine->globalObject();
    RJSType_QTextLayout* t = new RJSType_QTextLayout();
    global.setProperty("RJSType_QTextLayout", engine->newQObject(t));

    // initialize ID for this type:
    RJSType_QTextLayout::getIdStatic();



    // wrapper:
    QJSValue mo = engine->newQMetaObject(&QTextLayout_Wrapper::staticMetaObject);
    engine->globalObject().setProperty("QTextLayout_Wrapper", mo);



    // JS base class:
    //QJSValue mob = engine->newQMetaObject(&QTextLayout_BaseJs::staticMetaObject);
    //engine->globalObject().setProperty("QTextLayout_BaseJs", mob);

    QString fileName = ":generator/js/QTextLayout.js";
    QFile scriptFile(fileName);
    if (!scriptFile.open(QIODevice::ReadOnly)) {
        qWarning() << "JS script wrapper file not found:" << fileName;
        return;
    }
    QTextStream stream(&scriptFile);
    QString contents = stream.readAll();
    scriptFile.close();

    qDebug() << "Evaluating file: " << fileName;
    QJSValue result = engine->evaluate(contents, fileName);
    if (result.isError()) {
        qWarning()
                << "Uncaught exception at line"
                << result.property("lineNumber").toInt()
                << ":" << result.toString();
    }
}

/*
// special constructor used as prototype:
QTextLayout_Wrapper::QTextLayout_Wrapper(QJSEngine* e) : wrapped(nullptr), wrappedCreated(false) {
        //setObjectName("QTextLayout_Wrapper");
        setEngine(e);

        // signal forwarding:
        //initConnections();
      }

*/


// special constructor to wrap existing object:
QTextLayout_Wrapper::QTextLayout_Wrapper(RJSApi& h, QTextLayout* o, bool wrappedCreated) : RJSWrapperObj(h), wrapped(o), wrappedCreated(wrappedCreated) {
    //RDebug::incCounter(QString("QTextLayout_Wrapper_") + handler.getEngine()->objectName());
    //RDebug::incCounter(QString("QTextLayout_Wrapper"));
    //setObjectName("QTextLayout_Wrapper");
    //setHandler(h);

    // signal forwarding:
    initConnections();
}

// special constructor to wrap existing object from shared pointer:
QTextLayout_Wrapper::QTextLayout_Wrapper(RJSApi& h, QSharedPointer<QTextLayout> o) : RJSWrapperObj(h), wrapped(nullptr), spWrapped(o), wrappedCreated(false) {
    //RDebug::incCounter(QString("QTextLayout_Wrapper_") + handler.getEngine()->objectName());
    //RDebug::incCounter(QString("QTextLayout_Wrapper"));
    //setObjectName("QTextLayout_Wrapper");
    //setHandler(h);

    // signal forwarding:
    initConnections();
}


// destructor:
QTextLayout_Wrapper::~QTextLayout_Wrapper() {
    //RDebug::decCounter(QString("QTextLayout_Wrapper_") + handler.getEngine()->objectName());
    //RDebug::decCounter(QString("QTextLayout_Wrapper"));

    //qDebug() << "QTextLayout_Wrapper::~QTextLayout_Wrapper";

    // tell script handler that this wrapper no longer exists:
    handler.unregisterWrapper(*this);


    if (wrappedCreated) {

        // never delete wrapped object (non-copyable, CPP ownership or private destructor)
        //qDebug() << "NOT deleting instance of QTextLayout";

    }

}

// initialization of signal forwarding

void QTextLayout_Wrapper::initConnections() {

    //setObjectName("QTextLayout_Wrapper");

    // tell script handler that this wrapper needs to be deleted if the engine is deleted:
    handler.registerWrapper(*this);


    // wrapped object is not a QObject:
    // wrapper is managed by script engine:
    //QJSEngine::setObjectOwnership(this, QJSEngine::CppOwnership);


    if (hasWrapped()) {

        // set up signal forwarding:

    }
}


// constructors:

// Class: QTextLayout
// Function:
// Source:
// Static: false
// Parameters: 3
// preceding Parameters: -1
QTextLayout_Wrapper::QTextLayout_Wrapper

(

    // RJSApi:
    QObject* h
    ,
    const QJSValue&
    a1,
    const QJSValue&
    a2,
    const QJSValue&
    a3
)

    : RJSWrapperObj(*(RJSApi*)h)

{

    //RDebug::incCounter(QString("QTextLayout_Wrapper_") + handler.getEngine()->objectName());
    //RDebug::incCounter(QString("QTextLayout_Wrapper"));

    // check parameter types:
    if (
        RJSHelper::is_QString(handler, a1
                             )

        && RJSHelper::is_QFont(handler, a2
                              )

        && RJSHelper::is_QPaintDevice_ptr(handler, a3
                                          , true

                                         )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: text (QString)

        QString a1_cpp;

        a1_cpp = RJSHelper::js2cpp_QString(handler, a1);

        // convert js parameter to cpp: font (QFont)

        QFont a2_cpp;

        a2_cpp = RJSHelper::js2cpp_QFont(handler, a2);

        // convert js parameter to cpp: paintdevice (QPaintDevice)


        // pointer:
        QPaintDevice*
        a3_cpp;


        if (a3.isUndefined()) {
            a3_cpp = nullptr;
        }
        else {
            a3_cpp = RJSHelper::js2cpp_QPaintDevice_ptr(handler, a3);
        }


        // call function:

        // construct wrapper:


        wrapped = new QTextLayout(
            a1_cpp
            , a2_cpp
            , a3_cpp

        );
        wrappedCreated = true;


        // signal forwarding:
        // TODO
        //connect(wrapped, SIGNAL(triggered(bool)), this, SLOT(triggeredEmitter(bool)));
        initConnections();
        return;


    }

    // check parameter types:
    if (
        RJSHelper::is_QString(handler, a1
                             )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: text (QString)

        QString a1_cpp;

        a1_cpp = RJSHelper::js2cpp_QString(handler, a1);


        // call function:

        // construct wrapper:


        wrapped = new QTextLayout(
            a1_cpp

        );
        wrappedCreated = true;


        // signal forwarding:
        // TODO
        //connect(wrapped, SIGNAL(triggered(bool)), this, SLOT(triggeredEmitter(bool)));
        initConnections();
        return;


    }

    {


        // call function:

        // construct wrapper:


        wrapped = new QTextLayout(

        );
        wrappedCreated = true;


        // signal forwarding:
        // TODO
        //connect(wrapped, SIGNAL(triggered(bool)), this, SLOT(triggeredEmitter(bool)));
        initConnections();
        return;


    }

    // no constructor without arguments defined
    // allow constructor for prototype objects without args:
    if (
        a1.isUndefined()
        && a2.isUndefined()
        && a3.isUndefined()

    ) {
        wrapped = nullptr;
        wrappedCreated = false;
        return;
    }


    qWarning() << "no matching constructor variant found for QTextLayout";
    wrapped = nullptr;
    wrappedCreated = false;
    handler.trace();

}

#ifndef QT_NO_RAWFONT

#endif

#if !defined(QT_NO_RAWFONT)

#endif


// non-static functions:

// Class: QTextLayout
// Function: setFont
// Source:
// Static: false
// Parameters: 1
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::setFont
(

    const QJSValue&
    a1
)

{

    // check parameter types:
    if (
        RJSHelper::is_QFont(handler, a1
                           )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: f (QFont)

        QFont a1_cpp;

        a1_cpp = RJSHelper::js2cpp_QFont(handler, a1);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->setFont(
            a1_cpp

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for setFont";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: font
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::font
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        QFont res =

            w->font(

            );

        // return type: QFont

        return RJSHelper::cpp2js_QFont(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for font";
    handler.trace();
    return QJSValue();

}

#ifndef QT_NO_RAWFONT

#endif

// Class: QTextLayout
// Function: setText
// Source:
// Static: false
// Parameters: 1
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::setText
(

    const QJSValue&
    a1
)

{

    // check parameter types:
    if (
        RJSHelper::is_QString(handler, a1
                             )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: string (QString)

        QString a1_cpp;

        a1_cpp = RJSHelper::js2cpp_QString(handler, a1);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->setText(
            a1_cpp

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for setText";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: text
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::text
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        QString res =

            w->text(

            );

        // return type: QString

        return RJSHelper::cpp2js_QString(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for text";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: setPreeditArea
// Source:
// Static: false
// Parameters: 2
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::setPreeditArea
(

    const QJSValue&
    a1,
    const QJSValue&
    a2
)

{

    // check parameter types:
    if (
        RJSHelper::is_int(handler, a1
                         )

        && RJSHelper::is_QString(handler, a2
                                )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: position (int)

        int a1_cpp;

        a1_cpp = RJSHelper::js2cpp_int(handler, a1);

        // convert js parameter to cpp: text (QString)

        QString a2_cpp;

        a2_cpp = RJSHelper::js2cpp_QString(handler, a2);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->setPreeditArea(
            a1_cpp
            , a2_cpp

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for setPreeditArea";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: preeditAreaPosition
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::preeditAreaPosition
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        int res =

            w->preeditAreaPosition(

            );

        // return type: int

        return RJSHelper::cpp2js_int(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for preeditAreaPosition";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: preeditAreaText
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::preeditAreaText
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        QString res =

            w->preeditAreaText(

            );

        // return type: QString

        return RJSHelper::cpp2js_QString(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for preeditAreaText";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: clearFormats
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::clearFormats
(

)

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->clearFormats(

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for clearFormats";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: setCacheEnabled
// Source:
// Static: false
// Parameters: 1
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::setCacheEnabled
(

    const QJSValue&
    a1
)

{

    // check parameter types:
    if (
        RJSHelper::is_bool(handler, a1
                          )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: enable (bool)

        bool a1_cpp;

        a1_cpp = RJSHelper::js2cpp_bool(handler, a1);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->setCacheEnabled(
            a1_cpp

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for setCacheEnabled";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: cacheEnabled
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::cacheEnabled
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        bool res =

            w->cacheEnabled(

            );

        // return type: bool

        return RJSHelper::cpp2js_bool(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for cacheEnabled";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: setCursorMoveStyle
// Source:
// Static: false
// Parameters: 1
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::setCursorMoveStyle
(

    const QJSValue&
    a1
)

{

    // check parameter types:
    if (
        RJSHelper::is_Qt_CursorMoveStyle(handler, a1
                                        )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: style (Qt::CursorMoveStyle)

        Qt::CursorMoveStyle a1_cpp;

        a1_cpp = RJSHelper::js2cpp_Qt_CursorMoveStyle(handler, a1);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->setCursorMoveStyle(
            a1_cpp

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for setCursorMoveStyle";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: cursorMoveStyle
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::cursorMoveStyle
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        Qt::CursorMoveStyle res =

            w->cursorMoveStyle(

            );

        // return type: Qt::CursorMoveStyle

        return RJSHelper::cpp2js_Qt_CursorMoveStyle(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for cursorMoveStyle";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: beginLayout
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::beginLayout
(

)

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->beginLayout(

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for beginLayout";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: endLayout
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::endLayout
(

)

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->endLayout(

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for endLayout";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: clearLayout
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::clearLayout
(

)

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->clearLayout(

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for clearLayout";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: lineCount
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::lineCount
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        int res =

            w->lineCount(

            );

        // return type: int

        return RJSHelper::cpp2js_int(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for lineCount";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: isValidCursorPosition
// Source:
// Static: false
// Parameters: 1
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::isValidCursorPosition
(

    const QJSValue&
    a1
)

const

{

    // check parameter types:
    if (
        RJSHelper::is_int(handler, a1
                         )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: pos (int)

        int a1_cpp;

        a1_cpp = RJSHelper::js2cpp_int(handler, a1);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        bool res =

            w->isValidCursorPosition(
                a1_cpp

            );

        // return type: bool

        return RJSHelper::cpp2js_bool(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for isValidCursorPosition";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: nextCursorPosition
// Source:
// Static: false
// Parameters: 2
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::nextCursorPosition
(

    const QJSValue&
    a1,
    const QJSValue&
    a2
)

const

{

    // check parameter types:
    if (
        RJSHelper::is_int(handler, a1
                         )

        && RJSHelper::is_QTextLayout_CursorMode(handler, a2
                , true

                                               )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: oldPos (int)

        int a1_cpp;

        a1_cpp = RJSHelper::js2cpp_int(handler, a1);

        // convert js parameter to cpp: mode (QTextLayout::CursorMode)

        QTextLayout::CursorMode a2_cpp;


        if (a2.isUndefined()) {
            a2_cpp = QTextLayout::SkipCharacters;
        }
        else {
            a2_cpp = RJSHelper::js2cpp_QTextLayout_CursorMode(handler, a2);
        }


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        int res =

            w->nextCursorPosition(
                a1_cpp
                , a2_cpp

            );

        // return type: int

        return RJSHelper::cpp2js_int(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for nextCursorPosition";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: previousCursorPosition
// Source:
// Static: false
// Parameters: 2
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::previousCursorPosition
(

    const QJSValue&
    a1,
    const QJSValue&
    a2
)

const

{

    // check parameter types:
    if (
        RJSHelper::is_int(handler, a1
                         )

        && RJSHelper::is_QTextLayout_CursorMode(handler, a2
                , true

                                               )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: oldPos (int)

        int a1_cpp;

        a1_cpp = RJSHelper::js2cpp_int(handler, a1);

        // convert js parameter to cpp: mode (QTextLayout::CursorMode)

        QTextLayout::CursorMode a2_cpp;


        if (a2.isUndefined()) {
            a2_cpp = QTextLayout::SkipCharacters;
        }
        else {
            a2_cpp = RJSHelper::js2cpp_QTextLayout_CursorMode(handler, a2);
        }


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        int res =

            w->previousCursorPosition(
                a1_cpp
                , a2_cpp

            );

        // return type: int

        return RJSHelper::cpp2js_int(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for previousCursorPosition";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: leftCursorPosition
// Source:
// Static: false
// Parameters: 1
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::leftCursorPosition
(

    const QJSValue&
    a1
)

const

{

    // check parameter types:
    if (
        RJSHelper::is_int(handler, a1
                         )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: oldPos (int)

        int a1_cpp;

        a1_cpp = RJSHelper::js2cpp_int(handler, a1);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        int res =

            w->leftCursorPosition(
                a1_cpp

            );

        // return type: int

        return RJSHelper::cpp2js_int(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for leftCursorPosition";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: rightCursorPosition
// Source:
// Static: false
// Parameters: 1
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::rightCursorPosition
(

    const QJSValue&
    a1
)

const

{

    // check parameter types:
    if (
        RJSHelper::is_int(handler, a1
                         )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: oldPos (int)

        int a1_cpp;

        a1_cpp = RJSHelper::js2cpp_int(handler, a1);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        int res =

            w->rightCursorPosition(
                a1_cpp

            );

        // return type: int

        return RJSHelper::cpp2js_int(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for rightCursorPosition";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: drawCursor
// Source:
// Static: false
// Parameters: 4
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::drawCursor
(

    const QJSValue&
    a1,
    const QJSValue&
    a2,
    const QJSValue&
    a3,
    const QJSValue&
    a4
)

const

{

    // check parameter types:
    if (
        RJSHelper::is_QPainter_ptr(handler, a1
                                   , true

                                  )

        && RJSHelper::is_QPointF(handler, a2
                                )

        && RJSHelper::is_int(handler, a3
                            )

        && RJSHelper::is_int(handler, a4
                            )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: p (QPainter)


        // pointer:
        QPainter*
        a1_cpp;

        a1_cpp = RJSHelper::js2cpp_QPainter_ptr(handler, a1);

        // convert js parameter to cpp: pos (QPointF)

        QPointF a2_cpp;

        a2_cpp = RJSHelper::js2cpp_QPointF(handler, a2);

        // convert js parameter to cpp: cursorPosition (int)

        int a3_cpp;

        a3_cpp = RJSHelper::js2cpp_int(handler, a3);

        // convert js parameter to cpp: width (int)

        int a4_cpp;

        a4_cpp = RJSHelper::js2cpp_int(handler, a4);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->drawCursor(
            a1_cpp
            , a2_cpp
            , a3_cpp
            , a4_cpp

        );

        return QJSValue();

    }

    // check parameter types:
    if (
        RJSHelper::is_QPainter_ptr(handler, a1
                                   , true

                                  )

        && RJSHelper::is_QPointF(handler, a2
                                )

        && RJSHelper::is_int(handler, a3
                            )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: p (QPainter)


        // pointer:
        QPainter*
        a1_cpp;

        a1_cpp = RJSHelper::js2cpp_QPainter_ptr(handler, a1);

        // convert js parameter to cpp: pos (QPointF)

        QPointF a2_cpp;

        a2_cpp = RJSHelper::js2cpp_QPointF(handler, a2);

        // convert js parameter to cpp: cursorPosition (int)

        int a3_cpp;

        a3_cpp = RJSHelper::js2cpp_int(handler, a3);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->drawCursor(
            a1_cpp
            , a2_cpp
            , a3_cpp

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for drawCursor";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: position
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::position
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        QPointF res =

            w->position(

            );

        // return type: QPointF

        return RJSHelper::cpp2js_QPointF(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for position";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: setPosition
// Source:
// Static: false
// Parameters: 1
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::setPosition
(

    const QJSValue&
    a1
)

{

    // check parameter types:
    if (
        RJSHelper::is_QPointF(handler, a1
                             )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: p (QPointF)

        QPointF a1_cpp;

        a1_cpp = RJSHelper::js2cpp_QPointF(handler, a1);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->setPosition(
            a1_cpp

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for setPosition";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: boundingRect
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::boundingRect
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        QRectF res =

            w->boundingRect(

            );

        // return type: QRectF

        return RJSHelper::cpp2js_QRectF(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for boundingRect";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: minimumWidth
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::minimumWidth
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        qreal res =

            w->minimumWidth(

            );

        // return type: qreal

        return RJSHelper::cpp2js_qreal(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for minimumWidth";
    handler.trace();
    return QJSValue();

}

// Class: QTextLayout
// Function: maximumWidth
// Source:
// Static: false
// Parameters: 0
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::maximumWidth
(

)

const

{

    {


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();
        qreal res =

            w->maximumWidth(

            );

        // return type: qreal

        return RJSHelper::cpp2js_qreal(
                   handler,
                   // non-copyable: false
                   res

               );

    }

    qWarning() << "no matching function variant found for maximumWidth";
    handler.trace();
    return QJSValue();

}

#if !defined(QT_NO_RAWFONT)

#endif

// Class: QTextLayout
// Function: setFlags
// Source:
// Static: false
// Parameters: 1
// preceding Parameters: -1

QJSValue
QTextLayout_Wrapper::setFlags
(

    const QJSValue&
    a1
)

{

    // check parameter types:
    if (
        RJSHelper::is_int(handler, a1
                         )


    ) {

        // prepare parameters:

        // convert js parameter to cpp: flags (int)

        int a1_cpp;

        a1_cpp = RJSHelper::js2cpp_int(handler, a1);


        // call function:

        if (!hasWrapped()) {
            qWarning() << "wrapped is NULL";
            handler.trace();
            return QJSValue();
        }


        // non-static member function:
        // call function of wrapped object:

        // call function of C++ class:
        QTextLayout* w = getWrapped();

        w->setFlags(
            a1_cpp

        );

        return QJSValue();

    }

    qWarning() << "no matching function variant found for setFlags";
    handler.trace();
    return QJSValue();

}


// member functions for static properties, forward to static function



// protected overwritten functions / events and their public invokable counterparts:

