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

#include <memory>
#include "../../../../kaffeine/src/playlist/playlisttab.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#include <QtCore/QList>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'playlisttab.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.15.18. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif

QT_BEGIN_MOC_NAMESPACE
QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
struct qt_meta_stringdata_PlaylistView_t {
    QByteArrayData data[3];
    char stringdata0[33];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
    Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
    qptrdiff(offsetof(qt_meta_stringdata_PlaylistView_t, stringdata0) + ofs \
        - idx * sizeof(QByteArrayData)) \
    )
static const qt_meta_stringdata_PlaylistView_t qt_meta_stringdata_PlaylistView = {
    {
QT_MOC_LITERAL(0, 0, 12), // "PlaylistView"
QT_MOC_LITERAL(1, 13, 18), // "removeSelectedRows"
QT_MOC_LITERAL(2, 32, 0) // ""

    },
    "PlaylistView\0removeSelectedRows\0"
};
#undef QT_MOC_LITERAL

static const uint qt_meta_data_PlaylistView[] = {

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

 // slots: name, argc, parameters, tag, flags
       1,    0,   19,    2, 0x0a /* Public */,

 // slots: parameters
    QMetaType::Void,

       0        // eod
};

void PlaylistView::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    if (_c == QMetaObject::InvokeMetaMethod) {
        auto *_t = static_cast<PlaylistView *>(_o);
        (void)_t;
        switch (_id) {
        case 0: _t->removeSelectedRows(); break;
        default: ;
        }
    }
    (void)_a;
}

QT_INIT_METAOBJECT const QMetaObject PlaylistView::staticMetaObject = { {
    QMetaObject::SuperData::link<QTreeView::staticMetaObject>(),
    qt_meta_stringdata_PlaylistView.data,
    qt_meta_data_PlaylistView,
    qt_static_metacall,
    nullptr,
    nullptr
} };


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

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

int PlaylistView::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QTreeView::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 1)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 1;
    } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 1)
            *reinterpret_cast<int*>(_a[0]) = -1;
        _id -= 1;
    }
    return _id;
}
struct qt_meta_stringdata_PlaylistBrowserModel_t {
    QByteArrayData data[6];
    char stringdata0[57];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
    Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
    qptrdiff(offsetof(qt_meta_stringdata_PlaylistBrowserModel_t, stringdata0) + ofs \
        - idx * sizeof(QByteArrayData)) \
    )
static const qt_meta_stringdata_PlaylistBrowserModel_t qt_meta_stringdata_PlaylistBrowserModel = {
    {
QT_MOC_LITERAL(0, 0, 20), // "PlaylistBrowserModel"
QT_MOC_LITERAL(1, 21, 9), // "playTrack"
QT_MOC_LITERAL(2, 31, 0), // ""
QT_MOC_LITERAL(3, 32, 9), // "Playlist*"
QT_MOC_LITERAL(4, 42, 8), // "playlist"
QT_MOC_LITERAL(5, 51, 5) // "track"

    },
    "PlaylistBrowserModel\0playTrack\0\0"
    "Playlist*\0playlist\0track"
};
#undef QT_MOC_LITERAL

static const uint qt_meta_data_PlaylistBrowserModel[] = {

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

 // signals: name, argc, parameters, tag, flags
       1,    2,   19,    2, 0x06 /* Public */,

 // signals: parameters
    QMetaType::Void, 0x80000000 | 3, QMetaType::Int,    4,    5,

       0        // eod
};

void PlaylistBrowserModel::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    if (_c == QMetaObject::InvokeMetaMethod) {
        auto *_t = static_cast<PlaylistBrowserModel *>(_o);
        (void)_t;
        switch (_id) {
        case 0: _t->playTrack((*reinterpret_cast< Playlist*(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        default: ;
        }
    } else if (_c == QMetaObject::IndexOfMethod) {
        int *result = reinterpret_cast<int *>(_a[0]);
        {
            using _t = void (PlaylistBrowserModel::*)(Playlist * , int );
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&PlaylistBrowserModel::playTrack)) {
                *result = 0;
                return;
            }
        }
    }
}

