From ad216a90f85c7cad4f4b787a6458b2c3445017e1 Mon Sep 17 00:00:00 2001
From: Olivier Langella <olivier.langella@u-psud.fr>
Date: Mon, 18 Feb 2019 16:58:26 +0100
Subject: [PATCH] WIP: new menu created to edit settings, move edit dialog box
 in specific sub directory

---
 src/CMakeLists.txt                            |   8 +-
 .../edit_label_methods/edit_label_methods.ui  |   0
 .../edit_label_methods/editlabelmethods.cpp   |   2 +-
 .../edit_label_methods/editlabelmethods.h     |   4 +-
 .../edit_modifications/edit_modifications.ui  |   0
 .../edit_modifications/editmodifications.cpp  |   4 +-
 .../edit_modifications/editmodifications.h    |   4 +-
 src/gui/main.ui                               |  32 +++++-
 src/gui/mainwindow.cpp                        | 105 ++++++++++++------
 src/gui/mainwindow.h                          |   1 +
 src/gui/project_view/projectwindow.h          |   4 +-
 11 files changed, 116 insertions(+), 48 deletions(-)
 rename src/gui/{ => edit}/edit_label_methods/edit_label_methods.ui (100%)
 rename src/gui/{ => edit}/edit_label_methods/editlabelmethods.cpp (98%)
 rename src/gui/{ => edit}/edit_label_methods/editlabelmethods.h (95%)
 rename src/gui/{ => edit}/edit_modifications/edit_modifications.ui (100%)
 rename src/gui/{ => edit}/edit_modifications/editmodifications.cpp (98%)
 rename src/gui/{ => edit}/edit_modifications/editmodifications.h (95%)

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index be9ef9b05..46ea2030b 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -170,8 +170,8 @@ SET(CPP_FILES
 SET(XTPCPP_SRCS
   ./gui/about_dialog/aboutdialog.cpp
   ./gui/choose_modification_dialog/choosemodificationdialog.cpp
-  ./gui/edit_label_methods/editlabelmethods.cpp
-  ./gui/edit_modifications/editmodifications.cpp
+  ./gui/edit/edit_label_methods/editlabelmethods.cpp
+  ./gui/edit/edit_modifications/editmodifications.cpp
   ./gui/edit_tandem_preset_dialog/edittandempresetdialog.cpp
   ./gui/export/export_masschroq_dialog/exportmasschroqdialog.cpp
   ./gui/export/export_masschroq_dialog/masschroqfileparameters.cpp
@@ -214,8 +214,8 @@ SET(XTPCPP_SRCS
 SET (GUI_UIS
   ./gui/about_dialog/about_dialog.ui
   ./gui/choose_modification_dialog/choose_modification_dialog.ui
-  ./gui/edit_label_methods/edit_label_methods.ui
-  ./gui/edit_modifications/edit_modifications.ui
+  ./gui/edit/edit_label_methods/edit_label_methods.ui
+  ./gui/edit/edit_modifications/edit_modifications.ui
   ./gui/edit_tandem_preset_dialog/edit_tandem_preset_dialog.ui
   ./gui/export/export_masschroq_dialog/export_masschroq_dialog.ui
   ./gui/export/export_spreadsheet_dialog/export_spreadsheet_dialog.ui
diff --git a/src/gui/edit_label_methods/edit_label_methods.ui b/src/gui/edit/edit_label_methods/edit_label_methods.ui
similarity index 100%
rename from src/gui/edit_label_methods/edit_label_methods.ui
rename to src/gui/edit/edit_label_methods/edit_label_methods.ui
diff --git a/src/gui/edit_label_methods/editlabelmethods.cpp b/src/gui/edit/edit_label_methods/editlabelmethods.cpp
similarity index 98%
rename from src/gui/edit_label_methods/editlabelmethods.cpp
rename to src/gui/edit/edit_label_methods/editlabelmethods.cpp
index 738841833..ccefa5cbb 100644
--- a/src/gui/edit_label_methods/editlabelmethods.cpp
+++ b/src/gui/edit/edit_label_methods/editlabelmethods.cpp
@@ -23,7 +23,7 @@
  ******************************************************************************/
 
 #include "editlabelmethods.h"
-#include "../project_view/projectwindow.h"
+#include "../../project_view/projectwindow.h"
 #include "ui_edit_label_methods.h"
 #include <QFile>
 #include <QDomDocument>
diff --git a/src/gui/edit_label_methods/editlabelmethods.h b/src/gui/edit/edit_label_methods/editlabelmethods.h
similarity index 95%
rename from src/gui/edit_label_methods/editlabelmethods.h
rename to src/gui/edit/edit_label_methods/editlabelmethods.h
index 5b05b7b32..7a91abc6b 100644
--- a/src/gui/edit_label_methods/editlabelmethods.h
+++ b/src/gui/edit/edit_label_methods/editlabelmethods.h
@@ -28,8 +28,8 @@
 
 #include <QDialog>
 #include <QStandardItemModel>
-#include "../../core/project.h"
-#include "../../core/labeling/labelingmethod.h"
+#include "../../../core/project.h"
+#include "../../../core/labeling/labelingmethod.h"
 
 class ProjectWindow;
 
diff --git a/src/gui/edit_modifications/edit_modifications.ui b/src/gui/edit/edit_modifications/edit_modifications.ui
similarity index 100%
rename from src/gui/edit_modifications/edit_modifications.ui
rename to src/gui/edit/edit_modifications/edit_modifications.ui
diff --git a/src/gui/edit_modifications/editmodifications.cpp b/src/gui/edit/edit_modifications/editmodifications.cpp
similarity index 98%
rename from src/gui/edit_modifications/editmodifications.cpp
rename to src/gui/edit/edit_modifications/editmodifications.cpp
index a71a751f4..c7c68f179 100644
--- a/src/gui/edit_modifications/editmodifications.cpp
+++ b/src/gui/edit/edit_modifications/editmodifications.cpp
@@ -23,8 +23,8 @@
  ******************************************************************************/
 
 #include "editmodifications.h"
-#include "../project_view/projectwindow.h"
-#include "../../utils/utils.h"
+#include "../../project_view/projectwindow.h"
+#include "../../../utils/utils.h"
 #include <QDesktopServices>
 
 #include "ui_edit_modifications.h"
diff --git a/src/gui/edit_modifications/editmodifications.h b/src/gui/edit/edit_modifications/editmodifications.h
similarity index 95%
rename from src/gui/edit_modifications/editmodifications.h
rename to src/gui/edit/edit_modifications/editmodifications.h
index 36f0b1416..95a8af132 100644
--- a/src/gui/edit_modifications/editmodifications.h
+++ b/src/gui/edit/edit_modifications/editmodifications.h
@@ -28,8 +28,8 @@
 
 #include <QMainWindow>
 #include <QStandardItemModel>
-#include "../choose_modification_dialog/choosemodificationdialog.h"
-#include "../../core/project.h"
+#include "../../choose_modification_dialog/choosemodificationdialog.h"
+#include "../../../core/project.h"
 
 class ProjectWindow;
 
diff --git a/src/gui/main.ui b/src/gui/main.ui
index f3df8229d..34e5c04c9 100644
--- a/src/gui/main.ui
+++ b/src/gui/main.ui
@@ -98,6 +98,7 @@
     </property>
     <addaction name="actionModifications"/>
     <addaction name="actionLabeling_methods"/>
+    <addaction name="actionSettings"/>
    </widget>
    <widget class="QMenu" name="menu">
     <property name="title">
@@ -136,6 +137,9 @@
    </property>
   </action>
   <action name="actionModifications">
+   <property name="enabled">
+    <bool>true</bool>
+   </property>
    <property name="text">
     <string>&amp;Modifications</string>
    </property>
@@ -177,17 +181,22 @@
   </action>
   <action name="actionAll_grouped_proteins">
    <property name="text">
-    <string>all grouped proteins</string>
+    <string>&amp;all grouped proteins</string>
    </property>
   </action>
   <action name="actionOnly_one_by_subgroup">
    <property name="text">
-    <string>only one by subgroup</string>
+    <string>&amp;only one by subgroup</string>
    </property>
   </action>
   <action name="actionOnly_one_by_group">
    <property name="text">
-    <string>only one by group</string>
+    <string>only one &amp;by group</string>
+   </property>
+  </action>
+  <action name="actionSettings">
+   <property name="text">
+    <string>Settings</string>
    </property>
   </action>
  </widget>
@@ -499,6 +508,22 @@
     </hint>
    </hints>
   </connection>
+  <connection>
+   <sender>actionSettings</sender>
+   <signal>triggered()</signal>
+   <receiver>Main</receiver>
+   <slot>doActionSettings()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>-1</x>
+     <y>-1</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>231</x>
+     <y>191</y>
+    </hint>
+   </hints>
+  </connection>
  </connections>
  <slots>
   <slot>selectXpipFile()</slot>
@@ -517,5 +542,6 @@
   <slot>doActionMassChroqPRM()</slot>
   <slot>doActionFastaOneBySubgroup()</slot>
   <slot>doActionFastaOneByGroup()</slot>
+  <slot>doActionSettings()</slot>
  </slots>
 </ui>
diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp
index adef98923..620e86e62 100644
--- a/src/gui/mainwindow.cpp
+++ b/src/gui/mainwindow.cpp
@@ -73,22 +73,36 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::Main)
 
 #if QT_VERSION >= 0x050000
   // Qt5 code
-  connect(_p_tandem_run_dialog, &TandemRunDialog::accepted, this,
+  connect(_p_tandem_run_dialog,
+          &TandemRunDialog::accepted,
+          this,
           &MainWindow::doAcceptedTandemRunDialog);
-  connect(_p_load_results_dialog, &LoadResultsDialog::accepted, this,
+  connect(_p_load_results_dialog,
+          &LoadResultsDialog::accepted,
+          this,
           &MainWindow::doAcceptedLoadResultDialog);
-  connect(_p_export_spreadsheet_dialog, &ExportSpreadsheetDialog::accepted,
-          this, &MainWindow::doAcceptedExportSpreadsheetDialog);
-  connect(&m_onlineVersion, &HttpVersion::httpVersionReady, this,
+  connect(_p_export_spreadsheet_dialog,
+          &ExportSpreadsheetDialog::accepted,
+          this,
+          &MainWindow::doAcceptedExportSpreadsheetDialog);
+  connect(&m_onlineVersion,
+          &HttpVersion::httpVersionReady,
+          this,
           &MainWindow::doCheckNewVersion);
 #else
   // Qt4 code
 
-  connect(_p_tandem_run_dialog, SIGNAL(accepted()), this,
+  connect(_p_tandem_run_dialog,
+          SIGNAL(accepted()),
+          this,
           SLOT(doAcceptedTandemRunDialog()));
-  connect(_p_load_results_dialog, SIGNAL(accepted()), this,
+  connect(_p_load_results_dialog,
+          SIGNAL(accepted()),
+          this,
           SLOT(doAcceptedLoadResultDialog()));
-  connect(_p_export_spreadsheet_dialog, SIGNAL(accepted()), this,
+  connect(_p_export_spreadsheet_dialog,
+          SIGNAL(accepted()),
+          this,
           SLOT(doAcceptedExportSpreadsheetDialog()));
 
 #endif
@@ -196,7 +210,8 @@ MainWindow::doAcceptedExportSpreadsheetDialog()
       if(format == "ods")
         {
           filename = QFileDialog::getSaveFileName(
-            this, tr("Save ODS file"),
+            this,
+            tr("Save ODS file"),
             QString("%1/untitled.ods").arg(default_location),
             tr("Open Document Spreadsheet (*.ods)"));
 
@@ -377,9 +392,11 @@ MainWindow::selectXpipFile()
       QSettings settings;
       QString default_location = settings.value("path/xpipfile", "").toString();
 
-      QString filename = QFileDialog::getOpenFileName(
-        this, tr("Open XPIP File"), default_location,
-        tr("xpip files (*.xpip);;all files (*)"));
+      QString filename =
+        QFileDialog::getOpenFileName(this,
+                                     tr("Open XPIP File"),
+                                     default_location,
+                                     tr("xpip files (*.xpip);;all files (*)"));
 
       if(filename.isEmpty())
         {
@@ -411,8 +428,10 @@ MainWindow::doActionSaveProject()
 
 
       QString filename = QFileDialog::getSaveFileName(
-        this, tr("Save XPIP file"),
-        QString("%1/untitled.xpip").arg(default_location), tr("XPIP (*.xpip)"));
+        this,
+        tr("Save XPIP file"),
+        QString("%1/untitled.xpip").arg(default_location),
+        tr("XPIP (*.xpip)"));
 
       if(filename.isEmpty())
         {
@@ -460,8 +479,10 @@ MainWindow::doActionSpectralCountingMcq()
   QString default_location = settings.value("path/scmcqfile", "").toString();
 
   QString filename = QFileDialog::getSaveFileName(
-    this, tr("Save spectral count TSV file"),
-    QString("%1/untitled.tsv").arg(default_location), tr("TSV (*.tsv)"));
+    this,
+    tr("Save spectral count TSV file"),
+    QString("%1/untitled.tsv").arg(default_location),
+    tr("TSV (*.tsv)"));
 
   if(filename.isEmpty())
     {
@@ -483,8 +504,10 @@ MainWindow::doActionFasta()
   QString default_location = settings.value("path/fastafile", "").toString();
 
   QString filename = QFileDialog::getSaveFileName(
-    this, tr("Save FASTA file"),
-    QString("%1/untitled.fasta").arg(default_location), tr("FASTA (*.fasta)"));
+    this,
+    tr("Save FASTA file"),
+    QString("%1/untitled.fasta").arg(default_location),
+    tr("FASTA (*.fasta)"));
 
   if(filename.isEmpty())
     {
@@ -506,8 +529,10 @@ MainWindow::doActionFastaOneBySubgroup()
   QString default_location = settings.value("path/fastafile", "").toString();
 
   QString filename = QFileDialog::getSaveFileName(
-    this, tr("Save FASTA file"),
-    QString("%1/untitled.fasta").arg(default_location), tr("FASTA (*.fasta)"));
+    this,
+    tr("Save FASTA file"),
+    QString("%1/untitled.fasta").arg(default_location),
+    tr("FASTA (*.fasta)"));
 
   if(filename.isEmpty())
     {
@@ -518,8 +543,8 @@ MainWindow::doActionFastaOneBySubgroup()
 
   showWaitingMessage(
     tr("Writing %1 FASTA file").arg(QFileInfo(filename).fileName()));
-  emit operateWritingFastaFile(filename, _project_sp,
-                               ExportFastaType::oneBySubgroup);
+  emit operateWritingFastaFile(
+    filename, _project_sp, ExportFastaType::oneBySubgroup);
 }
 
 void
@@ -529,8 +554,10 @@ MainWindow::doActionFastaOneByGroup()
   QString default_location = settings.value("path/fastafile", "").toString();
 
   QString filename = QFileDialog::getSaveFileName(
-    this, tr("Save FASTA file"),
-    QString("%1/untitled.fasta").arg(default_location), tr("FASTA (*.fasta)"));
+    this,
+    tr("Save FASTA file"),
+    QString("%1/untitled.fasta").arg(default_location),
+    tr("FASTA (*.fasta)"));
 
   if(filename.isEmpty())
     {
@@ -541,8 +568,8 @@ MainWindow::doActionFastaOneByGroup()
 
   showWaitingMessage(
     tr("Writing %1 FASTA file").arg(QFileInfo(filename).fileName()));
-  emit operateWritingFastaFile(filename, _project_sp,
-                               ExportFastaType::oneByGroup);
+  emit operateWritingFastaFile(
+    filename, _project_sp, ExportFastaType::oneByGroup);
 }
 
 void
@@ -556,8 +583,10 @@ MainWindow::doActionMassChroQ()
       if(_p_export_masschroq_dialog == nullptr)
         {
           _p_export_masschroq_dialog = new ExportMasschroqDialog(this);
-          connect(_p_export_masschroq_dialog, &ExportMasschroqDialog::accepted,
-                  this, &MainWindow::doAcceptedExportMasschroqDialog);
+          connect(_p_export_masschroq_dialog,
+                  &ExportMasschroqDialog::accepted,
+                  this,
+                  &MainWindow::doAcceptedExportMasschroqDialog);
         }
 
       MasschroqFileParameters params;
@@ -593,7 +622,8 @@ MainWindow::doAcceptedExportMasschroqDialog()
       QString default_location = settings.value("path/mcqfile", "").toString();
 
       QString filename = QFileDialog::getSaveFileName(
-        this, tr("Save MassChroqML file"),
+        this,
+        tr("Save MassChroqML file"),
         QString("%1/untitled.masschroqml").arg(default_location),
         tr("MassChroqML (*.masschroqml)"));
 
@@ -630,7 +660,8 @@ MainWindow::doActionMassChroqPRM()
         settings.value("path/mcqprmfile", "").toString();
 
       QString filename = QFileDialog::getSaveFileName(
-        this, tr("Save MassChroqPRM file"),
+        this,
+        tr("Save MassChroqPRM file"),
         QString("%1/untitled.masschroqprm").arg(default_location),
         tr("MassChroqPRM (*.masschroqprm)"));
 
@@ -667,7 +698,8 @@ MainWindow::doActionProticDb()
         settings.value("path/proticfile", "").toString();
 
       QString filename = QFileDialog::getSaveFileName(
-        this, tr("Save PROTICdbML file"),
+        this,
+        tr("Save PROTICdbML file"),
         QString("%1/untitled.proticdbml").arg(default_location),
         tr("PROTICdbML (*.proticdbml)"));
 
@@ -706,6 +738,14 @@ MainWindow::doActionAbout()
   qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__;
 }
 
+void
+MainWindow::doActionSettings()
+{
+  qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__;
+
+  qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__;
+}
+
 void
 MainWindow::doCheckNewVersion()
 {
@@ -715,7 +755,8 @@ MainWindow::doCheckNewVersion()
 
       hideWaitingMessage();
       int ret = QMessageBox::warning(
-        this, tr("new version available"),
+        this,
+        tr("new version available"),
         tr("A new %1 version is available %2\nCheck our web site \n"
            "http://pappso.inra.fr/bioinfo/xtandempipeline\n to download it")
           .arg(SOFTWARE_NAME)
diff --git a/src/gui/mainwindow.h b/src/gui/mainwindow.h
index 1371ab2f9..de18b677a 100644
--- a/src/gui/mainwindow.h
+++ b/src/gui/mainwindow.h
@@ -76,6 +76,7 @@ class MainWindow : public QMainWindow
   void doActionProticDb();
   void doActionLabelingMethods();
   void doActionTandemRun();
+  void doActionSettings();
   void doActionSpreadsheet();
   void doActionModifications();
   void doActionSaveProject();
diff --git a/src/gui/project_view/projectwindow.h b/src/gui/project_view/projectwindow.h
index c625843da..a0c8cc3d6 100644
--- a/src/gui/project_view/projectwindow.h
+++ b/src/gui/project_view/projectwindow.h
@@ -25,8 +25,8 @@
 #include <QThread>
 #include <set>
 #include "../../core/project.h"
-#include "../edit_label_methods/editlabelmethods.h"
-#include "../edit_modifications/editmodifications.h"
+#include "../edit/edit_label_methods/editlabelmethods.h"
+#include "../edit/edit_modifications/editmodifications.h"
 #include "../protein_list_view/proteinlistwindow.h"
 #include "../peptide_list_view/peptidelistwindow.h"
 #include "../ptm_island_list_view/ptmislandlistwindow.h"
-- 
GitLab