/*
 * Interface wrapper code.
 *
 * Generated by SIP 6.15.3
 *
 * Copyright (c) 2026 Riverbank Computing Limited <info@riverbankcomputing.com>
 * 
 * This file is part of PyQt6.
 * 
 * This file may be used under the terms of the GNU General Public License
 * version 3.0 as published by the Free Software Foundation and appearing in
 * the file LICENSE included in the packaging of this file.  Please review the
 * following information to ensure the GNU General Public License version 3.0
 * requirements will be met: http://www.gnu.org/copyleft/gpl.html.
 * 
 * If you do not wish to use this file under the terms of the GPL version 3.0
 * then you may purchase a commercial license.  For more information contact
 * info@riverbankcomputing.com.
 * 
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 */

#include "sipAPIQtPdf.h"

#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtPdf/qpdfdocument.sip"
#include <qpdfdocument.h>
#line 29 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"

#line 28 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qobject.sip"
#include <qobject.h>
#line 33 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 24 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qstring.sip"
#include <qstring.h>
#line 36 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtPdf/qpdfselection.sip"
#include <qpdfselection.h>
#line 39 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 110 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qpoint.sip"
#include <qpoint.h>
#line 42 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 33 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtGui/qimage.sip"
#include <qimage.h>
#line 45 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 30 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qsize.sip"
#include <qsize.h>
#line 48 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtPdf/qpdfdocumentrenderoptions.sip"
#include <qpdfdocumentrenderoptions.h>
#line 51 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 304 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qabstractitemmodel.sip"
#include <qabstractitemmodel.h>
#line 54 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 114 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qsize.sip"
#include <qsize.h>
#line 57 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qvariant.sip"
#include <qvariant.h>
#line 60 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qiodevice.sip"
#include <qiodevice.h>
#line 63 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 154 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 68 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qmetaobject.sip"
#include <qmetaobject.h>
#line 71 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 74 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 277 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 77 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 254 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 80 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 28 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 83 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 30 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 86 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 135 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 89 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 154 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qtextstream.sip"
#include <qtextstream.h>
#line 94 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qthread.sip"
#include <qthread.h>
#line 97 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qanystringview.sip"
#include <qanystringview.h>
#line 100 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 25 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qflags.sip"
#include <qglobal.h>
#line 103 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qregularexpression.sip"
#include <qregularexpression.h>
#line 106 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"
#line 26 "/build/pyqt6/src/pyqt6-6.11.0/sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 109 "/build/pyqt6/src/pyqt6-6.11.0/build/QtPdf/sipQtPdfQPdfDocument.cpp"


class sipQPdfDocument : public ::QPdfDocument
{
public:
    sipQPdfDocument(::QObject*);
    virtual ~sipQPdfDocument();

    int qt_metacall(QMetaObject::Call, int, void **) SIP_OVERRIDE;
    void *qt_metacast(const char *) SIP_OVERRIDE;
    const QMetaObject *metaObject() const SIP_OVERRIDE;

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    bool event(::QEvent*) SIP_OVERRIDE;
    bool eventFilter(::QObject*, ::QEvent*) SIP_OVERRIDE;
    void timerEvent(::QTimerEvent*) SIP_OVERRIDE;
    void childEvent(::QChildEvent*) SIP_OVERRIDE;
    void customEvent(::QEvent*) SIP_OVERRIDE;
    void connectNotify(const ::QMetaMethod&) SIP_OVERRIDE;
    void disconnectNotify(const ::QMetaMethod&) SIP_OVERRIDE;

public:
    sipSimpleWrapper *sipPySelf;

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

    char sipPyMethods[7];
};

sipQPdfDocument::sipQPdfDocument(::QObject*a0): ::QPdfDocument(a0), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipQPdfDocument::~sipQPdfDocument()
{
    sipInstanceDestroyedEx(&sipPySelf);
}

const QMetaObject *sipQPdfDocument::metaObject() const
{
    if (sipGetInterpreter())
        return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : sip_QtPdf_qt_metaobject(sipPySelf, sipType_QPdfDocument);

    return ::QPdfDocument::metaObject();
}

