Changeset 399


Ignore:
Timestamp:
06/01/2011 05:56:12 PM (12 years ago)
Author:
marcus
Message:

minor fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • SHX/trunk/sandbox/traceplotter.py

    r396 r399  
    11# -*- coding: utf-8 -*- 
     2 
     3import time 
     4print time.time(), "start-up" 
    25 
    36import wx 
     
    3437 
    3538    def load(self, fname=None): 
    36         if not fname: 
    37             st = read() 
    38         else: 
    39             try: 
    40                 st = read(fname) 
    41             except Exception, e: 
    42                 print e.message 
    43                 return 
     39        print time.time(), "Loading %s..." % fname 
     40        try: 
     41            st = read(fname) 
     42            self.tr = st[0] 
     43        except Exception, e: 
     44            print time.time(), e.message 
    4445 
    45         print "Loading %s..." % fname 
    46         self.tr = st[0] 
     46        if hasattr(self, "start"): 
     47            delattr(self, "start") 
     48            delattr(self, "end") 
    4749 
    4850    def OnIdle(self, evt): 
     
    5860        self.width = width 
    5961 
    60         start = self.start = self.tr.stats.starttime - 36 
    61         end = self.end = self.tr.stats.endtime + 36 
     62        start = self.start = getattr(self, "start", self.tr.stats.starttime) 
     63        end = self.end = getattr(self, "end", self.tr.stats.endtime) 
    6264 
     65        print time.time(), "Preparing plotting data..." 
    6366        self.tr.shxPrepareImageData(width, height, (start, end), zoom=0.9) 
    6467 
     
    8386            portion = plotStartSec / (end - start) 
    8487            offsetX = portion * width 
    85             print portion, offsetX 
     88            print time.time(), portion, offsetX 
    8689 
    8790        dc2 = wx.AutoBufferedPaintDCFactory(self) 
     
    9497        try: 
    9598            fname = sys.argv[1] 
     99            self.dirname, self.filename = os.path.split(fname) 
    96100        except IndexError: 
    97101            fname = None 
     
    102106        menuBar = wx.MenuBar() 
    103107        firstmenu = wx.Menu() 
    104         read = wx.MenuItem(firstmenu, wx.NewId(), 'Re&ad...\tCtrl+A') 
     108        read = wx.MenuItem(firstmenu, wx.NewId(), 'Re&ad...\tr') 
    105109        self.Bind(wx.EVT_MENU, self.onRead, id=read.GetId()) 
    106110        firstmenu.AppendItem(read) 
     
    119123        self.SetAcceleratorTable(self.Accelerators) 
    120124 
    121         self.Bind(wx.EVT_CHAR_HOOK, self.onKeyDown) 
     125#        self.Bind(wx.EVT_CHAR_HOOK, self.onKeyDown) 
    122126 
    123127        self.Show() 
     
    125129    def onKeyDown(self, evt): 
    126130        kc = evt.GetKeyCode() 
    127         if kc == 114: # lower-case R 
     131        if kc == ord("r"): 
    128132            self.onRead(evt) 
    129133        else: 
    130             print "key code", kc 
     134            print time.time(), "key code", kc 
    131135 
    132136    def onQuit(self, evt): 
     
    137141        self.dirname = getattr(self, "dirname", "") 
    138142        self.filename = getattr(self, "filename", "") 
     143        fqpn_recent = os.path.join(self.dirname, self.filename) 
     144         
    139145        dlg = wx.FileDialog(self, "Choose a file", self.dirname, "", "*.*", wx.OPEN) 
    140146        if dlg.ShowModal() == wx.ID_OK: 
     
    144150 
    145151        fqpn = os.path.join(self.dirname, self.filename) 
    146         self.SetStatusText(fqpn) 
    147         self.canvas.load(fqpn) 
     152 
     153        # only update if new file 
     154        if fqpn != fqpn_recent: 
     155            self.SetStatusText(fqpn) 
     156            self.canvas.load(fqpn) 
    148157 
    149158def main(): 
    150159    app = wx.App(False) 
    151     frame = MyFrame(None, 'Trace Plotter Test') 
     160    _ = MyFrame(None, 'Trace Plotter Test') 
    152161    app.MainLoop() 
    153162 
Note: See TracChangeset for help on using the changeset viewer.