]> SALOME platform Git repositories - tools/eficas.git/blobdiff - InterfaceQT4/editor.py
Salome HOME
pb d accent. on les enleve en français
[tools/eficas.git] / InterfaceQT4 / editor.py
index df4637ae75a9562b5b55d94ea181a478438238fd..2be9a3c0c6a82a03057b9c81e557f6211de3d96b 100644 (file)
@@ -35,9 +35,10 @@ from Editeur        import session
 from Editeur        import comploader
 from Editeur        import Objecttreeitem
 from desBaseWidget  import Ui_baseWidget
 from Editeur        import comploader
 from Editeur        import Objecttreeitem
 from desBaseWidget  import Ui_baseWidget
+from monViewTexte   import ViewText 
+from monWidgetCreeParam import MonWidgetCreeParam 
 import browser
 import readercata
 import browser
 import readercata
-import qtCommun
 
 DictExtensions= {"MAP" : ".map"}
 
 
 DictExtensions= {"MAP" : ".map"}
 
@@ -52,10 +53,13 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
     def __init__ (self,appli,fichier = None, jdc = None, QWParent=None, units = None, include=0 , vm=None):
     #----------------------------------------------------------------------------------------------------------#
 
     def __init__ (self,appli,fichier = None, jdc = None, QWParent=None, units = None, include=0 , vm=None):
     #----------------------------------------------------------------------------------------------------------#
 
+        self.a=0
         QtGui.QWidget.__init__(self,None)
         self.setupUi(self)
         self.monOptionnel=None
         self.fenetreCentraleAffichee=None
         QtGui.QWidget.__init__(self,None)
         self.setupUi(self)
         self.monOptionnel=None
         self.fenetreCentraleAffichee=None
+        self.dejaDansPlieTout=False
+        self.afficheCommandesPliees = True
         self.appliEficas = appli
         self.appli       = appli  #---- attendu par IHM
         self.vm          = vm
         self.appliEficas = appli
         self.appli       = appli  #---- attendu par IHM
         self.vm          = vm
@@ -72,11 +76,13 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
 
         # ces attributs sont mis a jour par definitCode appelee par newEditor
         self.code = self.appliEficas.CONFIGURATION.code
 
         # ces attributs sont mis a jour par definitCode appelee par newEditor
         self.code = self.appliEficas.CONFIGURATION.code
-        self.affiche_alpha=1
-        if self.code in ['MAP','Adao'] : 
+        self.mode_nouv_commande=self.appliEficas.CONFIGURATION.mode_nouv_commande
+        self.affiche=self.appliEficas.CONFIGURATION.affiche
+        if self.code in ['MAP','CARMELCND'] : self.afficheCommandesPliees=False
+        if self.code in ['MAP',] : 
            self.widgetTree.close()
            self.widgetTree=None
            self.widgetTree.close()
            self.widgetTree=None
-           self.appliEficas.resize(1400,self.appliEficas.height())
+           self.appliEficas.resize(1440,self.appliEficas.height())
         else :
            self.appliEficas.resize(2000,self.appliEficas.height())
 
         else :
            self.appliEficas.resize(2000,self.appliEficas.height())
 
@@ -89,6 +95,7 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
            self.readercata=self.appliEficas.readercata
         if self.readercata.fic_cata == None : return    #Sortie Salome
         self.titre=self.readercata.titre
            self.readercata=self.appliEficas.readercata
         if self.readercata.fic_cata == None : return    #Sortie Salome
         self.titre=self.readercata.titre
+        self.Ordre_Des_Commandes=self.readercata.Ordre_Des_Commandes
 
         self.format =  self.appliEficas.format_fichier
 
 
         self.format =  self.appliEficas.format_fichier
 
@@ -129,22 +136,29 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
         self.node_selected = []
         self.deplier = True
         self.message=''
         self.node_selected = []
         self.deplier = True
         self.message=''
