diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 9e1f53ba7e352bb7be7fcef2b2fb1a9cc31e3f72..88bd6083345d7c12e5b442119ebe69150e869631 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -29,8 +29,8 @@ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Xml_EXECUTABLE_COMPILE_FLAGS} ${Qt5
 
 #sudo apt-get install libpappsomspp-dev
 #FIND_PACKAGE( Pappsomspp REQUIRED )
-# SET (PAPPSOMSPP_DIR  "/home/olivier/eclipse/git/pappsomspp")
- SET (PAPPSOMSPP_DIR  "/home/langella/developpement/git/pappsomspp")
+ SET (PAPPSOMSPP_DIR  "/home/olivier/eclipse/git/pappsomspp")
+# SET (PAPPSOMSPP_DIR  "/home/langella/developpement/git/pappsomspp")
  SET (PAPPSOMSPP_INCLUDE_DIR "${PAPPSOMSPP_DIR}/src")
  SET (PAPPSOMSPP_QT4_LIBRARY "${PAPPSOMSPP_DIR}/cbuild/src/libpappsomspp-qt4.so")
 
diff --git a/src/gui/load_results_dialog/load_results_dialog.ui b/src/gui/load_results_dialog/load_results_dialog.ui
index f2ee0a20a10e558e06f0d4246dabe17298e56534..1a4abe2a65bed2b4119de4b0356355c037562362 100644
--- a/src/gui/load_results_dialog/load_results_dialog.ui
+++ b/src/gui/load_results_dialog/load_results_dialog.ui
@@ -6,14 +6,40 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>533</width>
-    <height>300</height>
+    <width>573</width>
+    <height>559</height>
    </rect>
   </property>
   <property name="windowTitle">
    <string>Form</string>
   </property>
   <layout class="QVBoxLayout" name="verticalLayout_2">
+   <item>
+    <widget class="QGroupBox" name="groupBox">
+     <property name="title">
+      <string>mode</string>
+     </property>
+     <layout class="QHBoxLayout" name="horizontalLayout_3">
+      <item>
+       <widget class="QRadioButton" name="combine_radio">
+        <property name="text">
+         <string>com&amp;bine</string>
+        </property>
+        <property name="checked">
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QRadioButton" name="individual_radio">
+        <property name="text">
+         <string>indi&amp;vidual</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
    <item>
     <widget class="QGroupBox" name="choose_files_groupbox">
      <property name="title">
@@ -21,7 +47,7 @@
      </property>
      <layout class="QGridLayout" name="gridLayout_2">
       <item row="0" column="0">
-       <widget class="QListView" name="listView"/>
+       <widget class="QListView" name="file_list_view"/>
       </item>
       <item row="1" column="0">
        <widget class="QPushButton" name="add_files_button">
diff --git a/src/gui/load_results_dialog/loadresultsdialog.cpp b/src/gui/load_results_dialog/loadresultsdialog.cpp
index 0a6971eb15b3fb9602d9fe7d09b93f2b0c0dc16a..765d5ce8339a237427e98eb8032999d26c05c9e1 100644
--- a/src/gui/load_results_dialog/loadresultsdialog.cpp
+++ b/src/gui/load_results_dialog/loadresultsdialog.cpp
@@ -28,7 +28,6 @@
 #include <QFileDialog>
 #include <QMessageBox>
 #include <pappsomspp/pappsoexception.h>
-#include "../project_view/automatic_filter_widget/automaticfilterwidget.h"
 
 
 LoadResultsDialog::LoadResultsDialog(QWidget * parent):
@@ -38,11 +37,24 @@ LoadResultsDialog::LoadResultsDialog(QWidget * parent):
     qDebug() << "LoadResultsDialog::LoadResultsDialog begin";
     ui->setupUi(this);
     this->setModal(true);
+    _p_file_list = new QStringListModel();
+
+
+    _p_automatic_filter_widget = new AutomaticFilterWidget(this);
+    _p_automatic_filter_widget->hideButton();
+    
+    QSettings settings;
+    AutomaticFilterParameters param = _p_automatic_filter_widget->getAutomaticFilterParameters();
+    param.setFilterCrossSamplePeptideNumber(settings.value("automatic_filter/cross_sample", "true").toBool());
+    param.setFilterMinimumPeptidePerMatch((unsigned int) settings.value("automatic_filter/peptide_number", "2").toInt());
+    param.setFilterPeptideEvalue(settings.value("automatic_filter/peptide_evalue", "0.05").toDouble());
+    param.setFilterProteinEvalue(settings.value("automatic_filter/protein_evalue", "0.01").toDouble());
+    _p_automatic_filter_widget->setAutomaticFilterParameters(param);
+
+    
     
     
-    AutomaticFilterWidget* p_automatic_filter_widget = new AutomaticFilterWidget(this);
-    p_automatic_filter_widget->hideButton();
-    ui->filter_parameter_layout->addWidget(p_automatic_filter_widget);
+    ui->filter_parameter_layout->addWidget(_p_automatic_filter_widget);
 #if QT_VERSION >= 0x050000
     // Qt5 code
     /*
@@ -63,26 +75,36 @@ LoadResultsDialog::~LoadResultsDialog()
     delete ui;
 }
 
+bool LoadResultsDialog::isIndividual() const {
+    if (ui->individual_radio->isChecked()) {
+        return true;
+    }
+}
+QStringList LoadResultsDialog::getFileList() const {
+    return _p_file_list->stringList();
+}
+
+AutomaticFilterParameters LoadResultsDialog::getAutomaticFilterParameters() const {
+    return _p_automatic_filter_widget->getAutomaticFilterParameters();
+}
 
-    
 void LoadResultsDialog::chooseFiles() {
-   try {
+    try {
         QSettings settings;
         QString default_location = settings.value("path/identificationfiles", "").toString();
 
-        QString filename = QFileDialog::getOpenFileName(this,
-                           tr("Open XPIP File"), default_location,
-                           tr("X!Tandem files (*.xml);;all files (*)"));
+        QStringList filenames = QFileDialog::getOpenFileNames(this,tr("identification files"),default_location,
+                                tr("X!Tandem files (*.xml);;all files (*)") );
 
-        if (filename.isEmpty()) {
-            return;
+        if (filenames.size() > 0) {
+            settings.setValue("path/identificationfiles", QFileInfo(filenames[0]).absolutePath());
         }
-
-        settings.setValue("path/identificationfiles", QFileInfo(filename).absolutePath());
+        _p_file_list->setStringList(filenames);
+        ui->file_list_view->setModel(_p_file_list);
 
     }
     catch (pappso::PappsoException & error) {
-      //QMessageBox::warning(this,
-       //                  tr("Error choosing identification result files : %1").arg(error.qwhat()), error);
+        //QMessageBox::warning(this,
+        //                  tr("Error choosing identification result files : %1").arg(error.qwhat()), error);
     }
 }
diff --git a/src/gui/load_results_dialog/loadresultsdialog.h b/src/gui/load_results_dialog/loadresultsdialog.h
index bec67ade96562b9a7fa762cde5b8fe487d200eca..5af69f86754783c53efc556abbf627eb86bb8dcf 100644
--- a/src/gui/load_results_dialog/loadresultsdialog.h
+++ b/src/gui/load_results_dialog/loadresultsdialog.h
@@ -24,8 +24,9 @@
 #ifndef LOADRESULTSDIALOG_H
 #define LOADRESULTSDIALOG_H
 
-#include "../../../core/automaticfilterparameters.h"
 #include <QDialog>
+#include <QStringListModel>
+#include "../project_view/automatic_filter_widget/automaticfilterwidget.h"
 
 
 namespace Ui {
@@ -42,6 +43,9 @@ public:
     explicit LoadResultsDialog(QWidget * parent);
     ~LoadResultsDialog();
 
+    AutomaticFilterParameters getAutomaticFilterParameters() const;
+    QStringList getFileList() const;
+    bool isIndividual() const;
 
 public slots:
     void chooseFiles();
@@ -50,6 +54,8 @@ signals:
 
 private:
     Ui::LoadResultsDialog *ui;
+    QStringListModel * _p_file_list;
+    AutomaticFilterWidget* _p_automatic_filter_widget;
 
 };
 
diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp
index d71adf1096a2bbcbc6e3c5169f031067d5f06cc1..2f1f08693b127acd2affbc07a84cb1834483431b 100644
--- a/src/gui/mainwindow.cpp
+++ b/src/gui/mainwindow.cpp
@@ -64,9 +64,11 @@ MainWindow::MainWindow(QWidget *parent):
     */
     workerThread.start();
 
+    _p_load_results_dialog = new LoadResultsDialog(this);
+
 
     _project_window = new ProjectWindow(this);
-    
+
     ui->centralwidget->layout()->addWidget(_project_window);
     _project_window->show();
     //_protein_list_window = new ProteinListWindow(this);
@@ -87,6 +89,7 @@ MainWindow::MainWindow(QWidget *parent):
 
     connect(this, SIGNAL(operateXpipFile(QString)), worker,SLOT(doXpipFileLoad(QString)));
     connect(worker, SIGNAL(projectReady(ProjectSp)), this,SLOT(doProjectReady(ProjectSp)));
+    connect(_p_load_results_dialog, SIGNAL(accepted()), this,SLOT(doAcceptedLoadResultDialog()));
     /*
         connect(&workerThread, SIGNAL(finished()), worker, SLOT(deleteLater()));
         connect(this, SIGNAL(operateMsDataFile(QString)), worker,SLOT(doMsDataFileLoad(QString)));
@@ -120,6 +123,20 @@ void MainWindow::viewError(QString error) {
 }
 
 
+void MainWindow::doAcceptedLoadResultDialog() {
+    qDebug() << "MainWindow::doAcceptedLoadResultDialog begin";
+    AutomaticFilterParameters param = _p_load_results_dialog->getAutomaticFilterParameters();
+    QSettings settings;
+    settings.setValue("automatic_filter/cross_sample", QString("%1").arg(param.getFilterCrossSamplePeptideNumber()));
+    settings.setValue("automatic_filter/peptide_number", QString("%1").arg(param.getFilterMinimumPeptidePerMatch()));
+    settings.setValue("automatic_filter/peptide_evalue", QString("%1").arg(param.getFilterPeptideEvalue()));
+    settings.setValue("automatic_filter/protein_evalue", QString("%1").arg(param.getFilterProteinEvalue()));
+    
+    QStringList file_list = _p_load_results_dialog->getFileList();
+    bool is_individual = _p_load_results_dialog->isIndividual();
+    qDebug() << "MainWindow::doAcceptedLoadResultDialog end";
+}
+
 void MainWindow::doProjectReady(ProjectSp project_sp) {
 
     try {
@@ -136,9 +153,6 @@ void MainWindow::doProjectNotReady(QString error) {
     viewError(tr("Error while grouping :\n%1").arg(error));
 }
 void MainWindow::loadResults() {
-    if (_p_load_results_dialog == nullptr) {
-        _p_load_results_dialog = new LoadResultsDialog(this);
-    }
 
     _p_load_results_dialog->show();
     _p_load_results_dialog->raise();
diff --git a/src/gui/mainwindow.h b/src/gui/mainwindow.h
index a9d97fd3b120941fa1c5f82715297e1234a53268..9bdd170e03fb97c1da67445d4dbf5594194af1b8 100644
--- a/src/gui/mainwindow.h
+++ b/src/gui/mainwindow.h
@@ -78,6 +78,7 @@ public slots:
     void selectXpipFile();
     void doProjectReady(ProjectSp project_sp);
     void doProjectNotReady(QString error);
+    void doAcceptedLoadResultDialog();
     //void peptideEdited(QString peptideStr);
     // void setColor(const QColor &color);
     // void setShape(Shape shape);
diff --git a/src/gui/project_view/automatic_filter_widget/automaticfilterwidget.cpp b/src/gui/project_view/automatic_filter_widget/automaticfilterwidget.cpp
index 783bbc2aa149c2e3ce644b06d499a1c6a72b02d8..716a5d1a8d3add2d345e9e75a86ead121c7996aa 100644
--- a/src/gui/project_view/automatic_filter_widget/automaticfilterwidget.cpp
+++ b/src/gui/project_view/automatic_filter_widget/automaticfilterwidget.cpp
@@ -26,6 +26,7 @@
 #include "../projectwindow.h"
 #include "ui_automatic_filter_widget.h"
 #include <QDebug>
+#include <cmath>
 
 
 AutomaticFilterWidget::AutomaticFilterWidget(QWidget * parent):
@@ -43,6 +44,11 @@ AutomaticFilterWidget::~AutomaticFilterWidget()
     delete ui;
 }
 
+
+AutomaticFilterParameters AutomaticFilterWidget::getAutomaticFilterParameters() const {
+    return _parameters;
+}
+
 void AutomaticFilterWidget::hideButton() {
     qDebug() << "AutomaticFilterWidget::hideButton begin ";
     ui->set_param_button->setVisible(false);
diff --git a/src/gui/project_view/automatic_filter_widget/automaticfilterwidget.h b/src/gui/project_view/automatic_filter_widget/automaticfilterwidget.h
index b9e66d2d55f69fdaddccf2157c138d4049d9ae6a..13109ca530b4452e532957b24490dac671fe0dc6 100644
--- a/src/gui/project_view/automatic_filter_widget/automaticfilterwidget.h
+++ b/src/gui/project_view/automatic_filter_widget/automaticfilterwidget.h
@@ -42,6 +42,7 @@ public:
 
     void setAutomaticFilterParameters(const AutomaticFilterParameters & params);
     void hideButton();
+    AutomaticFilterParameters getAutomaticFilterParameters() const;
 
 public slots:
     void doPeptideEvalue(double evalue);