/*
 * Interface wrapper code.
 *
 * Generated by SIP 4.19.16
 *
 *     Copyright: (c) 2018 by Total Control Software
 *     License:   wxWindows License
 */

#include "sipAPI_core.h"

        #include <wx/fontutil.h>

        #include <wx/font.h>
    wxString* _wxNativeFontInfo___str__(wxNativeFontInfo* self)
    {
        return new wxString(self->ToString());
    }


PyDoc_STRVAR(doc_wxNativeFontInfo_Init, "Init()");

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

    {
         ::wxNativeFontInfo *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxNativeFontInfo, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->Init();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_Init, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_InitFromFont, "InitFromFont(font)");

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

    {
        const  ::wxFont* font;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, sipType_wxFont, &font))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->InitFromFont(*font);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_InitFromFont, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_GetPointSize, "GetPointSize() -> int");

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

    {
        const  ::wxNativeFontInfo *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetPointSize();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return SIPLong_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_GetPointSize, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_GetStyle, "GetStyle() -> FontStyle");

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

    {
        const  ::wxNativeFontInfo *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxNativeFontInfo, &sipCpp))
        {
             ::wxFontStyle sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetStyle();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_GetStyle, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_GetWeight, "GetWeight() -> FontWeight");

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

    {
        const  ::wxNativeFontInfo *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxNativeFontInfo, &sipCpp))
        {
             ::wxFontWeight sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetWeight();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_GetWeight, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_GetUnderlined, "GetUnderlined() -> bool");

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

    {
        const  ::wxNativeFontInfo *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxNativeFontInfo, &sipCpp))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetUnderlined();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_GetUnderlined, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_GetFaceName, "GetFaceName() -> String");

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

    {
        const  ::wxNativeFontInfo *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new  ::wxString(sipCpp->GetFaceName());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_GetFaceName, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_GetFamily, "GetFamily() -> FontFamily");

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

    {
        const  ::wxNativeFontInfo *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxNativeFontInfo, &sipCpp))
        {
             ::wxFontFamily sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetFamily();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_GetFamily, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_GetEncoding, "GetEncoding() -> FontEncoding");

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

    {
        const  ::wxNativeFontInfo *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxNativeFontInfo, &sipCpp))
        {
             ::wxFontEncoding sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetEncoding();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_GetEncoding, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_SetPointSize, "SetPointSize(pointsize)");

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

    {
        int pointsize;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bi", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, &pointsize))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetPointSize(pointsize);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_SetPointSize, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_SetStyle, "SetStyle(style)");

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

    {
         ::wxFontStyle style;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BE", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, sipType_wxFontStyle, &style))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetStyle(style);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_SetStyle, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_SetWeight, "SetWeight(weight)");

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

    {
         ::wxFontWeight weight;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BE", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, sipType_wxFontWeight, &weight))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetWeight(weight);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_SetWeight, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_SetUnderlined, "SetUnderlined(underlined)");

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

    {
        bool underlined;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bb", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, &underlined))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetUnderlined(underlined);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_SetUnderlined, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_SetFaceName, "SetFaceName(facename) -> bool\n"
"SetFaceName(facenames)\n"
"");

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

    {
        const  ::wxString* facename;
        int facenameState = 0;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, sipType_wxString,&facename, &facenameState))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->SetFaceName(*facename);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(facename),sipType_wxString,facenameState);

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    {
        const  ::wxArrayString* facenames;
        int facenamesState = 0;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, sipType_wxArrayString,&facenames, &facenamesState))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetFaceName(*facenames);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxArrayString *>(facenames),sipType_wxArrayString,facenamesState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_SetFaceName, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_SetFamily, "SetFamily(family)");

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

    {
         ::wxFontFamily family;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BE", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, sipType_wxFontFamily, &family))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetFamily(family);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_SetFamily, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_SetEncoding, "SetEncoding(encoding)");

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

    {
         ::wxFontEncoding encoding;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BE", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, sipType_wxFontEncoding, &encoding))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetEncoding(encoding);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_SetEncoding, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_FromString, "FromString(s) -> bool");

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

    {
        const  ::wxString* s;
        int sState = 0;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, sipType_wxString,&s, &sState))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->FromString(*s);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(s),sipType_wxString,sState);

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_FromString, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_ToString, "ToString() -> String");

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

    {
        const  ::wxNativeFontInfo *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new  ::wxString(sipCpp->ToString());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_ToString, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_FromUserString, "FromUserString(s) -> bool");

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

    {
        const  ::wxString* s;
        int sState = 0;
         ::wxNativeFontInfo *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxNativeFontInfo, &sipCpp, sipType_wxString,&s, &sState))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->FromUserString(*s);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(s),sipType_wxString,sState);

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_FromUserString, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxNativeFontInfo_ToUserString, "ToUserString() -> String");

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

    {
        const  ::wxNativeFontInfo *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new  ::wxString(sipCpp->ToUserString());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_NativeFontInfo, sipName_ToUserString, SIP_NULLPTR);

    return SIP_NULLPTR;
}