+        if self.code in ['Adao','MAP'] : self.afficheApresInsert=True
+        else :  self.afficheApresInsert=False
+        if self.code in ['TELEMAC',] : self.enteteQTree='premier'
+        else : self.enteteQTree='complet'
+        if self.code in ['Adao','TELEMAC'] : self.affichePlie=True
+        else : self.affichePlie=False
 
         self.Commandes_Ordre_Catalogue =self.readercata.Commandes_Ordre_Catalogue
 
         #------- construction du jdc --------------
 
         jdc_item = None
 
         self.Commandes_Ordre_Catalogue =self.readercata.Commandes_Ordre_Catalogue
 
         #------- construction du jdc --------------
 
         jdc_item = None
-        self.mode_nouv_commande=self.readercata.mode_nouv_commande
 
         self.nouveau=0
         if self.fichier is not None:        #  fichier jdc fourni
             self.fileInfo = QFileInfo(self.fichier)
             self.fileInfo.setCaching(0)
             if jdc==None :
 
         self.nouveau=0
         if self.fichier is not None:        #  fichier jdc fourni
             self.fileInfo = QFileInfo(self.fichier)
             self.fileInfo.setCaching(0)
             if jdc==None :
-               try :
+              # try :
+              if 1:
                    self.jdc = self.readFile(self.fichier)
                    self.jdc = self.readFile(self.fichier)
-               except :
+               #except :
+              else :
                    print "mauvaise lecture"
             else :
                self.jdc=jdc
                    print "mauvaise lecture"
             else :
                self.jdc=jdc
@@ -162,6 +176,7 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
         if self.jdc:
             self.jdc.appli = self
             self.jdc.lang    = self.appli.langue
         if self.jdc:
             self.jdc.appli = self
             self.jdc.lang    = self.appli.langue
+            self.jdc.aReafficher=False
             txt_exception  = None
             if not jdc:
                 self.jdc.analyse()
             txt_exception  = None
             if not jdc:
                 self.jdc.analyse()
@@ -176,6 +191,9 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
                 jdc_item=Objecttreeitem.make_objecttreeitem( self, "nom", self.jdc )
                 if (not self.jdc.isvalid()) and (not self.nouveau) and (self.appliEficas.ssIhm == False):
                     self.viewJdcRapport()
                 jdc_item=Objecttreeitem.make_objecttreeitem( self, "nom", self.jdc )
                 if (not self.jdc.isvalid()) and (not self.nouveau) and (self.appliEficas.ssIhm == False):
                     self.viewJdcRapport()
+       # if self.code=="TELEMAC" : print "kkkkkkkk"
+
 
         if jdc_item:
             self.tree = browser.JDCTree( jdc_item,  self )
 
         if jdc_item:
             self.tree = browser.JDCTree( jdc_item,  self )
@@ -191,8 +209,9 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
         CONTEXT.unset_current_step()
 
         texte=""
         CONTEXT.unset_current_step()
 
         texte=""
-        #if self.code == "CARMELCND" : texte=self._newJDCCND()
+        if self.code == "CARMELCND" : texte=self._newJDCCND()
         if self.code == "ZCRACKS" : texte=self._newZCRACKS()
         if self.code == "ZCRACKS" : texte=self._newZCRACKS()
