dialogs/ArrayTypeDialog.py
changeset 1726 d51af006fa6b
parent 1694 acb767d6ac85
child 1730 64d8f52bc8c8
equal deleted inserted replaced
1725:f8e4650619f7 1726:d51af006fa6b
    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()