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

#include "../../../mixxx-2.5.6/src/widget/wtrackmenu.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 'wtrackmenu.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 69
#error "This file was generated using the moc from 6.11.1. 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_ZN10WTrackMenuE_t {};
} // unnamed namespace

template <> constexpr inline auto WTrackMenu::qt_create_metaobjectdata<qt_meta_tag_ZN10WTrackMenuE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "WTrackMenu",
        "loadTrackToPlayer",
        "",
        "TrackPointer",
        "pTrack",
        "group",
        "play",
        "trackMenuVisible",
        "visible",
        "saveCurrentViewState",
        "restoreCurrentViewStateOrIndex",
        "slotOpenInFileBrowser",
        "slotSelectInLibrary",
        "slotSetRating",
        "rating",
        "slotColorPicked",
        "mixxx::RgbColor::optional_t",
        "color",
        "slotClearBeats",
        "slotClearPlayCount",
        "slotClearRating",
        "slotClearComment",
        "slotResetMainCue",
        "slotClearHotCues",
        "slotResetIntroCue",
        "slotResetOutroCue",
        "slotClearLoops",
        "slotClearKey",
        "slotClearReplayGain",
        "slotClearWaveform",
        "slotClearAllMetadata",
        "slotAnalyze",
        "slotReanalyze",
        "slotReanalyzeWithFixedTempo",
        "slotReanalyzeWithVariableTempo",
        "slotLockBpm",
        "slotUnlockBpm",
        "slotScaleBpm",
        "mixxx::Beats::BpmScale",
        "scale",
        "slotUndoBeatsChange",
        "slotUpdateReplayGainFromPregain",
        "slotShowDlgTagFetcher",
        "slotImportMetadataFromFileTags",
        "slotExportMetadataIntoFileTags",
        "slotUpdateExternalTrackCollection",
        "ExternalTrackCollection*",
        "externalTrackCollection",
        "slotPopulatePlaylistMenu",
        "slotPopulateCrateMenu",
        "addSelectionToNewCrate",
        "slotAddToAutoDJBottom",
        "slotAddToAutoDJTop",
        "slotAddToAutoDJReplace",
        "slotCoverInfoSelected",
        "CoverInfoRelative",
        "coverInfo",
        "slotReloadCoverArt",
        "slotRemove",
        "slotHide",
        "slotUnhide",
        "slotPurge"
    };

    QtMocHelpers::UintData qt_methods {
        // Signal 'loadTrackToPlayer'
        QtMocHelpers::SignalData<void(TrackPointer, const QString &, bool)>(1, 2, QMC::AccessPublic, QMetaType::Void, {{
            { 0x80000000 | 3, 4 }, { QMetaType::QString, 5 }, { QMetaType::Bool, 6 },
        }}),
        // Signal 'loadTrackToPlayer'
        QtMocHelpers::SignalData<void(TrackPointer, const QString &)>(1, 2, QMC::AccessPublic | QMC::MethodCloned, QMetaType::Void, {{
            { 0x80000000 | 3, 4 }, { QMetaType::QString, 5 },
        }}),
        // Signal 'trackMenuVisible'
        QtMocHelpers::SignalData<void(bool)>(7, 2, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::Bool, 8 },
        }}),
        // Signal 'saveCurrentViewState'
        QtMocHelpers::SignalData<void()>(9, 2, QMC::AccessPublic, QMetaType::Void),
        // Signal 'restoreCurrentViewStateOrIndex'
        QtMocHelpers::SignalData<void()>(10, 2, QMC::AccessPublic, QMetaType::Void),
        // Slot 'slotOpenInFileBrowser'
        QtMocHelpers::SlotData<void()>(11, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotSelectInLibrary'
        QtMocHelpers::SlotData<void()>(12, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotSetRating'
        QtMocHelpers::SlotData<void(int)>(13, 2, QMC::AccessPrivate, QMetaType::Void, {{
            { QMetaType::Int, 14 },
        }}),
        // Slot 'slotColorPicked'
        QtMocHelpers::SlotData<void(const mixxx::RgbColor::optional_t &)>(15, 2, QMC::AccessPrivate, QMetaType::Void, {{
            { 0x80000000 | 16, 17 },
        }}),
        // Slot 'slotClearBeats'
        QtMocHelpers::SlotData<void()>(18, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotClearPlayCount'
        QtMocHelpers::SlotData<void()>(19, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotClearRating'
        QtMocHelpers::SlotData<void()>(20, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotClearComment'
        QtMocHelpers::SlotData<void()>(21, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotResetMainCue'
        QtMocHelpers::SlotData<void()>(22, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotClearHotCues'
        QtMocHelpers::SlotData<void()>(23, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotResetIntroCue'
        QtMocHelpers::SlotData<void()>(24, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotResetOutroCue'
        QtMocHelpers::SlotData<void()>(25, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotClearLoops'
        QtMocHelpers::SlotData<void()>(26, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotClearKey'
        QtMocHelpers::SlotData<void()>(27, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotClearReplayGain'
        QtMocHelpers::SlotData<void()>(28, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotClearWaveform'
        QtMocHelpers::SlotData<void()>(29, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotClearAllMetadata'
        QtMocHelpers::SlotData<void()>(30, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotAnalyze'
        QtMocHelpers::SlotData<void()>(31, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotReanalyze'
        QtMocHelpers::SlotData<void()>(32, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotReanalyzeWithFixedTempo'
        QtMocHelpers::SlotData<void()>(33, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotReanalyzeWithVariableTempo'
        QtMocHelpers::SlotData<void()>(34, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotLockBpm'
        QtMocHelpers::SlotData<void()>(35, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotUnlockBpm'
        QtMocHelpers::SlotData<void()>(36, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotScaleBpm'
        QtMocHelpers::SlotData<void(mixxx::Beats::BpmScale)>(37, 2, QMC::AccessPrivate, QMetaType::Void, {{
            { 0x80000000 | 38, 39 },
        }}),
        // Slot 'slotUndoBeatsChange'
        QtMocHelpers::SlotData<void()>(40, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotUpdateReplayGainFromPregain'
        QtMocHelpers::SlotData<void()>(41, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotShowDlgTagFetcher'
        QtMocHelpers::SlotData<void()>(42, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotImportMetadataFromFileTags'
        QtMocHelpers::SlotData<void()>(43, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotExportMetadataIntoFileTags'
        QtMocHelpers::SlotData<void()>(44, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotUpdateExternalTrackCollection'
        QtMocHelpers::SlotData<void(ExternalTrackCollection *)>(45, 2, QMC::AccessPrivate, QMetaType::Void, {{
            { 0x80000000 | 46, 47 },
        }}),
        // Slot 'slotPopulatePlaylistMenu'
        QtMocHelpers::SlotData<void()>(48, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotPopulateCrateMenu'
        QtMocHelpers::SlotData<void()>(49, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'addSelectionToNewCrate'
        QtMocHelpers::SlotData<void()>(50, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotAddToAutoDJBottom'
        QtMocHelpers::SlotData<void()>(51, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotAddToAutoDJTop'
        QtMocHelpers::SlotData<void()>(52, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotAddToAutoDJReplace'
        QtMocHelpers::SlotData<void()>(53, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotCoverInfoSelected'
        QtMocHelpers::SlotData<void(CoverInfoRelative)>(54, 2, QMC::AccessPrivate, QMetaType::Void, {{
            { 0x80000000 | 55, 56 },
        }}),
        // Slot 'slotReloadCoverArt'
        QtMocHelpers::SlotData<void()>(57, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotRemove'
        QtMocHelpers::SlotData<void()>(58, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotHide'
        QtMocHelpers::SlotData<void()>(59, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotUnhide'
        QtMocHelpers::SlotData<void()>(60, 2, QMC::AccessPrivate, QMetaType::Void),
        // Slot 'slotPurge'
        QtMocHelpers::SlotData<void()>(61, 2, QMC::AccessPrivate, QMetaType::Void),
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
    };
    return QtMocHelpers::metaObjectData<WTrackMenu, qt_meta_tag_ZN10WTrackMenuE_t>(QMC::MetaObjectFlag{}, qt_stringData,
            qt_methods, qt_properties, qt_enums);
}
Q_CONSTINIT const QMetaObject WTrackMenu::staticMetaObject = { {
    QMetaObject::SuperData::link<QMenu::staticMetaObject>(),
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN10WTrackMenuE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN10WTrackMenuE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN10WTrackMenuE_t>.metaTypes,
    nullptr
} };

void WTrackMenu::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<WTrackMenu *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: _t->loadTrackToPlayer((*reinterpret_cast<std::add_pointer_t<TrackPointer>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[3]))); break;
        case 1: _t->loadTrackToPlayer((*reinterpret_cast<std::add_pointer_t<TrackPointer>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[2]))); break;
        case 2: _t->trackMenuVisible((*reinterpret_cast<std::add_pointer_t<bool>>(_a[1]))); break;
        case 3: _t->saveCurrentViewState(); break;
        case 4: _t->restoreCurrentViewStateOrIndex(); break;
        case 5: _t->slotOpenInFileBrowser(); break;
        case 6: _t->slotSelectInLibrary(); break;
        case 7: _t->slotSetRating((*reinterpret_cast<std::add_pointer_t<int>>(_a[1]))); break;
        case 8: _t->slotColorPicked((*reinterpret_cast<std::add_pointer_t<mixxx::RgbColor::optional_t>>(_a[1]))); break;
        case 9: _t->slotClearBeats(); break;
        case 10: _t->slotClearPlayCount(); break;
        case 11: _t->slotClearRating(); break;
        case 12: _t->slotClearComment(); break;
        case 13: _t->slotResetMainCue(); break;
        case 14: _t->slotClearHotCues(); break;
        case 15: _t->slotResetIntroCue(); break;
        case 16: _t->slotResetOutroCue(); break;
        case 17: _t->slotClearLoops(); break;
        case 18: _t->slotClearKey(); break;
        case 19: _t->slotClearReplayGain(); break;
        case 20: _t->slotClearWaveform(); break;
        case 21: _t->slotClearAllMetadata(); break;
        case 22: _t->slotAnalyze(); break;
        case 23: _t->slotReanalyze(); break;
        case 24: _t->slotReanalyzeWithFixedTempo(); break;
        case 25: _t->slotReanalyzeWithVariableTempo(); break;
        case 26: _t->slotLockBpm(); break;
        case 27: _t->slotUnlockBpm(); break;
        case 28: _t->slotScaleBpm((*reinterpret_cast<std::add_pointer_t<mixxx::Beats::BpmScale>>(_a[1]))); break;
        case 29: _t->slotUndoBeatsChange(); break;
        case 30: _t->slotUpdateReplayGainFromPregain(); break;
        case 31: _t->slotShowDlgTagFetcher(); break;
        case 32: _t->slotImportMetadataFromFileTags(); break;
        case 33: _t->slotExportMetadataIntoFileTags(); break;
        case 34: _t->slotUpdateExternalTrackCollection((*reinterpret_cast<std::add_pointer_t<ExternalTrackCollection*>>(_a[1]))); break;
        case 35: _t->slotPopulatePlaylistMenu(); break;
        case 36: _t->slotPopulateCrateMenu(); break;
        case 37: _t->addSelectionToNewCrate(); break;
        case 38: _t->slotAddToAutoDJBottom(); break;
        case 39: _t->slotAddToAutoDJTop(); break;
        case 40: _t->slotAddToAutoDJReplace(); break;
        case 41: _t->slotCoverInfoSelected((*reinterpret_cast<std::add_pointer_t<CoverInfoRelative>>(_a[1]))); break;
        case 42: _t->slotReloadCoverArt(); break;
        case 43: _t->slotRemove(); break;
        case 44: _t->slotHide(); break;
        case 45: _t->slotUnhide(); break;
        case 46: _t->slotPurge(); break;
        default: ;
        }
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        switch (_id) {
        default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
        case 0:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
            case 0:
                *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType::fromType< TrackPointer >(); break;
            }
            break;
        case 1:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
            case 0:
                *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType::fromType< TrackPointer >(); break;
            }
            break;
        }
    }
    if (_c == QMetaObject::IndexOfMethod) {
        if (QtMocHelpers::indexOfMethod<void (WTrackMenu::*)(TrackPointer , const QString & , bool )>(_a, &WTrackMenu::loadTrackToPlayer, 0))
            return;
        if (QtMocHelpers::indexOfMethod<void (WTrackMenu::*)(bool )>(_a, &WTrackMenu::trackMenuVisible, 2))
            return;
        if (QtMocHelpers::indexOfMethod<void (WTrackMenu::*)()>(_a, &WTrackMenu::saveCurrentViewState, 3))
            return;
        if (QtMocHelpers::indexOfMethod<void (WTrackMenu::*)()>(_a, &WTrackMenu::restoreCurrentViewStateOrIndex, 4))
            return;
    }
}

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

void *WTrackMenu::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_staticMetaObjectStaticContent<qt_meta_tag_ZN10WTrackMenuE_t>.strings))
        return static_cast<void*>(this);
    return QMenu::qt_metacast(_clname);
}

int WTrackMenu::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QMenu::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 47)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 47;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 47)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 47;
    }
    return _id;
}

// SIGNAL 0
void WTrackMenu::loadTrackToPlayer(TrackPointer _t1, const QString & _t2, bool _t3)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 0, nullptr, _t1, _t2, _t3);
}

// SIGNAL 2
void WTrackMenu::trackMenuVisible(bool _t1)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 2, nullptr, _t1);
}

// SIGNAL 3
void WTrackMenu::saveCurrentViewState()
{
    QMetaObject::activate(this, &staticMetaObject, 3, nullptr);
}

// SIGNAL 4
void WTrackMenu::restoreCurrentViewStateOrIndex()
{
    QMetaObject::activate(this, &staticMetaObject, 4, nullptr);
}
QT_WARNING_POP
