43 #include "ui_eegosportssetupprojectwidget.h"
44 #include "../eegosports.h"
62 , m_pEEGoSports(pEEGoSports)
67 connect(ui->m_qPushButton_NewProject, &QPushButton::released,
this, &EEGoSportsSetupProjectWidget::addProject);
68 connect(ui->m_qPushButton_NewSubject, &QPushButton::released,
this, &EEGoSportsSetupProjectWidget::addSubject);
69 connect(ui->m_qPushButton_FiffRecordFile, &QPushButton::released,
this, &EEGoSportsSetupProjectWidget::changeOutputFile);
72 connect(ui->m_qComboBox_SubjectSelection, static_cast<void (QComboBox::*)(
int)>(&QComboBox::currentIndexChanged),
73 this, &EEGoSportsSetupProjectWidget::generateFilePath);
74 connect(ui->m_qComboBox_ProjectSelection, static_cast<void (QComboBox::*)(
int)>(&QComboBox::currentIndexChanged),
75 this, &EEGoSportsSetupProjectWidget::generateFilePath);
78 connect(ui->m_qPushButton_EEGCap, &QPushButton::released,
this, &EEGoSportsSetupProjectWidget::changeCap);
81 connect(ui->m_qLineEdit_EEGCap, static_cast<void (QLineEdit::*)(
const QString &)>(&QLineEdit::textEdited),
82 this, &EEGoSportsSetupProjectWidget::changeQLineEdits);
83 connect(ui->m_qLineEdit_FiffRecordFile, static_cast<void (QLineEdit::*)(
const QString &)>(&QLineEdit::textEdited),
84 this, &EEGoSportsSetupProjectWidget::changeQLineEdits);
100 ui->m_qLineEdit_FiffRecordFile->setText(m_pEEGoSports->m_sOutputFilePath);
103 ui->m_qLineEdit_EEGCap->setText(m_pEEGoSports->m_sElcFilePath);
106 ui->m_qComboBox_ProjectSelection->addItem(
"Sequence_01");
107 ui->m_qComboBox_SubjectSelection->addItem(
"Subject_01");
108 ui->m_qComboBox_ProjectSelection->addItem(
"Sequence_02");
109 ui->m_qComboBox_SubjectSelection->addItem(
"Subject_02");
118 void EEGoSportsSetupProjectWidget::addProject()
120 QString path = QFileDialog::getExistingDirectory(
this, tr(
"Open Project Directory"),
121 m_pEEGoSports->m_qStringResourcePath,
122 QFileDialog::ShowDirsOnly
123 | QFileDialog::DontResolveSymlinks);
126 QStringList list = path.split(
"/");
129 ui->m_qComboBox_ProjectSelection->addItem(list.at(list.size()-1));
130 ui->m_qComboBox_ProjectSelection->setCurrentIndex(ui->m_qComboBox_ProjectSelection->count()-1);
136 void EEGoSportsSetupProjectWidget::addSubject()
138 QString path = QFileDialog::getExistingDirectory(
this, tr(
"Open Subject Directory"),
139 m_pEEGoSports->m_qStringResourcePath,
140 QFileDialog::ShowDirsOnly
141 | QFileDialog::DontResolveSymlinks);
144 QStringList list = path.split(
"/");
147 ui->m_qComboBox_SubjectSelection->addItem(list.at(list.size()-1));
148 ui->m_qComboBox_SubjectSelection->setCurrentIndex(ui->m_qComboBox_SubjectSelection->count()-1);
154 void EEGoSportsSetupProjectWidget::changeOutputFile()
156 QString path = QFileDialog::getSaveFileName(
159 "mne_x_plugins/resources/eegosports/EEG_data_001_raw.fif",
160 tr(
"Fif files (*.fif)"));
163 path = ui->m_qLineEdit_FiffRecordFile->text();
165 ui->m_qLineEdit_FiffRecordFile->setText(path);
166 m_pEEGoSports->m_sOutputFilePath = ui->m_qLineEdit_FiffRecordFile->text();
172 void EEGoSportsSetupProjectWidget::changeCap()
174 QString path = QFileDialog::getOpenFileName(
this,
175 "Change EEG cap layout",
176 "mne_x_plugins/resources/tmsi/loc_files",
177 tr(
"Electrode location files (*.elc)"));
180 path = ui->m_qLineEdit_EEGCap->text();
182 ui->m_qLineEdit_EEGCap->setText(path);
183 m_pEEGoSports->m_sElcFilePath = ui->m_qLineEdit_EEGCap->text();
189 void EEGoSportsSetupProjectWidget::generateFilePath(
int index)
195 QString fileName = QString (
"%1_%2_%3_EEG_001_raw.fif").arg(date.currentDate().year()).arg(date.currentDate().month()).arg(date.currentDate().day());
198 QString resourcePath = m_pEEGoSports->m_qStringResourcePath;
199 resourcePath.append(ui->m_qComboBox_ProjectSelection->currentText());
200 resourcePath.append(
"/");
201 resourcePath.append(ui->m_qComboBox_SubjectSelection->currentText());
202 resourcePath.append(
"/");
203 resourcePath.append(fileName);
205 ui->m_qLineEdit_FiffRecordFile->setText(resourcePath);
206 m_pEEGoSports->m_sOutputFilePath = resourcePath;
212 void EEGoSportsSetupProjectWidget::changeQLineEdits()
214 m_pEEGoSports->m_sElcFilePath = ui->m_qLineEdit_EEGCap->text();
215 m_pEEGoSports->m_sOutputFilePath = ui->m_qLineEdit_FiffRecordFile->text();
The EEGoSports class provides a EEG connector. In order for this plugin to work properly the driver d...