From 00ab01fbc8235fcd48513469a8cdea6dfd03f2a5 Mon Sep 17 00:00:00 2001
From: Olivier Langella <olivier.langella@u-psud.fr>
Date: Sat, 2 Sep 2017 18:46:34 +0200
Subject: [PATCH] choose preset directory, accept tandem run dialog

---
 src/gui/mainwindow.cpp                        |  7 +++++
 src/gui/mainwindow.h                          |  1 +
 .../tandem_run_dialog/tandem_run_dialog.ui    | 26 ++++++++++++++++++-
 src/gui/tandem_run_dialog/tandemrundialog.cpp | 18 +++++++++++++
 src/gui/tandem_run_dialog/tandemrundialog.h   |  1 +
 5 files changed, 52 insertions(+), 1 deletion(-)

diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp
index 33b0de15..3c9213de 100644
--- a/src/gui/mainwindow.cpp
+++ b/src/gui/mainwindow.cpp
@@ -88,6 +88,7 @@ MainWindow::MainWindow(QWidget *parent):
 #else
 // Qt4 code
 
+    connect(_p_tandem_run_dialog, SIGNAL(accepted()), this,SLOT(doAcceptedTandemRunDialog()));
     connect(_p_load_results_dialog, SIGNAL(accepted()), this,SLOT(doAcceptedLoadResultDialog()));
     connect(_p_export_spreadsheet_dialog, SIGNAL(accepted()), this,SLOT(doAcceptedExportSpreadsheetDialog()));
 
@@ -170,6 +171,12 @@ void MainWindow::doAcceptedExportSpreadsheetDialog() {
     qDebug() << "MainWindow::doAcceptedExportSpreadsheetDialog end";
 }
 
+void MainWindow::doAcceptedTandemRunDialog()
+{
+    qDebug() << "MainWindow::doAcceptedTandemRunDialog begin";
+    qDebug() << "MainWindow::doAcceptedTandemRunDialog end";
+}
+
 void MainWindow::doAcceptedLoadResultDialog() {
     qDebug() << "MainWindow::doAcceptedLoadResultDialog begin";
     AutomaticFilterParameters param = _p_load_results_dialog->getAutomaticFilterParameters();
diff --git a/src/gui/mainwindow.h b/src/gui/mainwindow.h
index 65a75a6a..8b48307b 100644
--- a/src/gui/mainwindow.h
+++ b/src/gui/mainwindow.h
@@ -72,6 +72,7 @@ public slots:
     void doProjectReady(ProjectSp project_sp);
     void doProjectNotReady(QString error);
     void doAcceptedLoadResultDialog();
+    void doAcceptedTandemRunDialog();
     void doAcceptedExportSpreadsheetDialog();
     void doOperationFailed(QString);
     void doOperationFinished();
diff --git a/src/gui/tandem_run_dialog/tandem_run_dialog.ui b/src/gui/tandem_run_dialog/tandem_run_dialog.ui
index 7944fe44..e4232adc 100644
--- a/src/gui/tandem_run_dialog/tandem_run_dialog.ui
+++ b/src/gui/tandem_run_dialog/tandem_run_dialog.ui
@@ -57,7 +57,14 @@
      </property>
      <layout class="QHBoxLayout" name="horizontalLayout_7">
       <item>
-       <widget class="QComboBox" name="preset_combobox"/>
+       <widget class="QComboBox" name="preset_combobox">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+       </widget>
       </item>
       <item>
        <spacer name="horizontalSpacer_6">
@@ -360,6 +367,22 @@
     </hint>
    </hints>
   </connection>
+  <connection>
+   <sender>pushButton_7</sender>
+   <signal>clicked()</signal>
+   <receiver>TandemRunDialog</receiver>
+   <slot>selectPresetDirectory()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>541</x>
+     <y>135</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>642</x>
+     <y>135</y>
+    </hint>
+   </hints>
+  </connection>
  </connections>
  <slots>
   <slot>reject()</slot>
@@ -368,5 +391,6 @@
   <slot>selectMzFiles()</slot>
   <slot>selectOutputDirectory()</slot>
   <slot>setPresetName(QString)</slot>
+  <slot>selectPresetDirectory()</slot>
  </slots>
 </ui>
diff --git a/src/gui/tandem_run_dialog/tandemrundialog.cpp b/src/gui/tandem_run_dialog/tandemrundialog.cpp
index 664686ed..9d40f8e8 100644
--- a/src/gui/tandem_run_dialog/tandemrundialog.cpp
+++ b/src/gui/tandem_run_dialog/tandemrundialog.cpp
@@ -110,6 +110,24 @@ void TandemRunDialog::reset() {
     }*/
 }
 
+void TandemRunDialog::selectPresetDirectory() {
+    try {
+        QSettings settings;
+        QString default_preset_location = settings.value("path/tandemrun_preset_directory", "").toString();
+
+        QString directory = QFileDialog::getExistingDirectory(this,tr("Choose preset directory"),default_preset_location );
+
+        if (!directory.isEmpty()) {
+            settings.setValue("path/tandemrun_preset_directory", directory);
+            fillPresetComboBox();
+        }
+
+    }
+    catch (pappso::PappsoException & error) {
+        //QMessageBox::warning(this,
+        //                  tr("Error choosing identification result files : %1").arg(error.qwhat()), error);
+    }
+}
 void TandemRunDialog::selectOutputDirectory() {
     try {
         QSettings settings;
diff --git a/src/gui/tandem_run_dialog/tandemrundialog.h b/src/gui/tandem_run_dialog/tandemrundialog.h
index a45df02a..dc45222f 100644
--- a/src/gui/tandem_run_dialog/tandemrundialog.h
+++ b/src/gui/tandem_run_dialog/tandemrundialog.h
@@ -53,6 +53,7 @@ public slots:
     void selectFastaFiles();
     void selectMzFiles();
     void selectOutputDirectory();
+    void selectPresetDirectory();
     void setPresetName(QString preset_name);
 signals:
 
-- 
GitLab