+        if self.code == "TELEMAC" : texte=self._newTELEMAC()
         #   texte=self.newTexteCND
        
         jdc=self.readercata.cata[0].JdC( procedure =texte,
         #   texte=self.newTexteCND
        
         jdc=self.readercata.cata[0].JdC( procedure =texte,
@@ -322,12 +341,10 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
             QMessageBox.critical( self, tr("Type de fichier non reconnu"),tr("EFICAS ne sait pas ouvrir ce type de fichier"))
             return None
 
             QMessageBox.critical( self, tr("Type de fichier non reconnu"),tr("EFICAS ne sait pas ouvrir ce type de fichier"))
             return None
 
-    #----------------------------------------------#
-    def _viewText(self, txt, caption = "FILE_VIEWER"):
-    #----------------------------------------------#
-        w = qtCommun.ViewText( self.QWParent )
-        w.setWindowTitle( caption )
-        w.setText(txt)
+    #-----------------------------------------------------------------------#
+    def _viewText(self, txt, caption = "FILE_VIEWER",largeur=1200,hauteur=600):
+    #--------------------------------------------------------------------#
+        w = ViewText( self.QWParent,self ,caption,txt,largeur,hauteur)
         w.show()
     #
 
         w.show()
     #
 
@@ -344,7 +361,7 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
     #----------------------------------------------#
     def _viewTextExecute(self, txt, prefix, suffix):
     #----------------------------------------------#
     #----------------------------------------------#
     def _viewTextExecute(self, txt, prefix, suffix):
     #----------------------------------------------#
-        self.w = qtCommun.ViewText( self.QWParent )
+        self.w = ViewText( self.QWParent )
         self.w.setWindowTitle( "execution" )
         self.monExe=QProcess(self.w)
         pid=self.monExe.pid()
         self.w.setWindowTitle( "execution" )
         self.monExe=QProcess(self.w)
         pid=self.monExe.pid()
@@ -375,6 +392,12 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
         
 
 
         
 
 
+    #-----------------------#
+    def gestionParam(self):
+    #-----------------------#
+        w = MonWidgetCreeParam( self)
+        w.show()
+
     #-----------------------#
     def viewJdcSource(self):
     #-----------------------#
     #-----------------------#
     def viewJdcSource(self):
     #-----------------------#
@@ -461,14 +484,23 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
     #---------------------#
     def handleDeplier(self):
     #---------------------#
     #---------------------#
     def handleDeplier(self):
     #---------------------#
+       print "je passe ici"
        if self.tree == None : return
        if self.tree == None : return
-       self.tree.collapseAll()
+       #self.tree.collapseAll()
        if self.deplier :
        if self.deplier :
-          self.tree.collapseItem(self.tree.topLevelItem(0))
+          #print "je plie"
+          self.tree.expandItem(self.tree.topLevelItem(0))
           self.deplier = False
           self.deplier = False
+          if self.fenetreCentraleAffichee != None  :
+             if hasattr(self.fenetreCentraleAffichee.node,'plieToutEtReaffiche'):
+                 self.fenetreCentraleAffichee.node.plieToutEtReaffiche()
        else:
        else:
+          #print "je deplie"
           self.tree.expandItem(self.tree.topLevelItem(0))
           self.deplier = True
           self.tree.expandItem(self.tree.topLevelItem(0))
           self.deplier = True
+          if self.fenetreCentraleAffichee != None  :
+             if hasattr(self.fenetreCentraleAffichee.node,'deplieToutEtReaffiche'):
+                 self.fenetreCentraleAffichee.node.deplieToutEtReaffiche()
 
     #---------------------#
     def handleEditCut(self):
 
     #---------------------#
     def handleEditCut(self):
@@ -672,9 +704,9 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
                    self.appliEficas.trUtf8('Wrapper Files (*.xml);;''All Files (*)'))
      return  fichier
 
                    self.appliEficas.trUtf8('Wrapper Files (*.xml);;''All Files (*)'))
      return  fichier
 
-    #----------------------------------#
-    def writeFile(self, fn, txt = None):
-    #----------------------------------#
+    #--------------------------------------------------#
+    def writeFile(self, fn, txt = None,formatLigne="beautifie"):
+    #--------------------------------------------------#
         """
         Public slot to write the text to a file.
 
         """
         Public slot to write the text to a file.
 
@@ -683,9 +715,9 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
         """
 
         fn = unicode(fn)
         """
 
         fn = unicode(fn)
-
+       
         if txt == None :
         if txt == None :
