2
#ifndef _MIDIINPUTMAPPINGTABLEMODEL_H_
3
#define _MIDIINPUTMAPPINGTABLEMODEL_H_
5
#include "midimapping.h" //gives typedef for MidiInputMapping
7
enum MidiInputTableIndices {
8
MIDIINPUTTABLEINDEX_MIDISTATUS = 0,
9
MIDIINPUTTABLEINDEX_MIDINO,
10
MIDIINPUTTABLEINDEX_MIDICHANNEL,
11
MIDIINPUTTABLEINDEX_CONTROLOBJECTGROUP,
12
MIDIINPUTTABLEINDEX_CONTROLOBJECTVALUE,
13
MIDIINPUTTABLEINDEX_MIDIOPTION,
14
MIDIINPUTTABLEINDEX_CONTROLOBJECTDESCRIPTION,
15
MIDIINPUTTABLEINDEX_NUMCOLS //Number of columns
18
class MidiInputMappingTableModel : public QAbstractTableModel
22
MidiInputMappingTableModel(MidiMapping* mapping);
23
~MidiInputMappingTableModel();
24
void setMapping(MidiMapping* mapping);
25
QVariant data(const QModelIndex &index, int role) const;
26
Qt::ItemFlags flags(const QModelIndex &index) const;
27
bool setData(const QModelIndex &index, const QVariant &value,
28
int role = Qt::EditRole);
29
int rowCount(const QModelIndex& parent=QModelIndex()) const;
30
int columnCount(const QModelIndex& parent=QModelIndex()) const;
31
QVariant headerData(int section, Qt::Orientation orientation, int role) const;
32
bool removeRow(int row, const QModelIndex& parent=QModelIndex());
33
bool removeRows(int row, int count, const QModelIndex& parent=QModelIndex());
36
void slotInputMappingChanged();
38
MidiMapping* m_pMapping;