LPCBeremiz.py
changeset 625 08d4cc1ceb9b
parent 599 c7be4d09c5f4
child 629 61347cc521d1
equal deleted inserted replaced
624:8e74266033f8 625:08d4cc1ceb9b
   395          "tooltip" : _("Stop Running PLC"),
   395          "tooltip" : _("Stop Running PLC"),
   396          "method" : "_Stop"},
   396          "method" : "_Stop"},
   397         {"bitmap" : opjimg("Build"),
   397         {"bitmap" : opjimg("Build"),
   398          "name" : _("Build"),
   398          "name" : _("Build"),
   399          "tooltip" : _("Build project into build folder"),
   399          "tooltip" : _("Build project into build folder"),
   400          "method" : "_build"},
   400          "method" : "_Build"},
   401         {"bitmap" : opjimg("Transfer"),
   401         {"bitmap" : opjimg("Transfer"),
   402          "name" : _("Transfer"),
   402          "name" : _("Transfer"),
   403          "shown" : False,
   403          "shown" : False,
   404          "tooltip" : _("Transfer PLC"),
   404          "tooltip" : _("Transfer PLC"),
   405          "method" : "_Transfer"},
   405          "method" : "_Transfer"},
   441                 self.SimulationBuildPath = os.path.join(tempfile.mkdtemp(), os.path.basename(self.ProjectPath), "build")
   441                 self.SimulationBuildPath = os.path.join(tempfile.mkdtemp(), os.path.basename(self.ProjectPath), "build")
   442             return self.SimulationBuildPath
   442             return self.SimulationBuildPath
   443         else:
   443         else:
   444             return PluginsRoot._getBuildPath(self)
   444             return PluginsRoot._getBuildPath(self)
   445 
   445 
   446     def _build(self):
   446     def _Build(self):
   447         save = self.ProjectTestModified()
   447         save = self.ProjectTestModified()
   448         if save:
   448         if save:
   449             self.SaveProject()
   449             self.SaveProject()
   450             self.AppFrame._Refresh(TITLE, FILEMENU)
   450             self.AppFrame._Refresh(TITLE, FILEMENU)
   451         if self.BuildPath is not None:
   451         if self.BuildPath is not None:
   452             mycopytree(self.OrigBuildPath, self.BuildPath)
   452             mycopytree(self.OrigBuildPath, self.BuildPath)
   453         PluginsRoot._build(self)
   453         PluginsRoot._Build(self)
   454         if save:
   454         if save:
   455             wx.CallAfter(self.AppFrame.RefreshAll)
   455             wx.CallAfter(self.AppFrame.RefreshAll)
   456     
   456     
   457     def SetProjectName(self, name):
   457     def SetProjectName(self, name):
   458         return self.Project.setname(name)
   458         return self.Project.setname(name)
   608             simulating = self.CurrentMode == SIMULATION_MODE
   608             simulating = self.CurrentMode == SIMULATION_MODE
   609             for args in {
   609             for args in {
   610                      "Started" :     [("_Simulate", False),
   610                      "Started" :     [("_Simulate", False),
   611                                       ("_Run", False),
   611                                       ("_Run", False),
   612                                       ("_Stop", True),
   612                                       ("_Stop", True),
   613                                       ("_build", True),
   613                                       ("_Build", True),
   614                                       ("_Transfer", True)],
   614                                       ("_Transfer", True)],
   615                      "Stopped" :     [("_Simulate", False),
   615                      "Stopped" :     [("_Simulate", False),
   616                                       ("_Run", True),
   616                                       ("_Run", True),
   617                                       ("_Stop", False),
   617                                       ("_Stop", False),
   618                                       ("_build", True),
   618                                       ("_Build", True),
   619                                       ("_Transfer", True)],
   619                                       ("_Transfer", True)],
   620                      "Connected" :   [("_Simulate", not simulating),
   620                      "Connected" :   [("_Simulate", not simulating),
   621                                       ("_Run", True),
   621                                       ("_Run", True),
   622                                       ("_Stop", simulating),
   622                                       ("_Stop", simulating),
   623                                       ("_build", True),
   623                                       ("_Build", True),
   624                                       ("_Transfer", True)],
   624                                       ("_Transfer", True)],
   625                      "Disconnected" :[("_Simulate", not simulating),
   625                      "Disconnected" :[("_Simulate", not simulating),
   626                                       ("_Run", False),
   626                                       ("_Run", False),
   627                                       ("_Stop", simulating),
   627                                       ("_Stop", simulating),
   628                                       ("_build", True),
   628                                       ("_Build", True),
   629                                       ("_Transfer", False)],
   629                                       ("_Transfer", False)],
   630                    }.get(status,[]):
   630                    }.get(status,[]):
   631                 self.ShowMethod(*args)
   631                 self.ShowMethod(*args)
   632             self.previous_plcstate = status
   632             self.previous_plcstate = status
   633             self.previous_mode = self.CurrentMode
   633             self.previous_mode = self.CurrentMode
   800 
   800 
   801     def _Transfer(self):
   801     def _Transfer(self):
   802         if self.CurrentMode is None and self.OnlineMode != "OFF":
   802         if self.CurrentMode is None and self.OnlineMode != "OFF":
   803             self.CurrentMode = TRANSFER_MODE
   803             self.CurrentMode = TRANSFER_MODE
   804             
   804             
   805             PluginsRoot._build(self)
   805             PluginsRoot._Build(self)
   806             
   806             
   807             ID_ABORTTRANSFERTIMER = wx.NewId()
   807             ID_ABORTTRANSFERTIMER = wx.NewId()
   808             self.AbortTransferTimer = wx.Timer(self.AppFrame, ID_ABORTTRANSFERTIMER)
   808             self.AbortTransferTimer = wx.Timer(self.AppFrame, ID_ABORTTRANSFERTIMER)
   809             self.AppFrame.Bind(wx.EVT_TIMER, self.AbortTransfer, self.AbortTransferTimer)  
   809             self.AppFrame.Bind(wx.EVT_TIMER, self.AbortTransfer, self.AbortTransferTimer)  
   810             
   810             
  1220             self.PluginRoot.ResetAppFrame(self.Log)
  1220             self.PluginRoot.ResetAppFrame(self.Log)
  1221             if frame is not None:
  1221             if frame is not None:
  1222                 frame.Hide()
  1222                 frame.Hide()
  1223         
  1223         
  1224         def Compile(self):
  1224         def Compile(self):
  1225             self.PluginRoot._build()
  1225             self.PluginRoot._Build()
  1226         
  1226         
  1227         def SetProjectProperties(self, projectname, productname, productversion, companyname):
  1227         def SetProjectProperties(self, projectname, productname, productversion, companyname):
  1228             properties = self.PluginRoot.GetProjectProperties()
  1228             properties = self.PluginRoot.GetProjectProperties()
  1229             new_properties = properties.copy()
  1229             new_properties = properties.copy()
  1230             new_properties["projectName"] = projectname
  1230             new_properties["projectName"] = projectname