added working openMidiPorts slot

master
Yohann Dedy 2016-07-26 18:48:55 +02:00
parent 02263905d1
commit 9c6621f3b7
4 changed files with 27 additions and 17 deletions

View File

@ -109,19 +109,17 @@ void mainWindow::openSettingsWindow()
qDebug() << "Open settings window here" ;
_settingsWindow->setWindowModality(Qt::ApplicationModal);
_settingsWindow->show();
}
void mainWindow::openMidiOutPort(unsigned int port)
{
if(_midiOut->isPortOpen()) _midiOut->closePort();
_midiOut->openPort(port);
void mainWindow::openMidiPorts(){
_midiIn->closePort();
_midiOut->closePort();
if(_settingsWindow->_inPortComboBox->currentText() != "None"){
qDebug()<< "Selected MIDI IN : " <<_settingsWindow->_inPortComboBox->currentText();
_midiIn->openPort(_settingsWindow->_inPortComboBox->currentIndex());
}
if(_settingsWindow->_outPortComboBox->currentText() != "None"){
qDebug()<< "Selected MIDI OUT : " <<_settingsWindow->_inPortComboBox->currentText();
_midiOut->openPort(_settingsWindow->_outPortComboBox->currentIndex());
}
void mainWindow::openMidiInPort(unsigned int port)
{
if(_midiIn->isPortOpen()) _midiIn->closePort();
_midiIn->openPort(port);
}

View File

@ -60,8 +60,8 @@ public slots:
void openSettingsWindow();
//void updateDeviceConfig(std::bitset<3> thru, int mastChn);
//void updatePresetSettings(std::vector<unsigned int>* presetSettings);
void openMidiOutPort(unsigned int port);
void openMidiInPort(unsigned int port);
private slots:
void openMidiPorts();
};

View File

@ -29,7 +29,12 @@ settingsWindow::settingsWindow(QWidget *parent) :
qDebug()<<"outputs"<<_midiOut->getPorts();
_inPortComboBox->addItems(_midiIn->getPorts());
_inPortComboBox->addItem("None");
_outPortComboBox->addItems(_midiOut->getPorts());
_outPortComboBox->addItem("None");
emit _inPortComboBox->setCurrentIndex(_inPortComboBox->count()-1);
emit _outPortComboBox->setCurrentIndex(_outPortComboBox->count()-1);
QPushButton *bouton = new QPushButton();
@ -72,6 +77,11 @@ settingsWindow::settingsWindow(QWidget *parent) :
connect(_channelThruCheckBox,SIGNAL(toggled(bool)),this,SLOT(onThruCheckboxChange()));
connect(_sysexThruCheckBox,SIGNAL(toggled(bool)),this,SLOT(onThruCheckboxChange()));
connect(_realtimeThruCheckBox,SIGNAL(toggled(bool)),this,SLOT(onThruCheckboxChange()));
connect(bouton, SIGNAL(clicked(bool)),parent, SLOT(openMidiPorts()));
}
settingsWindow::~settingsWindow()
{
}
void settingsWindow::onThruCheckboxChange(){

View File

@ -4,10 +4,10 @@
#include <QWidget>
#include <QMainWindow>
#include <QComboBox>
#include <QGroupBox>;
#include <QGroupBox>
#include <QCheckBox>
#include <QSpinBox>
#include <bitset>;
#include <bitset>
#include "qmidimessage.h"
#include "qmidiin.h"
@ -19,6 +19,8 @@ class settingsWindow : public QMainWindow
public:
explicit settingsWindow(QWidget *parent = 0);
~settingsWindow();
QMidiMessage* _midiMessage;
QComboBox *_inPortComboBox;