Changeset 782 for SHX/trunk


Ignore:
Timestamp:
10/10/12 16:59:31 (8 years ago)
Author:
marcus
Message:
  • working on graphics, plotting window can be closed now programmatically
  • plotter window can re-opened
Location:
SHX/trunk/SeismicHandler
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • SHX/trunk/SeismicHandler/commands/wdw.py

    r763 r782  
    3737            raise ShxError(msg, status=1727) 
    3838 
    39         if self.parameters[0].lower() == "create": 
     39        command = self.parameters[0].lower() 
     40        if command == "create": 
    4041            if not "x" in wname: 
    4142                raise ShxError("Only graphical window current supported!") 
     
    4445            # connect to redraw event 
    4546            data.append(True) 
     47        elif command == "delete": 
     48            data = [] 
    4649 
    47  
    48         method(wnumber, *data) 
     50        if data: 
     51            method(wnumber, *data) 
     52        else: 
     53            method(wnumber) 
    4954 
    5055 
  • SHX/trunk/SeismicHandler/modules/screen.py

    r765 r782  
    8686            log_message( 
    8787                "warning.WindowManager", 
    88                 "attempt to open window twice, canceled." 
     88                ("Attempt to open window twice, canceled.\n" 
     89                 "\t Maybe you want to run 'wdw delete %s'\n" 
     90                 "\t (this information is only shown once.)") % id 
    8991            ) 
    9092            return 
     
    102104 
    103105    def delete(self, id): 
    104         """Documentation""" 
    105         pass 
     106        try: 
     107            window = self.list.pop(id) 
     108        except: 
     109            return 
     110 
     111        window.stop() 
    106112 
    107113    def top(self, id): 
     
    125131        self.name = "TracePlotter" 
    126132        self.redraw = False 
    127         self.__running = False 
    128133        self.dimensions = dimension 
    129134 
     
    134139 
    135140    def trigger_redraw(self, payload=None): 
     141        if not self.isAlive(): 
     142            return 
     143 
    136144        if get_runtime("rdnr", 0) > 0: 
    137145            return 
     
    145153        Exit main loop of wx. 
    146154        """ 
     155        if self.isAlive(): 
     156            self.plotter.Hide() 
    147157        self.app.ExitMainLoop() 
    148158        super(TracePlotter, self).stop() 
  • SHX/trunk/SeismicHandler/modules/wx_.py

    r765 r782  
    556556 
    557557        if self.traceOrder in [0, 1]: 
    558             theight = (height - TIMESCALE) // numTraces 
     558            if numTraces: 
     559                theight = (height - TIMESCALE) // numTraces 
     560            else: 
     561                theight = height - TIMESCALE 
    559562            pltwidth = width - STATION_INFO - MARGIN 
    560563        elif self.traceOrder in [2, 3]: 
    561             theight = (width - TIMESCALE) // numTraces 
     564            if numTraces: 
     565                theight = (width - TIMESCALE) // numTraces 
     566            theight = width - TIMESCALE 
    562567            pltwidth = height - STATION_INFO - MARGIN 
    563568        else: 
     
    574579        canvas.Clear() 
    575580        canvas.SetFont(wx.Font(8, wx.SWISS, wx.NORMAL, wx.NORMAL)) 
     581 
     582        if numTraces == 0: 
     583            return 
    576584 
    577585        if self.traceOrder == 0: 
Note: See TracChangeset for help on using the changeset viewer.