+#######
+#
+# Gestion de la fermeture d'un cas
+# 1: la fonction closeAdaoCase est appelée par le GUI SALOME
+# 2: la fonction _processEficasCloseEvent est appelée par le manager EFICAS
+#
+#######
+
+ def closeAdaoCase(self):
+ adaoLogger.debug("Fermeture d'un cas")
+ # A priori, l'utilisateur s'attend à sauvegarder le cas qui est ouvert
+ # dans le GUI d'Eficas
+ self.harmonizeSelectionFromEficas()
+ salomeStudyItem = adaoGuiHelper.getSelectedItem()
+ for case_name, adao_case in self.cases.iteritems():
+ if adao_case.salome_study_item.GetID() == salomeStudyItem.GetID():
+ self.eficas_manager.adaoFileClose(adao_case)
+ break
+
+ def _processEficasCloseEvent(self, eficasWrapper, eficasEvent):
+ editor = eficasEvent.callbackId
+ # Recuperation du cas
+ adao_case = self.cases[editor]
+ # Suppression de l'objet dans l'étude
+ adaoStudyEditor.removeItem(adao_case.salome_study_id, adao_case.salome_study_item)
+ adaoGuiHelper.refreshObjectBrowser()
+ # Suppression du cas
+ del self.cases[editor]
+