controls/DebugVariablePanel.py
changeset 927 bd3e5b65e8be
parent 925 5f9dd88a605b
child 928 a94e7fea7051
equal deleted inserted replaced
926:2323981f5d41 927:bd3e5b65e8be
  1160             self.RefreshView(only_values=True)
  1160             self.RefreshView(only_values=True)
  1161         DebugViewer.RefreshNewData(self, *args, **kwargs)
  1161         DebugViewer.RefreshNewData(self, *args, **kwargs)
  1162     
  1162     
  1163     def NewDataAvailable(self, tick, *args, **kwargs):
  1163     def NewDataAvailable(self, tick, *args, **kwargs):
  1164         if USE_MPL and tick is not None:
  1164         if USE_MPL and tick is not None:
       
  1165             if len(self.Ticks) == 0:
       
  1166                 self.StartTick = tick 
  1165             self.Ticks = numpy.append(self.Ticks, [tick])
  1167             self.Ticks = numpy.append(self.Ticks, [tick])
  1166             if not self.Fixed or tick < self.StartTick + self.CurrentRange:
  1168             if not self.Fixed or tick < self.StartTick + self.CurrentRange:
  1167                 self.StartTick = max(self.StartTick, tick - self.CurrentRange)
  1169                 self.StartTick = max(self.StartTick, tick - self.CurrentRange)
  1168                 self.ResetCursorTick(False)
  1170                 self.ResetCursorTick(False)
  1169         DebugViewer.NewDataAvailable(self, tick, *args, **kwargs)
  1171         DebugViewer.NewDataAvailable(self, tick, *args, **kwargs)
  1338             self.Thaw()
  1340             self.Thaw()
  1339     
  1341     
  1340     def ResetView(self):
  1342     def ResetView(self):
  1341         self.DeleteDataConsumers()
  1343         self.DeleteDataConsumers()
  1342         if USE_MPL:
  1344         if USE_MPL:
       
  1345             self.Fixed = False
  1343             for panel in self.GraphicPanels:
  1346             for panel in self.GraphicPanels:
  1344                 panel.Destroy()
  1347                 panel.Destroy()
  1345             self.GraphicPanels = []
  1348             self.GraphicPanels = []
  1346             self.RefreshGraphicsSizer()
  1349             self.RefreshGraphicsSizer()
  1347         else:
  1350         else:
  1446             self.CanvasRange.SetValue(str(self.CurrentRange))
  1449             self.CanvasRange.SetValue(str(self.CurrentRange))
  1447         wx.CallAfter(self.RefreshRange)
  1450         wx.CallAfter(self.RefreshRange)
  1448         event.Skip()
  1451         event.Skip()
  1449     
  1452     
  1450     def OnResetButton(self, event):
  1453     def OnResetButton(self, event):
  1451         self.StartTick = 0
  1454         self.ResetGraphicsValues()
  1452         self.Fixed = False
       
  1453         for panel in self.GraphicPanels:
       
  1454             panel.ResetData()
       
  1455         self.ForceRefresh()
       
  1456         event.Skip()
  1455         event.Skip()
  1457 
  1456 
  1458     def OnCurrentButton(self, event):
  1457     def OnCurrentButton(self, event):
  1459         if len(self.Ticks) > 0:
  1458         if len(self.Ticks) > 0:
  1460             self.StartTick = max(self.Ticks[0], self.Ticks[-1] - self.CurrentRange)
  1459             self.StartTick = max(self.Ticks[0], self.Ticks[-1] - self.CurrentRange)
  1693     
  1692     
  1694     def ResetGraphicsValues(self):
  1693     def ResetGraphicsValues(self):
  1695         if USE_MPL:
  1694         if USE_MPL:
  1696             self.Ticks = numpy.array([])
  1695             self.Ticks = numpy.array([])
  1697             self.StartTick = 0
  1696             self.StartTick = 0
       
  1697             self.Fixed = False
  1698             for panel in self.GraphicPanels:
  1698             for panel in self.GraphicPanels:
  1699                 panel.ResetData()
  1699                 panel.ResetData()
  1700 
  1700 
  1701     def RefreshGraphicsWindowScrollbars(self):
  1701     def RefreshGraphicsWindowScrollbars(self):
  1702         xstart, ystart = self.GraphicsWindow.GetViewStart()
  1702         xstart, ystart = self.GraphicsWindow.GetViewStart()