int sipQPdfDocument::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = ::QPdfDocument::qt_metacall(_c, _id, _a);

    if (_id >= 0)
    {
        SIP_BLOCK_THREADS
        _id = sip_QtPdf_qt_metacall(sipPySelf, sipType_QPdfDocument, _c, _id, _a);
        SIP_UNBLOCK_THREADS
    }

    return _id;
}

void *sipQPdfDocument::qt_metacast(const char *_clname)
{
    void *sipCpp;

    return (sip_QtPdf_qt_metacast(sipPySelf, sipType_QPdfDocument, _clname, &sipCpp) ? sipCpp : ::QPdfDocument::qt_metacast(_clname));
}

bool sipQPdfDocument::event(::QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[0], &sipPySelf, SIP_NULLPTR, sipName_event);

    if (!sipMeth)
        return ::QPdfDocument::event(a0);

    extern bool sipVH_QtPdf_25(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QEvent*);

    return sipVH_QtPdf_25(sipGILState, sipImportedVirtErrorHandlers_QtPdf_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

bool sipQPdfDocument::eventFilter(::QObject*a0, ::QEvent*a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[1], &sipPySelf, SIP_NULLPTR, sipName_eventFilter);

    if (!sipMeth)
        return ::QPdfDocument::eventFilter(a0, a1);

    extern bool sipVH_QtPdf_26(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QObject*, ::QEvent*);

    return sipVH_QtPdf_26(sipGILState, sipImportedVirtErrorHandlers_QtPdf_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0, a1);
}

