--- a/PLCOpenEditor.py Tue Dec 08 17:10:30 2009 +0100
+++ b/PLCOpenEditor.py Wed Dec 09 10:19:35 2009 +0100
@@ -1009,16 +1009,6 @@
self.VariablePanelIndexer.RemoveVariablePanel(tagname)
self.TabsOpened.DeletePage(idx)
- def CloseDebugTabs(self):
- if self.EnableDebug:
- idxs = range(self.TabsOpened.GetPageCount())
- idxs.reverse()
- for idx in idxs:
- window = self.TabsOpened.GetPage(idx)
- if window.IsDebugging():
- self.TabsOpened.DeletePage(idx)
- self.DebugVariablePanel.ResetGrid()
-
def OnUndoMenu(self, event):
self.Controler.LoadPrevious()
self.CloseTabsWithoutModel()
@@ -1872,6 +1862,20 @@
if isinstance(editor, GraphicViewer):
editor.ResetView()
+ def CloseDebugTabs(self):
+ if self.EnableDebug:
+ idxs = range(self.TabsOpened.GetPageCount())
+ idxs.reverse()
+ for idx in idxs:
+ window = self.TabsOpened.GetPage(idx)
+ if window.IsDebugging():
+ self.TabsOpened.DeletePage(idx)
+ self.DebugVariablePanel.ResetGrid()
+
+ def AddDebugVariable(self, iec_path):
+ if self.EnableDebug:
+ self.DebugVariablePanel.InsertValue(iec_path)
+
#-------------------------------------------------------------------------------
# Library Tree Management Functions
#-------------------------------------------------------------------------------
@@ -4029,7 +4033,7 @@
message = _("Invalid value \"%s\" for debug variable")%data
values = None
if values is not None and values[1] == "debug":
- self.ParentWindow.InsertValue(row, values[0])
+ self.ParentWindow.InsertValue(values[0], row)
if message is not None:
wx.CallAfter(self.ShowMessage, message)
@@ -4144,11 +4148,11 @@
self.Table.ResetView(self.VariablesGrid)
self.Thaw()
- def GetForceVariableMenuFunction(self, iec_path):
+ def GetForceVariableMenuFunction(self, iec_path, item):
iec_type = self.GetDataType(iec_path)
def ForceVariableFunction(event):
if iec_type is not None:
- dialog = ForceVariableDialog(self, iec_type)
+ dialog = ForceVariableDialog(self, iec_type, str(item.GetValue()))
if dialog.ShowModal() == wx.ID_OK:
self.ForceDataValue(iec_path, dialog.GetValue())
return ForceVariableFunction
@@ -4166,7 +4170,7 @@
menu = wx.Menu(title='')
new_id = wx.NewId()
AppendMenu(menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text=_("Force value"))
- self.Bind(wx.EVT_MENU, self.GetForceVariableMenuFunction(iec_path.upper()), id=new_id)
+ self.Bind(wx.EVT_MENU, self.GetForceVariableMenuFunction(iec_path.upper(), self.Table.GetItem(row)), id=new_id)
new_id = wx.NewId()
AppendMenu(menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text=_("Release value"))
self.Bind(wx.EVT_MENU, self.GetReleaseVariableMenuFunction(iec_path.upper()), id=new_id)
@@ -4193,7 +4197,9 @@
self.MoveValue(self.VariablesGrid.GetGridCursorRow(), 1)
event.Skip()
- def InsertValue(self, idx, iec_path):
+ def InsertValue(self, iec_path, idx = None):
+ if idx is None:
+ idx = self.Table.GetNumberRows()
for item in self.Table.GetData():
if iec_path == item.GetVariable():
return