/****************************************************************************
** Meta object code from reading C++ file 'MainWindow.h'
**
** Created by: The Qt Meta Object Compiler version 68 (Qt 6.8.3)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/

#include "../../widgets/MainWindow.h"
#include <QtCore/qmetatype.h>

#include <QtCore/qtmochelpers.h>

#include <memory>


#include <QtCore/qxptype_traits.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'MainWindow.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 68
#error "This file was generated using the moc from 6.8.3. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif

#ifndef Q_CONSTINIT
#define Q_CONSTINIT
#endif

QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
QT_WARNING_DISABLE_GCC("-Wuseless-cast")
namespace {
struct qt_meta_tag_ZN7tipMenuE_t {};
} // unnamed namespace


#ifdef QT_MOC_HAS_STRINGDATA
static constexpr auto qt_meta_stringdata_ZN7tipMenuE = QtMocHelpers::stringData(
    "tipMenu"
);
#else  // !QT_MOC_HAS_STRINGDATA
#error "qtmochelpers.h not found or too old."
#endif // !QT_MOC_HAS_STRINGDATA

Q_CONSTINIT static const uint qt_meta_data_ZN7tipMenuE[] = {

 // content:
      12,       // revision
       0,       // classname
       0,    0, // classinfo
       0,    0, // methods
       0,    0, // properties
       0,    0, // enums/sets
       0,    0, // constructors
       0,       // flags
       0,       // signalCount

       0        // eod
};

Q_CONSTINIT const QMetaObject tipMenu::staticMetaObject = { {
    QMetaObject::SuperData::link<QMenu::staticMetaObject>(),
    qt_meta_stringdata_ZN7tipMenuE.offsetsAndSizes,
    qt_meta_data_ZN7tipMenuE,
    qt_static_metacall,
    nullptr,
    qt_incomplete_metaTypeArray<qt_meta_tag_ZN7tipMenuE_t,
        // Q_OBJECT / Q_GADGET
        QtPrivate::TypeAndForceComplete<tipMenu, std::true_type>
    >,
    nullptr
} };

void tipMenu::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<tipMenu *>(_o);
    (void)_t;
    (void)_c;
    (void)_id;
    (void)_a;
}

const QMetaObject *tipMenu::metaObject() const
{
    return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}

void *tipMenu::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_meta_stringdata_ZN7tipMenuE.stringdata0))
        return static_cast<void*>(this);
    return QMenu::qt_metacast(_clname);
}

int tipMenu::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QMenu::qt_metacall(_c, _id, _a);
    return _id;
}
namespace {
struct qt_meta_tag_ZN10MainWindowE_t {};
} // unnamed namespace


#ifdef QT_MOC_HAS_STRINGDATA
static constexpr auto qt_meta_stringdata_ZN10MainWindowE = QtMocHelpers::stringData(
    "MainWindow",
    "init_database",
    "open_result",
    "",
    "dbName",
    "Passwd",
    "pass",
    "setup_open_database",
    "new_database",
    "load_database",
    "close_database",
    "dump_database",
    "default_database",
    "about",
    "loadPem",
    "pastePem",
    "text",
    "silent",
    "changeDbPass",
    "openURLs",
    "QStringList&",
    "files",
    "changeEvent",
    "QEvent*",
    "event",
    "exportIndex",
    "exportIndexHierarchy",
    "openRemoteSqlDB",
    "generateDHparamDone",
    "closeEvent",
    "QCloseEvent*",
    "setOptions",
    "manageToken",
    "initToken",
    "changePin",
    "so",
    "changeSoPin",
    "initPin",
    "generateDHparam",
    "open_database",
    "QAction*",
    "a"
);
#else  // !QT_MOC_HAS_STRINGDATA
#error "qtmochelpers.h not found or too old."
#endif // !QT_MOC_HAS_STRINGDATA

Q_CONSTINIT static const uint qt_meta_data_ZN10MainWindowE[] = {

 // content:
      12,       // revision
       0,       // classname
       0,    0, // classinfo
      31,   14, // methods
       0,    0, // properties
       0,    0, // enums/sets
       0,    0, // constructors
       0,       // flags
       0,       // signalCount

 // slots: name, argc, parameters, tag, flags, initial metatype offsets
       1,    2,  200,    3, 0x0a,    1 /* Public */,
       1,    1,  205,    3, 0x2a,    4 /* Public | MethodCloned */,
       7,    0,  208,    3, 0x0a,    6 /* Public */,
       8,    0,  209,    3, 0x0a,    7 /* Public */,
       9,    0,  210,    3, 0x0a,    8 /* Public */,
      10,    0,  211,    3, 0x0a,    9 /* Public */,
      11,    0,  212,    3, 0x0a,   10 /* Public */,
      12,    0,  213,    3, 0x0a,   11 /* Public */,
      13,    0,  214,    3, 0x0a,   12 /* Public */,
      14,    0,  215,    3, 0x0a,   13 /* Public */,
      15,    2,  216,    3, 0x0a,   14 /* Public */,
      15,    1,  221,    3, 0x2a,   17 /* Public | MethodCloned */,
      15,    0,  224,    3, 0x0a,   19 /* Public */,
      18,    0,  225,    3, 0x0a,   20 /* Public */,
      19,    1,  226,    3, 0x0a,   21 /* Public */,
      19,    0,  229,    3, 0x0a,   23 /* Public */,
      22,    1,  230,    3, 0x0a,   24 /* Public */,
      25,    0,  233,    3, 0x0a,   26 /* Public */,
      26,    0,  234,    3, 0x0a,   27 /* Public */,
      27,    0,  235,    3, 0x0a,   28 /* Public */,
      28,    0,  236,    3, 0x0a,   29 /* Public */,
      29,    1,  237,    3, 0x09,   30 /* Protected */,
      31,    0,  240,    3, 0x08,   32 /* Private */,
      32,    0,  241,    3, 0x08,   33 /* Private */,
      33,    0,  242,    3, 0x08,   34 /* Private */,
      34,    1,  243,    3, 0x08,   35 /* Private */,
      34,    0,  246,    3, 0x28,   37 /* Private | MethodCloned */,
      36,    0,  247,    3, 0x08,   38 /* Private */,
      37,    0,  248,    3, 0x08,   39 /* Private */,
      38,    0,  249,    3, 0x08,   40 /* Private */,
      39,    1,  250,    3, 0x08,   41 /* Private */,

 // slots: parameters
    0x80000000 | 2, QMetaType::QString, 0x80000000 | 5,    4,    6,
    0x80000000 | 2, QMetaType::QString,    4,
    0x80000000 | 2,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Bool, QMetaType::QString, QMetaType::Bool,   16,   17,
    QMetaType::Bool, QMetaType::QString,   16,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void, 0x80000000 | 20,   21,
    QMetaType::Void,
    QMetaType::Void, 0x80000000 | 23,   24,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void, 0x80000000 | 30,   24,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void, QMetaType::Bool,   35,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void, 0x80000000 | 40,   41,

       0        // eod
};

