31 class MiniTextControler: |
31 class MiniTextControler: |
32 |
32 |
33 def __init__(self, filepath): |
33 def __init__(self, filepath): |
34 self.FilePath = filepath |
34 self.FilePath = filepath |
35 |
35 |
36 def SetCurrentElementEditingText(self, text): |
36 def SetEditedElementText(self, tagname, text): |
37 file = open(self.FilePath, "w") |
37 file = open(self.FilePath, "w") |
38 file.write(text) |
38 file.write(text) |
39 file.close() |
39 file.close() |
40 |
40 |
41 def GetCurrentElementEditingText(self): |
41 def GetEditedElementText(self, tagname): |
42 if os.path.isfile(self.FilePath): |
42 if os.path.isfile(self.FilePath): |
43 file = open(self.FilePath, "r") |
43 file = open(self.FilePath, "r") |
44 text = file.read() |
44 text = file.read() |
45 file.close() |
45 file.close() |
46 return text |
46 return text |
47 return "" |
47 return "" |
|
48 |
|
49 def GetEditedElementInterfaceVars(self, tagname): |
|
50 return [] |
|
51 |
|
52 def GetEditedElementType(self, tagname): |
|
53 return "program" |
|
54 |
|
55 def GetBlockTypes(self, tagname = ""): |
|
56 return [] |
|
57 |
|
58 def GetEnumeratedDataValues(self): |
|
59 return [] |
48 |
60 |
49 def StartBuffering(self): |
61 def StartBuffering(self): |
50 pass |
62 pass |
51 |
63 |
52 def EndBuffering(self): |
64 def EndBuffering(self): |
899 # Link object files into something that can be executed on target |
911 # Link object files into something that can be executed on target |
900 |
912 |
901 def _showIECcode(self, logger): |
913 def _showIECcode(self, logger): |
902 plc_file = self._getIECcodepath() |
914 plc_file = self._getIECcodepath() |
903 new_dialog = wx.Frame(None) |
915 new_dialog = wx.Frame(None) |
904 ST_viewer = TextViewer(new_dialog, None, None) |
916 ST_viewer = TextViewer(new_dialog, "", None, None) |
905 #ST_viewer.Enable(False) |
917 #ST_viewer.Enable(False) |
906 ST_viewer.SetKeywords(IEC_KEYWORDS) |
918 ST_viewer.SetKeywords(IEC_KEYWORDS) |
907 try: |
919 try: |
908 text = file(plc_file).read() |
920 text = file(plc_file).read() |
909 except: |
921 except: |
919 # Eventually create build dir |
931 # Eventually create build dir |
920 if not os.path.exists(buildpath): |
932 if not os.path.exists(buildpath): |
921 os.mkdir(buildpath) |
933 os.mkdir(buildpath) |
922 |
934 |
923 controler = MiniTextControler(self._getIECrawcodepath()) |
935 controler = MiniTextControler(self._getIECrawcodepath()) |
924 ST_viewer = TextViewer(new_dialog, None, controler) |
936 ST_viewer = TextViewer(new_dialog, "", None, controler) |
925 #ST_viewer.Enable(False) |
937 #ST_viewer.Enable(False) |
926 ST_viewer.SetKeywords(IEC_KEYWORDS) |
938 ST_viewer.SetKeywords(IEC_KEYWORDS) |
927 ST_viewer.RefreshView() |
939 ST_viewer.RefreshView() |
928 |
940 |
929 new_dialog.Show() |
941 new_dialog.Show() |
969 "method" : _Run}, |
981 "method" : _Run}, |
970 {"bitmap" : os.path.join("images", "ShowIECcode.png"), |
982 {"bitmap" : os.path.join("images", "ShowIECcode.png"), |
971 "name" : "Show IEC code", |
983 "name" : "Show IEC code", |
972 "tooltip" : "Show IEC code generated by PLCGenerator", |
984 "tooltip" : "Show IEC code generated by PLCGenerator", |
973 "method" : _showIECcode}, |
985 "method" : _showIECcode}, |
974 {"name" : "Edit IEC raw code", |
986 {"name" : "Edit raw IEC code", |
975 "tooltip" : "Show IEC code generated by PLCGenerator", |
987 "tooltip" : "Edit raw IEC code added to code generated by PLCGenerator", |
976 "method" : _editIECrawcode} |
988 "method" : _editIECrawcode} |
977 ] |
989 ] |
978 |
990 |