Salome HOME
pb de check box
[tools/eficas.git] / InterfaceQT4 / compomclist.py
index 0db1cf88f287da0bfe751e9b6f72540fb89c2439..cc02fe715968b07b7f2c52806ba804c17528fe0c 100644 (file)
@@ -1,36 +1,64 @@
 # -*- coding: utf-8 -*-
 # -*- 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
+#
+
+from __future__ import absolute_import
 import types
 import traceback
 
 import types
 import traceback
 
-import compofact
-import browser
-import typeNode
+from . import compofact
+from . import browser
+from . import typeNode
+from Extensions.i18n import tr
 
 from Editeur     import Objecttreeitem
 from Noyau.N_OBJECT import ErrorObj
 
 from Editeur     import Objecttreeitem
 from Noyau.N_OBJECT import ErrorObj
-#import compoerror
 
 
 class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal):
 
 
 class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal):
-    def getPanel(self):
-        """        
-        """    
-        if self.item.isMCList() :
-           if self.item.ajout_possible():
-              from monMCListAjoutPanel import MonMCListAjoutPanel
-              return MonMCListAjoutPanel(self,parent=self.editor)
-           else :
-              print "MCList"
-        elif self.item.isMCFact() :
-           from monMCFactPanel import MonMCFactPanel
-           return MonMCFactPanel(self,parent=self.editor)
-        else :
-           print "MCList"
 
     def createPopUpMenu(self):
         typeNode.PopUpMenuNodeMinimal.createPopUpMenu(self)
 
 
     def createPopUpMenu(self):
         typeNode.PopUpMenuNodeMinimal.createPopUpMenu(self)
 
+    def getPanelGroupe(self,parentQt,commande):
+        maDefinition=self.item.get_definition()
+        monObjet=self.item.object
+        monNom=self.item.nom
+        maCommande=commande
+        #print "ds getPanelGroupe" , self.item.nom
+        #if hasattr(self,'plie'): print "self.plie", self.plie
+       # if self.item.nom == "BackgroundError" and not(self.plie): print i
+        #print parentQt
+        if hasattr(parentQt,'niveau'): self.niveau=parentQt.niveau+1
+        else : self.niveau=1
+        if not (monObjet.isMCList()) :
+           if  hasattr(self,'plie') and self.plie==True : 
+               from .monWidgetFactPlie import MonWidgetFactPlie
+               widget=MonWidgetFactPlie(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande)
+           else:
+               from .monWidgetFact import MonWidgetFact
+               widget=MonWidgetFact(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande)
+        else :
+           from .monWidgetBloc import MonWidgetBloc
+           widget=MonWidgetBloc(self,self.editor,parentQt,maDefinition,monObjet,self.niveau,maCommande)
+        return widget
+
 
     #def doPaste(self,node_selected):
     #    objet_a_copier = self.item.get_copie_objet()
 
     #def doPaste(self,node_selected):
     #    objet_a_copier = self.item.get_copie_objet()
@@ -56,18 +84,18 @@ class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal):
 
     #    else:
     #      QMessageBox.information( self, "Copie impossible",
 
     #    else:
     #      QMessageBox.information( self, "Copie impossible",
-    #               "Vous ne pouvez coller le mot-clé facteur copié à ce niveau de l'arborescence !")          
-    #      self.editor.affiche_infos("Copie refusée")
+    #               "Vous ne pouvez coller le mot-cle facteur copie a ce niveau de l'arborescence !")          
+    #      self.editor.affiche_infos("Copie refusee")
 
     #    return child
 
 class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem):
     """ La classe MCListTreeItem joue le role d'un adaptateur pour les objets
         du noyau Accas instances de la classe MCLIST.
 
     #    return child
 
 class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem):
     """ La classe MCListTreeItem joue le role d'un adaptateur pour les objets
         du noyau Accas instances de la classe MCLIST.
-        Elle adapte ces objets pour leur permettre d'etre intégrés en tant que
+        Elle adapte ces objets pour leur permettre d'etre integres en tant que
         noeuds dans un arbre graphique (voir treewidget.py et ObjectTreeItem.py).
         noeuds dans un arbre graphique (voir treewidget.py et ObjectTreeItem.py).
-        Cette classe délègue les appels de méthode et les accès
-        aux attributs à l'objet du noyau soit manuellement soit 
+        Cette classe delegue les appels de methode et les acces
+        aux attributs a l'objet du noyau soit manuellement soit 
         automatiquement (voir classe Delegate et attribut object).
     """
     itemNode=Node
         automatiquement (voir classe Delegate et attribut object).
     """
     itemNode=Node
@@ -85,7 +113,7 @@ class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem):
 
     def panel(self,jdcdisplay,pane,node):
         """ Retourne une instance de l'objet panneau associe a l'item (self)
 
     def panel(self,jdcdisplay,pane,node):
         """ Retourne une instance de l'objet panneau associe a l'item (self)
-            Si la liste ne contient qu'un mot clé facteur, on utilise le panneau
+            Si la liste ne contient qu'un mot cle facteur, on utilise le panneau
             FACTPanel.
             Si la liste est plus longue on utilise le panneau MCLISTPanel.
         """
             FACTPanel.
             Si la liste est plus longue on utilise le panneau MCLISTPanel.
         """
@@ -146,8 +174,7 @@ class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem):
             return "ast-yel-los"
 
     def get_docu(self):
             return "ast-yel-los"
 
     def get_docu(self):
-        """ Retourne la clef de doc de l'objet pointé par self """
-        print "hhhhhhhhhhhh"
+        """ Retourne la clef de doc de l'objet pointe par self """
         return self.object.get_docu()    
 
     def iscopiable(self):
         return self.object.get_docu()    
 
     def iscopiable(self):
@@ -158,13 +185,13 @@ class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem):
 
     def isMCFact(self):
         """
 
     def isMCFact(self):
         """
-        Retourne 1 si l'objet pointé par self est un MCFact, 0 sinon
+        Retourne 1 si l'objet pointe par self est un MCFact, 0 sinon
         """
         return len(self._object) <= 1
 
     def isMCList(self):
         """
         """
         return len(self._object) <= 1
 
     def isMCList(self):
         """
-        Retourne 1 si l'objet pointé par self est une MCList, 0 sinon
+        Retourne 1 si l'objet pointe par self est une MCList, 0 sinon
         """
         return len(self._object) > 1
         
         """
         return len(self._object) > 1
         
@@ -191,11 +218,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"
         if self.object.suppentite(obj):
            if len(self._object) == 1: self.updateDelegate()     
            message = "Mot-clef " + obj.nom + " supprime"
-           self.appli.affiche_infos(message)
-           return 1
+           #self.editor.affiche_commentaire(message)
+           return (1,message)
         else:
         else:
-           self.appli.affiche_infos('Impossible de supprimer ce mot-clef',Qt.red)
-           return 0
+           return (0,tr('Impossible de supprimer ce mot-clef'))
 
             
 import Accas
 
             
 import Accas