diff -r ac9896336b90 -r 02f371f3e063 wxglade_hmi/wxglade_hmi.py --- a/wxglade_hmi/wxglade_hmi.py Wed Apr 24 10:03:47 2013 +0200 +++ b/wxglade_hmi/wxglade_hmi.py Wed Apr 24 17:27:08 2013 +0200 @@ -1,5 +1,5 @@ import wx -import os, sys +import os, sys, shutil from xml.dom import minidom from py_ext import PythonFileCTNMixin @@ -16,9 +16,11 @@ def ConfNodePath(self): return os.path.join(os.path.dirname(__file__)) - def _getWXGLADEpath(self): - # define name for IEC raw code file - return os.path.join(self.CTNPath(), "hmi.wxg") + def _getWXGLADEpath(self, project_path=None): + if project_path is None: + project_path = self.CTNPath() + # define name for wxGlade gui file + return os.path.join(project_path, "hmi.wxg") def launch_wxglade(self, options, wait=False): from wxglade import __file__ as fileName @@ -29,6 +31,11 @@ mode = {False:os.P_NOWAIT, True:os.P_WAIT}[wait] os.spawnv(mode, sys.executable, ["\"%s\""%sys.executable] + [glade] + options) + def OnCTNSave(self, from_project_path=None): + if from_project_path is not None: + shutil.copyfile(self._getWXGLADEpath(from_project_path), + self._getWXGLADEpath()) + return PythonFileCTNMixin.OnCTNSave(self, from_project_path) def CTNGenerate_C(self, buildpath, locations): """ @@ -128,3 +135,4 @@ if wx.Platform == '__WXMSW__': wxg_filename = "\"%s\""%wxg_filename self.launch_wxglade([wxg_filename]) +