ProjectController.py
changeset 1741 dd94b9a68c61
parent 1740 b789b695b5c6
child 1742 92932cd370a4
equal deleted inserted replaced
1740:b789b695b5c6 1741:dd94b9a68c61
   734         plc_file = open(self._getIECcodepath(), "a")
   734         plc_file = open(self._getIECcodepath(), "a")
   735         plc_file.write(open(self._getIECgeneratedcodepath(), "r").read())
   735         plc_file.write(open(self._getIECgeneratedcodepath(), "r").read())
   736         plc_file.close()
   736         plc_file.close()
   737         return True
   737         return True
   738 
   738 
   739 
       
   740 
       
   741     def _Compile_ST_to_SoftPLC(self):
   739     def _Compile_ST_to_SoftPLC(self):
   742         self.logger.write(_("Compiling IEC Program into C code...\n"))
   740         self.logger.write(_("Compiling IEC Program into C code...\n"))
   743         buildpath = self._getBuildPath()
   741         buildpath = self._getBuildPath()
   744         buildcmd = "\"%s\" %s -I \"%s\" -T \"%s\" \"%s\"" % (
   742         buildcmd = "\"%s\" %s -I \"%s\" -T \"%s\" \"%s\"" % (
   745                          iec2c_cfg.getCmd(),
   743                          iec2c_cfg.getCmd(),
  1037             }
  1035             }
  1038         plc_main_code += targets.GetTargetCode(self.GetTarget().getcontent().getLocalTag())
  1036         plc_main_code += targets.GetTargetCode(self.GetTarget().getcontent().getLocalTag())
  1039         plc_main_code += targets.GetCode("plc_main_tail.c")
  1037         plc_main_code += targets.GetCode("plc_main_tail.c")
  1040         return plc_main_code
  1038         return plc_main_code
  1041 
  1039 
  1042 
       
  1043     def _Build(self):
  1040     def _Build(self):
  1044         """
  1041         """
  1045         Method called by user to (re)build SoftPLC and confnode tree
  1042         Method called by user to (re)build SoftPLC and confnode tree
  1046         """
  1043         """
  1047         if self.AppFrame is not None:
  1044         if self.AppFrame is not None:
  1318         if self.AppFrame is not None and not self.UpdateMethodsFromPLCStatus():
  1315         if self.AppFrame is not None and not self.UpdateMethodsFromPLCStatus():
  1319             self.AppFrame.RefreshStatusToolBar()
  1316             self.AppFrame.RefreshStatusToolBar()
  1320 
  1317 
  1321     def UpdateButtons(self):
  1318     def UpdateButtons(self):
  1322         wx.CallAfter(self._UpdateButtons)
  1319         wx.CallAfter(self._UpdateButtons)
  1323 
       
  1324 
  1320 
  1325     def UpdatePLCLog(self, log_count):
  1321     def UpdatePLCLog(self, log_count):
  1326         if log_count:
  1322         if log_count:
  1327             if self.AppFrame is not None:
  1323             if self.AppFrame is not None:
  1328                 self.AppFrame.LogViewer.SetLogCounters(log_count)
  1324                 self.AppFrame.LogViewer.SetLogCounters(log_count)
  1787                 #self.EnableMethod("_Transfer", False)
  1783                 #self.EnableMethod("_Transfer", False)
  1788         else:
  1784         else:
  1789 #            self.logger.write_warning(
  1785 #            self.logger.write_warning(
  1790 #                _("Cannot compare latest build to target. Please build.\n"))
  1786 #                _("Cannot compare latest build to target. Please build.\n"))
  1791             self.EnableMethod("_Transfer", False)
  1787             self.EnableMethod("_Transfer", False)
  1792 
       
  1793 
  1788 
  1794     def _Disconnect(self):
  1789     def _Disconnect(self):
  1795         self._SetConnector(None)
  1790         self._SetConnector(None)
  1796 
  1791 
  1797     def _Transfer(self):
  1792     def _Transfer(self):
  1909             "tooltip": _("Open a file explorer to manage project files"),
  1904             "tooltip": _("Open a file explorer to manage project files"),
  1910             "method":   "_OpenProjectFiles"
  1905             "method":   "_OpenProjectFiles"
  1911         },
  1906         },
  1912     ]
  1907     ]
  1913 
  1908 
  1914 
       
  1915     def EnableMethod(self, method, value):
  1909     def EnableMethod(self, method, value):
  1916         for d in self.StatusMethods:
  1910         for d in self.StatusMethods:
  1917             if d["method"]==method:
  1911             if d["method"]==method:
  1918                 d["enabled"]=value
  1912                 d["enabled"]=value
  1919                 return True
  1913                 return True