-            txt = self.get_text_JDC(self.format)
+            txt = self.get_text_JDC(self.format,formatLigne=formatLigne)
             eol = '\n'
             if len(txt) >= len(eol):
                if txt[-len(eol):] != eol:
             eol = '\n'
             if len(txt) >= len(eol):
                if txt[-len(eol):] != eol:
@@ -706,15 +738,15 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
                     .arg(unicode(fn)).arg(str(why)))
             return 0
 
                     .arg(unicode(fn)).arg(str(why)))
             return 0
 
-    #-------------------------------------#
-    def get_text_JDC(self,format,pourRun=0):
-    #-------------------------------------#
+    #-----------------------------------------------------------#
+    def get_text_JDC(self,format,pourRun=0,formatLigne="beautifie"):
+    #-----------------------------------------------------------#
       if self.code == "MAP" and not(generator.plugins.has_key(format)): format = "MAP"
       if generator.plugins.has_key(format):
          # Le generateur existe on l'utilise
          self.generator=generator.plugins[format]()
          try :
       if self.code == "MAP" and not(generator.plugins.has_key(format)): format = "MAP"
       if generator.plugins.has_key(format):
          # Le generateur existe on l'utilise
          self.generator=generator.plugins[format]()
          try :
-            jdc_formate=self.generator.gener(self.jdc,format='beautifie',config=self.appliEficas.CONFIGURATION)
+            jdc_formate=self.generator.gener(self.jdc,format=formatLigne,config=self.appliEficas.CONFIGURATION)
             if pourRun : jdc_formate=self.generator.textePourRun
          except ValueError,e:
             QMessageBox.critical(self, tr("Erreur a la generation"),str(e))
             if pourRun : jdc_formate=self.generator.textePourRun
          except ValueError,e:
             QMessageBox.critical(self, tr("Erreur a la generation"),str(e))
@@ -961,9 +993,9 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
         #else :
            pass
 
         #else :
            pass
 
-    #-----------------------------------------#
-    def saveFile(self, path = None, saveas= 0):
-    #-----------------------------------------#
+    #-----------------------------------------------------------------#
+    def saveFile(self, path = None, saveas= 0,formatLigne="beautifie"):
+    #-----------------------------------------------------------------#
         """
         Public slot to save the text to a file.
 
         """
         Public slot to save the text to a file.
 
@@ -997,7 +1029,7 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
           fn = unicode(QDir.convertSeparators(fn))
           newName = fn
 
           fn = unicode(QDir.convertSeparators(fn))
           newName = fn
 
-        if not (self.writeFile(fn)): return (0, None)
+        if not (self.writeFile(fn,formatLigne=formatLigne)): return (0, None)
         self.fichier = fn
         self.modified  = False
         if self.fileInfo is None or saveas:
         self.fichier = fn
         self.modified  = False
         if self.fileInfo is None or saveas:
@@ -1020,6 +1052,14 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
 
         return (1, self.fichier)
 #
 
         return (1, self.fichier)
 #
+
+    #----------------------------------------------#
+    def sauveLigneFile(self):
+    #----------------------------------------------#
+        self.modified=1
+        return self.saveFile(formatLigne="Ligne")
+
+
     #----------------------------------------------#
     def saveFileAs(self, path = None,fileName=None):
     #----------------------------------------------#
     #----------------------------------------------#
     def saveFileAs(self, path = None,fileName=None):
     #----------------------------------------------#
@@ -1033,7 +1073,7 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
         if fileName != None :
            self.fichier = fileName
            return self.saveFile()
         if fileName != None :
            self.fichier = fileName
            return self.saveFile()
-        return self.saveFile(path,1)
+        return self.saveFile(path,1,"beautifie")
 
 
 
 
 
 
@@ -1157,6 +1197,15 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
         return ligne
 
 
         return ligne
 
 
