1 module dqml.qabstracttablemodel; 2 3 import dqml.dothersideinterface; 4 import dqml.global; 5 import dqml.qabstractitemmodel; 6 import dqml.qmetaobject; 7 import dqml.qmodelindex; 8 import core.memory; 9 10 abstract class QAbstractTableModel : QAbstractItemModel 11 { 12 shared static this() 13 { 14 m_staticMetaObject = new QMetaObject(dos_qabstracttablemodel_qmetaobject()); 15 } 16 17 public static QMetaObject staticMetaObject() 18 { 19 return m_staticMetaObject; 20 } 21 22 public override QMetaObject metaObject() 23 { 24 return m_staticMetaObject; 25 } 26 27 public override QModelIndex index(int row, int column, QModelIndex parent) 28 { 29 auto result = dos_qabstracttablemodel_index(voidPointer(), row, column, parent.voidPointer()); 30 return new QModelIndex(result, Ownership.Take); 31 } 32 33 public override QModelIndex parent(QModelIndex child) 34 { 35 auto result = dos_qabstracttablemodel_parent(voidPointer(), child.voidPointer()); 36 return new QModelIndex(result, Ownership.Take); 37 } 38 39 protected override void* createVoidPointer() 40 { 41 DosQAbstractItemModelCallbacks callbacks; 42 callbacks.rowCount = &rowCountCallback; 43 callbacks.columnCount = &columnCountCallback; 44 callbacks.data = &dataCallback; 45 callbacks.setData = &setDataCallback; 46 callbacks.headerData = &headerDataCallback; 47 callbacks.roleNames = &roleNamesCallback; 48 callbacks.flags = &flagsCallback; 49 callbacks.index = &indexCallback; 50 callbacks.parent = &parentCallback; 51 callbacks.hasChildren = &hasChildrenCallback; 52 callbacks.canFetchMore = &canFetchMoreCallback; 53 callbacks.fetchMore = &fetchMoreCallback; 54 55 return dos_qabstracttablemodel_create(cast(void*)this, 56 metaObject().voidPointer(), 57 &staticSlotCallback, 58 callbacks); 59 } 60 61 private static QMetaObject m_staticMetaObject; 62 }