controls/VariablePanel.py
changeset 1730 64d8f52bc8c8
parent 1676 eed01e0ab32a
child 1731 6ebd9c40b2be
equal deleted inserted replaced
1726:d51af006fa6b 1730:64d8f52bc8c8
   531             self.ColSizes       = [40,  80,     100,    80,     120,    100,     160]
   531             self.ColSizes       = [40,  80,     100,    80,     120,    100,     160]
   532             self.ColAlignements = [c,   l,      l,      l,      l,      l,       l]
   532             self.ColAlignements = [c,   l,      l,      l,      l,      l,       l]
   533             self.ColFixedSizeFlag=[True,False,  True,   False,  True,   True,    False]
   533             self.ColFixedSizeFlag=[True,False,  True,   False,  True,   True,    False]
   534 
   534 
   535         self.PanelWidthMin = sum(self.ColSizes)
   535         self.PanelWidthMin = sum(self.ColSizes)
   536         
   536 
   537         self.ElementType = element_type
   537         self.ElementType = element_type
   538         self.BodyType = None
   538         self.BodyType = None
   539 
   539 
   540         for choice in self.FilterChoices:
   540         for choice in self.FilterChoices:
   541             self.ClassFilter.Append(_(choice))
   541             self.ClassFilter.Append(_(choice))
   641         setattr(self.VariablesGrid, "RefreshButtons", _RefreshButtons)
   641         setattr(self.VariablesGrid, "RefreshButtons", _RefreshButtons)
   642 
   642 
   643         panel_width = window.Parent.ScreenRect.Width - 35
   643         panel_width = window.Parent.ScreenRect.Width - 35
   644         if panel_width > self.PanelWidthMin:
   644         if panel_width > self.PanelWidthMin:
   645             stretch_cols_width = panel_width
   645             stretch_cols_width = panel_width
   646             stretch_cols_sum = 0            
   646             stretch_cols_sum = 0
   647             for col in range(len(self.ColFixedSizeFlag)):
   647             for col in range(len(self.ColFixedSizeFlag)):
   648                 if self.ColFixedSizeFlag[col]:
   648                 if self.ColFixedSizeFlag[col]:
   649                     stretch_cols_width -= self.ColSizes[col]
   649                     stretch_cols_width -= self.ColSizes[col]
   650                 else:
   650                 else:
   651                     stretch_cols_sum += self.ColSizes[col]
   651                     stretch_cols_sum += self.ColSizes[col]
   757 
   757 
   758     def ShowErrorMessage(self, message):
   758     def ShowErrorMessage(self, message):
   759         dialog = wx.MessageDialog(self, message, _("Error"), wx.OK|wx.ICON_ERROR)
   759         dialog = wx.MessageDialog(self, message, _("Error"), wx.OK|wx.ICON_ERROR)
   760         dialog.ShowModal()
   760         dialog.ShowModal()
   761         dialog.Destroy()
   761         dialog.Destroy()
   762             
   762 
   763     def OnVariablesGridCellChange(self, event):
   763     def OnVariablesGridCellChange(self, event):
   764         row, col = event.GetRow(), event.GetCol()
   764         row, col = event.GetRow(), event.GetCol()
   765         colname = self.Table.GetColLabelValue(col, False)
   765         colname = self.Table.GetColLabelValue(col, False)
   766         value = self.Table.GetValue(row, col)
   766         value = self.Table.GetValue(row, col)
   767         message = None
   767         message = None
   791             elif colname == "Location":
   791             elif colname == "Location":
   792                 wx.CallAfter(self.ParentWindow.RefreshView)
   792                 wx.CallAfter(self.ParentWindow.RefreshView)
   793 
   793 
   794         if message is not None:
   794         if message is not None:
   795             wx.CallAfter(self.ShowErrorMessage, message)
   795             wx.CallAfter(self.ShowErrorMessage, message)
   796             event.Veto()            
   796             event.Veto()
   797         else:
   797         else:
   798             event.Skip()
   798             event.Skip()
   799 
   799 
   800     def ClearLocation(self, row, col, value):
   800     def ClearLocation(self, row, col, value):
   801         if self.Values[row].Location != '':
   801         if self.Values[row].Location != '':