Changeset 1115


Ignore:
Timestamp:
14.01.2016 22:46:36 (4 years ago)
Author:
klaus
Message:

first menu entries

Location:
SHX/trunk/SeismicHandler
Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • SHX/trunk/SeismicHandler/modules/wx_.py

    r1100 r1115  
    125125            MARGINS = margins 
    126126     
    127     def _sendShCommand( self, cmdstring, name="default" ): 
    128         "Send command to command line interpreter." 
    129         msgs.sendMessage("ui.command", cmd=cmdstring, name=name ) 
    130         #print "dbg: send command", cmdstring 
    131      
    132127    def closePhase( self, trace, abstime ): 
    133128        "Return name and type of closest phase or None." 
     
    147142        wheel = evt.GetWheelRotation() 
    148143        if wheel > 0: 
    149             self._sendShCommand( "zoom/rel all 2" ) 
     144            _sendShCommand( "zoom/rel all 2" ) 
    150145        elif wheel < 0: 
    151             self._sendShCommand( "zoom/rel all 0.5" )             
     146            _sendShCommand( "zoom/rel all 0.5" )             
    152147        evt.Skip() 
    153148 
     
    167162        #    if cphase: 
    168163        #        station = "%s.%s" % (trace.stats.network,trace.stats.station) 
    169         #        self._sendShCommand( 
     164        #        _sendShCommand( 
    170165        #            "phase clear %s %s %s" % (cphase[0],station,cphase[1]) 
    171166        #        ) 
     
    186181                station = "%s.%s" % (trace.stats.network,trace.stats.station) 
    187182                station = station.upper() 
    188                 self._sendShCommand( 
     183                _sendShCommand( 
    189184                    "@PHASE CLEAR %s %s %s" % (cphase[0],station,cphase[1]) \ 
    190185                    +"\n@PHASE DEFAULT_PHASE %s" % cphase[0] 
     
    330325            if self.last_defined_phase: 
    331326                station = "%s.%s" % (trace.stats.network,trace.stats.station) 
    332                 self._sendShCommand( "@PHASE CLEAR %s %s manual" % ( 
     327                _sendShCommand( "@PHASE CLEAR %s %s manual" % ( 
    333328                    self.last_defined_phase,station.upper()) ) 
    334329        elif trace and self.parent._user_selection: 
    335330            station = "%s.%s" % (trace.stats.network,trace.stats.station) 
    336             self._sendShCommand( "@PHASE DEFINE %s %s ;;; %s" % (station.upper(), 
     331            _sendShCommand( "@PHASE DEFINE %s %s ;;; %s" % (station.upper(), 
    337332                fromUTCDateTime(tracetime),trace.stats.channel[-1].upper()), 
    338333                name="mouse evt" ) 
     
    12591254 
    12601255        self.SetPosition(position) 
     1256        self.addMenuEntries() 
    12611257        self.canvas = traceCanvas(self, []) 
    12621258        self.CreateStatusBar() 
     
    12661262        self.Enable() 
    12671263        self._user_selection = 999. 
     1264        self.menu_entry_id = 10000 
     1265     
     1266    def addMenuEntries( self ): 
     1267        menubar = wx.MenuBar() 
     1268        # file menu 
     1269        fileMenu = wx.Menu() 
     1270        self.addEntry( fileMenu, '&Quit\tCtrl+Q', 'Quit Graphics', self.OnQuit ) 
     1271        # window menu 
     1272        windowMenu = wx.Menu() 
     1273        self.addEntry( windowMenu, '&All Norm\tCtrl+A', 
     1274            'Normalize All Traces Together', self.OnAllNorm ) 
     1275        self.addEntry( windowMenu, '&Single Norm\tCtrl+S', 
     1276            'Normalize Traces Separately', self.OnSingleNorm ) 
     1277        # traces menu 
     1278        tracesMenu = wx.Menu() 
     1279        self.addEntry( tracesMenu, '&Demean\tCtrl+D', 
     1280            'Remove mean value from all traces', self.OnDemean ) 
     1281        # put menus and menu bar in place 
     1282        menubar.Append( fileMenu, '&File' ) 
     1283        menubar.Append( windowMenu, '&Window' ) 
     1284        menubar.Append( tracesMenu, '&Traces' ) 
     1285        self.SetMenuBar( menubar ) 
     1286        self.Centre() 
     1287     
     1288    def addEntry( self, menutitle, entrytext, entrydescr, callback ): 
     1289        #self.menu_entry_id += 1 
     1290        #qmi = wx.MenuItem( menutitle, self.menu_entry_id, entrytext, 
     1291        #    help=entrydescr ) 
     1292        #menutitle.AppendItem( qmi ) 
     1293        #self.Bind( wx.EVT_MENU, callback, id=self.menu_entry_id )         
     1294        item = menutitle.Append( wx.ID_ANY, entrytext, entrydescr ) 
     1295        self.Bind( wx.EVT_MENU, callback, item ) 
     1296 
     1297    def OnQuit( self, e ): 
     1298        # Cannot quit SHX, _sendShCommand waits for command to be executed 
     1299        # i.e. no way to terminate wx smoothly. Quit SHX after Close also not 
     1300        # possible, runs into communication issues between threads. 
     1301        #_sendShCommand( "quit y" ) 
     1302        self.Close() 
     1303     
     1304    def OnAllNorm( self, e ): 
     1305        _sendShCommand( 'norm aw' ) 
     1306 
     1307    def OnSingleNorm( self, e ): 
     1308        _sendShCommand( 'norm sw' ) 
     1309 
     1310    def OnDemean( self, e ): 
     1311        _sendShCommand( 'demean all' ) 
    12681312 
    12691313    def redraw(self): 
    12701314        self.canvas.OnPaint(None) 
    12711315 
     1316 
     1317def _sendShCommand( cmdstring, name="default" ): 
     1318    "Send command to command line interpreter." 
     1319    msgs.sendMessage("ui.command", cmd=cmdstring, name=name ) 
     1320 
     1321     
    12721322 
    12731323def ui_events(func): 
Note: See TracChangeset for help on using the changeset viewer.