From 2f7d45c2a5d66a0ecac3b8845f6973556578b15a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?COMMANDR=C3=89=20Benjamin?= <benjamin.commandre@irstea.fr>
Date: Mon, 4 Jun 2018 12:09:48 +0200
Subject: [PATCH] Using qt5 instead of qt4

---
 .gitignore                     |   1 +
 PHYMOBAT.py                    |  36 +++--
 ui_A_propos_PHYMOBAT_window.py |  12 +-
 ui_PHYMOBATs_tab.py            | 245 +++++++++++++++++----------------
 ui_Proxy_window.py             |  12 +-
 ui_Warming_forgetting.py       |  12 +-
 ui_Warming_study_area.py       |  12 +-
 7 files changed, 171 insertions(+), 159 deletions(-)
 create mode 100644 .gitignore

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..7e99e36
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+*.pyc
\ No newline at end of file
diff --git a/PHYMOBAT.py b/PHYMOBAT.py
index 30296f4..cd183e9 100644
--- a/PHYMOBAT.py
+++ b/PHYMOBAT.py
@@ -31,8 +31,10 @@ __date__ = "Mars 2016"
 """
 
 import os, sys, time
-from PyQt4.QtCore import *
-from PyQt4.QtGui import *
+from PyQt5.QtWidgets import * 
+from PyQt5.QtCore import *
+from PyQt5.QtGui import *
+
 from _collections import defaultdict
 
 try :
@@ -40,14 +42,16 @@ try :
 except :
     from osgeo import ogr
 
-try:
-    _fromUtf8 = QString.fromUtf8
-except AttributeError:
-    def _fromUtf8(s):
-        return s
+# try:
+#     _fromUtf8 = QString.fromUtf8
+# except AttributeError:
+def _fromUtf8(s):
+    return s
     
 import webbrowser
 import lxml.etree as ET
+import os.path
+print os.path.abspath(ET.__file__)
 
 from ui_A_propos_PHYMOBAT_window import Ui_About
 from ui_Warming_study_area import Ui_Warming_study_area
@@ -117,7 +121,8 @@ class PHYMOBAT(QMainWindow, Processing):
         ##########################################
         # Main folder path
         self.ui.lineEdit_principal_folder.clear()
-        self.connect(self.ui.pushButton_browser_principal_folder, SIGNAL('clicked()'), self.f_path_folder_dpt)
+        # self.connect(self.ui.pushButton_browser_principal_folder, SIGNAL('clicked()'), self.f_path_folder_dpt)
+        self.ui.pushButton_browser_principal_folder.clicked.connect(self.f_path_folder_dpt)
         
         # Block other function if SpotWorldHeritage is chose
         try :
@@ -127,22 +132,27 @@ class PHYMOBAT(QMainWindow, Processing):
         
         # VHRS image path
         self.ui.lineEdit_VHRS.clear()
-        self.connect(self.ui.pushButton_browser_VHRS, SIGNAL('clicked()'), self.f_path_ortho)
+        # self.connect(self.ui.pushButton_browser_VHRS, SIGNAL('clicked()'), self.f_path_ortho)
+        self.ui.pushButton_browser_VHRS.clicked.connect(self.f_path_ortho)
         
         # Study area shapefile path
         self.ui.lineEdit_area_path.clear()
-        self.connect(self.ui.pushButton_browser_area_path, SIGNAL('clicked()'), self.f_path_area)
+        # self.connect(self.ui.pushButton_browser_area_path, SIGNAL('clicked()'), self.f_path_area)
+        self.ui.pushButton_browser_area_path.clicked.connect(self.f_path_area)
         
         # Proxy
-        self.connect(self.ui.proxy, SIGNAL('clicked()'), self.f_proxy)
+        # self.connect(self.ui.proxy, SIGNAL('clicked()'), self.f_proxy)
+        self.ui.proxy.clicked.connect(self.f_proxy)
         
         # Segmentation shapefile path
         self.ui.lineEdit_segmentation.clear()
-        self.connect(self.ui.pushButton_browser_segmentation, SIGNAL('clicked()'), self.f_path_segm)
+        # self.connect(self.ui.pushButton_browser_segmentation, SIGNAL('clicked()'), self.f_path_segm)
+        self.ui.pushButton_browser_segmentation.clicked.connect(self.f_path_segm)
         
         # MNT image path
         self.ui.lineEdit_MNT.clear()
-        self.connect(self.ui.pushButton_browser_MNT, SIGNAL('clicked()'), self.f_path_mnt)
+        # self.connect(self.ui.pushButton_browser_MNT, SIGNAL('clicked()'), self.f_path_mnt)
+        self.ui.pushButton_browser_MNT.clicked.connect(self.f_path_mnt)
         
         # Output classification shapefile path
         self.ui.lineEdit_output.clear()
diff --git a/ui_A_propos_PHYMOBAT_window.py b/ui_A_propos_PHYMOBAT_window.py
index 944ae33..6f4ba82 100644
--- a/ui_A_propos_PHYMOBAT_window.py
+++ b/ui_A_propos_PHYMOBAT_window.py
@@ -23,13 +23,13 @@
 # You should have received a copy of the GNU General Public License
 # along with PHYMOBAT 1.2.  If not, see <http://www.gnu.org/licenses/>.
 
-from PyQt4 import QtCore, QtGui
+from PyQt5 import QtCore, QtGui
 
-try:
-    _fromUtf8 = QtCore.QString.fromUtf8
-except AttributeError:
-    def _fromUtf8(s):
-        return s
+# try:
+#     _fromUtf8 = QtCore.QString.fromUtf8
+# except AttributeError:
+def _fromUtf8(s):
+    return s
 
 try:
     _encoding = QtGui.QApplication.UnicodeUTF8
diff --git a/ui_PHYMOBATs_tab.py b/ui_PHYMOBATs_tab.py
index 681f32a..1e029c1 100644
--- a/ui_PHYMOBATs_tab.py
+++ b/ui_PHYMOBATs_tab.py
@@ -7,21 +7,22 @@
 #
 # WARNING! All changes made in this file will be lost!
 
-from PyQt4 import QtCore, QtGui
+from PyQt5 import QtCore, QtGui
+from PyQt5.QtWidgets import * 
 
-try:
-    _fromUtf8 = QtCore.QString.fromUtf8
-except AttributeError:
-    def _fromUtf8(s):
-        return s
+# try:
+#     _fromUtf8 = QtCore.QString.fromUtf8
+# except AttributeError:
+def _fromUtf8(s):
+    return s
 
 try:
-    _encoding = QtGui.QApplication.UnicodeUTF8
+    _encoding = QApplication.UnicodeUTF8
     def _translate(context, text, disambig):
-        return QtGui.QApplication.translate(context, text, disambig, _encoding)
+        return QApplication.translate(context, text, disambig, _encoding)
 except AttributeError:
     def _translate(context, text, disambig):
-        return QtGui.QApplication.translate(context, text, disambig)
+        return QApplication.translate(context, text, disambig)
 
 class Ui_PHYMOBAT(object):
     
@@ -32,309 +33,309 @@ class Ui_PHYMOBAT(object):
     def setupUi(self, PHYMOBAT):
         PHYMOBAT.setObjectName(_fromUtf8("PHYMOBAT"))
         PHYMOBAT.resize(726, 1052)
-        self.centralwidget = QtGui.QWidget(PHYMOBAT)
+        self.centralwidget = QWidget(PHYMOBAT)
         self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
-        self.gridLayout_4 = QtGui.QGridLayout(self.centralwidget)
+        self.gridLayout_4 = QGridLayout(self.centralwidget)
         self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
-        self.buttonBox = QtGui.QDialogButtonBox(self.centralwidget)
+        self.buttonBox = QDialogButtonBox(self.centralwidget)
         self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
-        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Close|QtGui.QDialogButtonBox.Ok)
+        self.buttonBox.setStandardButtons(QDialogButtonBox.Close|QDialogButtonBox.Ok)
         self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
         self.gridLayout_4.addWidget(self.buttonBox, 5, 1, 1, 1)
-        self.checkBox_multiprocess = QtGui.QCheckBox(self.centralwidget)
+        self.checkBox_multiprocess = QCheckBox(self.centralwidget)
         self.checkBox_multiprocess.setCheckable(True)
         self.checkBox_multiprocess.setChecked(True)
         self.checkBox_multiprocess.setAutoRepeat(False)
         self.checkBox_multiprocess.setObjectName(_fromUtf8("checkBox_multiprocess"))
         self.gridLayout_4.addWidget(self.checkBox_multiprocess, 5, 0, 1, 1)
-        self.frame_2 = QtGui.QFrame(self.centralwidget)
-        self.frame_2.setFrameShape(QtGui.QFrame.StyledPanel)
-        self.frame_2.setFrameShadow(QtGui.QFrame.Raised)
+        self.frame_2 = QFrame(self.centralwidget)
+        self.frame_2.setFrameShape(QFrame.StyledPanel)
+        self.frame_2.setFrameShadow(QFrame.Raised)
         self.frame_2.setObjectName(_fromUtf8("frame_2"))
-        self.gridLayout_3 = QtGui.QGridLayout(self.frame_2)
+        self.gridLayout_3 = QGridLayout(self.frame_2)
         self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
-        self.label_select_sample_nb_poly_3 = QtGui.QLabel(self.frame_2)
+        self.label_select_sample_nb_poly_3 = QLabel(self.frame_2)
         self.label_select_sample_nb_poly_3.setObjectName(_fromUtf8("label_select_sample_nb_poly_3"))
         self.gridLayout_3.addWidget(self.label_select_sample_nb_poly_3, 5, 5, 1, 1)
-        self.label_select_sample_class_6 = QtGui.QLabel(self.frame_2)
+        self.label_select_sample_class_6 = QLabel(self.frame_2)
         self.label_select_sample_class_6.setObjectName(_fromUtf8("label_select_sample_class_6"))
         self.gridLayout_3.addWidget(self.label_select_sample_class_6, 5, 0, 1, 1)
-        self.label_select_sample_class_7 = QtGui.QLabel(self.frame_2)
+        self.label_select_sample_class_7 = QLabel(self.frame_2)
         self.label_select_sample_class_7.setObjectName(_fromUtf8("label_select_sample_class_7"))
         self.gridLayout_3.addWidget(self.label_select_sample_class_7, 3, 2, 1, 1)
-        self.lineEdit_select_sample_nb_poly_3 = QtGui.QLineEdit(self.frame_2)
+        self.lineEdit_select_sample_nb_poly_3 = QLineEdit(self.frame_2)
         self.lineEdit_select_sample_nb_poly_3.setObjectName(_fromUtf8("lineEdit_select_sample_nb_poly_3"))
         self.gridLayout_3.addWidget(self.lineEdit_select_sample_nb_poly_3, 5, 6, 1, 1)
-        self.lineEdit_select_sample_fieldname_5 = QtGui.QLineEdit(self.frame_2)
+        self.lineEdit_select_sample_fieldname_5 = QLineEdit(self.frame_2)
         self.lineEdit_select_sample_fieldname_5.setObjectName(_fromUtf8("lineEdit_select_sample_fieldname_5"))
         self.gridLayout_3.addWidget(self.lineEdit_select_sample_fieldname_5, 4, 2, 1, 2)
-        self.pushButton_browser_sample_path_3 = QtGui.QPushButton(self.frame_2)
+        self.pushButton_browser_sample_path_3 = QPushButton(self.frame_2)
         self.pushButton_browser_sample_path_3.setObjectName(_fromUtf8("pushButton_browser_sample_path_3"))
         self.gridLayout_3.addWidget(self.pushButton_browser_sample_path_3, 1, 7, 2, 1)
-        spacerItem = QtGui.QSpacerItem(79, 24, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        spacerItem = QSpacerItem(79, 24, QSizePolicy.Expanding, QSizePolicy.Minimum)
         self.gridLayout_3.addItem(spacerItem, 4, 1, 1, 1)
-        self.lineEdit_select_sample_class_6 = QtGui.QLineEdit(self.frame_2)
+        self.lineEdit_select_sample_class_6 = QLineEdit(self.frame_2)
         self.lineEdit_select_sample_class_6.setObjectName(_fromUtf8("lineEdit_select_sample_class_6"))
         self.gridLayout_3.addWidget(self.lineEdit_select_sample_class_6, 5, 4, 1, 1)
-        spacerItem1 = QtGui.QSpacerItem(79, 13, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        spacerItem1 = QSpacerItem(79, 13, QSizePolicy.Expanding, QSizePolicy.Minimum)
         self.gridLayout_3.addItem(spacerItem1, 5, 1, 1, 1)
-        self.label_select_sample_fieldname_3 = QtGui.QLabel(self.frame_2)
+        self.label_select_sample_fieldname_3 = QLabel(self.frame_2)
         self.label_select_sample_fieldname_3.setObjectName(_fromUtf8("label_select_sample_fieldname_3"))
         self.gridLayout_3.addWidget(self.label_select_sample_fieldname_3, 4, 0, 1, 1)
-        self.label_sample_path_3 = QtGui.QLabel(self.frame_2)
+        self.label_sample_path_3 = QLabel(self.frame_2)
         self.label_sample_path_3.setObjectName(_fromUtf8("label_sample_path_3"))
         self.gridLayout_3.addWidget(self.label_sample_path_3, 0, 0, 1, 4)
-        self.label_select_sample_class_8 = QtGui.QLabel(self.frame_2)
+        self.label_select_sample_class_8 = QLabel(self.frame_2)
         self.label_select_sample_class_8.setObjectName(_fromUtf8("label_select_sample_class_8"))
         self.gridLayout_3.addWidget(self.label_select_sample_class_8, 3, 4, 1, 1)
-        self.lineEdit_sample_path_3 = QtGui.QLineEdit(self.frame_2)
+        self.lineEdit_sample_path_3 = QLineEdit(self.frame_2)
         self.lineEdit_sample_path_3.setObjectName(_fromUtf8("lineEdit_sample_path_3"))
         self.gridLayout_3.addWidget(self.lineEdit_sample_path_3, 1, 0, 2, 7)
-        self.lineEdit_select_sample_fieldname_6 = QtGui.QLineEdit(self.frame_2)
+        self.lineEdit_select_sample_fieldname_6 = QLineEdit(self.frame_2)
         self.lineEdit_select_sample_fieldname_6.setObjectName(_fromUtf8("lineEdit_select_sample_fieldname_6"))
         self.gridLayout_3.addWidget(self.lineEdit_select_sample_fieldname_6, 4, 4, 1, 1)
-        self.lineEdit_select_sample_class_5 = QtGui.QLineEdit(self.frame_2)
+        self.lineEdit_select_sample_class_5 = QLineEdit(self.frame_2)
         self.lineEdit_select_sample_class_5.setObjectName(_fromUtf8("lineEdit_select_sample_class_5"))
         self.gridLayout_3.addWidget(self.lineEdit_select_sample_class_5, 5, 2, 1, 2)
         self.gridLayout_4.addWidget(self.frame_2, 3, 0, 1, 2)
-        self.frame_3 = QtGui.QFrame(self.centralwidget)
-        self.frame_3.setFrameShape(QtGui.QFrame.StyledPanel)
-        self.frame_3.setFrameShadow(QtGui.QFrame.Raised)
+        self.frame_3 = QFrame(self.centralwidget)
+        self.frame_3.setFrameShape(QFrame.StyledPanel)
+        self.frame_3.setFrameShadow(QFrame.Raised)
         self.frame_3.setObjectName(_fromUtf8("frame_3"))
-        self.gridLayout_2 = QtGui.QGridLayout(self.frame_3)
+        self.gridLayout_2 = QGridLayout(self.frame_3)
         self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
-        self.label_ouput = QtGui.QLabel(self.frame_3)
+        self.label_ouput = QLabel(self.frame_3)
         self.label_ouput.setObjectName(_fromUtf8("label_ouput"))
         self.gridLayout_2.addWidget(self.label_ouput, 0, 0, 1, 1)
-        self.lineEdit_output = QtGui.QLineEdit(self.frame_3)
+        self.lineEdit_output = QLineEdit(self.frame_3)
         self.lineEdit_output.setObjectName(_fromUtf8("lineEdit_output"))
         self.gridLayout_2.addWidget(self.lineEdit_output, 1, 0, 1, 1)
-        self.pushButton_browser_output = QtGui.QPushButton(self.frame_3)
+        self.pushButton_browser_output = QPushButton(self.frame_3)
         self.pushButton_browser_output.setObjectName(_fromUtf8("pushButton_browser_output"))
         self.gridLayout_2.addWidget(self.pushButton_browser_output, 1, 1, 1, 1)
         self.gridLayout_4.addWidget(self.frame_3, 4, 0, 1, 2)
-        self.frame_4 = QtGui.QFrame(self.centralwidget)
-        self.frame_4.setFrameShape(QtGui.QFrame.StyledPanel)
-        self.frame_4.setFrameShadow(QtGui.QFrame.Raised)
+        self.frame_4 = QFrame(self.centralwidget)
+        self.frame_4.setFrameShape(QFrame.StyledPanel)
+        self.frame_4.setFrameShadow(QFrame.Raised)
         self.frame_4.setObjectName(_fromUtf8("frame_4"))
-        self.gridLayout_5 = QtGui.QGridLayout(self.frame_4)
+        self.gridLayout_5 = QGridLayout(self.frame_4)
         self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
-        spacerItem2 = QtGui.QSpacerItem(90, 12, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        spacerItem2 = QSpacerItem(90, 12, QSizePolicy.Expanding, QSizePolicy.Minimum)
         self.gridLayout_5.addItem(spacerItem2, 4, 1, 1, 1)
-        self.pushButton_browser_sample_path = QtGui.QPushButton(self.frame_4)
+        self.pushButton_browser_sample_path = QPushButton(self.frame_4)
         self.pushButton_browser_sample_path.setObjectName(_fromUtf8("pushButton_browser_sample_path"))
         self.gridLayout_5.addWidget(self.pushButton_browser_sample_path, 1, 6, 1, 1)
-        spacerItem3 = QtGui.QSpacerItem(82, 15, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        spacerItem3 = QSpacerItem(82, 15, QSizePolicy.Expanding, QSizePolicy.Minimum)
         self.gridLayout_5.addItem(spacerItem3, 4, 6, 1, 1)
-        self.lineEdit_select_sample_nb_poly = QtGui.QLineEdit(self.frame_4)
+        self.lineEdit_select_sample_nb_poly = QLineEdit(self.frame_4)
         self.lineEdit_select_sample_nb_poly.setObjectName(_fromUtf8("lineEdit_select_sample_nb_poly"))
         self.gridLayout_5.addWidget(self.lineEdit_select_sample_nb_poly, 4, 5, 1, 1)
-        self.label_select_sample_class_1 = QtGui.QLabel(self.frame_4)
+        self.label_select_sample_class_1 = QLabel(self.frame_4)
         self.label_select_sample_class_1.setObjectName(_fromUtf8("label_select_sample_class_1"))
         self.gridLayout_5.addWidget(self.label_select_sample_class_1, 2, 2, 1, 1)
-        self.label_select_sample_class_2 = QtGui.QLabel(self.frame_4)
+        self.label_select_sample_class_2 = QLabel(self.frame_4)
         self.label_select_sample_class_2.setObjectName(_fromUtf8("label_select_sample_class_2"))
         self.gridLayout_5.addWidget(self.label_select_sample_class_2, 2, 3, 1, 1)
-        self.label_select_sample_fieldname = QtGui.QLabel(self.frame_4)
+        self.label_select_sample_fieldname = QLabel(self.frame_4)
         self.label_select_sample_fieldname.setObjectName(_fromUtf8("label_select_sample_fieldname"))
         self.gridLayout_5.addWidget(self.label_select_sample_fieldname, 3, 0, 1, 1)
-        spacerItem4 = QtGui.QSpacerItem(90, 12, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        spacerItem4 = QSpacerItem(90, 12, QSizePolicy.Expanding, QSizePolicy.Minimum)
         self.gridLayout_5.addItem(spacerItem4, 3, 1, 1, 1)
-        self.label_select_sample_nb_poly = QtGui.QLabel(self.frame_4)
+        self.label_select_sample_nb_poly = QLabel(self.frame_4)
         self.label_select_sample_nb_poly.setObjectName(_fromUtf8("label_select_sample_nb_poly"))
         self.gridLayout_5.addWidget(self.label_select_sample_nb_poly, 4, 4, 1, 1)
-        self.lineEdit_select_sample_class_2 = QtGui.QLineEdit(self.frame_4)
+        self.lineEdit_select_sample_class_2 = QLineEdit(self.frame_4)
         self.lineEdit_select_sample_class_2.setObjectName(_fromUtf8("lineEdit_select_sample_class_2"))
         self.gridLayout_5.addWidget(self.lineEdit_select_sample_class_2, 4, 3, 1, 1)
-        self.lineEdit_select_sample_fieldname_1 = QtGui.QLineEdit(self.frame_4)
+        self.lineEdit_select_sample_fieldname_1 = QLineEdit(self.frame_4)
         self.lineEdit_select_sample_fieldname_1.setObjectName(_fromUtf8("lineEdit_select_sample_fieldname_1"))
         self.gridLayout_5.addWidget(self.lineEdit_select_sample_fieldname_1, 3, 2, 1, 1)
-        self.label_sample_path = QtGui.QLabel(self.frame_4)
+        self.label_sample_path = QLabel(self.frame_4)
         self.label_sample_path.setObjectName(_fromUtf8("label_sample_path"))
         self.gridLayout_5.addWidget(self.label_sample_path, 0, 0, 1, 4)
-        self.lineEdit_select_sample_fieldname_2 = QtGui.QLineEdit(self.frame_4)
+        self.lineEdit_select_sample_fieldname_2 = QLineEdit(self.frame_4)
         self.lineEdit_select_sample_fieldname_2.setObjectName(_fromUtf8("lineEdit_select_sample_fieldname_2"))
         self.gridLayout_5.addWidget(self.lineEdit_select_sample_fieldname_2, 3, 3, 1, 1)
-        self.lineEdit_sample_path = QtGui.QLineEdit(self.frame_4)
+        self.lineEdit_sample_path = QLineEdit(self.frame_4)
         self.lineEdit_sample_path.setObjectName(_fromUtf8("lineEdit_sample_path"))
         self.gridLayout_5.addWidget(self.lineEdit_sample_path, 1, 0, 1, 6)
-        self.lineEdit_select_sample_class_1 = QtGui.QLineEdit(self.frame_4)
+        self.lineEdit_select_sample_class_1 = QLineEdit(self.frame_4)
         self.lineEdit_select_sample_class_1.setObjectName(_fromUtf8("lineEdit_select_sample_class_1"))
         self.gridLayout_5.addWidget(self.lineEdit_select_sample_class_1, 4, 2, 1, 1)
-        self.label_select_sample_class = QtGui.QLabel(self.frame_4)
+        self.label_select_sample_class = QLabel(self.frame_4)
         self.label_select_sample_class.setObjectName(_fromUtf8("label_select_sample_class"))
         self.gridLayout_5.addWidget(self.label_select_sample_class, 4, 0, 1, 1)
         self.gridLayout_4.addWidget(self.frame_4, 1, 0, 1, 2)
-        self.frame_5 = QtGui.QFrame(self.centralwidget)
-        self.frame_5.setFrameShape(QtGui.QFrame.StyledPanel)
-        self.frame_5.setFrameShadow(QtGui.QFrame.Raised)
+        self.frame_5 = QFrame(self.centralwidget)
+        self.frame_5.setFrameShape(QFrame.StyledPanel)
+        self.frame_5.setFrameShadow(QFrame.Raised)
         self.frame_5.setObjectName(_fromUtf8("frame_5"))
-        self.gridLayout_6 = QtGui.QGridLayout(self.frame_5)
+        self.gridLayout_6 = QGridLayout(self.frame_5)
         self.gridLayout_6.setObjectName(_fromUtf8("gridLayout_6"))
-        self.label_select_sample_class_4 = QtGui.QLabel(self.frame_5)
+        self.label_select_sample_class_4 = QLabel(self.frame_5)
         self.label_select_sample_class_4.setObjectName(_fromUtf8("label_select_sample_class_4"))
         self.gridLayout_6.addWidget(self.label_select_sample_class_4, 4, 0, 1, 1)
-        self.lineEdit_sample_path_2 = QtGui.QLineEdit(self.frame_5)
+        self.lineEdit_sample_path_2 = QLineEdit(self.frame_5)
         self.lineEdit_sample_path_2.setObjectName(_fromUtf8("lineEdit_sample_path_2"))
         self.gridLayout_6.addWidget(self.lineEdit_sample_path_2, 1, 0, 1, 6)
-        self.label_select_sample_fieldname_2 = QtGui.QLabel(self.frame_5)
+        self.label_select_sample_fieldname_2 = QLabel(self.frame_5)
         self.label_select_sample_fieldname_2.setObjectName(_fromUtf8("label_select_sample_fieldname_2"))
         self.gridLayout_6.addWidget(self.label_select_sample_fieldname_2, 3, 0, 1, 1)
-        self.lineEdit_select_sample_class_4 = QtGui.QLineEdit(self.frame_5)
+        self.lineEdit_select_sample_class_4 = QLineEdit(self.frame_5)
         self.lineEdit_select_sample_class_4.setObjectName(_fromUtf8("lineEdit_select_sample_class_4"))
         self.gridLayout_6.addWidget(self.lineEdit_select_sample_class_4, 4, 3, 1, 1)
-        self.label_select_sample_nb_poly_2 = QtGui.QLabel(self.frame_5)
+        self.label_select_sample_nb_poly_2 = QLabel(self.frame_5)
         self.label_select_sample_nb_poly_2.setObjectName(_fromUtf8("label_select_sample_nb_poly_2"))
         self.gridLayout_6.addWidget(self.label_select_sample_nb_poly_2, 4, 4, 1, 1)
-        self.label_select_sample_class_3 = QtGui.QLabel(self.frame_5)
+        self.label_select_sample_class_3 = QLabel(self.frame_5)
         self.label_select_sample_class_3.setObjectName(_fromUtf8("label_select_sample_class_3"))
         self.gridLayout_6.addWidget(self.label_select_sample_class_3, 2, 2, 1, 1)
-        spacerItem5 = QtGui.QSpacerItem(76, 24, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        spacerItem5 = QSpacerItem(76, 24, QSizePolicy.Expanding, QSizePolicy.Minimum)
         self.gridLayout_6.addItem(spacerItem5, 4, 1, 1, 1)
-        self.lineEdit_select_sample_fieldname_3 = QtGui.QLineEdit(self.frame_5)
+        self.lineEdit_select_sample_fieldname_3 = QLineEdit(self.frame_5)
         self.lineEdit_select_sample_fieldname_3.setObjectName(_fromUtf8("lineEdit_select_sample_fieldname_3"))
         self.gridLayout_6.addWidget(self.lineEdit_select_sample_fieldname_3, 3, 2, 1, 1)
-        self.pushButton_browser_sample_path_2 = QtGui.QPushButton(self.frame_5)
+        self.pushButton_browser_sample_path_2 = QPushButton(self.frame_5)
         self.pushButton_browser_sample_path_2.setObjectName(_fromUtf8("pushButton_browser_sample_path_2"))
         self.gridLayout_6.addWidget(self.pushButton_browser_sample_path_2, 1, 6, 1, 1)
-        self.lineEdit_select_sample_fieldname_4 = QtGui.QLineEdit(self.frame_5)
+        self.lineEdit_select_sample_fieldname_4 = QLineEdit(self.frame_5)
         self.lineEdit_select_sample_fieldname_4.setObjectName(_fromUtf8("lineEdit_select_sample_fieldname_4"))
         self.gridLayout_6.addWidget(self.lineEdit_select_sample_fieldname_4, 3, 3, 1, 1)
-        spacerItem6 = QtGui.QSpacerItem(76, 24, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        spacerItem6 = QSpacerItem(76, 24, QSizePolicy.Expanding, QSizePolicy.Minimum)
         self.gridLayout_6.addItem(spacerItem6, 3, 1, 1, 1)
-        self.label_sample_path_2 = QtGui.QLabel(self.frame_5)
+        self.label_sample_path_2 = QLabel(self.frame_5)
         self.label_sample_path_2.setObjectName(_fromUtf8("label_sample_path_2"))
         self.gridLayout_6.addWidget(self.label_sample_path_2, 0, 0, 1, 3)
-        self.lineEdit_select_sample_nb_poly_2 = QtGui.QLineEdit(self.frame_5)
+        self.lineEdit_select_sample_nb_poly_2 = QLineEdit(self.frame_5)
         self.lineEdit_select_sample_nb_poly_2.setObjectName(_fromUtf8("lineEdit_select_sample_nb_poly_2"))
         self.gridLayout_6.addWidget(self.lineEdit_select_sample_nb_poly_2, 4, 5, 1, 1)
-        self.lineEdit_select_sample_class_3 = QtGui.QLineEdit(self.frame_5)
+        self.lineEdit_select_sample_class_3 = QLineEdit(self.frame_5)
         self.lineEdit_select_sample_class_3.setObjectName(_fromUtf8("lineEdit_select_sample_class_3"))
         self.gridLayout_6.addWidget(self.lineEdit_select_sample_class_3, 4, 2, 1, 1)
-        self.label_select_sample_class_5 = QtGui.QLabel(self.frame_5)
+        self.label_select_sample_class_5 = QLabel(self.frame_5)
         self.label_select_sample_class_5.setObjectName(_fromUtf8("label_select_sample_class_5"))
         self.gridLayout_6.addWidget(self.label_select_sample_class_5, 2, 3, 1, 1)
         self.gridLayout_4.addWidget(self.frame_5, 2, 0, 1, 2)
-        self.frame = QtGui.QFrame(self.centralwidget)
-        self.frame.setFrameShape(QtGui.QFrame.StyledPanel)
-        self.frame.setFrameShadow(QtGui.QFrame.Raised)
+        self.frame = QFrame(self.centralwidget)
+        self.frame.setFrameShape(QFrame.StyledPanel)
+        self.frame.setFrameShadow(QFrame.Raised)
         self.frame.setObjectName(_fromUtf8("frame"))
-        self.gridLayout = QtGui.QGridLayout(self.frame)
+        self.gridLayout = QGridLayout(self.frame)
         self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
-        self.label_principal_folder = QtGui.QLabel(self.frame)
+        self.label_principal_folder = QLabel(self.frame)
         self.label_principal_folder.setObjectName(_fromUtf8("label_principal_folder"))
         self.gridLayout.addWidget(self.label_principal_folder, 0, 0, 1, 2)
-        self.lineEdit_principal_folder = QtGui.QLineEdit(self.frame)
+        self.lineEdit_principal_folder = QLineEdit(self.frame)
         self.lineEdit_principal_folder.setObjectName(_fromUtf8("lineEdit_principal_folder"))
         self.gridLayout.addWidget(self.lineEdit_principal_folder, 1, 0, 1, 5)
-        self.pushButton_browser_principal_folder = QtGui.QPushButton(self.frame)
+        self.pushButton_browser_principal_folder = QPushButton(self.frame)
         self.pushButton_browser_principal_folder.setObjectName(_fromUtf8("pushButton_browser_principal_folder"))
         self.gridLayout.addWidget(self.pushButton_browser_principal_folder, 1, 5, 1, 1)
-        self.label_year_images = QtGui.QLabel(self.frame)
+        self.label_year_images = QLabel(self.frame)
         self.label_year_images.setObjectName(_fromUtf8("label_year_images"))
         self.gridLayout.addWidget(self.label_year_images, 2, 0, 1, 1)
-        self.lineEdit_year_images = QtGui.QLineEdit(self.frame)
+        self.lineEdit_year_images = QLineEdit(self.frame)
         self.lineEdit_year_images.setObjectName(_fromUtf8("lineEdit_year_images"))
         self.gridLayout.addWidget(self.lineEdit_year_images, 2, 1, 1, 2)
-        self.label_ex_period = QtGui.QLabel(self.frame)
+        self.label_ex_period = QLabel(self.frame)
         font = QtGui.QFont()
         font.setPointSize(8)
         font.setItalic(True)
         self.label_ex_period.setFont(font)
         self.label_ex_period.setObjectName(_fromUtf8("label_ex_period"))
         self.gridLayout.addWidget(self.label_ex_period, 2, 3, 1, 3)        
-        self.label_area_path = QtGui.QLabel(self.frame)
+        self.label_area_path = QLabel(self.frame)
         self.label_area_path.setObjectName(_fromUtf8("label_area_path"))
         self.gridLayout.addWidget(self.label_area_path, 3, 0, 1, 2)
-        self.lineEdit_area_path = QtGui.QLineEdit(self.frame)
+        self.lineEdit_area_path = QLineEdit(self.frame)
         self.lineEdit_area_path.setObjectName(_fromUtf8("lineEdit_area_path"))
         self.gridLayout.addWidget(self.lineEdit_area_path, 4, 0, 1, 5)
-        self.pushButton_browser_area_path = QtGui.QPushButton(self.frame)
+        self.pushButton_browser_area_path = QPushButton(self.frame)
         self.pushButton_browser_area_path.setObjectName(_fromUtf8("pushButton_browser_area_path"))
         self.gridLayout.addWidget(self.pushButton_browser_area_path, 4, 5, 1, 1)
-        self.label_id_theia = QtGui.QLabel(self.frame)
+        self.label_id_theia = QLabel(self.frame)
         self.label_id_theia.setObjectName(_fromUtf8("label_id_theia"))
         self.gridLayout.addWidget(self.label_id_theia, 5, 0, 1, 1)
-        self.label_user = QtGui.QLabel(self.frame)
+        self.label_user = QLabel(self.frame)
         self.label_user.setObjectName(_fromUtf8("label_user"))
         self.gridLayout.addWidget(self.label_user, 6, 0, 1, 1)
-        self.lineEdit_user = QtGui.QLineEdit(self.frame)
+        self.lineEdit_user = QLineEdit(self.frame)
         self.lineEdit_user.setObjectName(_fromUtf8("lineEdit_user"))
         self.gridLayout.addWidget(self.lineEdit_user, 6, 1, 1, 1)
-        spacerItem7 = QtGui.QSpacerItem(73, 13, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        spacerItem7 = QSpacerItem(73, 13, QSizePolicy.Expanding, QSizePolicy.Minimum)
         self.gridLayout.addItem(spacerItem7, 6, 2, 1, 1)
-        self.label_password = QtGui.QLabel(self.frame)
+        self.label_password = QLabel(self.frame)
         self.label_password.setObjectName(_fromUtf8("label_password"))
         self.gridLayout.addWidget(self.label_password, 6, 3, 1, 1)
-        self.lineEdit_password = QtGui.QLineEdit(self.frame)
-        self.lineEdit_password.setEchoMode(QtGui.QLineEdit.Password)
+        self.lineEdit_password = QLineEdit(self.frame)
+        self.lineEdit_password.setEchoMode(QLineEdit.Password)
         self.lineEdit_password.setObjectName(_fromUtf8("lineEdit_password"))
         self.gridLayout.addWidget(self.lineEdit_password, 6, 4, 1, 1)
-        spacerItem8 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        spacerItem8 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
         self.gridLayout.addItem(spacerItem8, 6, 5, 1, 1)
-        self.checkBox_MNT = QtGui.QLabel(self.frame)
+        self.checkBox_MNT = QLabel(self.frame)
         self.checkBox_MNT.setObjectName(_fromUtf8("checkBox_MNT"))
         self.gridLayout.addWidget(self.checkBox_MNT, 7, 0, 1, 1)
-        self.lineEdit_MNT = QtGui.QLineEdit(self.frame)
+        self.lineEdit_MNT = QLineEdit(self.frame)
         self.lineEdit_MNT.setObjectName(_fromUtf8("lineEdit_MNT"))
 #         self.lineEdit_MNT.setEnabled(False)
         self.gridLayout.addWidget(self.lineEdit_MNT, 8, 0, 1, 5)
-        self.pushButton_browser_MNT = QtGui.QPushButton(self.frame)
+        self.pushButton_browser_MNT = QPushButton(self.frame)
         self.pushButton_browser_MNT.setObjectName(_fromUtf8("pushButton_browser_MNT"))
 #         self.pushButton_browser_MNT.setEnabled(False)
         self.gridLayout.addWidget(self.pushButton_browser_MNT, 8, 5, 1, 1)
-        self.checkBox_VHRS = QtGui.QLabel(self.frame)
+        self.checkBox_VHRS = QLabel(self.frame)
         self.checkBox_VHRS.setObjectName(_fromUtf8("checkBox_VHRS"))
         self.gridLayout.addWidget(self.checkBox_VHRS, 9, 0, 1, 1)
-        self.lineEdit_VHRS = QtGui.QLineEdit(self.frame)
+        self.lineEdit_VHRS = QLineEdit(self.frame)
         self.lineEdit_VHRS.setObjectName(_fromUtf8("lineEdit_VHRS"))
         self.gridLayout.addWidget(self.lineEdit_VHRS, 10, 0, 1, 5)
-        self.pushButton_browser_VHRS = QtGui.QPushButton(self.frame)
+        self.pushButton_browser_VHRS = QPushButton(self.frame)
         self.pushButton_browser_VHRS.setObjectName(_fromUtf8("pushButton_browser_VHRS"))
         self.gridLayout.addWidget(self.pushButton_browser_VHRS, 10, 5, 1, 1)
-        self.label_segmentation = QtGui.QLabel(self.frame)
+        self.label_segmentation = QLabel(self.frame)
         self.label_segmentation.setObjectName(_fromUtf8("label_segmentation"))
         self.gridLayout.addWidget(self.label_segmentation, 11, 0, 1, 2)
-        self.lineEdit_segmentation = QtGui.QLineEdit(self.frame)
+        self.lineEdit_segmentation = QLineEdit(self.frame)
         self.lineEdit_segmentation.setObjectName(_fromUtf8("lineEdit_segmentation"))
         self.gridLayout.addWidget(self.lineEdit_segmentation, 12, 0, 1, 5)
-        self.pushButton_browser_segmentation = QtGui.QPushButton(self.frame)
+        self.pushButton_browser_segmentation = QPushButton(self.frame)
         self.pushButton_browser_segmentation.setObjectName(_fromUtf8("pushButton_browser_segmentation"))
         self.gridLayout.addWidget(self.pushButton_browser_segmentation, 12, 5, 1, 1)
-        self.proxy = QtGui.QPushButton(self.frame)
+        self.proxy = QPushButton(self.frame)
         self.proxy.setObjectName(_fromUtf8("proxy"))
         self.gridLayout.addWidget(self.proxy, 6, 5, 1, 1)
         self.gridLayout_4.addWidget(self.frame, 0, 0, 1, 2)
         PHYMOBAT.setCentralWidget(self.centralwidget)
-        self.menubar = QtGui.QMenuBar(PHYMOBAT)
+        self.menubar = QMenuBar(PHYMOBAT)
         self.menubar.setEnabled(True)
         self.menubar.setGeometry(QtCore.QRect(0, 0, 726, 25))
         self.menubar.setDefaultUp(True)
         self.menubar.setObjectName(_fromUtf8("menubar"))
-        self.menuMenu = QtGui.QMenu(self.menubar)
+        self.menuMenu = QMenu(self.menubar)
         self.menuMenu.setTearOffEnabled(True)
         self.menuMenu.setObjectName(_fromUtf8("menuMenu"))
-        self.menuAide = QtGui.QMenu(self.menubar)
+        self.menuAide = QMenu(self.menubar)
         self.menuAide.setObjectName(_fromUtf8("menuAide"))
-        self.menuMode = QtGui.QMenu(self.menubar)
+        self.menuMode = QMenu(self.menubar)
         self.menuMode.setObjectName(_fromUtf8("menuMode"))
         PHYMOBAT.setMenuBar(self.menubar)
-        self.statusbar = QtGui.QStatusBar(PHYMOBAT)
+        self.statusbar = QStatusBar(PHYMOBAT)
         self.statusbar.setObjectName(_fromUtf8("statusbar"))
         PHYMOBAT.setStatusBar(self.statusbar)
-        self.actionOuvrir = QtGui.QAction(PHYMOBAT)
+        self.actionOuvrir = QAction(PHYMOBAT)
         self.actionOuvrir.setObjectName(_fromUtf8("actionOuvrir"))
-        self.actionSauver = QtGui.QAction(PHYMOBAT)
+        self.actionSauver = QAction(PHYMOBAT)
         self.actionSauver.setObjectName(_fromUtf8("actionSauver"))
-        self.actionQuiter = QtGui.QAction(PHYMOBAT)
+        self.actionQuiter = QAction(PHYMOBAT)
         self.actionQuiter.setObjectName(_fromUtf8("actionQuiter"))
-        self.actionAide_de_PHYMOBAT = QtGui.QAction(PHYMOBAT)
+        self.actionAide_de_PHYMOBAT = QAction(PHYMOBAT)
         self.actionAide_de_PHYMOBAT.setObjectName(_fromUtf8("actionAide_de_PHYMOBAT"))
-        self.actionA_propos_de_PHYMOBAT = QtGui.QAction(PHYMOBAT)
+        self.actionA_propos_de_PHYMOBAT = QAction(PHYMOBAT)
         self.actionA_propos_de_PHYMOBAT.setObjectName(_fromUtf8("actionA_propos_de_PHYMOBAT"))
-        self.actionMode_Simplifi = QtGui.QAction(PHYMOBAT)
+        self.actionMode_Simplifi = QAction(PHYMOBAT)
         self.actionMode_Simplifi.setObjectName(_fromUtf8("actionMode_Simplifi"))
-        self.actionMode_expert = QtGui.QAction(PHYMOBAT)
+        self.actionMode_expert = QAction(PHYMOBAT)
         self.actionMode_expert.setObjectName(_fromUtf8("actionMode_expert"))
         self.menuMenu.addAction(self.actionOuvrir)
         self.menuMenu.addAction(self.actionSauver)
diff --git a/ui_Proxy_window.py b/ui_Proxy_window.py
index c0485df..2116cde 100644
--- a/ui_Proxy_window.py
+++ b/ui_Proxy_window.py
@@ -7,13 +7,13 @@
 #
 # WARNING! All changes made in this file will be lost!
 
-from PyQt4 import QtCore, QtGui
+from PyQt5 import QtCore, QtGui
 
-try:
-    _fromUtf8 = QtCore.QString.fromUtf8
-except AttributeError:
-    def _fromUtf8(s):
-        return s
+# try:
+#     _fromUtf8 = QtCore.QString.fromUtf8
+# except AttributeError:
+def _fromUtf8(s):
+    return s
 
 try:
     _encoding = QtGui.QApplication.UnicodeUTF8
diff --git a/ui_Warming_forgetting.py b/ui_Warming_forgetting.py
index 87126e2..9e6e236 100644
--- a/ui_Warming_forgetting.py
+++ b/ui_Warming_forgetting.py
@@ -23,13 +23,13 @@
 # You should have received a copy of the GNU General Public License
 # along with PHYMOBAT 1.2.  If not, see <http://www.gnu.org/licenses/>.
 
-from PyQt4 import QtCore, QtGui
+from PyQt5 import QtCore, QtGui
 
-try:
-    _fromUtf8 = QtCore.QString.fromUtf8
-except AttributeError:
-    def _fromUtf8(s):
-        return s
+# try:
+#     _fromUtf8 = QtCore.QString.fromUtf8
+# except AttributeError:
+def _fromUtf8(s):
+    return s
 
 try:
     _encoding = QtGui.QApplication.UnicodeUTF8
diff --git a/ui_Warming_study_area.py b/ui_Warming_study_area.py
index e0113c2..01cca0a 100644
--- a/ui_Warming_study_area.py
+++ b/ui_Warming_study_area.py
@@ -23,13 +23,13 @@
 # You should have received a copy of the GNU General Public License
 # along with PHYMOBAT 1.2.  If not, see <http://www.gnu.org/licenses/>.
 
-from PyQt4 import QtCore, QtGui
+from PyQt5 import QtCore, QtGui
 
-try:
-    _fromUtf8 = QtCore.QString.fromUtf8
-except AttributeError:
-    def _fromUtf8(s):
-        return s
+# try:
+#     _fromUtf8 = QtCore.QString.fromUtf8
+# except AttributeError:
+def _fromUtf8(s):
+    return s
 
 try:
     _encoding = QtGui.QApplication.UnicodeUTF8
-- 
GitLab