Exemplo n.º 1
0
 def setParameters(self, ddict=None):
     if ddict is None:
         ddict = {}
     key = "material"
     if key in ddict:
         material = ddict['material']
         if Elements.isValidMaterial(material):
             self.materialWidget.setEditText(material)
             self.materialSignal(material)
         else:
             raise ValueError("Invalid Material %s" % material)
     key = "element"
     if key in ddict:
         ele = ddict[key]
         for i in range(self.elementWidget.count()):
             if str(self.elementWidget.itemText(i)).split("(")[0] == ele:
                 self.elementWidget.setCurrentIndex(i)
                 self.elementSignal(ele)
     key = "edge"
     if key in ddict:
         shellList = ["K", "L1", "L2", "L3", "M1", "M2", "M3", "M4", "M5"]
         idx = shellList.index(ddict[key])
     else:
         idx = 0
     self.edgeWidget.setCurrentIndex(idx)
     self.edgeSignal(idx)
     key = "energy"
     if key in ddict:
         energy = ddict[key]
         self.energyWidget.setText("%.2f" % energy)
Exemplo n.º 2
0
 def setParameters(self, ddict=None):
     if ddict is None:
         ddict = {}
     key = "material"
     if key in ddict:
         material = ddict['material']
         if Elements.isValidMaterial(material):
             self.materialWidget.setEditText(material)
             self.materialSignal(material)
         else:
             raise ValueError("Invalid Material %s" % material)
     key = "element"
     if key in ddict:
         ele = ddict[key]
         for i in range(self.elementWidget.count()):
             if str(self.elementWidget.itemText(i)).split("(")[0] == ele:
                 self.elementWidget.setCurrentIndex(i)
                 self.elementSignal(ele)
     key = "edge"
     if key in ddict:
         shellList = ["K", "L1", "L2", "L3", "M1", "M2", "M3", "M4", "M5"]
         idx = shellList.index(ddict[key])
     else:
         idx = 0
     self.edgeWidget.setCurrentIndex(idx)
     self.edgeSignal(idx)
     key = "energy"
     if key in ddict:
         energy = ddict[key]
         self.energyWidget.setText("%.2f" % energy)
Exemplo n.º 3
0
 def materialSignal(self, txt):
     txt = str(txt)
     if Elements.isValidFormula(txt):
         if DEBUG:
             print("validFormula")
         elementDict = Elements.getMaterialMassFractions([txt], [1.0])
     elif Elements.isValidMaterial(txt):
         if DEBUG:
             print("ValidMaterial")
         elementDict = Elements.getMaterialMassFractions([txt], [1.0])
     else:
         if DEBUG:
             print("to be defined")
         msg=qt.QMessageBox.information(self,
                                 "Invalid Material %s" % txt,
                                 "The material %s is not a valid Formula " \
                                 "nor a valid Material.\n" \
             "Please use the material editor to define materials" % txt)
         self.materialWidget.setEditText(self._lastMaterial)
         if self.materialEditor.isHidden():
             self.materialEditor.show()
         return
     # We have to update the possible elements
     elements = list(elementDict.keys())
     self.updateElementsWidget(elements)
Exemplo n.º 4
0
 def materialSignal(self, txt):
     txt = str(txt)
     if Elements.isValidFormula(txt):
         _logger.debug("validFormula")
         elementDict = Elements.getMaterialMassFractions([txt], [1.0])
     elif Elements.isValidMaterial(txt):
         _logger.debug("ValidMaterial")
         elementDict = Elements.getMaterialMassFractions([txt], [1.0])
     else:
         _logger.debug("Material to be defined")
         msg=qt.QMessageBox.information(self,
                                 "Invalid Material %s" % txt,
                                 "The material %s is not a valid Formula " \
                                 "nor a valid Material.\n" \
             "Please use the material editor to define materials" % txt)
         self.materialWidget.setEditText(self._lastMaterial)
         if self.materialEditor.isHidden():
             self.materialEditor.show()
         return
     # We have to update the possible elements
     elements = list(elementDict.keys())
     self.updateElementsWidget(elements)