From: pascale.noyret Date: Tue, 25 Aug 2015 09:03:11 +0000 (+0200) Subject: correction bugs adao + commentaire X-Git-Tag: V_77_PSEN~11 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=5aa124143676b59c20aee5fa8be0c4b278be2791;p=modules%2Feficas.git correction bugs adao + commentaire --- diff --git a/Extensions/CreeTraductions/eficas.pro b/Extensions/CreeTraductions/eficas.pro index a7fd20b0..5ebc007b 100644 --- a/Extensions/CreeTraductions/eficas.pro +++ b/Extensions/CreeTraductions/eficas.pro @@ -112,11 +112,13 @@ SOURCES = ../../convert/autre_parseur.py \ ../../InterfaceQT4/feuille.py \ ../../InterfaceQT4/gereIcones.py \ ../../InterfaceQT4/gereListe.py \ + ../../InterfaceQT4/gereRegles.py \ ../../InterfaceQT4/gereTraduction.py \ ../../InterfaceQT4/getVersion.py \ ../../InterfaceQT4/groupe.py \ ../../InterfaceQT4/monBoutonValide.py \ ../../InterfaceQT4/monChoixCata.py \ + ../../InterfaceQT4/monChoixCode.py \ ../../InterfaceQT4/monChoixCommande.py \ ../../InterfaceQT4/monFonctionPanel.py \ ../../InterfaceQT4/monLabelClic.py \ @@ -143,6 +145,9 @@ SOURCES = ../../convert/autre_parseur.py \ ../../InterfaceQT4/monWidgetPlusieursBase.py \ ../../InterfaceQT4/monWidgetPlusieursIntoOrdonne.py \ ../../InterfaceQT4/monWidgetPlusieursInto.py \ + ../../InterfaceQT4/monWidgetPlusieursTuple2.py \ + ../../InterfaceQT4/monWidgetPlusieursTuple3.py \ + ../../InterfaceQT4/monWidgetPlusieursTuple.py \ ../../InterfaceQT4/monWidgetRadioButton.py \ ../../InterfaceQT4/monWidgetSDCOInto.py \ ../../InterfaceQT4/monWidgetSimpBase.py \ @@ -204,41 +209,47 @@ SOURCES = ../../convert/autre_parseur.py \ ../../Validation/V_PROC_ETAPE.py \ ../../Validation/V_UN_PARMI.py -FORMS= ../../UiQT4/desBaseWidget.ui \ - ../../UiQT4/desChoixCata.ui \ - ../../UiQT4/desChoixCommandes.ui \ - ../../UiQT4/desRecherche.ui \ - ../../UiQT4/desSelectVal.ui \ - ../../UiQT4/desViewTexte.ui \ - ../../UiQT4/desWidget4a6RadioButton.ui \ - ../../UiQT4/desWidgetBloc.ui \ - ../../UiQT4/desWidgetCB.ui \ - ../../UiQT4/desWidgetCommande.ui \ - ../../UiQT4/desWidgetCommentaire.ui \ - ../../UiQT4/desWidgetCreeParam.ui \ - ../../UiQT4/desWidgetDate.ui \ - ../../UiQT4/desWidgetFactPlie.ui \ - ../../UiQT4/desWidgetFact.ui \ - ../../UiQT4/desWidgetHeure.ui \ - ../../UiQT4/desWidgetInformation.ui \ - ../../UiQT4/desWidgetMatrice.ui \ - ../../UiQT4/desWidgetOptionnel.ui \ - ../../UiQT4/desWidgetParam.ui \ - ../../UiQT4/desWidgetPlusieursBase.ui \ - ../../UiQT4/desWidgetPlusieursIntoOrdonne.ui \ - ../../UiQT4/desWidgetPlusieursInto.ui \ - ../../UiQT4/desWidgetRadioButton.ui \ - ../../UiQT4/desWidgetSDCOInto.ui \ - ../../UiQT4/desWidgetSimpBase.ui \ - ../../UiQT4/desWidgetSimpBool.ui \ - ../../UiQT4/desWidgetSimpComplexe.ui \ - ../../UiQT4/desWidgetSimpFichier.ui \ - ../../UiQT4/desWidgetSimpTxt.ui \ - ../../UiQT4/desWidgetTuple2.ui \ - ../../UiQT4/desWidgetTuple3.ui \ - ../../UiQT4/desWidgetUniqueSDCO.ui \ - ../../UiQT4/desWidgetVide.ui \ - ../../UiQT4/desVisu.ui \ - ../../UiQT4/myMain.ui +FORMS= \ + ../../UiQT4/myMain.ui \ + ../../UiQT4/desBaseWidget.ui \ + ../../UiQT4/desChoixCata.ui \ + ../../UiQT4/desChoixCode.ui \ + ../../UiQT4/desChoixCommandes.ui \ + ../../UiQT4/desRecherche.ui \ + ../../UiQT4/desSelectVal.ui \ + ../../UiQT4/desViewTexte.ui \ + ../../UiQT4/desVisu.ui \ + ../../UiQT4/desWidgetCreeParam.ui \ + ../../UiQT4/desWidgetCommande.ui \ + ../../UiQT4/desWidgetOptionnel.ui \ + ../../UiQT4/Tuple2.ui \ + ../../UiQT4/Tuple3.ui \ + ../../UiQT4/desWidgetBloc.ui \ + ../../UiQT4/desWidgetCB.ui \ + ../../UiQT4/desWidgetCommentaire.ui \ + ../../UiQT4/desWidgetDate.ui \ + ../../UiQT4/desWidgetFact.ui \ + ../../UiQT4/desWidgetFactPlie.ui \ + ../../UiQT4/desWidgetHeure.ui \ + ../../UiQT4/desWidgetInformation.ui \ + ../../UiQT4/desWidgetMatrice.ui \ + ../../UiQT4/desWidgetParam.ui \ + ../../UiQT4/desWidgetPlusieursBase.ui \ + ../../UiQT4/desWidgetPlusieursInto.ui \ + ../../UiQT4/desWidgetPlusieursIntoOrdonne.ui \ + ../../UiQT4/desWidgetPlusieursTuple.ui \ + ../../UiQT4/desWidgetRadioButton.ui \ + ../../UiQT4/desWidget4a6RadioButton.ui \ + ../../UiQT4/desWidgetSDCOInto.ui \ + ../../UiQT4/desWidgetSimpBase.ui \ + ../../UiQT4/desWidgetSimpBool.ui \ + ../../UiQT4/desWidgetSimpComplexe.ui \ + ../../UiQT4/desWidgetSimpFichier.ui \ + ../../UiQT4/desWidgetSimpTxt.ui \ + ../../UiQT4/desWidgetTuple2.ui \ + ../../UiQT4/desWidgetTuple3.ui \ + ../../UiQT4/desWidgetUniqueSDCO.ui \ + ../../UiQT4/desWidgetVide.ui \ + ../../UiQT4/myMain.ui TRANSLATIONS = ../../UiQT4/eficas_fr.ts ../../UiQT4/eficas_en.ts diff --git a/Extensions/CreeTraductions/pourValidation.py b/Extensions/CreeTraductions/pourValidation.py new file mode 100644 index 00000000..c0a80678 --- /dev/null +++ b/Extensions/CreeTraductions/pourValidation.py @@ -0,0 +1,4 @@ +print tr("Mot-clé : %s obligatoire non valorisé") +print tr("None n'est pas ujjjjjjjjjne valeur autorisée") +print tr("Mot-cle simple : ") +print tr("Fin Mot-clé simple : ") diff --git a/InterfaceQT4/compofact.py b/InterfaceQT4/compofact.py index ad38ea5b..c34e700b 100644 --- a/InterfaceQT4/compofact.py +++ b/InterfaceQT4/compofact.py @@ -133,15 +133,15 @@ class FACTTreeItem(Objecttreeitem.ObjectTreeItem): """ itemobject=item.getObject() if itemobject.isoblig() : - self.appli.affiche_infos(tr('Impossible de supprimer un mot-cle obligatoire '),Qt.red) + self.editor.affiche_infos(tr('Impossible de supprimer un mot-cle obligatoire '),Qt.red) return 0 if self.object.suppentite(itemobject): message = tr("Mot-cle %s supprime")+ unicode(itemobject.nom) - self.appli.affiche_infos(message) + self.editor.affiche_commentaire(message) return 1 else: - self.appli.affiche_infos(tr('Pb interne : impossible de supprimer ce mot-cle'),Qt.red) + self.editor.affiche_infos(tr('Pb interne : impossible de supprimer ce mot-cle'),Qt.red) return 0 import Accas diff --git a/InterfaceQT4/compojdc.py b/InterfaceQT4/compojdc.py index 9df62376..3791bc78 100644 --- a/InterfaceQT4/compojdc.py +++ b/InterfaceQT4/compojdc.py @@ -94,10 +94,10 @@ class JDCTreeItem(Objecttreeitem.ObjectTreeItem): message = tr("Commentaire supprime") else : message = tr("Commande %s supprimee",itemobject.nom) - self.appli.affiche_infos(message) + self.editor.affiche_commentaire(message) return 1 else: - self.appli.affiche_infos(tr("Pb interne : impossible de supprimer cet objet"),Qt.red) + self.editor.affiche_infos(tr("Pb interne : impossible de supprimer cet objet"),Qt.red) return 0 def GetSubList(self): diff --git a/InterfaceQT4/compomclist.py b/InterfaceQT4/compomclist.py index 55666f9b..d273cee5 100644 --- a/InterfaceQT4/compomclist.py +++ b/InterfaceQT4/compomclist.py @@ -228,10 +228,10 @@ class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem): if self.object.suppentite(obj): if len(self._object) == 1: self.updateDelegate() message = "Mot-clef " + obj.nom + " supprime" - self.appli.affiche_infos(message) + self.editor.affiche_commentaire(message) return 1 else: - self.appli.affiche_infos(tr('Impossible de supprimer ce mot-clef'),Qt.red) + self.editor.affiche_infos(tr('Impossible de supprimer ce mot-clef'),Qt.red) return 0 diff --git a/InterfaceQT4/compooper.py b/InterfaceQT4/compooper.py index 595843c1..a65f566d 100644 --- a/InterfaceQT4/compooper.py +++ b/InterfaceQT4/compooper.py @@ -51,7 +51,7 @@ class Node(browser.JDCNode, typeNode.PopUpMenuNode): old=self.item.GetText() self.monWidgetNom.setText(old) else : - self.editor.affiche_infos(tr("Nommage du concept effectue")) + self.editor.affiche_commentaire(tr("Nommage du concept effectue")) self.onValid() try : self.editor.panel.LENomConcept.setText(nom) @@ -204,14 +204,14 @@ class EtapeTreeItem(Objecttreeitem.ObjectTreeItem): # item.getObject() = MCSIMP, MCFACT, MCBLOC ou MCList itemobject=item.getObject() if itemobject.isoblig() : - self.appli.affiche_infos(tr('Impossible de supprimer un mot-clef obligatoire '),Qt.red) + self.editor.affiche_infos(tr('Impossible de supprimer un mot-clef obligatoire '),Qt.red) return 0 if self.object.suppentite(itemobject): message = tr("Mot-clef %s supprime " , itemobject.nom) - self.appli.affiche_infos(message) + self.editor.affiche_commentaire(message) return 1 else : - self.appli.affiche_infos(tr('Pb interne : impossible de supprimer ce mot-clef'),Qt.red) + self.editor.affiche_commentaire(tr('Pb interne : impossible de supprimer ce mot-clef'),Qt.red) return 0 def GetText(self): diff --git a/InterfaceQT4/editor.py b/InterfaceQT4/editor.py index 136b8604..ff250857 100755 --- a/InterfaceQT4/editor.py +++ b/InterfaceQT4/editor.py @@ -55,10 +55,9 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget): 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.widgetOptionnel=None self.fenetreCentraleAffichee=None self.dejaDansPlieTout=False self.afficheCommandesPliees = True @@ -484,6 +483,11 @@ class JDCEditor(Ui_baseWidget,QtGui.QWidget): # appele par I_MACRO_ETAPE QMessageBox.information( self, titre, message) + #-----------------------------------# + def affiche_commentaire(self,message): + #-----------------------------------# + self.labelCommentaire.setText(message) + #-------------------# def init_modif(self): #-------------------# diff --git a/InterfaceQT4/feuille.py b/InterfaceQT4/feuille.py index 8eef0582..0e1b0343 100644 --- a/InterfaceQT4/feuille.py +++ b/InterfaceQT4/feuille.py @@ -182,7 +182,7 @@ class Feuille(QWidget,ContientIcones,SaisieValeur,FacultatifOuOptionnel): def traiteClicSurLabel(self,texte): #print self.aide aide=self.aide+"\n"+self.aideALaSaisie() - self.editor.affiche_infos(aide) + self.editor.affiche_commentaire(aide) def formate(self,t): if t.find('_')==0 : diff --git a/InterfaceQT4/gereIcones.py b/InterfaceQT4/gereIcones.py index a0053c90..2cad9b67 100644 --- a/InterfaceQT4/gereIcones.py +++ b/InterfaceQT4/gereIcones.py @@ -200,7 +200,7 @@ class ContientIcones: ulfile = os.path.abspath(unicode(fichier)) self.appliEficas.CONFIGURATION.savedir=os.path.split(ulfile)[0] self.lineEditVal.setText(fichier) - self.editor.affiche_infos(tr("Fichier selectionne")) + self.editor.affiche_commentaire(tr("Fichier selectionne")) self.LEValeurPressed() if (QFileInfo(fichier).suffix() in listeSuffixe ): self.image=fichier @@ -234,7 +234,7 @@ class ContientIcones: def BSalomePressed(self): - self.editor.affiche_infos(QString("")) + self.editor.affiche_commentaire(QString("")) selection=[] commentaire="" genea=self.node.item.get_genealogie() @@ -283,7 +283,7 @@ class ContientIcones: if valeur : ok, msgError = self.appliEficas.displayShape(valeur) if not ok: - self.appliEficas.affiche_infos(msgError,Qt.red) + self.editor.affiche_infos(msgError,Qt.red) def BParametresPressed(self): liste=self.node.item.get_liste_param_possible() diff --git a/InterfaceQT4/gereListe.py b/InterfaceQT4/gereListe.py index 4383448f..b86bf1b9 100644 --- a/InterfaceQT4/gereListe.py +++ b/InterfaceQT4/gereListe.py @@ -157,7 +157,7 @@ class GereListe: def plusPushed(self): if self.indexDernierLabel == self.monSimpDef.max: - self.editor.affiche_infos('nb max de valeurs : '+str(self.monSimpDef.max)+' atteint') + self.editor.affiche_infos('nb max de valeurs : '+str(self.monSimpDef.max)+' atteint',Qt.red) return self.ajoutLineEdit() self.descendLesLignes() diff --git a/InterfaceQT4/monChoixCommande.py b/InterfaceQT4/monChoixCommande.py index a6ac039f..08a280de 100644 --- a/InterfaceQT4/monChoixCommande.py +++ b/InterfaceQT4/monChoixCommande.py @@ -59,6 +59,7 @@ class MonChoixCommande(Ui_ChoixCommandes,QtGui.QWidget): self.editor.labelCommentaire.setText("") + if self.editor.widgetOptionnel!= None : self.editor.widgetOptionnel.close() self.name=None self.connect(self.LEFiltre,SIGNAL("returnPressed()"),self.AjouteRadioButton) @@ -77,6 +78,7 @@ class MonChoixCommande(Ui_ChoixCommandes,QtGui.QWidget): self.affiche_ordre==1; self.RBOrdre.setChecked(True); self.afficheOrdre() + if self.editor.code == "Adao" : self.frameAffichage.close() def afficheAlpha(self): self.affiche_alpha=1 diff --git a/InterfaceQT4/monWidgetCommande.py b/InterfaceQT4/monWidgetCommande.py index cc00c7bc..2a9f3bd1 100644 --- a/InterfaceQT4/monWidgetCommande.py +++ b/InterfaceQT4/monWidgetCommande.py @@ -78,7 +78,8 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): self.RBPoubelle.close() # JDC Fige return # Pas de MC Optionnels pour Carmel from monWidgetOptionnel import MonWidgetOptionnel - if hasattr(self.editor,'widgetOptionnel') : + #if hasattr(self.editor,'widgetOptionnel') : + if self.editor.widgetOptionnel!= None : self.monOptionnel=self.editor.widgetOptionnel else : self.monOptionnel=MonWidgetOptionnel(self) @@ -154,7 +155,7 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): nom = string.strip(nom) if nom == '' : return # si pas de nom, on ressort sans rien faire test,mess = self.node.item.nomme_sd(nom) - self.editor.affiche_infos(mess) + self.editor.affiche_commentaire(mess) #Notation scientifique if test : @@ -166,6 +167,8 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): # N a pas de parentQt. doit donc etre redefini liste=self.ajouteMCOptionnelDesBlocs() #print "dans afficheOptionnel", self.monOptionnel + # dans le cas ou l insertion n a pas eu leiu (souci d ordre par exemple) + #if self.monOptionnel == None : return self.monOptionnel.parentMC=self self.monOptionnel.affiche(liste) @@ -210,7 +213,7 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): self.editor.fenetreCentraleAffichee.scrollAreaCommandes.ensureWidgetVisible(self.f) def afficheCatalogue(self): - if self.editor.code != "CARMELCND" : self.monOptionnel.hide() + if self.editor.widgetOptionnel != None : self.monOptionnel.hide() self.racine.affichePanneau() if self.node : self.node.select() else : self.racine.select() diff --git a/InterfaceQT4/qtEficas.py b/InterfaceQT4/qtEficas.py index 160f5921..fdbb5043 100644 --- a/InterfaceQT4/qtEficas.py +++ b/InterfaceQT4/qtEficas.py @@ -82,7 +82,12 @@ class Appli(Ui_Eficas,QMainWindow): eficas_root_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) self.viewmanager = MyTabview(self) - self.recentMenu=self.menuFichier.addMenu(tr('&Recents')) + #self.recentMenu=self.menuFichier.addMenu(tr('&Recents')) + self.recentMenu=QMenu(tr('&Recents')) + #self.menuFichier.insertMenu(self.actionOuvrir,self.recentMenu) + # actionARemplacer ne sert que pour l insert Menu + self.menuFichier.insertMenu(self.actionARemplacer ,self.recentMenu) + self.menuFichier.removeAction(self.actionARemplacer) self.connecterSignaux() self.toolBar.addSeparator() if self.code != None : self.construitMenu() @@ -192,6 +197,20 @@ class Appli(Ui_Eficas,QMainWindow): self.actionCopier.setEnabled(False) self.actionSupprimer.setEnabled(False) + def enleverActionsStructures(self): + self.toolBar.removeAction(self.actionCopier) + self.toolBar.removeAction(self.actionColler) + self.toolBar.removeAction(self.actionCouper) + self.menuEdition.removeAction(self.actionCouper) + self.menuEdition.removeAction(self.actionCopier) + self.menuEdition.removeAction(self.actionColler) + + + def enleverParametres(self): + self.toolBar.removeAction(self.actionParametres) + self.menuJdC.removeAction(self.actionParametres) + + def enleverNewInclude(self): self.actionNouvel_Include.setVisible(False) @@ -208,7 +227,7 @@ class Appli(Ui_Eficas,QMainWindow): self.menuOptions.setTitle(tr("Options")) def ADAO(self): - self.griserActionsStructures() + self.enleverActionsStructures() self.enleverNewInclude() self.enleverRechercherDsCatalogue() @@ -251,8 +270,16 @@ class Appli(Ui_Eficas,QMainWindow): self.menuOptions.setTitle(tr("Options")) def PSEN(self): + self.enleverActionsStructures() + self.enleverParametres() + self.enleverRechercherDsCatalogue() + self.enleverNewInclude() self.ajoutExecution() + def TELEMAC(self): + self.enleverActionsStructures() + self.enleverNewInclude() + def ChercheGrpMesh(self): Msg,listeGroup=self.ChercheGrpMeshInSalome() if Msg == None : @@ -286,7 +313,7 @@ class Appli(Ui_Eficas,QMainWindow): icon = QIcon(self.repIcon+"/New24.png") self.action_Nouveau.setIcon(icon) icon1 = QIcon(self.repIcon+"/Open24.png") - self.action_Ouvrir.setIcon(icon1) + self.actionOuvrir.setIcon(icon1) icon2 = QIcon(self.repIcon+"/Save24.png") self.actionEnregistrer.setIcon(icon2) icon3 = QIcon(self.repIcon+"/Cut24.png") @@ -305,7 +332,7 @@ class Appli(Ui_Eficas,QMainWindow): self.connect(self.action_Nouveau,SIGNAL("triggered()"),self.fileNew) self.connect(self.actionNouvel_Include,SIGNAL("triggered()"),self.NewInclude) - self.connect(self.action_Ouvrir,SIGNAL("triggered()"),self.fileOpen) + self.connect(self.actionOuvrir,SIGNAL("triggered()"),self.fileOpen) self.connect(self.actionEnregistrer,SIGNAL("triggered()"),self.fileSave) self.connect(self.actionEnregistrer_sous,SIGNAL("triggered()"),self.fileSaveAs) self.connect(self.actionFermer,SIGNAL("triggered()"),self.fileClose) diff --git a/InterfaceQT4/qtSaisie.py b/InterfaceQT4/qtSaisie.py index 4e14da60..c00b72c8 100644 --- a/InterfaceQT4/qtSaisie.py +++ b/InterfaceQT4/qtSaisie.py @@ -48,7 +48,7 @@ class SaisieValeur: # self.editor.affiche_infos(commentaire) #self.Commentaire.setText(QString(commentaire)) if validite : - self.editor.affiche_infos(commentaire) + self.editor.affiche_commentaire(commentaire) else : self.editor.affiche_infos(commentaire,Qt.red) self.setValide() diff --git a/PSEN_Eficas/ExtractGeneratorLoadLineandTransfoDico.py b/PSEN_Eficas/ExtractGeneratorLoadLineandTransfoDico.py new file mode 100755 index 00000000..ea220de6 --- /dev/null +++ b/PSEN_Eficas/ExtractGeneratorLoadLineandTransfoDico.py @@ -0,0 +1,167 @@ +#NetworkFile = r"C:\Users\J15773\Documents\GTDosier\PSENdocs\Victoria ALL - EFICAS PSEN\Data\2030Conv_HFP2.sav" +#PSSE_PATH = "C:/Program Files/PTI/PSSE33/PSSBIN" #emplacement de PSSE + +def ExtractGeneratorLoadLineandTransfoDico(NetworkFile,PSSE_PATH): + + import os + import sys + + print NetworkFile + print PSSE_PATH + sys.path.append(PSSE_PATH) + os.environ['PATH'] += ';' + PSSE_PATH + ';' + + import psspy + import redirect + + ###initialization PSSE + psspy.psseinit(10000) + _i=psspy.getdefaultint() + _f=psspy.getdefaultreal() + _s=psspy.getdefaultchar() + redirect.psse2py() + + # Silent execution of PSSe + islct=6 # 6=no output; 1=standard + psspy.progress_output(islct) + + #open Network File + psspy.case(NetworkFile) + + #Extract Loads + sid = -1 #all buses + flag = 1 #all in service loads/generators (4 all loads/generators) + + + string = ['NUMBER'] + ierr,iarray = psspy.aloadint(sid,flag,string) + + string = ['NAME','ID','EXNAME'] + ierr,carray = psspy.aloadchar(sid,flag,string) + + LoadDico = {} # [Bus name, load ID, extended bus name, bus number] + for i in range(len(iarray[0])): + idname = "Lo" + str(int(carray[1][i])) + loadname = carray[0][i].strip()+ "__" + idname + loadname = loadname.replace(" ","_") + loadname = loadname.replace(".","_") + loadname = loadname.replace("&","and") + try: + int(loadname[0]) + loadname="_" + loadname + except: + pass + LoadDico[loadname]= {} + LoadDico[loadname]['BusName'] = carray[0][i].strip() + LoadDico[loadname]['ID'] = carray[1][i] + LoadDico[loadname]['BusExName'] =carray[2][i] + LoadDico[loadname]['BusNum']=iarray[0][i] + + #Extract Generators + sid = -1 #all buses + flag = 1 #all in service loads/generators (4 all loads/generators) + + string = ['NUMBER'] + ierr,iarray = psspy.amachint(sid,flag,string) + + string = ['NAME','ID','EXNAME'] + ierr,carray = psspy.amachchar(sid,flag,string) + + MachineDico = {} # [Bus name, machine ID, extended bus name, bus number] + for i in range(len(iarray[0])): + idname = "Gr" + str(int(carray[1][i])) + machinename = carray[0][i].strip()+ "__" + idname + machinename = machinename.replace(" ","_") + machinename = machinename.replace(".","_") + machinename = machinename.replace("&","and") + try: + int(machinename[0]) + machinename="_" + machinename + except: + pass + MachineDico[machinename]={} + MachineDico[machinename]['NAME'] = carray[0][i].strip() + MachineDico[machinename]['ID'] = carray[1][i] + MachineDico[machinename]['EXNAME'] =carray[2][i] + MachineDico[machinename]['NUMBER']=iarray[0][i] + + #Extract Lignes + sid = -1 + owner = 1 + ties = 1 + flag = 2 #6 for two-winding transfos + entry = 1 #each branch once, not both directions + string = ['FROMNUMBER','TONUMBER'] + ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string) + string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] + ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string) + + LineDico = {} #[linename, Bus name 1, Bus name 2, ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] + for i in range(len(iarray[0])): + idname = carray[4][i] + if '@' in idname: + idname = idname.replace('@','Br') + else: + idname = 'Li' + str(int(idname)) + linename =carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname + linename = linename.replace(" ","_") + linename = linename.replace(".","_") + linename = linename.replace("&","and") + try: + int(linename[0]) + linename="_" + linename + except: + pass + LineDico[linename]={} + LineDico[linename]['FROMNAME']=carray[0][i].strip() + LineDico[linename]['TONAME']=carray[1][i].strip() + LineDico[linename]['ID']=carray[4][i] + LineDico[linename]['FROMEXNAME']=carray[2][i] + LineDico[linename]['TOEXNAME']=carray[3][i] + LineDico[linename]['FROMNUMBER']=iarray[0][i] + LineDico[linename]['TONUMBER']=iarray[1][i] + + #Extract Transfos + sid = -1 + owner = 1 + ties = 1 + flag = 6 #two-winding transfos + entry = 1 #each branch once, not both directions + string = ['FROMNUMBER','TONUMBER'] + ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string) + string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID'] + ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string) + + TfoDico = {} #[linename, Bus name 1, Bus name 2, machine ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2] + for i in range(len(iarray[0])): + idname = 'Tr' + str(int(carray[4][i])) + tfoname = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname + tfoname = tfoname.replace(" ","_") + tfoname = tfoname.replace(".","_") + tfoname = tfoname.replace("&","and") + try: + int(tfoname[0]) + tfoname="_" + tfoname + except: + pass + TfoDico[tfoname]={} + TfoDico[tfoname]['FROMNAME']=carray[0][i].strip() + TfoDico[tfoname]['TONAME']=carray[1][i].strip() + TfoDico[tfoname]['ID']=carray[4][i] + TfoDico[tfoname]['FROMEXNAME']=carray[2][i] + TfoDico[tfoname]['TOEXNAME']=carray[3][i] + TfoDico[tfoname]['FROMNUMBER']=iarray[0][i] + TfoDico[tfoname]['TONUMBER']=iarray[1][i] + + return MachineDico, LoadDico, LineDico, TfoDico + + +#MachineDico, LoadDico, LineDico, TfoDico = ExtractGeneratorLoadLineandTransfoDico(NetworkFile,PSSE_PATH) + + +def ExtractGeneratorLoadLineandTransfoDico2(NetworkFile,PSSE_PATH): + MachineDico={'M1':'M1','M2':'M2','M3':'M3','M4':'M4','B6_BUS13__1':'AZ','CSPRING__1':'DD','GT12B__1':'ER','BSTMB__1':'JJ'} + LoadDico={'C1':'C1','C2':'C2','C3':'C3','C4':'C4'} + LineDico={'L1':'L1','L2':'L2','L3':'L3','L4':'L4'} + TfoDico={'T1':'T1','T2':'T2','T3':'T3','T4':'T4'} + return MachineDico, LoadDico, LineDico, TfoDico diff --git a/UiQT4/desBaseWidget.ui b/UiQT4/desBaseWidget.ui index b9aabfd4..49e74693 100644 --- a/UiQT4/desBaseWidget.ui +++ b/UiQT4/desBaseWidget.ui @@ -76,7 +76,7 @@ - background-color : rgb(248,247,246) + diff --git a/UiQT4/desChoixCommandes.ui b/UiQT4/desChoixCommandes.ui index 85802d5e..6b1f1df2 100644 --- a/UiQT4/desChoixCommandes.ui +++ b/UiQT4/desChoixCommandes.ui @@ -36,7 +36,7 @@ 0 - + 0 diff --git a/UiQT4/desWidgetCommentaire.ui b/UiQT4/desWidgetCommentaire.ui index 3898021e..c6946972 100644 --- a/UiQT4/desWidgetCommentaire.ui +++ b/UiQT4/desWidgetCommentaire.ui @@ -7,7 +7,7 @@ 0 0 1031 - 437 + 177 @@ -33,6 +33,12 @@ font : 'times' 9px + + 0 + + + 0 + @@ -345,11 +351,11 @@ border-radius : 12px 0 - 81 + 0 - background : rgb(247,247,247) + @@ -368,27 +374,57 @@ border-radius : 12px 0 0 - 1013 - 346 + 1031 + 110 + + 0 + + + 0 + - - - 6 + + + + 0 + 0 + - - - - background:rgb(240, 240, 240) - - - QFrame::NoFrame - - - - + + + 0 + 43 + + + + + 16777215 + 43 + + + + background : rgb(247,247,247) + + + false + + + + + + + Qt::Vertical + + + + 20 + 32 + + + diff --git a/UiQT4/desWidgetPlusieursTuple.ui b/UiQT4/desWidgetPlusieursTuple.ui index 1b75a651..90247554 100644 --- a/UiQT4/desWidgetPlusieursTuple.ui +++ b/UiQT4/desWidgetPlusieursTuple.ui @@ -162,6 +162,12 @@ QFrame::NoFrame + + 0 + + + 0 + @@ -190,7 +196,7 @@ 0 0 - 535 + 553 220 diff --git a/UiQT4/eficas_en.ts b/UiQT4/eficas_en.ts index 3c73cca0..c57e2912 100644 --- a/UiQT4/eficas_en.ts +++ b/UiQT4/eficas_en.ts @@ -484,32 +484,32 @@ ask eficas team impossible to return a value of type : %s - + Impossible d'ajouter la commande unable to add the keyword (commande) - + Impossible d ajouter la commande unable to add the keyword (commande) - + Pas implemente not implemented - + Nom de concept deja defini already defined concept - + Nom de concept deja defini : already defined concept : - + Impossible de trouver le fichier correspondant a l'unite unable to find file corresponding to unit @@ -534,7 +534,7 @@ ask eficas team Error when reading the 'include' file - + Ce fichier ne sera pas pris en compte %s the file is ignored @@ -581,7 +581,7 @@ Le fichier associe n'est pas defini - + Erreur lors de l'evaluation du fichier poursuite Error when creating secondary (poursuite) file @@ -617,22 +617,22 @@ Le fichier associe n'est pas defini Object %s cannot be add - + None n'est pas une valeur autorisee None is not a valid value - + un concept de meme nom existe deja concept already exists - + Concept cree concept created - + La matrice n'est pas une matrice %(n_lign)d sur %(n_col)d n_lign matrix is not a %(n_lign)d x %(n_col)d matrix @@ -678,19 +678,19 @@ Le fichier associe n'est pas defini internal problem : unable to delete object - + Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas unable to convert .comm file in order to open it with Eficas - + Include vide include file is empty - + L'include doit etre correctement initialise pour etre visualise include file must be correct @@ -735,107 +735,107 @@ Le fichier associe n'est pas defini defines a parameter - + Import du fichier de Configuration import configuration file - + Erreur a la lecture du fichier de configuration %s Error when reading configuration file - + Erreur fatale au chargement de %s fatal error when loading %s - + Erreur fatale au chargement d'un fichier Fatal error when loading file - + fichier modifie file updated - + Attention! fichier change hors EFICAS Warning ! this file was modified outside Eficas - + Type de fichier non reconnu unsupported file type - + EFICAS ne sait pas ouvrir le type de fichier %s Eficas is not able to open this file's type : %s - + EFICAS ne sait pas ouvrir ce type de fichier Eficas is not able to open this file's type - + Copie impossible unable to copy - + Veuillez selectionner un objet a copier you have to select an object to copy - + Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne You have to select a single object : copy will be done after the selected node - + Aucun Objet n a ete copie ou coupe No object was cut or copied - + Copie refusee rejected copy - + Eficas n a pas reussi a copier l objet Eficas cannot copy this object - + Copie refusee pour ce type d objet Copy rejected : bad object type - + Deplacement refuse move rejected - + Deplacement refuse entre 2 fichiers. Seule la copie est autorisee move rejected. no move between two files : only copy is available - + Copie impossible a cet endroit unable to copy here - + Veuillez selectionner une commande, un parametre, un commentaire ou une macro select a command; a parameter, a comment or a macro - + Choix d'un fichier XML Choice of XML file @@ -845,67 +845,67 @@ Le fichier associe n'est pas defini Open file - + Erreur a la generation Error when generating - + EFICAS ne sait pas convertir ce JDC Eficas is unable to convert JDC - + Format %s non reconnu not supported format %s - + Execution impossible Unable to execute - + le JDC doit etre valide pour une execution MAP JDC has to be valid before run - + le JDC doit contenir un et un seul composant JDC must contains a single componant - + sauvegarde save - + Sauvegarde du Fichier save file - + Le fichier <b>%s</b> existe deja. file <b>%s</b> already exists. - + &Ecraser &Replace - + Donnez le nom du fichier correspondant a l unite logique Choose file corresponding to unit - + Choix d'un fichier de poursuite Choose poursuite file - + Le fichier %s contient une commande POURSUITE file %s contains a POURSUITE command @@ -938,32 +938,32 @@ Le fichier associe n'est pas defini %d catalogs versions are available - + &Ok &Ok - + Entrez enter - + valeurs values - + Entrez entre enter between - + et and - + Selection selection @@ -998,27 +998,27 @@ Le fichier associe n'est pas defini directory expected - + Type de base inconnu unkown type - + Visualisation Fichier view file - + Impossibilite d'afficher le Fichier Unable to display file - + Sauvegarder Fichier save File - + Fichier selectionne file selected @@ -1061,7 +1061,7 @@ Le fichier associe n'est pas defini &Recents - &Recently open + &Recently Opened @@ -1109,7 +1109,7 @@ Le fichier associe n'est pas defini version - + pour for @@ -1159,7 +1159,7 @@ Le fichier associe n'est pas defini No catalog - + avec le catalogue with catalog @@ -1169,17 +1169,17 @@ Le fichier associe n'est pas defini unable to load catalog - + Choix d une version du code Choose a version for - + Choix d une version choose a version - + Parametre parameter @@ -1189,102 +1189,102 @@ Le fichier associe n'est pas defini insert a parameter - + item invalide invalid item - + l item doit etre valide item must be valid - + apres after - + Insere un commentaire apres la commande insert a comment after the command - + avant before - + Insere un commentaire avant la commande insert a comment before the command - + Insere un parametre apres la commande insert a parameter after the command - + Insere un parametre avant la commande insert a parameter before the commande - + Supprimer delete - + supprime le mot clef delete keyword - + Documentation documentation - + documentation sur la commande command's documentation - + Documentation Vide empty documentation - + Aucune documentation n'est associee a ce noeud no documentation is available for this node - + impossible de trouver la commande unable to find command - + Lecteur PDF PDF reader - + impossible d'ouvrir unable to open - + Commentaire Comment - + ce noeud this node - + commente le noeud comment this node @@ -1387,7 +1387,7 @@ Le fichier associe n'est pas defini - + n'est pas un index valide pour append_brother is not correct - no possible "append_brother" @@ -1402,23 +1402,23 @@ Le fichier associe n'est pas defini unable to display law's PDF. - + Le fichier contient une commande MODEL file contains MODEL command - + Donnez le nom du fichier XML qui contient la description des variables - + Choix unite %d Choice for unit %d - + Fichier pour unite File for unit @@ -1469,7 +1469,7 @@ Le fichier associe n'est pas defini internal problem : unable to delete keyword - + Eficas ne peut pas traiter plusieurs instructions sur la meme ligne : %s Eficas is not able to manage many instructions on a same line @@ -1585,99 +1585,99 @@ Le fichier associe n'est pas defini PARAMETER - + EFICAS ne sait pas convertir le JDC selon le format Eficas does not know how to convert data according to the defined format - + le JDC doit etre valide pour une execution Before a run action, JDC must be valid - + Sauvegarder SVP avant l'execution Save before run action - + Sauvegarde de l'input impossible unable to save input file - + Un JdC valide est necessaire pour creer un .input file must be valid to create a .input file - + Choix du composant obligatoire You have to choose a component - + Le fichier %s contient une commande INCLUDE file %s contains an "INCLUDE" command - + Donnez le nom du fichier dont vous voulez faire une poursuite Name the principal file - + Fichiers Med (*.med);;Tous les Fichiers (*) Med Files (*.med);;All Files(*) - + Fichier Med Med File - + Veuillez selectionner un fichier Med Choose a Med file - + chaine de caracteres string - + reel float - + entier integer - + complexe complex - + Matrice matrix - + fichier file - + fichier existant existing file - + repertoire directory @@ -1687,12 +1687,12 @@ Le fichier associe n'est pas defini Help is not available - + Export Med vers Fichier export Med Mesh in a file - + Impossibilite d exporter le Fichier Unable to export file @@ -1713,12 +1713,12 @@ Le fichier associe n'est pas defini Settings - + Nombre minimal de valeurs : minimal number of values : - + Nombre maximal de valeurs : Maximal number of values : @@ -1738,7 +1738,7 @@ Le fichier associe n'est pas defini Value is not authorized - + Accquisition Groupe Maille acquier mesh groups @@ -1863,12 +1863,12 @@ Le fichier associe n'est pas defini - + Fichier de donnees data file - + Tous les Fichiers (*) all files (*) @@ -1878,27 +1878,27 @@ Le fichier associe n'est pas defini select - + nb min de valeurs : minimal number of values : - + nb max de valeurs atteint maximum number of values - + TraduitV10V11 - + TraduitV11V12 - + Sauve Format Ligne save file in line format @@ -1928,172 +1928,172 @@ Le fichier associe n'est pas defini value %s is not valid. must be in %s - + %s n'est pas une chaine de longueur comprise entre %s et %s %s is not a valid string. length must be betwenn %s and %s - + TXM de longueur entre %s et %s string : length msut be between %s and %s - + valeur %s obligatoire mandatory value %s - + %s ne contient pas les elements obligatoires : %s %s does not contain mandatory elements %s - + %s absent %s mandatory - + %s est un doublon %s contains duplication - + longueur de la chaine entre %s et %s string with a length between %s and %s - + Longueur de la chaine incorrecte incorrect length - + %s n'est pas une chaine % is not a string - + %s n'est pas de la bonne longueur %s has not a valid length - + liste %s list %s - + La liste doit etre en ordre %s list must be ordered %s - + %s n'est pas par valeurs croissantes %s is not increasing - + %s n'est pas par valeurs decroissantes %s in not decreasing - + %s n'est pas du bon type %s has not a valid type - + valeur dans l'intervalle %s , %s value must be in [%s;%s] - + La valeur doit etre comprise entre %s et %s value must be [%s,%s] - + %s doit etre inferieur a %s %s must be < %s - + longueur de liste comprise entre %s et %s list's length must be in [ %s, %s ] - + Le cardinal de la liste doit etre compris entre %s et %s list's length must be in [%s, %s] - + %s devrait etre de longueur inferieure a %s %s must have a length < %s - + %s devrait etre de longueur superieure a %s %s must have a lenght > %s - + %s contient des valeurs non paires - + %s contient des valeurs hors des choix possibles: %s %s contains unvalid values - + valeur %s pour la somme des cles A et B value %s for the sum of keys A and B - + valeur de %s value of %s - + valeur d'instance de %s value of %s - + : verifie les types dans un tuple valids type in a list - + Les types entres ne sont pas permis unvalid type for values - + %s devrait etre de type %s %s should be of %s type - + %s n'est pas dans %s %s in not in %s - + %s ne contient pas les elements devant etre presents ensemble: %s %s does not contains elements which have to be together : %s - + %s n'est pas autorise : %s %s in not valide : %s - + %s devrait etre comprise entre %s et %s %s have to be between %s and %s @@ -2113,12 +2113,12 @@ Le fichier associe n'est pas defini %s (type %s) is not a valid type : %s %s - + La valeur : %s est en dehors du domaine de validite [ %s , %s ] value %s is not included in [%s, %s] - + %s present ensemble %s together @@ -2164,67 +2164,67 @@ Le fichier associe n'est pas defini is not a valid name - + Entrer un float SVP Float expected - + Entrer un float inferieur a float lower than - + Entrer un float superieur a float superior than - + Mauvaise execution bad run - + impossible d executer la methode unable to run method - + Mauvaise Commande bad command - + Aucune variable connue no possible variable - + Mauvaise dimension de matrice bad matrix dimension - + le nombre de ligne n est pas egal a number of lines is not - + le nombre de colonne n est pas egal a number of columns is not - + Mauvaise Valeur bad value - + l element element - + n est pas correct is not correct @@ -2279,6 +2279,74 @@ Le fichier associe n'est pas defini already exists + + + La matrice n'a pas le bon entete + header does not match with matrix + + + + le mot clef + keyword + + + + doit etre insere avant + has to be inserted before + + + + insertion impossible + unable to insert keyword + + + + doit etre insere apres + has to be inserted after + + + + Nb maximum de valeurs atteint + Maximal number of values + + + + Heure sous la forme HH:MM + Time Value expressed under HH:MM + + + + Date sous la forme JJ/MM/AA + date expressed as DD/MM/YY + + + + ChoixCode + + + Choix du code + Choose code + + + + Veuillez choisir un code : + Choose code : + + + + &Cancel + + + + + Validate choice + + + + + &OK + + ChoixCommandes @@ -2288,42 +2356,42 @@ Le fichier associe n'est pas defini DMacro - + Alphabetique alphabetic sort - + Par Groupe Sort by group - + <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> <html><head/><body><p align="center"><span style=" text-decoration: underline;">Order</span></p></body></html> - + affiche les commandes par ordre alphabetique display commands in alphabetic order - + affiche les commandes selon les thèmes display commands by thema - + Ordre de la modélisation - display commands ordered by modelisation + ordered by modelisation - + <html><head/><body><p align="center">Filtre Commande</p></body></html> - filters commands + <html><head/><body><p align="center">Filters Commands</p></body></html> - + filter commands filters commands @@ -2403,7 +2471,7 @@ p, li { white-space: pre-wrap; } Visualisation Include Materiau - + View Include @@ -2683,61 +2751,112 @@ p, li { white-space: pre-wrap; } Save Run Save run + + + Run + run + JDCEditor - + Save File - + The file <b>%1</b> could not be saved.<br>Reason: %2 - + JDC (*.comm);;All Files (*) - + &Abandonner &Cancel - Widget4a6RadioButton + Tuple2 - + Form - - ... + + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - RadioButton + + <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> + + + + + <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> + + + + + Tuple3 + + + Form + + + + + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> + + + + + <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> + + + <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> + + + + + Widget4a6RadioButton Affiche le rapport de validation du mot-clef Display validity report for the keyword + + + Détruit le mot-clef + Delete the keyword + + + + Form + + + + + ... + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - Détruit le mot-clef - Delete the keyword + + + RadioButton + @@ -2750,6 +2869,16 @@ p, li { white-space: pre-wrap; } WidgetCB + + + Affiche le rapport de validation du mot-clef + display validation report for the keyword + + + + Détruit le mot-clef + Delete the keyword + Form @@ -2760,39 +2889,19 @@ p, li { white-space: pre-wrap; } ... - - - Affiche le rapport de validation du mot-clef - display validation report for the keyword - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - Détruit le mot-clef - Delete the keyword - WidgetCommande - - - DCommandeUnique - - Affiche le rapport de validité de la commande Display validity report for the keyword - - - ... - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> @@ -2843,16 +2952,26 @@ p, li { white-space: pre-wrap; } Affiche le formulaire de la commande précédente display previous command - - - << - - Affiche le formulaire de la commande suivante display next command + + + DCommandeUnique + + + + + ... + + + + + << + + >> @@ -2866,20 +2985,10 @@ p, li { white-space: pre-wrap; } WidgetCommentaire - - - DCommandeUnique - - - - - ... - - <html><head/><body><p><span style=" color:#0000ff;">Commentaire</span></p></body></html> - Comment + <html><head/><body><p><span style=" color:#0000ff;">Comment</span></p></body></html> @@ -2906,16 +3015,26 @@ p, li { white-space: pre-wrap; } Affiche le formulaire de la commande précédente display previous command - - - << - - Affiche le formulaire de la commande suivante display next command + + + DCommandeUnique + + + + + ... + + + + + << + + >> @@ -2924,16 +3043,21 @@ p, li { white-space: pre-wrap; } WidgetDate - - - Form - - Affiche le rapport de validation du mot-clef Display validity report for keyword + + + Détruit le mot-clef + Delete the keyword + + + + Form + + ... @@ -2944,11 +3068,6 @@ p, li { white-space: pre-wrap; } <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - Détruit le mot-clef - Delete the keyword - WidgetFact @@ -2970,6 +3089,11 @@ p, li { white-space: pre-wrap; } WidgetFactPlie + + + TextLabel + TextLabel + Form @@ -2980,24 +3104,24 @@ p, li { white-space: pre-wrap; } ... - - - TextLabel - TextLabel - WidgetHeure - - - Form - - Affiche le rapport de validation du mot-clef Display validity report for keyword + + + Détruit le mot-clef + Delete the keyword + + + + Form + + ... @@ -3013,11 +3137,6 @@ p, li { white-space: pre-wrap; } <html><head/><body><p><br/></p></body></html> - - - Détruit le mot-clef - Delete the keyword - WidgetInformative @@ -3029,11 +3148,6 @@ p, li { white-space: pre-wrap; } WidgetOptionnel - - - WidgetOptionnel - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> @@ -3054,19 +3168,14 @@ p, li { white-space: pre-wrap; } Shift+A, Alt+A, Alt+A, Alt+A Shift+A, Alt+A, Alt+A, Alt+A - - - WidgetParam - - DCommandeUnique - - - - - ... + + WidgetOptionnel + + + WidgetParam <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> @@ -3097,21 +3206,11 @@ p, li { white-space: pre-wrap; } Affiche le formulaire de la commande précédente Display previous command - - - << - - Affiche le formulaire de la commande suivante Display next command - - - >> - - <html><head/><body><p>Valeur: </p></body></html> @@ -3128,129 +3227,134 @@ p, li { white-space: pre-wrap; } Valid the value - - <html><head/><body><p><br/></p></body></html> + + DCommandeUnique - - - WidgetPlusieursBase - - Form + + ... - - ... + + << - - Affiche le rapport de validation du mot-clef - Display validity report for keyword + + >> + - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + <html><head/><body><p><br/></p></body></html> + + + WidgetPlusieursBase + + + Affiche le rapport de validation du mot-clef + Display validity report for keyword + - + Remonte la ligne up - + Descend la ligne down - + supprime une ligne deletes a line - + Ajoute une ligne add a line - + Montre l'ensemble des valeurs display all the value - + Sélectionne depuis Salome from salome - + Visualise dans Salome Show in salome - + Ouvre un fichier de sélection des valeurs Open a file for selection - + Détruit le mot-clef Delete the keyword - - - WidgetPlusieursInto - + Form - + ... + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + WidgetPlusieursInto Affiche le rapport de validation du mot-clef Display validity report for the keyword - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - Détruit le mot-clef Delete the keyword - - - WidgetPlusieursIntoOrdonne - + Form - - Affiche le rapport de validation du mot-clef - display validity report for the keyword - - - + ... - + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + WidgetPlusieursIntoOrdonne + + + Affiche le rapport de validation du mot-clef + display validity report for the keyword + TextLabel @@ -3286,62 +3390,120 @@ p, li { white-space: pre-wrap; } Détruit le mot-clef Delete the keyword - - - WidgetRadioButton - + Form - + ... - - RadioButton + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + WidgetPlusieursTuple - + + Form + + + + Affiche le rapport de validation du mot-clef Display validity report for the keyword - + + ... + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + Remonte la ligne + Up + + + + Descend la ligne + Down + + + + supprime une ligne + delete a line + + + + Ajoute une ligne + add a line + + + + Montre l'ensemble des valeurs + show all values + - + + Ouvre un fichier de sélection des valeurs + import data from a file + + + Détruit le mot-clef Delete the keyword - WidgetSDCOInto - - - Form - - + WidgetRadioButton - + Affiche le rapport de validation du mot-clef Display validity report for the keyword + + + Détruit le mot-clef + Delete the keyword + - + + Form + + + + ... - + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + RadioButton + + + + + WidgetSDCOInto + + + Affiche le rapport de validation du mot-clef + Display validity report for the keyword + <html><head/><body><p>Structures de données du type requis </p><p><br/></p></body></html> @@ -3357,85 +3519,90 @@ p, li { white-space: pre-wrap; } Détruit le mot-clef Delete the keyword - - - WidgetSimpBase - + Form - + ... + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + WidgetSimpBase Affiche le rapport de validation du mot-clef Display validity report for the keyword - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - Détruit le mot-clef Delete the keyword - - - WidgetSimpBool - + Form - + ... - - True - - - - - False + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + WidgetSimpBool Affiche le rapport de validation du mot-clef Display validity report for the keyword - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - Détruit le mot-clef Delete the keyword - - - WidgetSimpComplexe - + Form - + ... + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + True + + + + + False + + + + + WidgetSimpComplexe Complexe : a+bj @@ -3456,6 +3623,16 @@ p, li { white-space: pre-wrap; } Affiche le rapport de validation du mot-clef Display validity report for the keyword + + + Form + + + + + ... + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> @@ -3469,72 +3646,82 @@ p, li { white-space: pre-wrap; } WidgetSimpFichier - - - Form - - - - - ... - - Affiche le rapport de validité du mot-clef Display validity report for the keyword - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - affiche l'explorateur de fichier open file explorer - + ouvre le fichier choisi Open the file - + Détruit le mot-clef Delete the keyword - - - WidgetSimpTxt - + Form - + ... + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + WidgetSimpTxt Affiche le rapport de validation du mot-clef Display validity report for the keyword + + + Détruit le mot-clef + Delete the keyword + + + + Form + + + + + ... + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + WidgetTuple2 + + + Affiche le rapport de validation du mot-clef + Display validity report for the keyword + - + Détruit le mot-clef Delete the keyword - - - WidgetTuple2 Form @@ -3545,6 +3732,11 @@ p, li { white-space: pre-wrap; } ... + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> @@ -3560,24 +3752,19 @@ p, li { white-space: pre-wrap; } <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> + + + WidgetTuple3 - + Affiche le rapport de validation du mot-clef Display validity report for the keyword - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - + Détruit le mot-clef Delete the keyword - - - WidgetTuple3 Form @@ -3588,6 +3775,11 @@ p, li { white-space: pre-wrap; } ... + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> @@ -3603,34 +3795,29 @@ p, li { white-space: pre-wrap; } <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> + + + WidgetUniqueSDCO - + Affiche le rapport de validation du mot-clef Display validity report for the keyword - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - + + Attend un objet de type CO + expect a CO Object - + Détruit le mot-clef Delete the keyword - - - WidgetUniqueSDCO Form - - - Affiche le rapport de validation du mot-clef - Display validity report for the keyword - ... @@ -3641,16 +3828,6 @@ p, li { white-space: pre-wrap; } <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - Attend un objet de type CO - expect a CO Object - - - - Détruit le mot-clef - Delete the keyword - WidgetVide @@ -3662,17 +3839,17 @@ p, li { white-space: pre-wrap; } ... - + <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + Attend un objet de type XXXX. Il faut le créer - + object must be created @@ -3750,17 +3927,22 @@ p, li { white-space: pre-wrap; } Dialog - + Affiche le rapport de validation du mot-clef Display validity report for the keyword - + ... + + + <html><head/><body><p>Met à jour l'en-tête</p></body></html> + + - + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> @@ -3768,7 +3950,7 @@ p, li { white-space: pre-wrap; } self.appliEficas - + Wrapper Files (*.xml);;All Files (*) diff --git a/UiQT4/eficas_fr.ts b/UiQT4/eficas_fr.ts index 140c6012..d2e1861e 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 @@ -567,7 +567,7 @@ - + Ce fichier ne sera pas pris en compte %s @@ -611,7 +611,7 @@ Le fichier associe n'est pas defini - + Erreur lors de l'evaluation du fichier poursuite @@ -647,28 +647,28 @@ Le fichier associe n'est pas defini - + None n'est pas une valeur autorisee - + un concept de meme nom existe deja - + Concept cree - + La matrice n'est pas une matrice %(n_lign)d sur %(n_col)d n_lign - + 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 @@ -824,19 +824,19 @@ Le fichier associe n'est pas defini - + Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas - + Include vide - + L'include doit etre correctement initialise pour etre visualise @@ -901,118 +901,118 @@ Le fichier associe n'est pas defini - + Import du fichier de Configuration - + Erreur a la lecture du fichier de configuration %s - + Erreur fatale au chargement de %s - + Erreur fatale au chargement d'un fichier - + fichier modifie - + Attention! fichier change hors EFICAS - + Type de fichier non reconnu - + EFICAS ne sait pas ouvrir le type de fichier %s - + EFICAS ne sait pas ouvrir ce type de fichier - + 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,195 +1022,195 @@ 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 - + chaine de caracteres - + reel - + entier - + complexe - + Matrice - + fichier - + fichier existant - + repertoire - + Entrez - + Entrez entre - + et - + Type de base inconnu @@ -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 @@ -1309,17 +1309,17 @@ Le fichier associe n'est pas defini - + valeurs - + Nombre minimal de valeurs : - + Nombre maximal de valeurs : @@ -1434,7 +1434,7 @@ Le fichier associe n'est pas defini - + Accquisition Groupe Maille @@ -1449,7 +1449,7 @@ Le fichier associe n'est pas defini - + pour @@ -1499,22 +1499,22 @@ Le fichier associe n'est pas defini - + avec le catalogue - + Choix d une version du code - + Choix d une version - + Parametre @@ -1524,107 +1524,107 @@ Le fichier associe n'est pas defini - + item invalide - + l item doit etre valide - + &Ok &Ok - + apres - + Insere un commentaire apres la commande - + avant - + Insere un commentaire avant la commande - + Insere un parametre apres la commande - + Insere un parametre avant la commande - + Supprimer - + supprime le mot clef - + Documentation - + documentation sur la commande - + Documentation Vide - + Aucune documentation n'est associee a ce noeud - + impossible de trouver la commande - + Lecteur PDF - + impossible d'ouvrir - + Commentaire - + ce noeud - + commente le noeud @@ -1819,7 +1819,7 @@ Le fichier associe n'est pas defini - + Sauve Format Ligne @@ -1839,82 +1839,82 @@ Le fichier associe n'est pas defini - + %s n'est pas de la bonne longueur - + valeur dans l'intervalle %s , %s - + La valeur doit etre comprise entre %s et %s - + %s doit etre inferieur a %s - + longueur de liste comprise entre %s et %s - + Le cardinal de la liste doit etre compris entre %s et %s - + %s devrait etre de longueur inferieure a %s - + %s devrait etre de longueur superieure a %s - + %s contient des valeurs non paires - + %s contient des valeurs hors des choix possibles: %s - + Fichier de donnees - + Tous les Fichiers (*) - + nb min de valeurs : - + nb max de valeurs atteint - + TraduitV10V11 - + TraduitV11V12 @@ -1929,117 +1929,117 @@ Le fichier associe n'est pas defini - + %s n'est pas une chaine de longueur comprise entre %s et %s - + TXM de longueur entre %s et %s - + valeur %s obligatoire - + %s ne contient pas les elements obligatoires : %s - + %s absent - + %s est un doublon - + longueur de la chaine entre %s et %s - + Longueur de la chaine incorrecte - + %s n'est pas une chaine - + liste %s - + La liste doit etre en ordre %s - + %s n'est pas par valeurs croissantes - + %s n'est pas par valeurs decroissantes - + %s n'est pas du bon type - + valeur %s pour la somme des cles A et B - + valeur de %s - + valeur d'instance de %s - + %s devrait etre de type %s - + %s n'est pas dans %s - + : verifie les types dans un tuple - + %s ne contient pas les elements devant etre presents ensemble: %s - + %s n'est pas autorise : %s - + %s devrait etre comprise entre %s et %s @@ -2064,12 +2064,12 @@ Le fichier associe n'est pas defini - + La valeur : %s est en dehors du domaine de validite [ %s , %s ] - + %s present ensemble @@ -2098,11 +2098,6 @@ Le fichier associe n'est pas defini valeurs - - - La Creation de parametre n est possible que dans un jeu de données - - Valeur incorrecte @@ -2115,67 +2110,67 @@ Le fichier associe n'est pas defini - + Entrer un float SVP - + Entrer un float inferieur a - + Entrer un float superieur a - + Mauvaise execution - + impossible d executer la methode - + Mauvaise Commande - + Aucune variable connue - + Mauvaise dimension de matrice - + le nombre de ligne n est pas egal a - + le nombre de colonne n est pas egal a - + Mauvaise Valeur - + l element - + n est pas correct @@ -2271,55 +2266,128 @@ Le fichier associe n'est pas defini - + Les types entres ne sont pas permis + + + La matrice n'a pas le bon entete + + + + + le mot clef + + + + + doit etre insere avant + + + + + insertion impossible + + + + + doit etre insere apres + + + + + La Creation de parametre n est possible que dans un jeu de donnees + + + + + Nb maximum de valeurs atteint + + + + + Heure sous la forme HH:MM + + + + + Date sous la forme JJ/MM/AA + + - ChoixCommandes + ChoixCode - - DMacro + + Choix du code - - Alphabetique + + Veuillez choisir un code : - - Par Groupe + + &Cancel + + + + + Validate choice + + + + + &OK + + + + + ChoixCommandes + + + DMacro - + <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 @@ -2340,11 +2408,6 @@ p, li { white-space: pre-wrap; } <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">2 versions sont disponibles</span></p></body></html> - - - &OK - - &Cancel @@ -2355,6 +2418,11 @@ p, li { white-space: pre-wrap; } Validate choice + + + &OK + + DSelVal @@ -2679,45 +2747,86 @@ p, li { white-space: pre-wrap; } Patrons + + + Run + + JDCEditor - + Save File - + The file <b>%1</b> could not be saved.<br>Reason: %2 - + JDC (*.comm);;All Files (*) - + &Abandonner &Abandonner - Widget4a6RadioButton + Tuple2 - + Form - - ... + + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - - RadioButton + + <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> + + + + + <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> + + + + + Tuple3 + + + Form + + + + + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> + + + + + <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> + + + + + <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> + + + + + Widget4a6RadioButton + + + Form @@ -2725,11 +2834,21 @@ p, li { white-space: pre-wrap; } Affiche le rapport de validation du mot-clef + + + ... + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + RadioButton + + Détruit le mot-clef @@ -2752,13 +2871,13 @@ p, li { white-space: pre-wrap; } - - ... + + Affiche le rapport de validation du mot-clef - - Affiche le rapport de validation du mot-clef + + ... @@ -2834,11 +2953,21 @@ p, li { white-space: pre-wrap; } Shift+A, Alt+A, Alt+A, Alt+A + + + Affiche le formulaire de la commande précédente + + << + + + Affiche le formulaire de la commande suivante + + >> @@ -2849,16 +2978,6 @@ p, li { white-space: pre-wrap; } TextLabel - - - Affiche le formulaire de la commande précédente - - - - - Affiche le formulaire de la commande suivante - - WidgetCommentaire @@ -2877,24 +2996,24 @@ 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 - - Shift+A, Alt+A, Alt+A, Alt+A - - - - - Détruit le commentaire + + &Commandes - - &Commandes + + Shift+A, Alt+A, Alt+A, Alt+A @@ -3137,13 +3256,13 @@ p, li { white-space: pre-wrap; } - - ... + + Affiche le rapport de validation du mot-clef - - Affiche le rapport de validation du mot-clef + + ... @@ -3152,47 +3271,47 @@ p, li { white-space: pre-wrap; } - + Remonte la ligne - + Descend la ligne - + supprime une ligne - + Ajoute une ligne - + Montre l'ensemble des valeurs - + Sélectionne depuis Salome - + Visualise dans Salome - + Ouvre un fichier de sélection des valeurs - + Détruit le mot-clef @@ -3205,13 +3324,13 @@ p, li { white-space: pre-wrap; } - - ... + + Affiche le rapport de validation du mot-clef - - Affiche le rapport de validation du mot-clef + + ... @@ -3284,20 +3403,68 @@ p, li { white-space: pre-wrap; } - WidgetRadioButton + WidgetPlusieursTuple - + Form - + + Affiche le rapport de validation du mot-clef + + + + ... - - RadioButton + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + 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 + + + + + WidgetRadioButton + + + Form @@ -3305,11 +3472,21 @@ p, li { white-space: pre-wrap; } Affiche le rapport de validation du mot-clef + + + ... + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + RadioButton + + Détruit le mot-clef @@ -3362,13 +3539,13 @@ p, li { white-space: pre-wrap; } - - ... + + Affiche le rapport de validation du mot-clef - - Affiche le rapport de validation du mot-clef + + ... @@ -3390,28 +3567,28 @@ p, li { white-space: pre-wrap; } - - ... + + Affiche le rapport de validation du mot-clef - - True + + ... - - False + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - Affiche le rapport de validation du mot-clef + + True - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + False @@ -3427,16 +3604,31 @@ p, li { white-space: pre-wrap; } Form + + + Affiche le rapport de validation du mot-clef + + ... + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + Complexe : a+bj + + + <html><head/><body><p align="center">OU </p></body></html> + + Réel/Imaginaire @@ -3447,21 +3639,6 @@ p, li { white-space: pre-wrap; } Module/Phase - - - Affiche le rapport de validation du mot-clef - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - - - - <html><head/><body><p align="center">OU </p></body></html> - - WidgetSimpFichier @@ -3470,16 +3647,16 @@ p, li { white-space: pre-wrap; } Form - - - ... - - Affiche le rapport de validité du mot-clef + + + ... + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> @@ -3491,12 +3668,12 @@ p, li { white-space: pre-wrap; } - + ouvre le fichier choisi - + Détruit le mot-clef @@ -3509,13 +3686,13 @@ p, li { white-space: pre-wrap; } - - ... + + Affiche le rapport de validation du mot-clef - - Affiche le rapport de validation du mot-clef + + ... @@ -3536,11 +3713,21 @@ p, li { white-space: pre-wrap; } Form + + + Affiche le rapport de validation du mot-clef + + ... + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> @@ -3556,16 +3743,6 @@ p, li { white-space: pre-wrap; } <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - Affiche le rapport de validation du mot-clef - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - Détruit le mot-clef @@ -3579,11 +3756,21 @@ p, li { white-space: pre-wrap; } Form + + + Affiche le rapport de validation du mot-clef + + ... + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> @@ -3599,16 +3786,6 @@ p, li { white-space: pre-wrap; } <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - - - Affiche le rapport de validation du mot-clef - - - - - <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - Détruit le mot-clef @@ -3705,13 +3882,13 @@ p, li { white-space: pre-wrap; } - - Suivant + + Next - - Next + + Suivant @@ -3746,17 +3923,22 @@ p, li { white-space: pre-wrap; } - + Affiche le rapport de validation du mot-clef - + ... + + + <html><head/><body><p>Met à jour l'en-tête</p></body></html> + + - + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> @@ -3764,7 +3946,7 @@ p, li { white-space: pre-wrap; } self.appliEficas - + Wrapper Files (*.xml);;All Files (*) diff --git a/UiQT4/myMain.ui b/UiQT4/myMain.ui index fe8fbf82..975ef52c 100644 --- a/UiQT4/myMain.ui +++ b/UiQT4/myMain.ui @@ -133,7 +133,8 @@ QMenuBar { - + + @@ -197,7 +198,7 @@ QMenuBar { false - + @@ -226,7 +227,12 @@ QMenuBar { Shift+I - + + + &bad + + +