88 |
88 |
89 self.BaseType.SetFocus() |
89 self.BaseType.SetFocus() |
90 self.Fit() |
90 self.Fit() |
91 |
91 |
92 def GetDimensions(self): |
92 def GetDimensions(self): |
|
93 message = None |
93 dimensions_list = [] |
94 dimensions_list = [] |
94 for dimensions in self.Dimensions.GetStrings(): |
95 dimension_strings = self.Dimensions.GetStrings() |
|
96 if len(dimension_strings) == 0: |
|
97 message = _("Empty dimension isn't allowed.") |
|
98 |
|
99 for dimensions in dimension_strings: |
95 result = DIMENSION_MODEL.match(dimensions) |
100 result = DIMENSION_MODEL.match(dimensions) |
96 if result is None: |
101 if result is None: |
97 message = wx.MessageDialog(self, _("\"%s\" value isn't a valid array dimension!")%dimensions, _("Error"), wx.OK|wx.ICON_ERROR) |
102 message = _("\"%s\" value isn't a valid array dimension!")%dimensions |
98 message.ShowModal() |
103 break |
99 message.Destroy() |
|
100 return None |
|
101 bounds = result.groups() |
104 bounds = result.groups() |
102 if int(bounds[0]) >= int(bounds[1]): |
105 if int(bounds[0]) >= int(bounds[1]): |
103 message = wx.MessageDialog(self, _("\"%s\" value isn't a valid array dimension!\nRight value must be greater than left value.")%dimensions, _("Error"), wx.OK|wx.ICON_ERROR) |
106 message = _("\"%s\" value isn't a valid array dimension!\nRight value must be greater than left value.")%dimensions |
104 message.ShowModal() |
107 break |
105 message.Destroy() |
|
106 return None |
|
107 dimensions_list.append(bounds) |
108 dimensions_list.append(bounds) |
|
109 |
|
110 if message is not None: |
|
111 dlg = wx.MessageDialog(self, message, _("Error"), wx.OK|wx.ICON_ERROR) |
|
112 dlg.ShowModal() |
|
113 dlg.Destroy() |
|
114 return None |
108 return dimensions_list |
115 return dimensions_list |
109 |
116 |
110 def OnDimensionsChanged(self, event): |
117 def OnDimensionsChanged(self, event): |
111 wx.CallAfter(self.GetDimensions) |
118 wx.CallAfter(self.GetDimensions) |
112 event.Skip() |
119 event.Skip() |