From c3faa814091b62482a2499b8f957f317a99f5f2e Mon Sep 17 00:00:00 2001 From: Olivier Langella <olivier.langella@u-psud.fr> Date: Thu, 31 Aug 2017 23:01:51 +0200 Subject: [PATCH] wip: tandem run dialog --- src/gui/mainwindow.cpp | 4 + .../tandem_run_dialog/tandem_run_dialog.ui | 94 ++++++++++++++++++- src/gui/tandem_run_dialog/tandemrundialog.cpp | 22 +++++ src/gui/tandem_run_dialog/tandemrundialog.h | 4 +- 4 files changed, 118 insertions(+), 6 deletions(-) diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp index 4ac40bbd..33b0de15 100644 --- a/src/gui/mainwindow.cpp +++ b/src/gui/mainwindow.cpp @@ -61,6 +61,7 @@ MainWindow::MainWindow(QWidget *parent): _p_load_results_dialog = new LoadResultsDialog(this); _p_export_spreadsheet_dialog = new ExportSpreadsheetDialog(this); _p_waiting_message_dialog = new WaitingMessageDialog(this); + _p_tandem_run_dialog = new TandemRunDialog(this); _project_window = new ProjectWindow(this); @@ -228,6 +229,9 @@ void MainWindow::doProjectNotReady(QString error) { void MainWindow::doActionTandemRun() { + _p_tandem_run_dialog->show(); + _p_tandem_run_dialog->raise(); + _p_tandem_run_dialog->activateWindow(); } void MainWindow::loadResults() { diff --git a/src/gui/tandem_run_dialog/tandem_run_dialog.ui b/src/gui/tandem_run_dialog/tandem_run_dialog.ui index 5a8d39fc..e69e7c46 100644 --- a/src/gui/tandem_run_dialog/tandem_run_dialog.ui +++ b/src/gui/tandem_run_dialog/tandem_run_dialog.ui @@ -15,11 +15,39 @@ </property> <layout class="QVBoxLayout" name="verticalLayout_2"> <item> - <widget class="QGroupBox" name="filter_parameter_groupbox"> + <widget class="QGroupBox" name="groupBox_2"> <property name="title"> - <string>Choose MZ data file</string> + <string>X!Tandem exe</string> </property> - <layout class="QVBoxLayout" name="filter_parameter_layout"/> + <layout class="QHBoxLayout" name="horizontalLayout_6"> + <item> + <widget class="QLabel" name="label_2"> + <property name="text"> + <string>TextLabel</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_4"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="pushButton_4"> + <property name="text"> + <string>change</string> + </property> + </widget> + </item> + </layout> </widget> </item> <item> @@ -41,7 +69,7 @@ </property> <layout class="QGridLayout" name="gridLayout_2"> <item row="0" column="0"> - <widget class="QListView" name="file_list_view"/> + <widget class="QListView" name="fasta_file_listview"/> </item> <item row="4" column="0"> <layout class="QHBoxLayout" name="horizontalLayout_2"> @@ -77,6 +105,42 @@ </layout> </widget> </item> + <item> + <widget class="QGroupBox" name="mzdata_files_groupbox"> + <property name="title"> + <string>Choose MZ data files to identify</string> + </property> + <layout class="QVBoxLayout" name="filter_parameter_layout"> + <item> + <widget class="QListView" name="mz_file_listview"/> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_5"> + <item> + <spacer name="horizontalSpacer_3"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="pushButton_3"> + <property name="text"> + <string>add files</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + </item> <item> <widget class="QGroupBox" name="output_directory_groupbox"> <property name="title"> @@ -90,6 +154,26 @@ </property> </widget> </item> + <item> + <spacer name="horizontalSpacer_5"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="pushButton_5"> + <property name="text"> + <string>choose</string> + </property> + </widget> + </item> </layout> </widget> </item> @@ -118,7 +202,7 @@ <item> <widget class="QPushButton" name="pushButton"> <property name="text"> - <string>OK</string> + <string>Run</string> </property> </widget> </item> diff --git a/src/gui/tandem_run_dialog/tandemrundialog.cpp b/src/gui/tandem_run_dialog/tandemrundialog.cpp index 52a4bc14..c49262af 100644 --- a/src/gui/tandem_run_dialog/tandemrundialog.cpp +++ b/src/gui/tandem_run_dialog/tandemrundialog.cpp @@ -43,6 +43,7 @@ TandemRunDialog::TandemRunDialog(QWidget * parent): qDebug() << "TandemRunDialog::TandemRunDialog begin"; ui->setupUi(this); this->setModal(true); + _p_fasta_file_list = new QStringListModel(); #if QT_VERSION >= 0x050000 // Qt5 code @@ -63,3 +64,24 @@ TandemRunDialog::~TandemRunDialog() { delete ui; } + +void TandemRunDialog::selectFastaFiles() { + try { + QSettings settings; + QString default_location = settings.value("path/tandemrun_fastafiles_directory", "").toString(); + + QStringList filenames = QFileDialog::getOpenFileNames(this,tr("FASTA files"),default_location, + tr("FASTA files (*.fasta);;all files (*)") ); + + if (filenames.size() > 0) { + settings.setValue("path/tandemrun_fastafiles_directory", QFileInfo(filenames[0]).absolutePath()); + } + _p_fasta_file_list->setStringList(filenames); + ui->fasta_file_listview->setModel(_p_fasta_file_list); + + } + catch (pappso::PappsoException & error) { + //QMessageBox::warning(this, + // tr("Error choosing identification result files : %1").arg(error.qwhat()), error); + } +} diff --git a/src/gui/tandem_run_dialog/tandemrundialog.h b/src/gui/tandem_run_dialog/tandemrundialog.h index 844c3457..a47f2913 100644 --- a/src/gui/tandem_run_dialog/tandemrundialog.h +++ b/src/gui/tandem_run_dialog/tandemrundialog.h @@ -31,6 +31,7 @@ #include <QDialog> +#include <QStringListModel> namespace Ui { class TandemRunDialog; } @@ -45,11 +46,12 @@ public: ~TandemRunDialog(); public slots: - +void selectFastaFiles(); signals: private: Ui::TandemRunDialog *ui; + QStringListModel * _p_fasta_file_list; }; -- GitLab