+    #---------------------------#
+    def _newTELEMAC(self):
+    #---------------------------#
+        texte="INITIALIZATION();BOUNDARY_CONDITIONS();GENERAL_PARAMETERS();PHYSICAL_PARAMETERS();NUMERICAL_PARAMETERS();"
+        #texte=""
+        return texte
+
+    #---------------------------#
+
     #---------------------------#
     def _newZCRACKS(self):
     #---------------------------#
     #---------------------------#
     def _newZCRACKS(self):
     #---------------------------#
@@ -1179,24 +1228,12 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
       from acquiertGroupes import getGroupes
       erreur,self.listeGroupes,self.nomMaillage,self.dicoCoord=getGroupes(self.fichierMED)
       if erreur != "" : print "a traiter"
       from acquiertGroupes import getGroupes
       erreur,self.listeGroupes,self.nomMaillage,self.dicoCoord=getGroupes(self.fichierMED)
       if erreur != "" : print "a traiter"
-      #else :
-      #   from monBoutonSalome import MonBoutonSalome
-      #   desBoutonSalome = MonBoutonSalome()
-      #   icon = QIcon()
-      #   icon = QIcon(self.appli.repIcon+"/image240.png")
-      #   desBoutonSalome.pushButton.setIcon(icon)
-      #   desBoutonSalome.setMinimumSize(QtCore.QSize(453, 103))
-
-      #   self.openfile=QFileDialog(self.appli,caption='Fichier Med',filter=extensions)
-      #   self.openfile.layout().addWidget(desBoutonSalome)
-      #   self.connect(desBoutonSalome.pushButton,SIGNAL("clicked()"),self.BoutonSalomePressed)
-      #   self.connect(self.openfile,SIGNAL("fileSelected(QString)"),self.BoutonFileSelected)
-      #   r=self.openfile.exec_()
       texteComm="COMMENTAIRE(u'Cree - fichier : "+self.fichierMED +" - Nom Maillage : "+self.nomMaillage+"');\nPARAMETRES()\n"
       texteSources=""
       texteCond=""
       texteNoCond=""
       texteVcut=""
       texteComm="COMMENTAIRE(u'Cree - fichier : "+self.fichierMED +" - Nom Maillage : "+self.nomMaillage+"');\nPARAMETRES()\n"
       texteSources=""
       texteCond=""
       texteNoCond=""
       texteVcut=""
+      texteZs=""
       for groupe in self.listeGroupes :
           if groupe[0:8]=='CURRENT_': 
              texteSources +=groupe[8:]+"=SOURCE("
       for groupe in self.listeGroupes :
           if groupe[0:8]=='CURRENT_': 
              texteSources +=groupe[8:]+"=SOURCE("
@@ -1204,7 +1241,8 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget):
           if groupe[0:5]=='COND_':    texteCond    +=groupe[5:]+"=CONDUCTEUR();\n"
           if groupe[0:7]=='NOCOND_':  texteNoCond  +=groupe[7:]+"=NOCOND();\n"
           if groupe[0:5]=='VCUT_':    texteVcut    +='V_'+groupe[5:]+"=VCUT();\n"
           if groupe[0:5]=='COND_':    texteCond    +=groupe[5:]+"=CONDUCTEUR();\n"
           if groupe[0:7]=='NOCOND_':  texteNoCond  +=groupe[7:]+"=NOCOND();\n"
           if groupe[0:5]=='VCUT_':    texteVcut    +='V_'+groupe[5:]+"=VCUT();\n"
-      texte=texteComm+texteSources+texteCond+texteNoCond+texteVcut
+          if groupe[0:3]=='ZS_':      texteZs      +=groupe[3:]+"=ZS();\n"
+      texte=texteComm+texteSources+texteCond+texteNoCond+texteVcut+texteZs
       self.newTexteCND=texte
       self.modified=1
       return texte
       self.newTexteCND=texte
       self.modified=1
       return texte