X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=InterfaceQT4%2Fcompomacro.py;h=12849ab0ec85dcc5369b7154e67e0ab01fc1fb43;hb=91f8ed1cbaed8a138bc89ad058c99625b2aee6c5;hp=c4e694cb4939281acd433ff6462fc9af0414fe06;hpb=d41b1c52d0c35b655f6feabfe816a3c541f3a92a;p=tools%2Feficas.git diff --git a/InterfaceQT4/compomacro.py b/InterfaceQT4/compomacro.py index c4e694cb..12849ab0 100644 --- a/InterfaceQT4/compomacro.py +++ b/InterfaceQT4/compomacro.py @@ -1,4 +1,22 @@ # -*- coding: utf-8 -*- +# Copyright (C) 2007-2013 EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# # Modules Python import os,sys,string @@ -7,20 +25,48 @@ import traceback # Modules Eficas from Editeur import Objecttreeitem +from Extensions.i18n import tr import compooper import browser import typeNode +from PyQt4.QtGui import QAction +from PyQt4.QtCore import Qt, SIGNAL, QVariant class MACRONode(browser.JDCNode,typeNode.PopUpMenuNode): def getPanel(self): - print "MACRONode MACRONode" from monMacroPanel import MonMacroPanel return MonMacroPanel (self,parent=self.editor ) + def getPanel2(self): + from monWidgetCommande import MonWidgetCommande + return MonWidgetCommande (self,self.editor ,self.item.object) + + def createPopUpMenu(self): typeNode.PopUpMenuNode.createPopUpMenu(self) + if ("AFFE_CARA_ELEM" in self.item.get_genealogie()) and self.editor.salome: + self.ViewElt = QAction(tr('View3D'),self.tree) + self.tree.connect(self.ViewElt,SIGNAL("activated()"),self.view3D) + self.ViewElt.setStatusTip(tr("affiche dans Geom les elements de structure")) + self.menu.addAction(self.ViewElt) + if self.item.isvalid() : + self.ViewElt.setEnabled(1) + else: + self.ViewElt.setEnabled(0) + + def view3D(self) : + from Editeur import TroisDPal + troisD=TroisDPal.TroisDPilote(self.item,self.editor.appliEficas) + troisD.envoievisu() + + #def doPaste(self,node_selected): + # print 'je suis la' + # objetACopier = self.item.get_copie_objet() + # child=self.append_brother(objetACopier) + # return child + class MACROTreeItem(compooper.EtapeTreeItem): # """ Cette classe hérite d'une grande partie des comportements @@ -29,7 +75,7 @@ class MACROTreeItem(compooper.EtapeTreeItem): itemNode=MACRONode # ------------------------------------ -# Classes necessaires à INCLUDE +# Classes necessaires a INCLUDE # ------------------------------------ class INCLUDETreeItemBase(MACROTreeItem): @@ -46,14 +92,17 @@ class INCLUDENode(browser.JDCNode,typeNode.PopUpMenuNode): from monIncludePanel import MonIncludePanel return MonIncludePanel (self,parent=self.editor ) + def getPanel2(self): + from monWidgetCommande import MonWidgetCommande + return MonWidgetCommande (self,self.editor ,self.item.object) + def createPopUpMenu(self): typeNode.PopUpMenuNode.createPopUpMenu(self) - #self.menu.insertItem( qApp.translate('Browser','Edit'), self.makeEdit ) def makeEdit(self): #,appli,node if self.item.object.text_converted == 0: # Le texte du fichier inclus n'a pas pu etre converti par le module convert - msg="Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas\n\n" + msg=tr("Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas\n\n") msg=msg+self.item.object.text_error return @@ -78,13 +127,16 @@ class POURSUITENode(browser.JDCNode, typeNode.PopUpMenuNode): from monPoursuitePanel import MonPoursuitePanel return MonPoursuitePanel (self,parent=self.editor ) + def getPanel2(self): + from monWidgetCommande import MonWidgetCommande + return MonWidgetCommande (self,self.editor ,self.item.object) + def createPopUpMenu(self): typeNode.PopUpMenuNode.createPopUpMenu(self) - self.menu.insertItem( qApp.translate('Browser','Edit'), self.makeEdit ) def makeEdit(self): #,appli,node if self.item.object.text_converted == 0: - msg="Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas\n\n" + msg=tr("Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas\n\n") msg=msg+self.item.object.text_error return @@ -101,7 +153,7 @@ class POURSUITETreeItem(INCLUDETreeItemBase): # ---------------------------------------- -# Classes necessaires à INCLUDE MATERIAU +# Classes necessaires a INCLUDE MATERIAU # ---------------------------------------- @@ -113,19 +165,19 @@ class MATERIAUNode(MACRONode): def createPopUpMenu(self): typeNode.PopUpMenuNode.createPopUpMenu(self) - self.menu.insertItem( qApp.translate('Browser','View'), self.makeView ) def makeView(self) : if hasattr(self.item.object,'fichier_ini') and self.item.object.fichier_ini==None: - QMessageBox.information( self, "Include vide","L'include doit etre correctement initialisé pour etre visualisé") + QMessageBox.information( self,tr("Include vide"),tr("L'include doit etre correctement initialise pour etre visualise")) return f = open(self.item.object.fichier_ini, "rb") texte = f.read() f.close() from desVisu import DVisu - monVisu=DVisu(parent=self.editor,fl=Qt.WType_Dialog) - monVisu.TB.setText(texte) - monVisu.show() + monVisuDialg=DVisu(parent=self.editor.appliEficas,fl=0) + monVisuDialg.TB.setText(texte) + monVisuDialg.show() + class INCLUDE_MATERIAUTreeItem(INCLUDETreeItemBase): itemNode=MATERIAUNode @@ -141,7 +193,7 @@ def treeitem(appli, labeltext, object, setfunction=None): """ if object.nom == "INCLUDE_MATERIAU": return INCLUDE_MATERIAUTreeItem(appli, labeltext, object, setfunction) - elif object.nom == "INCLUDE": + elif object.nom == "INCLUDE" or object.nom== "DICTDATA": return INCLUDETreeItem(appli, labeltext, object, setfunction) elif object.nom == "POURSUITE": return POURSUITETreeItem(appli, labeltext, object, setfunction)