From: pascale.noyret Date: Tue, 22 Sep 2015 15:26:46 +0000 (+0200) Subject: le bug du bloc X-Git-Tag: V_77_PSEN~9 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=8a68525fe5d4970b62f017979990e9a31eabd09b;p=tools%2Feficas.git le bug du bloc --- diff --git a/Editeur/Objecttreeitem.py b/Editeur/Objecttreeitem.py index 5658eeba..6ad5ae20 100644 --- a/Editeur/Objecttreeitem.py +++ b/Editeur/Objecttreeitem.py @@ -162,6 +162,7 @@ class ObjectTreeItem(TreeItem,Delegate): """ Connecte la fonction callable (avec arguments args) à l'item self sur le canal channel """ + #print self,channel,callable,args CONNECTOR.Connect(self._object,channel,callable,args) CONNECTOR.Connect(self.object, channel,callable,args) diff --git a/Ihm/CONNECTOR.py b/Ihm/CONNECTOR.py index 429501dd..07e6f055 100644 --- a/Ihm/CONNECTOR.py +++ b/Ihm/CONNECTOR.py @@ -106,8 +106,9 @@ class CONNECTOR: try: receivers = self.connections[id(object)][channel] except KeyError: + #print "ds except" return - ###print "Emit",object, channel, receivers + #print "Emit",object, channel, receivers # Attention : copie pour eviter les pbs lies aux deconnexion reconnexion # pendant l'execution des emit for rfunc, fargs in copy(receivers): diff --git a/InterfaceQT4/browser.py b/InterfaceQT4/browser.py index f35530fb..302719f2 100644 --- a/InterfaceQT4/browser.py +++ b/InterfaceQT4/browser.py @@ -52,7 +52,6 @@ class JDCTree( QTreeWidget,GereRegles ): self.tree = self self.appliEficas = self.editor.appliEficas self.childrenComplete=[] - self.childrenIssusDesBlocs=[] self.racine=self.item.itemNode(self,self.item) self.itemCourrant=None @@ -134,9 +133,10 @@ class JDCTree( QTreeWidget,GereRegles ): return item.deplieToutEtReaffiche() + def handleOnItem(self,item,int): #if (len(self.selectedIndexes())!=2): return - #print "je passe dans handleOnItem pour ", self.item.nom + #print "je passe dans handleOnItem pour ", item.item.nom, item, item.item self.inhibeExpand == True self.itemCourrant=item itemParent=item @@ -174,7 +174,6 @@ PARAMETERS = "PARAMETRE" class JDCNode(QTreeWidgetItem,GereRegles): def __init__( self, treeParent, item): #print "creation d'un noeud : ", item, " ",item.nom,"", treeParent, self - #print "creation d'un noeud : ", item.nom self.a=0 self.item = item self.vraiParent = treeParent @@ -182,7 +181,7 @@ class JDCNode(QTreeWidgetItem,GereRegles): self.tree = self.treeParent.tree self.editor = self.treeParent.editor self.appliEficas = treeParent.appliEficas - self.treeParent.childrenIssusDesBlocs=[] + self.JESUISOFF=0 self.childrenComplete=[] from InterfaceQT4 import compocomm @@ -203,26 +202,20 @@ class JDCNode(QTreeWidgetItem,GereRegles): else : self.plie = False self.appartientAUnNoeudPlie = False - #print self.treeParent - ajoutAuParentduNoeud=0 from InterfaceQT4 import compobloc from InterfaceQT4 import compomclist + + ajoutAuParentduNoeud=0 + self.treeParent=treeParent while (isinstance(self.treeParent,compobloc.Node) or ( isinstance(self.treeParent,compomclist.Node) and self.treeParent.item.isMCList())) : - #while (isinstance(self.treeParent,compobloc.Node)) : - self.treeParent=self.treeParent.treeParent - ajoutAuParentduNoeud=1 - if ajoutAuParentduNoeud : - treeParent.childrenComplete.append(self) - self.treeParent.childrenIssusDesBlocs.append(self) - while (isinstance(self.treeParent,compobloc.Node)) : self.treeParent=self.treeParent.treeParent - - #if isinstance(self,compobloc.Node) : + self.treeParent.childrenComplete.append(self) + self.treeParent=self.treeParent.vraiParent + self.treeParent.childrenComplete.append(self) if (isinstance(self,compobloc.Node) or ( isinstance(self,compomclist.Node) and self.item.isMCList())) : QTreeWidgetItem.__init__(self,None,mesColonnes) else : QTreeWidgetItem.__init__(self,self.treeParent,mesColonnes) - self.treeParent.childrenComplete.append(self) self.setToolTip(0,QString(self.item.get_fr())) self.setToolTip(1,QString(self.item.get_fr())) @@ -252,21 +245,24 @@ class JDCNode(QTreeWidgetItem,GereRegles): def build_children(self,posInsertion=10000): """ Construit la liste des enfants de self """ """ Se charge de remettre les noeuds Expanded dans le meme etat """ - #print "*********** build_children ",self.item, self.item.GetLabelText() + #print "*********** build_children ",self,self.item, self.item.nom listeExpanded=[] - for item in self.childrenComplete : - #print dir(item) - #if item.isExpanded(): + for enfant in self.childrenComplete : + #if enfant.isExpanded(): # if self.childrenComplete.index(item) < posInsertion : # listeExpanded.append(self.childrenComplete.index(item)) # print dir(item.item ) # else : # listeExpanded.append( self.childrenComplete.index(item) +1) - self.detruit_les_noeuds_issus_de_blocs(item) - parent=item.treeParent - parent.removeChild(item) + + p=enfant.vraiParent + parent=enfant.treeParent + parent.removeChild(enfant) + + enfant.JESUISOFF=1 + #print listeExpanded self.children = [] self.childrenComplete = [] @@ -275,17 +271,7 @@ class JDCNode(QTreeWidgetItem,GereRegles): for item in sublist : nouvelItem=item.itemNode(self,item) self.children.append(nouvelItem) - #print " J ajoute ", nouvelItem ,nouvelItem.item.GetLabelText(),"dans" ,self.item.GetLabelText() - #print item - #if ind in listeExpanded : nouvelItem.setExpanded(1) - - #if ind in listeExpanded : print "plie=0" - #else : print "plie=1" - #if ind in listeExpanded : nouvelItem.plie=0 - #else : nouvelItem.plie=1 - #ind=ind+1 - #print "*********** fin build_children ",self.item, self.item.GetLabelText() def chercheNoeudCorrespondant(self,objSimp): sublist = self.item._GetSubList() @@ -293,35 +279,28 @@ class JDCNode(QTreeWidgetItem,GereRegles): if node.item.object==objSimp : return node return None + def affichePanneau(self) : - #print "dans affichePanneau appel getPanel2", self.item.GetLabelText() if self.item.isactif(): itemParent=self - #print self - #print self.getPanel2 while not (hasattr (itemParent,'getPanel2')) : itemParent=itemParent.treeParent if itemParent!=self : itemParent.affichePanneau() return - #print self.getPanel2 self.fenetre=self.getPanel2() else: from monInactifPanel import PanelInactif self.fenetre = PanelInactif(self,self.editor) self.editor.widgetCentraleLayout.addWidget(self.fenetre) - #print "widgetCentraleLayout = ", self.editor.widgetCentraleLayout - #print "nouvelle fenetre ", self.fenetre, " associee a ", self self.editor.anciennefenetre=self.editor.fenetreCentraleAffichee - #print "ancienne fenetre ", self.editor.anciennefenetre self.editor.fenetreCentraleAffichee=self.fenetre self.tree.node_selected= self if self.editor.anciennefenetre != None : a=self.editor.anciennefenetre.close() - #print "je ferme ", self.editor.anciennefenetre if self.editor.widgetTree !=None : index=1 else : index=0 @@ -400,7 +379,6 @@ class JDCNode(QTreeWidgetItem,GereRegles): Rend le noeud courant (self) selectionne et deselectionne tous les autres """ - #print "je suis sur select" for item in self.tree.selectedItems() : item.setSelected(0) self.setSelected( True ) @@ -605,28 +583,22 @@ class JDCNode(QTreeWidgetItem,GereRegles): self.update_node_texte() def onAdd(self,object): - #print "onAdd pour ", self.item.nom + if self.JESUISOFF==1 : return self.editor.init_modif() self.update_nodes() - #print "dans onAdd" ,self.item + # PN -- non necessaire si item=jdc if hasattr(self.item,'jdc'): self.item.jdc.aReafficher=True def onSupp(self,object): - #print "onSupp pour ", self.item.nom + if self.JESUISOFF==1 : return self.editor.init_modif() self.update_nodes() # PN -- non necessaire si item=jdc if hasattr(self.item,'jdc'): self.item.jdc.aReafficher=True - def detruit_les_noeuds_issus_de_blocs(self,bloc): - from InterfaceQT4 import compobloc - if (isinstance(bloc,compobloc.Node)) : - for node in bloc.childrenComplete : - self.detruit_les_noeuds_issus_de_blocs(node) - parent=node.treeParent - #print "je detruit " , node.item.GetLabelText() - parent.removeChild(node) + + def update_node_valid(self): """Cette methode remet a jour la validite du noeud (icone) @@ -676,6 +648,7 @@ class JDCNode(QTreeWidgetItem,GereRegles): """ Met a jour les noms des SD et valeurs des mots-cles """ value = self.item.GetText() self.setText(1, value) + def update_node_texte_in_blue(self): self.setTextColor( 1,Qt.blue ) diff --git a/InterfaceQT4/monChoixCommande.py b/InterfaceQT4/monChoixCommande.py index 3a297762..c0d40bec 100644 --- a/InterfaceQT4/monChoixCommande.py +++ b/InterfaceQT4/monChoixCommande.py @@ -50,7 +50,7 @@ class MonChoixCommande(Ui_ChoixCommandes,QtGui.QWidget): nouveauTitre=debutTitre self.editor.appliEficas.setWindowTitle(nouveauTitre) - print self.node.tree + #print self.node.tree self.connect(self.RBalpha,SIGNAL("clicked()"),self.afficheAlpha) self.connect(self.RBGroupe,SIGNAL("clicked()"),self.afficheGroupe) @@ -64,7 +64,9 @@ class MonChoixCommande(Ui_ChoixCommandes,QtGui.QWidget): self.editor.labelCommentaire.setText("") - if self.editor.widgetOptionnel!= None : self.editor.widgetOptionnel.close() + if self.editor.widgetOptionnel!= None : + self.editor.widgetOptionnel.close() + self.editor.widgetOptionnel=None self.name=None self.connect(self.LEFiltre,SIGNAL("returnPressed()"),self.AjouteRadioButton) @@ -113,6 +115,8 @@ class MonChoixCommande(Ui_ChoixCommandes,QtGui.QWidget): plier=self.editor.afficheCommandesPliees if nodeCourrant==self.node : nouveau=self.node.append_child(self.name,'first',plier) else : nouveau=nodeCourrant.append_brother(self.name,plier=plier) + else : + nouveau = 0 if nouveau == 0 : return # on n a pas insere le noeud nouveau.setDeplie() #if self.editor.afficheApresInsert==True : nouveau.plieToutEtReaffiche() diff --git a/InterfaceQT4/monWidgetCommande.py b/InterfaceQT4/monWidgetCommande.py index 2a9f3bd1..eb30610f 100644 --- a/InterfaceQT4/monWidgetCommande.py +++ b/InterfaceQT4/monWidgetCommande.py @@ -183,7 +183,7 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): self.avantV=self.editor.fenetreCentraleAffichee.scrollAreaCommandes.verticalScrollBar().sliderPosition() self.inhibeExpand=True self.node.affichePanneau() - print "dans reaffiche de monWidgetCommande", self.avantH, self.avantV + #print "dans reaffiche de monWidgetCommande", self.avantH, self.avantV QTimer.singleShot(1, self.recentre) if nodeAVoir != None: self.f=nodeAVoir.fenetre diff --git a/InterfaceQT4/monWidgetCommentaire.py b/InterfaceQT4/monWidgetCommentaire.py index 049b53f5..1c61c060 100644 --- a/InterfaceQT4/monWidgetCommentaire.py +++ b/InterfaceQT4/monWidgetCommentaire.py @@ -68,4 +68,5 @@ class MonWidgetCommentaire(QWidget,Ui_WidgetCommentaire,FacultatifOuOptionnel): texte=str(self.commentaireLE.text()) self.editor.init_modif() self.node.item.set_valeur(texte) + self.node.update_node() diff --git a/InterfaceQT4/monWidgetCreeParam.py b/InterfaceQT4/monWidgetCreeParam.py index bf546eaa..b0235116 100644 --- a/InterfaceQT4/monWidgetCreeParam.py +++ b/InterfaceQT4/monWidgetCreeParam.py @@ -35,6 +35,7 @@ class MonWidgetCreeParam(Ui_desWidgetCreeParam,QDialog): """ def __init__(self,editor, name = None,fl = 0): self.editor=editor + self.editor.affiche_infos("") QDialog.__init__(self,editor) self.setupUi(self) self.connecterSignaux() @@ -59,14 +60,17 @@ class MonWidgetCreeParam(Ui_desWidgetCreeParam,QDialog): itemAvant=self.editor.tree.selectedItems()[0] param=itemAvant.addParameters(True) param.item.set_nom(nom) + #PN self.val permet d entrer du texte param.item.set_valeur(val) param.update_node_texte() + param.update_node_valid() self.LBParam.addItem(QString(repr(param.item))) def lineEditValReturnPressed(self): qtVal=self.lineEditVal.text() valString=str(self.lineEditVal.text()) + self.val="" contexte={} exec "from math import *" in contexte jdc=self.editor.jdc @@ -83,8 +87,13 @@ class MonWidgetCreeParam(Ui_desWidgetCreeParam,QDialog): monTexte="monParam="+valString try : exec monTexte in contexte + self.val=valString except : - self.editor.affiche_infos(tr("Valeur incorrecte"),Qt.red) + try : + monTexte="monParam='"+valString+"'" + self.val="'"+valString+"'" + except : + self.editor.affiche_infos(tr("Valeur incorrecte"),Qt.red) if self.lineEditNom.text()!="" and self.dejaExistant==False : self.CreeParametre() diff --git a/InterfaceQT4/monWidgetOptionnel.py b/InterfaceQT4/monWidgetOptionnel.py index eb797065..93a81041 100644 --- a/InterfaceQT4/monWidgetOptionnel.py +++ b/InterfaceQT4/monWidgetOptionnel.py @@ -68,7 +68,7 @@ class MonWidgetOptionnel (QWidget,Ui_WidgetOptionnel): self.cbPressed=None self.cb=None self.parentQt=parentQt - self.connect(self.bAjoutMC,SIGNAL("clicked()"), self.ajoutMC) + #self.connect(self.bAjoutMC,SIGNAL("clicked()"), self.ajoutMC) #print "fin init de monWidgetOptionnel ", parentQt, parentQt.node.item.nom diff --git a/InterfaceQT4/monWidgetParam.py b/InterfaceQT4/monWidgetParam.py index 9e247aa8..fff4cea4 100644 --- a/InterfaceQT4/monWidgetParam.py +++ b/InterfaceQT4/monWidgetParam.py @@ -54,6 +54,10 @@ class MonWidgetParam(QWidget,Ui_WidgetParam,FacultatifOuOptionnel): self.connect(self.bApres,SIGNAL("clicked()"), self.afficheApres) self.connect(self.bVerifie,SIGNAL("clicked()"), self.verifiePressed) self.editor.affiche_infos("") + if self.editor.widgetOptionnel!= None : + self.editor.widgetOptionnel.close() + self.editor.widgetOptionnel=None + diff --git a/InterfaceQT4/monWidgetPlusieursInto.py b/InterfaceQT4/monWidgetPlusieursInto.py index 5678b5a8..d6d4411b 100644 --- a/InterfaceQT4/monWidgetPlusieursInto.py +++ b/InterfaceQT4/monWidgetPlusieursInto.py @@ -34,7 +34,7 @@ from qtSaisie import SaisieValeur class MonWidgetPlusieursInto (Ui_WidgetPlusieursInto,Feuille): def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - print "MonWidgetPlusieursInto", nom, self + #print "MonWidgetPlusieursInto", nom, self self.index=1 Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) self.listeValeursCourantes=self.node.item.GetListeValeurs() diff --git a/UiQT4/desWidgetOptionnel.ui b/UiQT4/desWidgetOptionnel.ui index 8c4a733a..d3270f31 100644 --- a/UiQT4/desWidgetOptionnel.ui +++ b/UiQT4/desWidgetOptionnel.ui @@ -127,7 +127,7 @@ font : 'times' 9px 0 0 279 - 85 + 124 @@ -157,73 +157,6 @@ font : 'times' 9px - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - 0 - 0 - - - - - 130 - 31 - - - - validation de la saisie - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Ajouter - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - diff --git a/UiQT4/eficas_en.qm b/UiQT4/eficas_en.qm index fd39c6ff..8d9ca4f0 100644 Binary files a/UiQT4/eficas_en.qm and b/UiQT4/eficas_en.qm differ diff --git a/UiQT4/eficas_fr.ts b/UiQT4/eficas_fr.ts index d2e1861e..604b00c3 100644 --- a/UiQT4/eficas_fr.ts +++ b/UiQT4/eficas_fr.ts @@ -517,32 +517,32 @@ - + Impossible d'ajouter la commande - + Impossible d ajouter la commande - + Pas implemente - + Nom de concept deja defini - + Nom de concept deja defini : - + Impossible de trouver le fichier correspondant a l'unite @@ -668,7 +668,7 @@ Le fichier associe n'est pas defini - + Eficas ne peut pas traiter plusieurs instructions sur la meme ligne : %s @@ -779,7 +779,7 @@ Le fichier associe n'est pas defini - + n'est pas un index valide pour append_brother @@ -876,7 +876,7 @@ Le fichier associe n'est pas defini - + &Annuler @@ -946,73 +946,73 @@ Le fichier associe n'est pas defini - + Copie impossible - + Veuillez selectionner un objet a copier - + Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne - + Aucun Objet n a ete copie ou coupe - + Copie refusee - + Eficas n a pas reussi a copier l objet - + Copie refusee pour ce type d objet - + Deplacement refuse - + Deplacement refuse entre 2 fichiers. Seule la copie est autorisee - + Copie impossible a cet endroit - + Veuillez selectionner une commande, un parametre, un commentaire ou une macro - + Choix d'un fichier XML - + Le fichier contient une commande MODEL - + Donnez le nom du fichier XML qui contient la description des variables @@ -1022,135 +1022,135 @@ Le fichier associe n'est pas defini - + Erreur a la generation - + EFICAS ne sait pas convertir ce JDC - + Format %s non reconnu - + EFICAS ne sait pas convertir le JDC selon le format - + Execution impossible - + le JDC doit etre valide pour une execution MAP - + le JDC doit contenir un et un seul composant - + le JDC doit etre valide pour une execution - + Sauvegarder SVP avant l'execution - + sauvegarde - + Sauvegarde du Fichier - + Le fichier <b>%s</b> existe deja. - + &Ecraser - + Sauvegarde de l'input impossible - + Un JdC valide est necessaire pour creer un .input - + Choix du composant obligatoire - + Choix unite %d - + Le fichier %s contient une commande INCLUDE - + Donnez le nom du fichier correspondant a l unite logique - + Fichier pour unite - + Choix d'un fichier de poursuite - + Le fichier %s contient une commande POURSUITE - + Donnez le nom du fichier dont vous voulez faire une poursuite - + Fichiers Med (*.med);;Tous les Fichiers (*) - + Fichier Med - + Veuillez selectionner un fichier Med @@ -1225,37 +1225,37 @@ Le fichier associe n'est pas defini - + Visualisation Fichier - + Impossibilite d'afficher le Fichier - + Sauvegarder Fichier - + Fichier selectionne - + Selection - + Export Med vers Fichier - + Impossibilite d exporter le Fichier @@ -1434,7 +1434,7 @@ Le fichier associe n'est pas defini - + Accquisition Groupe Maille @@ -1644,47 +1644,47 @@ Le fichier associe n'est pas defini - + Fichier Duplique - + Le fichier ne sera pas sauvegarde. - + Fichier - + Le fichier <b>%s</b> est deja ouvert. - + &Duplication - + &Abort - + Fichier Modifie - + Le fichier %s n a pas ete sauvegarde. - + &Sauvegarder @@ -1819,7 +1819,7 @@ Le fichier associe n'est pas defini - + Sauve Format Ligne @@ -1909,12 +1909,12 @@ Le fichier associe n'est pas defini - + TraduitV10V11 - + TraduitV11V12 @@ -2079,7 +2079,7 @@ Le fichier associe n'est pas defini - + Creation Parametre indisponible @@ -2256,12 +2256,12 @@ Le fichier associe n'est pas defini - + les parametres sont lies a un jeu de donnees - + Fichier non encore nomme @@ -2276,22 +2276,22 @@ Le fichier associe n'est pas defini - + le mot clef - + doit etre insere avant - + insertion impossible - + doit etre insere apres @@ -2315,6 +2315,11 @@ Le fichier associe n'est pas defini Date sous la forme JJ/MM/AA + + + pas de regle de construction pour ce jeu de commandes + + ChoixCode @@ -2352,45 +2357,60 @@ Le fichier associe n'est pas defini - + <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> - + affiche les commandes par ordre alphabetique - + Alphabetique - + affiche les commandes selon les thèmes - + Ordre de la modélisation - + Par Groupe - + <html><head/><body><p align="center">Filtre Commande</p></body></html> - + filter commands + + + affiche les régles de validité + + + + + ... + + + + + Règles de construction + + DChoixCata @@ -2483,162 +2503,162 @@ p, li { white-space: pre-wrap; } - + &Aide - + toolBar - + &Nouveau - + Ctrl+N - + Nouvel Include - + &Ouvrir - + Ctrl+O - + Enregistrer - + Enregistrer sous - + Fermer - + Ctrl+W - + Fermer tout - + Couper - + Ctrl+X - + Copier - + Ctrl+C - + Coller - + Ctrl+V - + Quitter - + Ctrl+Q - + Rapport de Validation - + Fichier Source - + Fichier Résultat - + Parametres Eficas - + Lecteur documentation - + Eficas - + Version - + Supprimer - + Rechercher - + Rechercher dans l'arbre d'etude - + Ctrl+F - + Replier/Deplier @@ -2648,82 +2668,82 @@ p, li { white-space: pre-wrap; } - + &Edition - + &JeuDeDonnées - + Shift+I - + Ctrl+S - + Ctrl+Shift+S - + Shift+V - + Chercher Mot-Clef - + Rechercher dans le catalogue - + Shift+F - + Shift+D - + Commentaire - + Shift+C - + Paramètres - + Gestion des paramètres - + Shift+P - + Parametre Eficas @@ -2748,30 +2768,40 @@ p, li { white-space: pre-wrap; } - + Run + + + &bad + + + + + Régles du JdC + + JDCEditor - + Save File - + The file <b>%1</b> could not be saved.<br>Reason: %2 - + JDC (*.comm);;All Files (*) - + &Abandonner &Abandonner @@ -2987,52 +3017,52 @@ p, li { white-space: pre-wrap; } - + ... - + <html><head/><body><p><span style=" color:#0000ff;">Commentaire</span></p></body></html> - + Détruit le commentaire - + Affiche les commandes possibles - + &Commandes - + Shift+A, Alt+A, Alt+A, Alt+A - + Affiche le formulaire de la commande précédente - + << - + Affiche le formulaire de la commande suivante - + >> @@ -3415,7 +3445,7 @@ p, li { white-space: pre-wrap; } - + ... @@ -3425,37 +3455,37 @@ p, li { white-space: pre-wrap; } - + Remonte la ligne - + Descend la ligne - + supprime une ligne - + Ajoute une ligne - + Montre l'ensemble des valeurs - + Ouvre un fichier de sélection des valeurs - + Détruit le mot-clef @@ -3946,14 +3976,22 @@ p, li { white-space: pre-wrap; } self.appliEficas - + Wrapper Files (*.xml);;All Files (*) - + Noname + + viewRegles + + + Dialog + + + diff --git a/convert/parseur_python.py b/convert/parseur_python.py index ba49c2e8..15a0b7c9 100644 --- a/convert/parseur_python.py +++ b/convert/parseur_python.py @@ -24,15 +24,19 @@ from Extensions.i18n import tr escapedQuotesRE = re.compile(r"(\\\\|\\\"|\\\')") stringsAndCommentsRE = \ re.compile(u"(\"\"\".*?\"\"\"|'''.*?'''|\"[^\"]*\"|\'[^\']*\'|#.*?\n)", re.DOTALL) +#stringsAndCommentsRE = \ +# re.compile(u"(\"\"\".*\"\"\"|'''.*'''|\"[^\"]*\"|\'[^\']*\'|#.*\n)", re.DOTALL) allchars = string.maketrans(u"", "") allcharsExceptNewline = allchars[: allchars.index('\n')]+allchars[allchars.index('\n')+1:] -if sys.platform[0:5]=="linux" : - allcharsExceptNewlineTranstable = string.maketrans(allcharsExceptNewline, '*'*len(allcharsExceptNewline)) -elif sys.platform[0:3]=="win" : - allcharsExceptNewlineTranstable = dict((ord(char), u'*') for char in allcharsExceptNewline)#string.maketrans(allcharsExceptNewline, '*'*len(allcharsExceptNewline)) -else : - allcharsExceptNewlineTranstable = string.maketrans(allcharsExceptNewline, '*'*len(allcharsExceptNewline)) - print 'Plateforme non geree' +allcharsExceptNewlineTranstable = string.maketrans(allcharsExceptNewline, '*'*len(allcharsExceptNewline)) + +#if sys.platform[0:5]=="linux" : +# allcharsExceptNewlineTranstable = string.maketrans(allcharsExceptNewline, '*'*len(allcharsExceptNewline)) +#elif sys.platform[0:3]=="win" : +# allcharsExceptNewlineTranstable = dict((ord(char), u'*') for char in allcharsExceptNewline)# +#else : +# allcharsExceptNewlineTranstable = string.maketrans(allcharsExceptNewline, '*'*len(allcharsExceptNewline)) +# print 'Plateforme non geree' def maskStringsAndComments(src): """Masque tous les caracteres de src contenus dans des commentaires ou des strings multilignes (triples @@ -40,7 +44,13 @@ def maskStringsAndComments(src): Le masquage est realise en remplacant les caracteres par des * Attention : cette fonction doit etre utilisee sur un texte complet et pas ligne par ligne """ - src = escapedQuotesRE.sub(u"**", src) +# remplace les \\, les \" les \' par ** +# supprime toutes les chaines ou commentaires ,y compris multiligne i +# entre 3 ou 1 simples ou doubles quotes (ouvrantes fermantes) ou # +# laisse les non fermantes ou non ouvrantes + #src = escapedQuotesRE.sub(u"**", src) + # le u met le bazar dans le translate + src = escapedQuotesRE.sub("**", src) allstrings = stringsAndCommentsRE.split(src) # every odd element is a string or comment for i in xrange(1, len(allstrings), 2): @@ -49,8 +59,6 @@ def maskStringsAndComments(src): allstrings[i][3:-3].translate(allcharsExceptNewlineTranstable)+ \ allstrings[i][-3:] else: - test= allstrings[i][1:-1].translate(allcharsExceptNewlineTranstable) - #test +\ allstrings[i] = allstrings[i][0]+ \ allstrings[i][1:-1].translate(allcharsExceptNewlineTranstable)+ \ allstrings[i][-1] diff --git a/generator/generator_TELEMAC.py b/generator/generator_TELEMAC.py index cd70db2b..610ebb4e 100644 --- a/generator/generator_TELEMAC.py +++ b/generator/generator_TELEMAC.py @@ -75,7 +75,6 @@ class TELEMACGenerator(PythonGenerator): #---------------------------------------------------------------------------------------- def writeDefault(self,fn) : - print "kkkkkkkkkkkkkkkkkkkkk" fileDico = fn[:fn.rfind(".")] + '.py' f = open( str(fileDico), 'wb') f.write( self.texteDico )