Dialogs.py
changeset 325 0a58f1625b6e
parent 313 9266d1e6e3d4
child 330 d803ba077da0
equal deleted inserted replaced
324:9f240641e3f0 325:0a58f1625b6e
   545         setattr(self.Preview, "GetDrawingMode", lambda:FREEDRAWING_MODE)
   545         setattr(self.Preview, "GetDrawingMode", lambda:FREEDRAWING_MODE)
   546         setattr(self.Preview, "GetScaling", lambda:None)
   546         setattr(self.Preview, "GetScaling", lambda:None)
   547         setattr(self.Preview, "IsOfType", ctrler.IsOfType)
   547         setattr(self.Preview, "IsOfType", ctrler.IsOfType)
   548 
   548 
   549         self.ButtonSizer = self.CreateButtonSizer(wx.OK|wx.CANCEL|wx.CENTRE)
   549         self.ButtonSizer = self.CreateButtonSizer(wx.OK|wx.CANCEL|wx.CENTRE)
   550 
       
   551         if wx.VERSION >= (2, 5, 0):
   550         if wx.VERSION >= (2, 5, 0):
       
   551             self.Bind(wx.EVT_BUTTON, self.OnOK, id=self.ButtonSizer.GetAffirmativeButton().GetId())
   552             self.Preview.Bind(wx.EVT_PAINT, self.OnPaint)
   552             self.Preview.Bind(wx.EVT_PAINT, self.OnPaint)
   553         else:
   553         else:
       
   554             self.Bind(wx.EVT_BUTTON, self.OnOK, id=self.ButtonSizer.GetChildren()[0].GetSizer().GetChildren()[0].GetWindow().GetId())
   554             wx.EVT_PAINT(self.Preview, self.OnPaint)
   555             wx.EVT_PAINT(self.Preview, self.OnPaint)
   555         
   556         
   556         self._init_sizers()
   557         self._init_sizers()
   557 
   558 
   558     def __init__(self, parent, controler, transition = ""):
   559     def __init__(self, parent, controler, transition = ""):
   639             if var_name == values["name"]:
   640             if var_name == values["name"]:
   640                 values["value_type"] = value_type
   641                 values["value_type"] = value_type
   641         values["width"], values["height"] = self.Variable.GetSize()
   642         values["width"], values["height"] = self.Variable.GetSize()
   642         values["executionOrder"] = self.ExecutionOrder.GetValue()
   643         values["executionOrder"] = self.ExecutionOrder.GetValue()
   643         return values
   644         return values
       
   645 
       
   646     def OnOK(self, event):
       
   647         expression = self.Expression.GetValue()
       
   648         if self.Expression.IsEnabled():
       
   649             value = expression
       
   650         else:
       
   651             value = self.VariableName.GetStringSelection()
       
   652         if value == "":
       
   653             message = wx.MessageDialog(self, "At least a variable or aa expression must be selected!", "Error", wx.OK|wx.ICON_ERROR)
       
   654             message.ShowModal()
       
   655             message.Destroy()
       
   656         elif value.upper() in IEC_KEYWORDS:
       
   657             message = wx.MessageDialog(self, "\"%s\" is a keyword. It can't be used!"%value, "Error", wx.OK|wx.ICON_ERROR)
       
   658             message.ShowModal()
       
   659             message.Destroy()
       
   660         else:
       
   661             self.EndModal(wx.ID_OK)
   644 
   662 
   645     def OnClassChanged(self, event):
   663     def OnClassChanged(self, event):
   646         self.RefreshNameList()
   664         self.RefreshNameList()
   647         if self.Class.GetStringSelection() == "Input":
   665         if self.Class.GetStringSelection() == "Input":
   648             self.Expression.Enable(True)
   666             self.Expression.Enable(True)