QT_INIT_METAOBJECT const QMetaObject PlaylistBrowserModel::staticMetaObject = { {
    QMetaObject::SuperData::link<QAbstractListModel::staticMetaObject>(),
    qt_meta_stringdata_PlaylistBrowserModel.data,
    qt_meta_data_PlaylistBrowserModel,
    qt_static_metacall,
    nullptr,
    nullptr
} };


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

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

int PlaylistBrowserModel::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QAbstractListModel::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 1)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 1;
    } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 1)
            *reinterpret_cast<int*>(_a[0]) = -1;
        _id -= 1;
    }
    return _id;
}

// SIGNAL 0
void PlaylistBrowserModel::playTrack(Playlist * _t1, int _t2)
{
    void *_a[] = { nullptr, const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t1))), const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t2))) };
    QMetaObject::activate(this, &staticMetaObject, 0, _a);
}
struct qt_meta_stringdata_PlaylistTab_t {
    QByteArrayData data[29];
    char stringdata0[385];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
    Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
    qptrdiff(offsetof(qt_meta_stringdata_PlaylistTab_t, stringdata0) + ofs \
        - idx * sizeof(QByteArrayData)) \
    )
static const qt_meta_stringdata_PlaylistTab_t qt_meta_stringdata_PlaylistTab = {
    {
QT_MOC_LITERAL(0, 0, 11), // "PlaylistTab"
QT_MOC_LITERAL(1, 12, 16), // "createFileWidget"
QT_MOC_LITERAL(2, 29, 0), // ""
QT_MOC_LITERAL(3, 30, 11), // "newPlaylist"
QT_MOC_LITERAL(4, 42, 14), // "renamePlaylist"
QT_MOC_LITERAL(5, 57, 14), // "removePlaylist"
QT_MOC_LITERAL(6, 72, 12), // "savePlaylist"
QT_MOC_LITERAL(7, 85, 14), // "savePlaylistAs"
QT_MOC_LITERAL(8, 100, 11), // "addSubtitle"
QT_MOC_LITERAL(9, 112, 17), // "playlistActivated"
QT_MOC_LITERAL(10, 130, 11), // "QModelIndex"
QT_MOC_LITERAL(11, 142, 5), // "index"
QT_MOC_LITERAL(12, 148, 17), // "playPreviousTrack"
QT_MOC_LITERAL(13, 166, 16), // "playCurrentTrack"
QT_MOC_LITERAL(14, 183, 13), // "playNextTrack"
QT_MOC_LITERAL(15, 197, 9), // "playTrack"
QT_MOC_LITERAL(16, 207, 9), // "Playlist*"
QT_MOC_LITERAL(17, 217, 8), // "playlist"
QT_MOC_LITERAL(18, 226, 5), // "track"
QT_MOC_LITERAL(19, 232, 10), // "appendUrls"
QT_MOC_LITERAL(20, 243, 11), // "QList<QUrl>"
QT_MOC_LITERAL(21, 255, 4), // "urls"
QT_MOC_LITERAL(22, 260, 14), // "appendPlaylist"
QT_MOC_LITERAL(23, 275, 15), // "playImmediately"
QT_MOC_LITERAL(24, 291, 17), // "updateTrackLength"
QT_MOC_LITERAL(25, 309, 6), // "length"
QT_MOC_LITERAL(26, 316, 19), // "updateTrackMetadata"
QT_MOC_LITERAL(27, 336, 39), // "QMap<MediaWidget::MetadataTyp..."
QT_MOC_LITERAL(28, 376, 8) // "metadata"

    },
    "PlaylistTab\0createFileWidget\0\0newPlaylist\0"
    "renamePlaylist\0removePlaylist\0"
    "savePlaylist\0savePlaylistAs\0addSubtitle\0"
    "playlistActivated\0QModelIndex\0index\0"
    "playPreviousTrack\0playCurrentTrack\0"
    "playNextTrack\0playTrack\0Playlist*\0"
    "playlist\0track\0appendUrls\0QList<QUrl>\0"
    "urls\0appendPlaylist\0playImmediately\0"
    "updateTrackLength\0length\0updateTrackMetadata\0"
    "QMap<MediaWidget::MetadataType,QString>\0"
    "metadata"
};
#undef QT_MOC_LITERAL

