![]() |
Mixxx
|
00001 00002 #ifndef _MIDIOUTPUTMAPPINGTABLEMODEL_H_ 00003 #define _MIDIOUTPUTMAPPINGTABLEMODEL_H_ 00004 00005 #include "midimapping.h" //gives typedef for MidiInputMapping 00006 00007 enum MidiOutputTableIndices { 00008 MIDIOUTPUTTABLEINDEX_CONTROLOBJECTGROUP = 0, 00009 MIDIOUTPUTTABLEINDEX_CONTROLOBJECTVALUE, 00010 MIDIOUTPUTTABLEINDEX_THRESHOLDMIN, 00011 MIDIOUTPUTTABLEINDEX_THRESHOLDMAX, 00012 MIDIOUTPUTTABLEINDEX_MIDISTATUS, 00013 MIDIOUTPUTTABLEINDEX_MIDINO, 00014 MIDIOUTPUTTABLEINDEX_MIDICHANNEL, 00015 MIDIOUTPUTTABLEINDEX_MIDIOPTION, 00016 MIDIOUTPUTTABLEINDEX_CONTROLOBJECTDESCRIPTION, 00017 MIDIOUTPUTTABLEINDEX_NUMCOLS //Number of columns 00018 }; 00019 00020 class MidiOutputMappingTableModel : public QAbstractTableModel 00021 { 00022 Q_OBJECT 00023 public: 00024 MidiOutputMappingTableModel(MidiMapping* mapping); 00025 ~MidiOutputMappingTableModel(); 00026 void setMapping(MidiMapping* mapping); 00027 QVariant data(const QModelIndex &index, int role) const; 00028 Qt::ItemFlags flags(const QModelIndex &index) const; 00029 bool setData(const QModelIndex &index, const QVariant &value, 00030 int role = Qt::EditRole); 00031 int rowCount(const QModelIndex& parent=QModelIndex()) const; 00032 int columnCount(const QModelIndex& parent=QModelIndex()) const; 00033 QVariant headerData(int section, Qt::Orientation orientation, int role) const; 00034 bool removeRow(int row, const QModelIndex& parent=QModelIndex()); 00035 bool removeRows(int row, int count, const QModelIndex& parent=QModelIndex()); 00036 00037 public slots: 00038 void slotOutputMappingChanged(); 00039 private: 00040 MidiMapping* m_pMapping; 00041 00042 }; 00043 00044 #endif