plugins/svgui/svgui.py
changeset 260 038eff285e00
parent 259 f527d1c3f630
child 272 9cce83526487
equal deleted inserted replaced
259:f527d1c3f630 260:038eff285e00
     1 import os, shutil, sys
     1 import os, shutil, sys
     2 base_folder = os.path.split(sys.path[0])[0]
     2 base_folder = os.path.split(sys.path[0])[0]
     3 sys.path.append(os.path.join(base_folder, "wxsvg", "SVGUIEditor"))
     3 sys.path.append(os.path.join(base_folder, "wxsvg", "SVGUIEditor"))
     4 sys.path.append(os.path.join(base_folder, "plcopeneditor", "graphics"))
     4 sys.path.append(os.path.join(base_folder, "plcopeneditor", "graphics"))
     5 
     5 
     6 import wx
     6 import wx, subprocess
     7 
     7 
     8 from SVGUIGenerator import *
     8 from SVGUIGenerator import *
     9 from SVGUIControler import *
     9 from SVGUIControler import *
    10 from SVGUIEditor import *
    10 from SVGUIEditor import *
    11 from FBD_Objects import *
    11 from FBD_Objects import *
    12 
    12 
    13 from wxPopen import ProcessLogger
    13 from wxPopen import ProcessLogger
    14 import subprocess
       
    15 from wx.wxsvg import SVGDocument
    14 from wx.wxsvg import SVGDocument
       
    15 from docutils import *
    16 
    16 
    17 [ID_SVGUIEDITORFBDPANEL, 
    17 [ID_SVGUIEDITORFBDPANEL, 
    18 ] = [wx.NewId() for _init_ctrls in range(1)]
    18 ] = [wx.NewId() for _init_ctrls in range(1)]
    19 
    19 
    20 SVGUIFB_Types = {ITEM_CONTAINER : "Container",
    20 SVGUIFB_Types = {ITEM_CONTAINER : "Container",
   165                     self.logger.write_error("No such XML file: %s\n"%xmlpath)
   165                     self.logger.write_error("No such XML file: %s\n"%xmlpath)
   166             dialog.Destroy()
   166             dialog.Destroy()
   167 
   167 
   168     def _StartInkscape(self):
   168     def _StartInkscape(self):
   169         if not self._View:
   169         if not self._View:
   170             svgfile = os.path.join(self.PlugPath(), "gui.svg")
   170 		svgfile = os.path.join(self.PlugPath(), "gui.svg")		
   171             popenargs = []
   171 		if not os.path.isfile(svgfile):
   172 
   172 		    svgfile = None
   173             if wx.Platform == '__WXMSW__':
   173 		open_svg(svgfile)
   174                 popenargs.append(os.path.join(base_folder, "Inkscape", "inkscape.exe"))
       
   175             else:
       
   176                 popenargs.append("/usr/bin/inkscape")
       
   177 
       
   178             if os.path.isfile(svgfile):
       
   179                 popenargs.append(svgfile)
       
   180 
       
   181             subprocess.Popen(popenargs).pid
       
   182 
   174 
   183     PluginMethods = [
   175     PluginMethods = [
   184         {"bitmap" : os.path.join("images","HMIEditor"),
   176         {"bitmap" : os.path.join("images","HMIEditor"),
   185          "name" : "HMI Editor",
   177          "name" : "HMI Editor",
   186          "tooltip" : "HMI Editor",
   178          "tooltip" : "HMI Editor",