extern "C" {static PyObject *slot_wxNativeFontInfo___str__(PyObject *);}
static PyObject *slot_wxNativeFontInfo___str__(PyObject *sipSelf)
{
     ::wxNativeFontInfo *sipCpp = reinterpret_cast< ::wxNativeFontInfo *>(sipGetCppPtr((sipSimpleWrapper *)sipSelf,sipType_wxNativeFontInfo));

    if (!sipCpp)
        return SIP_NULLPTR;


    {
        {
             ::wxString*sipRes = 0;
            int sipIsErr = 0;

        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        sipRes = _wxNativeFontInfo___str__(sipCpp);
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;

            if (sipIsErr)
                return 0;

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

    return 0;
}


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

    delete reinterpret_cast< ::wxNativeFontInfo *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void assign_wxNativeFontInfo(void *, SIP_SSIZE_T, void *);}
static void assign_wxNativeFontInfo(void *sipDst, SIP_SSIZE_T sipDstIdx, void *sipSrc)
{
    reinterpret_cast< ::wxNativeFontInfo *>(sipDst)[sipDstIdx] = *reinterpret_cast< ::wxNativeFontInfo *>(sipSrc);
}


extern "C" {static void *array_wxNativeFontInfo(SIP_SSIZE_T);}
static void *array_wxNativeFontInfo(SIP_SSIZE_T sipNrElem)
{
    return new  ::wxNativeFontInfo[sipNrElem];
}


extern "C" {static void *copy_wxNativeFontInfo(const void *, SIP_SSIZE_T);}
static void *copy_wxNativeFontInfo(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new  ::wxNativeFontInfo(reinterpret_cast<const  ::wxNativeFontInfo *>(sipSrc)[sipSrcIdx]);
}


extern "C" {static void dealloc_wxNativeFontInfo(sipSimpleWrapper *);}
static void dealloc_wxNativeFontInfo(sipSimpleWrapper *sipSelf)
{
    if (sipIsOwnedByPython(sipSelf))
    {
        release_wxNativeFontInfo(sipGetAddress(sipSelf), 0);
    }
}


extern "C" {static void *init_type_wxNativeFontInfo(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
static void *init_type_wxNativeFontInfo(sipSimpleWrapper *, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **, PyObject **sipParseErr)
{
     ::wxNativeFontInfo *sipCpp = SIP_NULLPTR;

    {
        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, sipUnused, ""))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new  ::wxNativeFontInfo();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
            {
                delete sipCpp;
                return SIP_NULLPTR;
            }

            return sipCpp;
        }
    }

    {
        const  ::wxNativeFontInfo* info;

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

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "J9", sipType_wxNativeFontInfo, &info))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new  ::wxNativeFontInfo(*info);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
            {
                delete sipCpp;
                return SIP_NULLPTR;
            }

            return sipCpp;
        }
    }

    return SIP_NULLPTR;
}


/* Define this type's Python slots. */
static sipPySlotDef slots_wxNativeFontInfo[] = {
    {(void *)slot_wxNativeFontInfo___str__, str_slot},
    {0, (sipPySlotType)0}
};


