Ejemplo n.º 1
0
 def ScanScreen(self, event):	# Look for signals on the current screen
   lst = self.hardware.rpt_freq_list
   app = self.application
   vfo = app.VFO
   tx_freq = vfo + app.txFreq
   sample_rate = app.sample_rate
   limit = int(sample_rate / 2.0 * self.config.display_fraction * 0.95)	# edge of screen
   self.scan_n1 = None
   self.scan_n = None
   for n in range(len(lst)):
     if lst[n] > vfo - limit and self.scan_n1 is None:
       self.scan_n1 = n	# inclusive
     if lst[n] >= tx_freq and self.scan_n is None:
       self.scan_n = n
     if lst[n] > vfo + limit:
       break
     self.scan_n2 = n	# inclusive
   if self.scan_n is None:
     self.scan_n = self.scan_n1
   if self.direction > 0:	# left click; go up
     seq = range(self.scan_n + 1, self.scan_n2 + 1)
     if not self.keep_going:
       seq += range(self.scan_n1, self.scan_n)
   else:					# right click; go down
     seq = range(self.scan_n - 1, self.scan_n1 - 1, -1)
     if not self.keep_going:
       seq += range(self.scan_n2, self.scan_n, -1)
   for n in seq:
     freq = lst[n]
     if not QS.get_squelch(freq - vfo):
       app.ChangeHwFrequency(freq - vfo, vfo, 'Repeater', event)
       return True		# frequency was changed
   return False	# frequency was not changed
Ejemplo n.º 2
0
 def ScanScreen(self, event):	# Look for signals on the current screen
   lst = self.hardware.rpt_freq_list
   app = self.application
   vfo = app.VFO
   tx_freq = vfo + app.txFreq
   sample_rate = app.sample_rate
   limit = int(sample_rate / 2.0 * self.config.display_fraction * 0.95)	# edge of screen
   self.scan_n1 = None
   self.scan_n = None
   for n in range(len(lst)):
     if lst[n] > vfo - limit and self.scan_n1 is None:
       self.scan_n1 = n	# inclusive
     if lst[n] >= tx_freq and self.scan_n is None:
       self.scan_n = n
     if lst[n] > vfo + limit:
       break
     self.scan_n2 = n	# inclusive
   if self.scan_n is None:
     self.scan_n = self.scan_n1
   if self.direction > 0:	# left click; go up
     seq = range(self.scan_n + 1, self.scan_n2 + 1)
     if not self.keep_going:
       seq += range(self.scan_n1, self.scan_n)
   else:					# right click; go down
     seq = range(self.scan_n - 1, self.scan_n1 - 1, -1)
     if not self.keep_going:
       seq += range(self.scan_n2, self.scan_n, -1)
   for n in seq:
     freq = lst[n]
     if not QS.get_squelch(freq - vfo):
       app.ChangeHwFrequency(freq - vfo, vfo, 'Repeater', event)
       return True		# frequency was changed
   return False	# frequency was not changed
Ejemplo n.º 3
0
 def OnTimerEvent(self, event):
   if QS.get_squelch(self.application.txFreq):
     if self.keep_going:
       if not self.ScanScreen(event):
         self.MoveVfo(event)
     else:
       self.ScanScreen(event)
   elif not self.scanner:
     self.scan_timer.Stop()
Ejemplo n.º 4
0
 def OnTimerEvent(self, event):
   if QS.get_squelch(self.application.txFreq):
     if self.keep_going:
       if not self.ScanScreen(event):
         self.MoveVfo(event)
     else:
       self.ScanScreen(event)
   elif not self.scanner:
     self.scan_timer.Stop()