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)
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)
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)
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)