void sipQPdfDocument::timerEvent(::QTimerEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[2], &sipPySelf, SIP_NULLPTR, sipName_timerEvent);

    if (!sipMeth)
    {
        ::QPdfDocument::timerEvent(a0);
        return;
    }

    extern void sipVH_QtPdf_27(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QTimerEvent*);

    sipVH_QtPdf_27(sipGILState, sipImportedVirtErrorHandlers_QtPdf_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQPdfDocument::childEvent(::QChildEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[3], &sipPySelf, SIP_NULLPTR, sipName_childEvent);

    if (!sipMeth)
    {
        ::QPdfDocument::childEvent(a0);
        return;
    }

    extern void sipVH_QtPdf_28(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QChildEvent*);

    sipVH_QtPdf_28(sipGILState, sipImportedVirtErrorHandlers_QtPdf_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQPdfDocument::customEvent(::QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[4], &sipPySelf, SIP_NULLPTR, sipName_customEvent);

    if (!sipMeth)
    {
        ::QPdfDocument::customEvent(a0);
        return;
    }

    extern void sipVH_QtPdf_29(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QEvent*);

    sipVH_QtPdf_29(sipGILState, sipImportedVirtErrorHandlers_QtPdf_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQPdfDocument::connectNotify(const ::QMetaMethod& a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[5], &sipPySelf, SIP_NULLPTR, sipName_connectNotify);

    if (!sipMeth)
    {
        ::QPdfDocument::connectNotify(a0);
        return;
    }

    extern void sipVH_QtPdf_30(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::QMetaMethod&);

    sipVH_QtPdf_30(sipGILState, sipImportedVirtErrorHandlers_QtPdf_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQPdfDocument::disconnectNotify(const ::QMetaMethod& a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[6], &sipPySelf, SIP_NULLPTR, sipName_disconnectNotify);

    if (!sipMeth)
    {
        ::QPdfDocument::disconnectNotify(a0);
        return;
    }

    extern void sipVH_QtPdf_30(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::QMetaMethod&);

    sipVH_QtPdf_30(sipGILState, sipImportedVirtErrorHandlers_QtPdf_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}


PyDoc_STRVAR(doc_QPdfDocument_load, "load(self, fileName: str|None) -> QPdfDocument.Error\n"
"load(self, device: QIODevice|None)");

extern "C" {static PyObject *meth_QPdfDocument_load(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_load(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

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

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_QPdfDocument, &sipCpp, sipType_QString, &a0, &a0State))
        {
            ::QPdfDocument::Error sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->load(*a0);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::QString *>(a0), sipType_QString, a0State);

            return sipConvertFromEnum(static_cast<int>(sipRes), sipType_QPdfDocument_Error);
        }
    }

    {
        ::QIODevice* a0;
        ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8", &sipSelf, sipType_QPdfDocument, &sipCpp, sipType_QIODevice, &a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->load(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_load, doc_QPdfDocument_load);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_status, "status(self) -> QPdfDocument.Status");

extern "C" {static PyObject *meth_QPdfDocument_status(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_status(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QPdfDocument, &sipCpp))
        {
            ::QPdfDocument::Status sipRes;

            sipRes = sipCpp->status();

            return sipConvertFromEnum(static_cast<int>(sipRes), sipType_QPdfDocument_Status);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_status, doc_QPdfDocument_status);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_setPassword, "setPassword(self, password: str|None)");

extern "C" {static PyObject *meth_QPdfDocument_setPassword(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_setPassword(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

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

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_QPdfDocument, &sipCpp, sipType_QString, &a0, &a0State))
        {
            sipCpp->setPassword(*a0);
            sipReleaseType(const_cast< ::QString *>(a0), sipType_QString, a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_setPassword, doc_QPdfDocument_setPassword);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_password, "password(self) -> str");

extern "C" {static PyObject *meth_QPdfDocument_password(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_password(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QPdfDocument, &sipCpp))
        {
            ::QString*sipRes;

            sipRes = new ::QString(sipCpp->password());

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

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_password, doc_QPdfDocument_password);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_metaData, "metaData(self, field: QPdfDocument.MetaDataField) -> Any");

extern "C" {static PyObject *meth_QPdfDocument_metaData(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_metaData(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::QPdfDocument::MetaDataField a0;
        const ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BE", &sipSelf, sipType_QPdfDocument, &sipCpp, sipType_QPdfDocument_MetaDataField, &a0))
        {
            ::QVariant*sipRes;

            sipRes = new ::QVariant(sipCpp->metaData(a0));

            return sipConvertFromNewType(sipRes, sipType_QVariant, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_metaData, doc_QPdfDocument_metaData);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_error, "error(self) -> QPdfDocument.Error");

extern "C" {static PyObject *meth_QPdfDocument_error(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_error(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QPdfDocument, &sipCpp))
        {
            ::QPdfDocument::Error sipRes;

            sipRes = sipCpp->error();

            return sipConvertFromEnum(static_cast<int>(sipRes), sipType_QPdfDocument_Error);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_error, doc_QPdfDocument_error);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_close, "close(self)");

extern "C" {static PyObject *meth_QPdfDocument_close(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_close(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QPdfDocument, &sipCpp))
        {
            sipCpp->close();

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_close, doc_QPdfDocument_close);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_pageCount, "pageCount(self) -> int");

extern "C" {static PyObject *meth_QPdfDocument_pageCount(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_pageCount(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QPdfDocument, &sipCpp))
        {
            int sipRes;

            sipRes = sipCpp->pageCount();

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_pageCount, doc_QPdfDocument_pageCount);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_pagePointSize, "pagePointSize(self, page: int) -> QSizeF");

extern "C" {static PyObject *meth_QPdfDocument_pagePointSize(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_pagePointSize(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        int a0;
        const ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Bi", &sipSelf, sipType_QPdfDocument, &sipCpp, &a0))
        {
            ::QSizeF*sipRes;

            sipRes = new ::QSizeF(sipCpp->pagePointSize(a0));

            return sipConvertFromNewType(sipRes, sipType_QSizeF, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_pagePointSize, doc_QPdfDocument_pagePointSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_pageLabel, "pageLabel(self, page: int) -> str");

extern "C" {static PyObject *meth_QPdfDocument_pageLabel(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_pageLabel(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        int a0;
        ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Bi", &sipSelf, sipType_QPdfDocument, &sipCpp, &a0))
        {
            ::QString*sipRes;

            sipRes = new ::QString(sipCpp->pageLabel(a0));

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

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_pageLabel, doc_QPdfDocument_pageLabel);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_pageModel, "pageModel(self) -> QAbstractListModel|None");

extern "C" {static PyObject *meth_QPdfDocument_pageModel(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_pageModel(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QPdfDocument, &sipCpp))
        {
            ::QAbstractListModel*sipRes;

            sipRes = sipCpp->pageModel();

            return sipConvertFromType(sipRes, sipType_QAbstractListModel, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_pageModel, doc_QPdfDocument_pageModel);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_render, "render(self, page: int, imageSize: QSize, options: QPdfDocumentRenderOptions = QPdfDocumentRenderOptions()) -> QImage");

extern "C" {static PyObject *meth_QPdfDocument_render(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_render(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        int a0;
        ::QSize* a1;
        ::QPdfDocumentRenderOptions a2def = QPdfDocumentRenderOptions();
        ::QPdfDocumentRenderOptions* a2 = &a2def;
        ::QPdfDocument *sipCpp;

        static const char *sipKwdList[] = {
            SIP_NULLPTR,
            SIP_NULLPTR,
            sipName_options,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BiJ9|J9", &sipSelf, sipType_QPdfDocument, &sipCpp, &a0, sipType_QSize, &a1, sipType_QPdfDocumentRenderOptions, &a2))
        {
            ::QImage*sipRes;

            sipRes = new ::QImage(sipCpp->render(a0, *a1, *a2));

            return sipConvertFromNewType(sipRes, sipType_QImage, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_render, doc_QPdfDocument_render);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_getSelection, "getSelection(self, page: int, start: QPointF, end: QPointF) -> QPdfSelection");

extern "C" {static PyObject *meth_QPdfDocument_getSelection(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_getSelection(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        int a0;
        ::QPointF* a1;
        ::QPointF* a2;
        ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BiJ9J9", &sipSelf, sipType_QPdfDocument, &sipCpp, &a0, sipType_QPointF, &a1, sipType_QPointF, &a2))
        {
            ::QPdfSelection*sipRes;

            sipRes = new ::QPdfSelection(sipCpp->getSelection(a0, *a1, *a2));

            return sipConvertFromNewType(sipRes, sipType_QPdfSelection, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_getSelection, doc_QPdfDocument_getSelection);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_getSelectionAtIndex, "getSelectionAtIndex(self, page: int, startIndex: int, maxLength: int) -> QPdfSelection");

extern "C" {static PyObject *meth_QPdfDocument_getSelectionAtIndex(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_getSelectionAtIndex(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        int a0;
        int a1;
        int a2;
        ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Biii", &sipSelf, sipType_QPdfDocument, &sipCpp, &a0, &a1, &a2))
        {
            ::QPdfSelection*sipRes;

            sipRes = new ::QPdfSelection(sipCpp->getSelectionAtIndex(a0, a1, a2));

            return sipConvertFromNewType(sipRes, sipType_QPdfSelection, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_getSelectionAtIndex, doc_QPdfDocument_getSelectionAtIndex);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_getAllText, "getAllText(self, page: int) -> QPdfSelection");

extern "C" {static PyObject *meth_QPdfDocument_getAllText(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_getAllText(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        int a0;
        ::QPdfDocument *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Bi", &sipSelf, sipType_QPdfDocument, &sipCpp, &a0))
        {
            ::QPdfSelection*sipRes;

            sipRes = new ::QPdfSelection(sipCpp->getAllText(a0));

            return sipConvertFromNewType(sipRes, sipType_QPdfSelection, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_getAllText, doc_QPdfDocument_getAllText);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QPdfDocument_pageIndexForLabel, "pageIndexForLabel(self, label: str|None) -> int");

extern "C" {static PyObject *meth_QPdfDocument_pageIndexForLabel(PyObject *, PyObject *);}
static PyObject *meth_QPdfDocument_pageIndexForLabel(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

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

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_QPdfDocument, &sipCpp, sipType_QString, &a0, &a0State))
        {
            int sipRes;

            sipRes = sipCpp->pageIndexForLabel(*a0);
            sipReleaseType(const_cast< ::QString *>(a0), sipType_QString, a0State);

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QPdfDocument, sipName_pageIndexForLabel, doc_QPdfDocument_pageIndexForLabel);

    return SIP_NULLPTR;
}


/* Cast a pointer to a type somewhere in its inheritance hierarchy. */
extern "C" {static void *cast_QPdfDocument(void *, const sipTypeDef *);}
static void *cast_QPdfDocument(void *sipCppV, const sipTypeDef *targetType)
{
    ::QPdfDocument *sipCpp = reinterpret_cast< ::QPdfDocument *>(sipCppV);

    if (targetType == sipType_QPdfDocument)
        return sipCppV;

    if (targetType == sipType_QObject)
        return static_cast< ::QObject *>(sipCpp);

    return SIP_NULLPTR;
}


/* Call the instance's destructor. */
extern "C" {static void release_QPdfDocument(void *, int);}
static void release_QPdfDocument(void *sipCppV, int)
{
    ::QPdfDocument *sipCpp = reinterpret_cast< ::QPdfDocument *>(sipCppV);

    if (QThread::currentThread() == sipCpp->thread())
        delete sipCpp;
    else
        sipCpp->deleteLater();
}


extern "C" {static void dealloc_QPdfDocument(sipSimpleWrapper *);}
static void dealloc_QPdfDocument(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerivedClass(sipSelf))
        reinterpret_cast<sipQPdfDocument *>(sipGetAddress(sipSelf))->sipPySelf = SIP_NULLPTR;

    if (sipIsOwnedByPython(sipSelf))
    {
        release_QPdfDocument(sipGetAddress(sipSelf), sipIsDerivedClass(sipSelf));
    }
}


extern "C" {static void *init_type_QPdfDocument(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
static void *init_type_QPdfDocument(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **sipOwner, PyObject **sipParseErr)
{
    sipQPdfDocument *sipCpp = SIP_NULLPTR;

    {
        ::QObject* a0;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, sipUnused, "JH", sipType_QObject, &a0, sipOwner))
        {
            sipCpp = new sipQPdfDocument(a0);

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return SIP_NULLPTR;
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_QPdfDocument[] = {{15, 0, 1}};


static PyMethodDef methods_QPdfDocument[] = {
    {sipName_close, meth_QPdfDocument_close, METH_VARARGS, doc_QPdfDocument_close},
    {sipName_error, meth_QPdfDocument_error, METH_VARARGS, doc_QPdfDocument_error},
    {sipName_getAllText, meth_QPdfDocument_getAllText, METH_VARARGS, doc_QPdfDocument_getAllText},
    {sipName_getSelection, meth_QPdfDocument_getSelection, METH_VARARGS, doc_QPdfDocument_getSelection},
    {sipName_getSelectionAtIndex, meth_QPdfDocument_getSelectionAtIndex, METH_VARARGS, doc_QPdfDocument_getSelectionAtIndex},
    {sipName_load, meth_QPdfDocument_load, METH_VARARGS, doc_QPdfDocument_load},
    {sipName_metaData, meth_QPdfDocument_metaData, METH_VARARGS, doc_QPdfDocument_metaData},
    {sipName_pageCount, meth_QPdfDocument_pageCount, METH_VARARGS, doc_QPdfDocument_pageCount},
    {sipName_pageIndexForLabel, meth_QPdfDocument_pageIndexForLabel, METH_VARARGS, doc_QPdfDocument_pageIndexForLabel},
    {sipName_pageLabel, meth_QPdfDocument_pageLabel, METH_VARARGS, doc_QPdfDocument_pageLabel},
    {sipName_pageModel, meth_QPdfDocument_pageModel, METH_VARARGS, doc_QPdfDocument_pageModel},
    {sipName_pagePointSize, meth_QPdfDocument_pagePointSize, METH_VARARGS, doc_QPdfDocument_pagePointSize},
    {sipName_password, meth_QPdfDocument_password, METH_VARARGS, doc_QPdfDocument_password},
    {sipName_render, SIP_MLMETH_CAST(meth_QPdfDocument_render), METH_VARARGS|METH_KEYWORDS, doc_QPdfDocument_render},
    {sipName_setPassword, meth_QPdfDocument_setPassword, METH_VARARGS, doc_QPdfDocument_setPassword},
    {sipName_status, meth_QPdfDocument_status, METH_VARARGS, doc_QPdfDocument_status}
};


/* Define the enum members and ints to be added to this type. */
static sipIntInstanceDef intInstances_QPdfDocument[] = {
    {sipName_None_, static_cast<int>(::QPdfDocument::Error::None)},
    {sipName_Unknown, static_cast<int>(::QPdfDocument::Error::Unknown)},
    {sipName_DataNotYetAvailable, static_cast<int>(::QPdfDocument::Error::DataNotYetAvailable)},
    {sipName_FileNotFound, static_cast<int>(::QPdfDocument::Error::FileNotFound)},
    {sipName_InvalidFileFormat, static_cast<int>(::QPdfDocument::Error::InvalidFileFormat)},
    {sipName_IncorrectPassword, static_cast<int>(::QPdfDocument::Error::IncorrectPassword)},
    {sipName_UnsupportedSecurityScheme, static_cast<int>(::QPdfDocument::Error::UnsupportedSecurityScheme)},
    {sipName_Title, static_cast<int>(::QPdfDocument::MetaDataField::Title)},
    {sipName_Subject, static_cast<int>(::QPdfDocument::MetaDataField::Subject)},
    {sipName_Author, static_cast<int>(::QPdfDocument::MetaDataField::Author)},
    {sipName_Keywords, static_cast<int>(::QPdfDocument::MetaDataField::Keywords)},
    {sipName_Producer, static_cast<int>(::QPdfDocument::MetaDataField::Producer)},
    {sipName_Creator, static_cast<int>(::QPdfDocument::MetaDataField::Creator)},
    {sipName_CreationDate, static_cast<int>(::QPdfDocument::MetaDataField::CreationDate)},
    {sipName_ModificationDate, static_cast<int>(::QPdfDocument::MetaDataField::ModificationDate)},
    {sipName_Label, static_cast<int>(::QPdfDocument::PageModelRole::Label)},
    {sipName_PointSize, static_cast<int>(::QPdfDocument::PageModelRole::PointSize)},
    {sipName_Null, static_cast<int>(::QPdfDocument::Status::Null)},
    {sipName_Loading, static_cast<int>(::QPdfDocument::Status::Loading)},
    {sipName_Ready, static_cast<int>(::QPdfDocument::Status::Ready)},
    {sipName_Unloading, static_cast<int>(::QPdfDocument::Status::Unloading)},
    {sipName_Error, static_cast<int>(::QPdfDocument::Status::Error)},
    {0, 0}
};

PyDoc_STRVAR(doc_QPdfDocument, "\1QPdfDocument(parent: QObject|None)");


/* Define this type's signals. */
static const pyqt6QtSignal signals_QPdfDocument[] = {
    {"pageModelChanged()", "\1pageModelChanged(self)", SIP_NULLPTR, SIP_NULLPTR},
    {"pageCountChanged(int)", "\1pageCountChanged(self, pageCount: int)", SIP_NULLPTR, SIP_NULLPTR},
    {"statusChanged(QPdfDocument::Status)", "\1statusChanged(self, status: QPdfDocument.Status)", SIP_NULLPTR, SIP_NULLPTR},
    {"passwordChanged()", "\1passwordChanged(self)", SIP_NULLPTR, SIP_NULLPTR},
    {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR}
};


static pyqt6ClassPluginDef plugin_QPdfDocument = {
    &::QPdfDocument::staticMetaObject,
    signals_QPdfDocument,
    SIP_NULLPTR
};


sipClassTypeDef sipTypeDef_QtPdf_QPdfDocument = {
    {
        SIP_NULLPTR,
        SIP_TYPE_SCC|SIP_TYPE_SUPER_INIT|SIP_TYPE_LIMITED_API|SIP_TYPE_CLASS,
        sipNameNr_QPdfDocument,
        SIP_NULLPTR,
        &plugin_QPdfDocument,
    },
    {
        sipNameNr_QPdfDocument,
        {0, 0, 1},
        16, methods_QPdfDocument,
        0, SIP_NULLPTR,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, intInstances_QPdfDocument, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_QPdfDocument,
    -1,
    -1,
    supers_QPdfDocument,
    SIP_NULLPTR,
    init_type_QPdfDocument,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_QPdfDocument,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_QPdfDocument,
    cast_QPdfDocument,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    sizeof (::QPdfDocument),
};
