Renamed the QTableWidget / added slots and signals
parent
2cd987fd2d
commit
93b0d837a4
|
|
@ -1,40 +1,73 @@
|
|||
#include "mainwindow.h"
|
||||
#include <QHBoxLayout>
|
||||
#include <vector>
|
||||
#include <QDebug>
|
||||
|
||||
mainWindow::mainWindow(QWidget *parent) :
|
||||
QMainWindow(parent),
|
||||
_presets(new QTableWidget),
|
||||
_presetSettings(new QTableWidget)
|
||||
_presetsTable(new QTableWidget),
|
||||
_presetSettingsTable(new QTableWidget)
|
||||
{
|
||||
QWidget *mainWidget = new QWidget(this);
|
||||
QHBoxLayout *mainLayout = new QHBoxLayout(mainWidget);
|
||||
|
||||
_presets->setRowCount(128);
|
||||
_presets->setColumnCount(1);
|
||||
_presetsTable->setRowCount(128);
|
||||
_presetsTable->setColumnCount(1);
|
||||
|
||||
for(int i=0; i<_presets->rowCount(); i++){
|
||||
for(int i=0; i<_presetsTable->rowCount(); i++){
|
||||
QString defaultCelString = QString("Preset #%1").arg(i+1);
|
||||
QTableWidgetItem *celContent = new QTableWidgetItem(defaultCelString);
|
||||
_presets->setItem(i, 0, celContent);
|
||||
_presetsTable->setItem(i, 0, celContent);
|
||||
}
|
||||
|
||||
_presets->horizontalHeader()->setVisible(false);
|
||||
_presetsTable->horizontalHeader()->setVisible(false);
|
||||
|
||||
QStringList settingsList;
|
||||
settingsList << "Channel" << "Description"<< "Type" << "Parameter";
|
||||
_presetSettings->setRowCount(16);
|
||||
_presetSettings->setColumnCount(4);
|
||||
_presetSettings->setHorizontalHeaderLabels(settingsList);
|
||||
_presetSettingsTable->setRowCount(16);
|
||||
_presetSettingsTable->setColumnCount(4);
|
||||
_presetSettingsTable->setHorizontalHeaderLabels(settingsList);
|
||||
|
||||
|
||||
mainLayout->addWidget(_presets);
|
||||
mainLayout->addWidget(_presetSettings);
|
||||
mainLayout->addWidget(_presetsTable);
|
||||
mainLayout->addWidget(_presetSettingsTable);
|
||||
|
||||
mainWidget->setLayout(mainLayout);
|
||||
setCentralWidget(mainWidget);
|
||||
|
||||
connect(_midiIn, SIGNAL(midiMessageReceived(QMidiMessage*)), this, SLOT(onMidiMessageReceive(QMidiMessage*)));
|
||||
|
||||
}
|
||||
|
||||
mainWindow::~mainWindow()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void mainWindow::onMidiMessageReceive(QMidiMessage *message)
|
||||
{
|
||||
std::vector<unsigned char> rawMessage = message->getRawMessage();
|
||||
// MAKE SURE THE RECEIVED MESSAGE IS COMING FROM A POCKETC (F0 00 20 20 14 00) AND THAT message.size() > 7 BYTES
|
||||
if(rawMessage.size() > 7)
|
||||
{
|
||||
// PROCESS THE MESSAGE ACCORDING TO THE BYTE #7
|
||||
switch(rawMessage.at(6))
|
||||
{
|
||||
case THRU_MC_DUMP:
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
case SINGLE_DUMP:
|
||||
{
|
||||
break;
|
||||
}
|
||||
case VERSION_ANS:
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//qDebug() << "BYTE #7 : " << rawMessage.at(6) ; // DEBUG
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,18 +5,57 @@
|
|||
#include <QMainWindow>
|
||||
#include <QtWidgets>
|
||||
#include <QTableWidget>
|
||||
#include <vector>
|
||||
#include <bitset>
|
||||
|
||||
#include "qmidimessage.h"
|
||||
#include "qmidiin.h"
|
||||
#include "qmidiout.h"
|
||||
|
||||
enum deviceCommandByte {
|
||||
|
||||
SINGLE_DUMP = 0x20,
|
||||
SINGLE_STORE = 0x30,
|
||||
SINGLE_STORE_REQ = 0x26,
|
||||
THRU_MC_DUMP = 0x50,
|
||||
THRU_MC_DUMP_REQ = 0x56,
|
||||
VERSION_REQ = 0x06,
|
||||
VERSION_ANS = 0x00,
|
||||
};
|
||||
|
||||
|
||||
class mainWindow : public QMainWindow
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
mainWindow(QWidget *parent = 0);
|
||||
QTableWidget* _presets;
|
||||
QTableWidget* _presetSettings;
|
||||
QTableWidget* _presetsTable;
|
||||
QTableWidget* _presetSettingsTable;
|
||||
|
||||
~mainWindow();
|
||||
|
||||
QMidiMessage* _midiMessage;
|
||||
deviceCommandByte _deviceCommandByte;
|
||||
|
||||
int _currentPreset;
|
||||
int _masterChannel;
|
||||
std::vector<unsigned int> _presetSettings;
|
||||
|
||||
private:
|
||||
QMidiIn *_midiIn;
|
||||
QMidiOut *_midiOut;
|
||||
|
||||
|
||||
signals:
|
||||
void singleDumpReceived(QMidiMessage* message);
|
||||
void thruMasterChnDumpReceived(QMidiMessage* message);
|
||||
void versionAnswerReceived(QMidiMessage* message);
|
||||
|
||||
public slots:
|
||||
void onMidiMessageReceive(QMidiMessage* message);
|
||||
//void updateDeviceConfig(std::bitset<3> thru, int mastChn);
|
||||
//void updatePresetSettings(std::vector<unsigned int>* presetSettings);
|
||||
|
||||
};
|
||||
|
||||
#endif // MAINWINDOW_H
|
||||
|
|
|
|||
Loading…
Reference in New Issue