diff -r e24d2f917c7e -r 7187e1c00975 Dialogs.py --- a/Dialogs.py Wed Jul 25 10:06:29 2007 +0200 +++ b/Dialogs.py Thu Jul 26 17:23:21 2007 +0200 @@ -384,21 +384,23 @@ self.RefreshNameList() def SetValues(self, values): - for name, value in values.items(): - if name == "type": - if value == INPUT: - self.Class.SetStringSelection("Input") - if value == OUTPUT: - self.Class.SetStringSelection("Output") - if value == INOUT: - self.Class.SetStringSelection("InOut") - elif name == "name" and value != "": - if self.Name.FindString(value) != wxNOT_FOUND: - self.Name.SetStringSelection(value) - self.Expression.Enable(False) - else: - self.Expression.SetValue(value) - self.Name.Enable(False) + value_type = values.get("type", None) + value_name = values.get("name", None) + if value_type: + if value_type == INPUT: + self.Class.SetStringSelection("Input") + if value_type == OUTPUT: + self.Class.SetStringSelection("Output") + if value_type == INOUT: + self.Class.SetStringSelection("InOut") + self.RefreshNameList() + if value_name: + if self.Name.FindString(value_name) != wxNOT_FOUND: + self.Name.SetStringSelection(value_name) + self.Expression.Enable(False) + else: + self.Expression.SetValue(value_name) + self.Name.Enable(False) self.RefreshPreview() def GetValues(self):