194 event(self, id, function) |
194 event(self, id, function) |
195 else: |
195 else: |
196 event(self, function) |
196 event(self, function) |
197 |
197 |
198 def __init__(self, parent, message, caption=_("Please enter text"), defaultValue="", |
198 def __init__(self, parent, message, caption=_("Please enter text"), defaultValue="", |
199 style=wx.OK|wx.CANCEL|wx.CENTRE, pos=wx.DefaultPosition): |
199 style=wx.OK | wx.CANCEL | wx.CENTRE, pos=wx.DefaultPosition): |
200 wx.TextEntryDialog.__init__(self, parent, message, caption, defaultValue, style, pos) |
200 wx.TextEntryDialog.__init__(self, parent, message, caption, defaultValue, style, pos) |
201 |
201 |
202 self.Tests = [] |
202 self.Tests = [] |
203 if wx.VERSION >= (2, 8, 0): |
203 if wx.VERSION >= (2, 8, 0): |
204 self.Bind(wx.EVT_BUTTON, self.OnOK, id=self.GetAffirmativeId()) |
204 self.Bind(wx.EVT_BUTTON, self.OnOK, id=self.GetAffirmativeId()) |
210 def OnOK(self, event): |
210 def OnOK(self, event): |
211 value = self.GetValue() |
211 value = self.GetValue() |
212 texts = {"value": value} |
212 texts = {"value": value} |
213 for function, message in self.Tests: |
213 for function, message in self.Tests: |
214 if not function(value): |
214 if not function(value): |
215 message = wx.MessageDialog(self, message % texts, _("Error"), wx.OK|wx.ICON_ERROR) |
215 message = wx.MessageDialog(self, message % texts, _("Error"), wx.OK | wx.ICON_ERROR) |
216 message.ShowModal() |
216 message.ShowModal() |
217 message.Destroy() |
217 message.Destroy() |
218 return |
218 return |
219 self.EndModal(wx.ID_OK) |
219 self.EndModal(wx.ID_OK) |
220 event.Skip() |
220 event.Skip() |