static PyMethodDef methods_wxNativeFontInfo[] = {
    {SIP_MLNAME_CAST(sipName_FromString), SIP_MLMETH_CAST(meth_wxNativeFontInfo_FromString), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_FromString)},
    {SIP_MLNAME_CAST(sipName_FromUserString), SIP_MLMETH_CAST(meth_wxNativeFontInfo_FromUserString), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_FromUserString)},
    {SIP_MLNAME_CAST(sipName_GetEncoding), meth_wxNativeFontInfo_GetEncoding, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_GetEncoding)},
    {SIP_MLNAME_CAST(sipName_GetFaceName), meth_wxNativeFontInfo_GetFaceName, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_GetFaceName)},
    {SIP_MLNAME_CAST(sipName_GetFamily), meth_wxNativeFontInfo_GetFamily, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_GetFamily)},
    {SIP_MLNAME_CAST(sipName_GetPointSize), meth_wxNativeFontInfo_GetPointSize, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_GetPointSize)},
    {SIP_MLNAME_CAST(sipName_GetStyle), meth_wxNativeFontInfo_GetStyle, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_GetStyle)},
    {SIP_MLNAME_CAST(sipName_GetUnderlined), meth_wxNativeFontInfo_GetUnderlined, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_GetUnderlined)},
    {SIP_MLNAME_CAST(sipName_GetWeight), meth_wxNativeFontInfo_GetWeight, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_GetWeight)},
    {SIP_MLNAME_CAST(sipName_Init), meth_wxNativeFontInfo_Init, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_Init)},
    {SIP_MLNAME_CAST(sipName_InitFromFont), SIP_MLMETH_CAST(meth_wxNativeFontInfo_InitFromFont), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_InitFromFont)},
    {SIP_MLNAME_CAST(sipName_SetEncoding), SIP_MLMETH_CAST(meth_wxNativeFontInfo_SetEncoding), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_SetEncoding)},
    {SIP_MLNAME_CAST(sipName_SetFaceName), SIP_MLMETH_CAST(meth_wxNativeFontInfo_SetFaceName), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_SetFaceName)},
    {SIP_MLNAME_CAST(sipName_SetFamily), SIP_MLMETH_CAST(meth_wxNativeFontInfo_SetFamily), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_SetFamily)},
    {SIP_MLNAME_CAST(sipName_SetPointSize), SIP_MLMETH_CAST(meth_wxNativeFontInfo_SetPointSize), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_SetPointSize)},
    {SIP_MLNAME_CAST(sipName_SetStyle), SIP_MLMETH_CAST(meth_wxNativeFontInfo_SetStyle), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_SetStyle)},
    {SIP_MLNAME_CAST(sipName_SetUnderlined), SIP_MLMETH_CAST(meth_wxNativeFontInfo_SetUnderlined), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_SetUnderlined)},
    {SIP_MLNAME_CAST(sipName_SetWeight), SIP_MLMETH_CAST(meth_wxNativeFontInfo_SetWeight), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_SetWeight)},
    {SIP_MLNAME_CAST(sipName_ToString), meth_wxNativeFontInfo_ToString, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_ToString)},
    {SIP_MLNAME_CAST(sipName_ToUserString), meth_wxNativeFontInfo_ToUserString, METH_VARARGS, SIP_MLDOC_CAST(doc_wxNativeFontInfo_ToUserString)}
};

sipVariableDef variables_wxNativeFontInfo[] = {
    {PropertyVariable, sipName_Weight, &methods_wxNativeFontInfo[8], &methods_wxNativeFontInfo[17], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Underlined, &methods_wxNativeFontInfo[7], &methods_wxNativeFontInfo[16], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Style, &methods_wxNativeFontInfo[6], &methods_wxNativeFontInfo[15], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_PointSize, &methods_wxNativeFontInfo[5], &methods_wxNativeFontInfo[14], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Family, &methods_wxNativeFontInfo[4], &methods_wxNativeFontInfo[13], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_FaceName, &methods_wxNativeFontInfo[3], &methods_wxNativeFontInfo[12], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Encoding, &methods_wxNativeFontInfo[2], &methods_wxNativeFontInfo[11], SIP_NULLPTR, SIP_NULLPTR},
};

PyDoc_STRVAR(doc_wxNativeFontInfo, "NativeFontInfo()\n"
"NativeFontInfo(info)\n"
"\n"
"wxNativeFontInfo is platform-specific font representation: this class\n"
"should be considered as an opaque font description only used by the\n"
"native functions, the user code can only get the objects of this type\n"
"from somewhere and pass it somewhere else (possibly save them\n"
"somewhere using ToString() and restore them using FromString())");


sipClassTypeDef sipTypeDef__core_wxNativeFontInfo = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_CLASS,
        sipNameNr_wxNativeFontInfo,
        {SIP_NULLPTR},
        SIP_NULLPTR
    },
    {
        sipNameNr_NativeFontInfo,
        {0, 0, 1},
        20, methods_wxNativeFontInfo,
        0, SIP_NULLPTR,
        7, variables_wxNativeFontInfo,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_wxNativeFontInfo,
    -1,
    -1,
    SIP_NULLPTR,
    slots_wxNativeFontInfo,
    init_type_wxNativeFontInfo,
    SIP_NULLPTR,
    SIP_NULLPTR,
#if PY_MAJOR_VERSION >= 3
    SIP_NULLPTR,
    SIP_NULLPTR,
#else
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
#endif
    dealloc_wxNativeFontInfo,
    assign_wxNativeFontInfo,
    array_wxNativeFontInfo,
    copy_wxNativeFontInfo,
    release_wxNativeFontInfo,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR
};
