Salome HOME
synchronisation avec Yoann
[tools/eficas.git] / InterfaceQT4 / monViewTexte.py
index 564a9660ac52406dcbec3e24642653a31eaa8a3a..2dfcece64768a05113f98d3c31995779f7373d38 100644 (file)
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # Modules Python
-import string,types,os
+from __future__ import absolute_import
+try :
+   from builtins import str
+except : pass
+
+import types,os
 import traceback
 
 from Extensions.i18n import tr
-from PyQt4.QtGui import *
-from PyQt4.QtCore import *
+import six
+
+from PyQt5.QtWidgets import QDialog, QMessageBox, QFileDialog
+from PyQt5.QtCore import QSize
 from desViewTexte import Ui_dView
 
 # ------------------------------- #
@@ -32,14 +39,15 @@ class ViewText(Ui_dView,QDialog):
     """
     Classe permettant la visualisation de texte
     """
-    def __init__(self,parent,editor=None,entete=None,texte=None):
+    def __init__(self,parent,editor=None,entete=None,texte=None,largeur=600,hauteur=600):
         QDialog.__init__(self,parent)
         self.editor=editor
         self.setupUi(self)
 
-        self.resize( QSize(600,600).expandedTo(self.minimumSizeHint()) )
-        self.connect( self.bclose,SIGNAL("clicked()"), self, SLOT("close()") )
-        self.connect( self.bsave,SIGNAL("clicked()"), self.saveFile )
+        self.resize( QSize(largeur,hauteur).expandedTo(self.minimumSizeHint()) )
+        self.bclose.clicked.connect(self.close)
+        self.bsave.clicked.connect(self.saveFile )
+
         if entete != None : self.setWindowTitle (entete)
         if entete != None : self.setText (texte)
 
@@ -56,17 +64,21 @@ class ViewText(Ui_dView,QDialog):
         fn = QFileDialog.getSaveFileName(None,
                 tr("Sauvegarder le fichier"),
                 dir)
-        if fn.isNull() : return
-        ulfile = os.path.abspath(unicode(fn))
+        fn=fn[0]
+        if fn == ""  : return
+        if fn == None : return (0, None)
+
+        ulfile = os.path.abspath(six.text_type(fn))
         if self.editor != None :
            self.editor.appliEficas.CONFIGURATION.savedir=os.path.split(ulfile)[0]
         try:
-           f = open(fn, 'wb')
+           f = open(fn, 'w')
            f.write(str(self.view.toPlainText()))
            f.close()
            return 1
-        except IOError, why:
+        except IOError as why:
            QMessageBox.critical(self, tr("Sauvegarder le fichier"),
-                tr("Le fichier <b>%(v_1)s</b> n'a pu etre sauvegarde. <br>Raison : %(v_2)s", {'v_1': unicode(fn), 'v_2': unicode(why)}))
+                 tr('Le fichier')+str(fn) + tr('n a pas pu etre sauvegarde : ') + str(why))
            return
 
+