Q_CONSTINIT const QMetaObject MainWindow::staticMetaObject = { {
    QMetaObject::SuperData::link<QMainWindow::staticMetaObject>(),
    qt_meta_stringdata_ZN10MainWindowE.offsetsAndSizes,
    qt_meta_data_ZN10MainWindowE,
    qt_static_metacall,
    nullptr,
    qt_incomplete_metaTypeArray<qt_meta_tag_ZN10MainWindowE_t,
        // Q_OBJECT / Q_GADGET
        QtPrivate::TypeAndForceComplete<MainWindow, std::true_type>,
        // method 'init_database'
        QtPrivate::TypeAndForceComplete<open_result, std::false_type>,
        QtPrivate::TypeAndForceComplete<const QString &, std::false_type>,
        QtPrivate::TypeAndForceComplete<const Passwd &, std::false_type>,
        // method 'init_database'
        QtPrivate::TypeAndForceComplete<open_result, std::false_type>,
        QtPrivate::TypeAndForceComplete<const QString &, std::false_type>,
        // method 'setup_open_database'
        QtPrivate::TypeAndForceComplete<open_result, std::false_type>,
        // method 'new_database'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'load_database'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'close_database'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'dump_database'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'default_database'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'about'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'loadPem'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'pastePem'
        QtPrivate::TypeAndForceComplete<bool, std::false_type>,
        QtPrivate::TypeAndForceComplete<const QString &, std::false_type>,
        QtPrivate::TypeAndForceComplete<bool, std::false_type>,
        // method 'pastePem'
        QtPrivate::TypeAndForceComplete<bool, std::false_type>,
        QtPrivate::TypeAndForceComplete<const QString &, std::false_type>,
        // method 'pastePem'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'changeDbPass'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'openURLs'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        QtPrivate::TypeAndForceComplete<QStringList &, std::false_type>,
        // method 'openURLs'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'changeEvent'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        QtPrivate::TypeAndForceComplete<QEvent *, std::false_type>,
        // method 'exportIndex'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'exportIndexHierarchy'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'openRemoteSqlDB'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'generateDHparamDone'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'closeEvent'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        QtPrivate::TypeAndForceComplete<QCloseEvent *, std::false_type>,
        // method 'setOptions'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'manageToken'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'initToken'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'changePin'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        QtPrivate::TypeAndForceComplete<bool, std::false_type>,
        // method 'changePin'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'changeSoPin'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'initPin'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'generateDHparam'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        // method 'open_database'
        QtPrivate::TypeAndForceComplete<void, std::false_type>,
        QtPrivate::TypeAndForceComplete<QAction *, std::false_type>
    >,
    nullptr
} };

void MainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<MainWindow *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: { open_result _r = _t->init_database((*reinterpret_cast< std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast< std::add_pointer_t<Passwd>>(_a[2])));
            if (_a[0]) *reinterpret_cast< open_result*>(_a[0]) = std::move(_r); }  break;
        case 1: { open_result _r = _t->init_database((*reinterpret_cast< std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast< open_result*>(_a[0]) = std::move(_r); }  break;
        case 2: { open_result _r = _t->setup_open_database();
            if (_a[0]) *reinterpret_cast< open_result*>(_a[0]) = std::move(_r); }  break;
        case 3: _t->new_database(); break;
        case 4: _t->load_database(); break;
        case 5: _t->close_database(); break;
        case 6: _t->dump_database(); break;
        case 7: _t->default_database(); break;
        case 8: _t->about(); break;
        case 9: _t->loadPem(); break;
        case 10: { bool _r = _t->pastePem((*reinterpret_cast< std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast< std::add_pointer_t<bool>>(_a[2])));
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = std::move(_r); }  break;
        case 11: { bool _r = _t->pastePem((*reinterpret_cast< std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = std::move(_r); }  break;
        case 12: _t->pastePem(); break;
        case 13: _t->changeDbPass(); break;
        case 14: _t->openURLs((*reinterpret_cast< std::add_pointer_t<QStringList&>>(_a[1]))); break;
        case 15: _t->openURLs(); break;
        case 16: _t->changeEvent((*reinterpret_cast< std::add_pointer_t<QEvent*>>(_a[1]))); break;
        case 17: _t->exportIndex(); break;
        case 18: _t->exportIndexHierarchy(); break;
        case 19: _t->openRemoteSqlDB(); break;
        case 20: _t->generateDHparamDone(); break;
        case 21: _t->closeEvent((*reinterpret_cast< std::add_pointer_t<QCloseEvent*>>(_a[1]))); break;
        case 22: _t->setOptions(); break;
        case 23: _t->manageToken(); break;
        case 24: _t->initToken(); break;
        case 25: _t->changePin((*reinterpret_cast< std::add_pointer_t<bool>>(_a[1]))); break;
        case 26: _t->changePin(); break;
        case 27: _t->changeSoPin(); break;
        case 28: _t->initPin(); break;
        case 29: _t->generateDHparam(); break;
        case 30: _t->open_database((*reinterpret_cast< std::add_pointer_t<QAction*>>(_a[1]))); break;
        default: ;
        }
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        switch (_id) {
        default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
        case 30:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
            case 0:
                *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType::fromType< QAction* >(); break;
            }
            break;
        }
    }
}

const QMetaObject *MainWindow::metaObject() const
{
    return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}

void *MainWindow::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_meta_stringdata_ZN10MainWindowE.stringdata0))
        return static_cast<void*>(this);
    if (!strcmp(_clname, "Ui::MainWindow"))
        return static_cast< Ui::MainWindow*>(this);
    return QMainWindow::qt_metacast(_clname);
}

int MainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QMainWindow::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 31)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 31;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 31)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 31;
    }
    return _id;
}
QT_WARNING_POP
