# this is like the addDigitizer, but records the range. from org.das2.components import DataPointRecorder import java.util.HashMap dpr= DataPointRecorder() addTab( 'digitizer', dpr ) ## add the box selector to the current plot ######################### plot= dom.controller.plot.controller.dasPlot from org.das2.event import BoxSelectorMouseModule,CrossHairRenderer mm= BoxSelectorMouseModule.create( plot, 'digitizer' ) mm.keyEvents= True # keystoke will accept and document the gesture mm.releaseEvents= False def boxSelected( event ): x= java.util.HashMap() x['dx']= event.getXRange().width() x['dy']= event.getYRange().width() x['key']= event.getPlane('keyChar') dpr.addDataPoint( event.getXRange().min(), event.getYRange().min(), x ) setStatus('range added to digitizer tab: '+event.getXRange().toString() + ' ' + event.getYRange().toString() ) mm.boxSelected=boxSelected plot.getDasMouseInputAdapter().setPrimaryModule(mm) showMessageDialog('drag a box and press a key to select the box.')