static const uint qt_meta_data_PlaylistTab[] = {

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

 // slots: name, argc, parameters, tag, flags
       1,    0,   99,    2, 0x08 /* Private */,
       3,    0,  100,    2, 0x08 /* Private */,
       4,    0,  101,    2, 0x08 /* Private */,
       5,    0,  102,    2, 0x08 /* Private */,
       6,    0,  103,    2, 0x08 /* Private */,
       7,    0,  104,    2, 0x08 /* Private */,
       8,    0,  105,    2, 0x08 /* Private */,
       9,    1,  106,    2, 0x08 /* Private */,
      12,    0,  109,    2, 0x08 /* Private */,
      13,    0,  110,    2, 0x08 /* Private */,
      14,    0,  111,    2, 0x08 /* Private */,
      15,    2,  112,    2, 0x08 /* Private */,
      15,    1,  117,    2, 0x08 /* Private */,
      19,    1,  120,    2, 0x08 /* Private */,
      22,    2,  123,    2, 0x08 /* Private */,
      24,    1,  128,    2, 0x08 /* Private */,
      26,    1,  131,    2, 0x08 /* Private */,

 // slots: parameters
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void, 0x80000000 | 10,   11,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void, 0x80000000 | 16, QMetaType::Int,   17,   18,
    QMetaType::Void, 0x80000000 | 10,   11,
    QMetaType::Void, 0x80000000 | 20,   21,
    QMetaType::Void, 0x80000000 | 16, QMetaType::Bool,   17,   23,
    QMetaType::Void, QMetaType::Int,   25,
    QMetaType::Void, 0x80000000 | 27,   28,

       0        // eod
};

void PlaylistTab::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    if (_c == QMetaObject::InvokeMetaMethod) {
        auto *_t = static_cast<PlaylistTab *>(_o);
        (void)_t;
        switch (_id) {
        case 0: _t->createFileWidget(); break;
        case 1: _t->newPlaylist(); break;
        case 2: _t->renamePlaylist(); break;
        case 3: _t->removePlaylist(); break;
        case 4: _t->savePlaylist(); break;
        case 5: _t->savePlaylistAs(); break;
        case 6: _t->addSubtitle(); break;
        case 7: _t->playlistActivated((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break;
        case 8: _t->playPreviousTrack(); break;
        case 9: _t->playCurrentTrack(); break;
        case 10: _t->playNextTrack(); break;
        case 11: _t->playTrack((*reinterpret_cast< Playlist*(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        case 12: _t->playTrack((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break;
        case 13: _t->appendUrls((*reinterpret_cast< const QList<QUrl>(*)>(_a[1]))); break;
        case 14: _t->appendPlaylist((*reinterpret_cast< Playlist*(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
        case 15: _t->updateTrackLength((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 16: _t->updateTrackMetadata((*reinterpret_cast< const QMap<MediaWidget::MetadataType,QString>(*)>(_a[1]))); break;
        default: ;
        }
    } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        switch (_id) {
        default: *reinterpret_cast<int*>(_a[0]) = -1; break;
        case 13:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<int*>(_a[0]) = -1; break;
            case 0:
                *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< QList<QUrl> >(); break;
            }
            break;
        }
    }
}

QT_INIT_METAOBJECT const QMetaObject PlaylistTab::staticMetaObject = { {
    QMetaObject::SuperData::link<TabBase::staticMetaObject>(),
    qt_meta_stringdata_PlaylistTab.data,
    qt_meta_data_PlaylistTab,
    qt_static_metacall,
    nullptr,
    nullptr
} };


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

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

int PlaylistTab::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = TabBase::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 17)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 17;
    } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 17)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 17;
    }
    return _id;
}
QT_WARNING_POP
QT_END_MOC_NAMESPACE
