コード例 #1
0
ファイル: views.py プロジェクト: chadwyck-w/ui_flyby
    def __init__(self, model, controller):
        self.model = model
        self.controller = controller
        # Create button labels with current model values.

        # Create buttons.
        self.buttons = ui.ButtonGrid(model.width, model.height, 6, 6)
        self.buttons.add(5,
                         0,
                         'PREV',
                         click=self.controller._change_to_previous)
        self.buttons.add(5, 1, '+', click=self.zoomIn)
        self.buttons.add(5, 2, '-', click=self.zoomOut)
        self.buttons.add(5, 3, 'SAT', click=self.setSat)
        self.buttons.add(5, 4, 'VECT', click=self.setVect)
        self.buttons.add(5, 5, 'RES', click=self.reset_map)
        #self.buttons.add(5, 4, 'X', click=self.quit_click, bg_color=ui_flyby.CANCEL_BG)

        print(
            os.path.join(os.path.dirname(__file__), "planes",
                         "boeing-737-256.png"))

        self.the_plane = pygame.image.load(
            os.path.join(os.path.dirname(__file__), "planes",
                         "boeing-737-256.png"))
        self.mini_plane = pygame.image.load(
            os.path.join(os.path.dirname(__file__), "planes",
                         "boeing-737-256-mini.png"))

        self.zoom = self.model.tile_zoom
        self.w, self.h = 5, 5
        self.tiles = [[{} for y in xrange(0, self.h)]
                      for x in xrange(0, self.w)]
コード例 #2
0
    def __init__(self, model, controller):
        self.model = model
        self.controller = controller
        # Create button labels with current model values.

        # Create buttons.
        self.buttons = ui.ButtonGrid(model.width, model.height, 6, 5)
        self.buttons.add(0,
                         0,
                         'X',
                         click=self.quit_click,
                         bg_color=minimirror.MAIN_BG,
                         fg_color=minimirror.BUTTON_FG)
        self.buttons.add(0,
                         4,
                         '.',
                         click=self.controller.change_to_nothing,
                         bg_color=minimirror.MAIN_BG,
                         fg_color=minimirror.BUTTON_BG)
        self.buttons.add(4,
                         0,
                         '',
                         click=self.controller.change_to_weather_detail,
                         rowspan=5,
                         bg_color=minimirror.MAIN_BG,
                         fg_color=minimirror.BUTTON_BG)
        self.plane_buttons = None
コード例 #3
0
ファイル: views.py プロジェクト: chadwyck-w/ui_flyby
    def __init__(self, model, controller):
        self.model = model
        self.controller = controller
        self.zoom = self.model.tile_zoom
        # Create button labels with current model values.

        # Create buttons.
        self.buttons = ui.ButtonGrid(model.width, model.height, 6, 6)
        self.buttons.add(5,
                         0,
                         'LIST',
                         click=self.controller.change_to_planelist)
        self.buttons.add(5, 1, '+', click=self.zoomIn)
        self.buttons.add(5, 2, '-', click=self.zoomOut)
        self.buttons.add(5, 3, 'SAT', click=self.setSat)
        self.buttons.add(5, 4, 'VECT', click=self.setVect)
        self.buttons.add(5, 5, 'RES', click=self.reset_map)

        self.the_plane = pygame.image.load(
            os.path.join(os.path.dirname(__file__), "planes",
                         "boeing-737-256.png"))
        self.mini_plane = pygame.image.load(
            os.path.join(os.path.dirname(__file__), "planes",
                         "boeing-737-256-mini.png"))

        self.w, self.h = 5, 5
        self.tiles = [[{} for y in xrange(0, self.h)]
                      for x in xrange(0, self.w)]
        self.zoom = self.model.tile_zoomed_out
        self.last_mouse = (0, 0)
        self.offset = (0, 0)

        self.plane_buttons = None
コード例 #4
0
        def __init__(self, model, label_text, unit_text, initial='0', accept=None, cancel=None):
                """Create boolean dialog for provided model and with given label and unit
                text.  Can provide an optional initial value (default to True), an accept
                callback function which is called when the user accepts the dialog (and
                the chosen value will be sent as a single parameter), a cancel callback
                which is called when the user cancels.
                """
                self.value = str(initial)
		self.unit_text = unit_text
                self.model = model
                self.accept = accept
                self.cancel = cancel
                # Initialize button grid.
                self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
                self.buttons.add(0, 1, 'False', font_size=freqshow.NUM_FONT, click=self.false_click)
                self.buttons.add(1, 1, 'True', font_size=freqshow.NUM_FONT, click=self.true_click)
                self.buttons.add(3, 3, 'CANCEL', click=self.cancel_click,
                        bg_color=freqshow.CANCEL_BG)
                self.buttons.add(3, 4, 'ACCEPT', click=self.accept_click,
                        bg_color=freqshow.ACCEPT_BG)
                # Build label text for faster rendering.
                self.input_rect = (0, 0, self.model.width, self.buttons.row_size)
                self.label = ui.render_text(label_text, size=freqshow.MAIN_FONT,
                        fg=freqshow.INPUT_FG, bg=freqshow.INPUT_BG)
                self.label_pos = ui.align(self.label.get_rect(), self.input_rect,
                        horizontal=ui.ALIGN_LEFT, hpad=2)
コード例 #5
0
ファイル: views.py プロジェクト: rgrokett/FreqShow
 def __init__(self, model, controller):
     self.model = model
     self.controller = controller
     # Create button labels with current model values.
     centerfreq_text = 'CENTER FREQ: {0:0.2f} MHz'.format(
         model.get_center_freq())
     samplerate_text = 'SAMPLE RATE: {0:0.2f} MHz'.format(
         model.get_sample_rate())
     gain_text = 'GAIN: {0} dB'.format(model.get_gain())
     min_text = 'MIN: {0} dB'.format(model.get_min_string())
     max_text = 'MAX: {0} dB'.format(model.get_max_string())
     # Create buttons.
     self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
     self.buttons.add(0,
                      0,
                      centerfreq_text,
                      colspan=4,
                      click=self.centerfreq_click)
     self.buttons.add(0,
                      1,
                      samplerate_text,
                      colspan=4,
                      click=self.sample_click)
     self.buttons.add(0, 2, gain_text, colspan=4, click=self.gain_click)
     self.buttons.add(0, 3, min_text, colspan=2, click=self.min_click)
     self.buttons.add(2, 3, max_text, colspan=2, click=self.max_click)
     self.buttons.add(0, 4, 'BACK', click=self.controller.change_to_main)
コード例 #6
0
ファイル: views.py プロジェクト: Qyon/FreqShow
 def __init__(self, model, controller):
     self.model = model
     self.controller = controller
     # Create button labels with current model values.
     centerfreq_text = 'IF: {0:0.3f} MHz'.format(model.get_center_freq())
     samplerate_text = 'SR: {0:0.3f} MHz'.format(model.get_sample_rate())
     trv1_if = 'T1 {0:0.3f} MHz'.format(10368.0 - 430.0)
     trv2_if = 'T2 {0:0.3f} MHz'.format(model.get_sample_rate())
     gain_text = 'GAIN: {0} dB'.format(model.get_gain())
     min_text = 'MIN: {0} dB'.format(model.get_min_string())
     max_text = 'MAX: {0} dB'.format(model.get_max_string())
     # Create buttons.
     self.buttons = ui.ButtonGrid(model.width, model.height, 8, 5)
     self.buttons.add(0,
                      0,
                      centerfreq_text,
                      colspan=4,
                      click=self.centerfreq_click)
     self.buttons.add(4,
                      0,
                      samplerate_text,
                      colspan=4,
                      click=self.sample_click)
     self.buttons.add(0, 1, trv1_if, colspan=4, click=self.centerfreq_click)
     self.buttons.add(4, 1, trv2_if, colspan=4, click=self.sample_click)
     self.buttons.add(0, 2, gain_text, colspan=8, click=self.gain_click)
     self.buttons.add(0, 3, min_text, colspan=4, click=self.min_click)
     self.buttons.add(4, 3, max_text, colspan=4, click=self.max_click)
     self.buttons.add(0,
                      4,
                      'BACK',
                      colspan=4,
                      click=self.controller.change_to_main)
     self.buttons.add(4, 4, 'OFF', colspan=4, click=self.poweroff_click)
コード例 #7
0
ファイル: views.py プロジェクト: aliveable/RTLSDR-NBTC
 def __init__(self, model, controller):
     self.model = model
     self.controller = controller
     self.buttons = ui.ButtonGrid(model.width, model.height, 10, 8)
     self.buttons.add(1,
                      0,
                      'SET',
                      click=self.controller.change_to_settings,
                      colspan=2)
     self.buttons.add(3,
                      0,
                      'STOP',
                      click=self.controller.change_to_instant,
                      colspan=2)
     self.buttons.add(5,
                      0,
                      'SWEEP',
                      click=self.controller.change_to_sweep,
                      colspan=2)
     self.buttons.add(7,
                      0,
                      'QUIT',
                      click=self.quit_click,
                      bg_color=freqshow.CANCEL_BG,
                      colspan=2)
     self.buttons.add(0, 0, '<', click=self.previous_click)
     self.buttons.add(9, 0, '>', click=self.next_click)
     self.overlay_enabled = True
     self.sweep_enabled = True
     stop_text = '{0}'.format(model.get_stop_string())
コード例 #8
0
 def __init__(self, model, controller):
     self.model      = model
     self.controller = controller
     self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
     self.buttons.add(0, 0, 'CONFIG', click=self.controller.change_to_settings)
     self.buttons.add(1, 0, 'SWITCH MODE', click=self.controller.toggle_main, colspan=2)
     self.buttons.add(3, 0, 'QUIT', click=self.quit_click, bg_color=freqshow.CANCEL_BG)
     self.overlay_enabled = True
コード例 #9
0
ファイル: views1.py プロジェクト: afandi354/spectrum-analyzer
	def __init__(self, model, controller):
		self.model      = model
		self.controller = controller
		self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
		self.buttons.add(0, 0, 'SETTING', click=self.controller.change_to_settings)
		self.buttons.add(1, 0, 'WATERFALL MODE', click=self.controller.toggle_main, colspan=2)
		self.buttons.add(3, 0, 'KELUAR', click=self.quit_click, bg_color=spektrum.CANCEL_BG)
		self.overlay_enabled = True
コード例 #10
0
	def __init__(self, model, controller):
		self.model      = model
		self.controller = controller
		self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
		self.buttons.add(0, 0, 'MODE', click=self.controller.toggle_main, bg_color=spektrum.ACCEPT_BG)
		self.buttons.add(1, 0, 'PENGATURAN', click=self.controller.change_to_settings, bg_color=(47,79,79), colspan=2)
		self.buttons.add(3, 0, 'KELUAR', click=self.quit_click, bg_color=spektrum.CANCEL_BG)
		self.overlay_enabled = True
コード例 #11
0
ファイル: views.py プロジェクト: chadwyck-w/ui_flyby
    def __init__(self, model, controller):
        self.model = model
        self.controller = controller
        # Create button labels with current model values.

        # Create buttons.
        self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
        self.buttons.add(0, 4, 'BACK', click=self.controller.change_to_main)
コード例 #12
0
ファイル: views.py プロジェクト: aliveable/RTLSDR-NBTC
    def __init__(self,
                 model,
                 label_text,
                 unit_text,
                 initial='0',
                 accept=None,
                 cancel=None,
                 has_auto=False,
                 allow_negative=False):
        """Create number dialog for provided model and with given label and unit
        text.  Can provide an optional initial value (default to 0), an accept
        callback function which is called when the user accepts the dialog (and
        the chosen value will be sent as a single parameter), a cancel callback
        which is called when the user cancels, and a has_auto boolean if an
        'AUTO' option should be given in addition to numbers.
        """
        self.value = str(initial)
        self.unit_text = unit_text
        self.model = model
        self.accept = accept
        self.cancel = cancel
        # Initialize button grid.
        self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
        self.buttons.add(0,
                         1,
                         'ENABLE',
                         font_size=freqshow.NUM_FONT,
                         click=self.enable_click,
                         colspan=2)
        self.buttons.add(2,
                         1,
                         'DISABLE',
                         font_size=freqshow.NUM_FONT,
                         click=self.disable_click,
                         colspan=2)

        self.buttons.add(0,
                         4,
                         'CANCEL',
                         click=self.cancel_click,
                         bg_color=freqshow.CANCEL_BG)
        self.buttons.add(3,
                         4,
                         'ACCEPT',
                         click=self.accept_click,
                         bg_color=freqshow.ACCEPT_BG)

        # Build label text for faster rendering.
        self.input_rect = (0, 0, self.model.width, self.buttons.row_size)
        self.label = ui.render_text(label_text,
                                    size=freqshow.MAIN_FONT,
                                    fg=freqshow.INPUT_FG,
                                    bg=freqshow.INPUT_BG)
        self.label_pos = ui.align(self.label.get_rect(),
                                  self.input_rect,
                                  horizontal=ui.ALIGN_LEFT,
                                  hpad=10)
コード例 #13
0
ファイル: views.py プロジェクト: Rotron/Frequer
	def __init__(self, model, controller):
		self.model      = model
		self.controller = controller
		self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
		self.buttons.add(0, 0, 'CONFIG', 	click=self.controller.change_to_settings)
		self.buttons.add(1, 0, '<',      	click=self.model.dec_freq, 				colspan=0.5)
		self.buttons.add(1.5, 0, 'CHANGE', 	click=self.controller.toggle_main, 		colspan=1)
		self.buttons.add(2.5, 0, '>', 		click=self.model.inc_freq, 				colspan=0.5)
		self.buttons.add(3, 0, 'X', 		click=self.quit_click, bg_color=freqshow.CANCEL_BG, font_size =100)

		#ADD BUTTONS TO RIGHT
		self.buttonsR = ui.ButtonGrid(self.model.width, self.model.height, 5, 5)
		self.buttonsR.add(3.5, 4, '/\\', 	click=self.model.inc_gain, 				colspan=0.5)
		self.buttonsR.add(4, 4, '\\/',  	click=self.model.dec_gain, 				colspan=0.5)

		self.overlay_enabled = True
		self.lasttime = 0
		self.lfreqs = []
		self.screens = 0
コード例 #14
0
ファイル: views.py プロジェクト: Qyon/FreqShow
    def __init__(self, model, controller):
        self.model = model
        self.controller = controller
        self.mode_buttons = []
        self.buttons = ui.ButtonGrid(model.width, model.height, 8, 10)
        self.buttons.add(0,
                         0,
                         'CONFIG',
                         click=self.controller.change_to_settings,
                         colspan=2)
        self.buttons.add(2,
                         0,
                         'MODE',
                         click=self.controller.toggle_main,
                         colspan=2)
        self.buttons.add(4,
                         0,
                         '+',
                         click=self.zoom_in_click,
                         bg_color=freqshow.CANCEL_BG,
                         colspan=2)
        self.buttons.add(6,
                         0,
                         '-',
                         click=self.zoom_out_click,
                         bg_color=freqshow.CANCEL_BG,
                         colspan=2)
        b = self.buttons.add(0,
                             9,
                             'FM',
                             click=lambda x: self.set_mode_click(x),
                             colspan=2)
        self.mode_buttons.append(b)
        b = self.buttons.add(2,
                             9,
                             'USB',
                             click=lambda x: self.set_mode_click(x),
                             colspan=2)
        self.mode_buttons.append(b)
        b = self.buttons.add(4,
                             9,
                             'CW',
                             click=lambda x: self.set_mode_click(x),
                             colspan=2)
        self.mode_buttons.append(b)
        self.buttons.add(6,
                         9,
                         self.model.get_current_trv_mode()[2],
                         click=self.toggle_trv_click,
                         colspan=2)

        self.overlay_enabled = True
コード例 #15
0
ファイル: views.py プロジェクト: RUSH-AI-Dev/sdr_mongodb
	def __init__(self, model, text, accept, cancel=None):
		self.accept = accept
		self.cancel = cancel
		self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
		self.buttons.add(3, 4, 'OK', click=self.accept_click, 
			bg_color=freqshow.ACCEPT_BG)
		if cancel is not None:
			self.buttons.add(0, 4, 'CANCEL', click=self.cancel_click, 
				bg_color=freqshow.CANCEL_BG)
		self.label = ui.render_text(text, size=freqshow.NUM_FONT,
			fg=freqshow.BUTTON_FG, bg=freqshow.MAIN_BG)
		self.label_rect = ui.align(self.label.get_rect(),
			(0, 0, model.width, model.height))
コード例 #16
0
	def __init__(self, model, controller):
		self.model      = model
		self.controller = controller
		self.buttons = ui.ButtonGrid(model.width, model.height, 5, 5)
		self.buttons.add(0, 0, 'Set', click=self.controller.change_to_settings)
		self.buttons.add(1, 0, 'Dn', click=self.scale_dn, colspan=1)
		self.buttons.add(1, 4, '<', click=self.dn_center_freq, colspan=1)
		self.buttons.add(3, 4, '>', click=self.up_center_freq, colspan=1)
		self.buttons.add(3, 0, 'Up', click=self.scale_up, colspan=1)
		self.buttons.add(2, 0, 'PANADAPTER', click=self.controller.toggle_main, colspan=1)
		self.buttons.add(4, 0, 'Quit', click=self.quit_click,
			bg_color=freqshow.MAIN_BG)
		self.overlay_enabled = True
コード例 #17
0
	def __init__(self, model, text, accept, cancel=None):
		self.accept = accept
		self.cancel = cancel
		self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
		self.buttons.add(0, 4, 'YA', click=self.accept_click, 
			bg_color=spektrum.ACCEPT_BG)
		if cancel is not None:
			self.buttons.add(3, 4, 'BATAL', click=self.cancel_click, 
				bg_color=spektrum.CANCEL_BG)
		self.label = ui.render_text(text, size=spektrum.NUM_FONT,
			fg=spektrum.TULISAN, bg=spektrum.MAIN_BG)
		self.label_rect = ui.align(self.label.get_rect(),
			(0, 0, model.width, model.height))
コード例 #18
0
    def __init__(self, model, controller):
        self.model = model
        self.controller = controller
        # Create button labels with current model values.

        # Create buttons.
        self.buttons = ui.ButtonGrid(model.width, model.height, 6, 5)
        self.buttons.add(0,
                         0,
                         '^',
                         click=self.controller.change_to_main,
                         bg_color=minimirror.MAIN_BG,
                         fg_color=minimirror.BUTTON_BG)
        self.plane_buttons = None
コード例 #19
0
ファイル: views.py プロジェクト: RUSH-AI-Dev/sdr_mongodb
	def __init__(self, model, label_text, unit_text, initial='0', accept=None,
		cancel=None, has_auto=False, allow_negative=False):
		"""Create number dialog for provided model and with given label and unit
		text.  Can provide an optional initial value (default to 0), an accept
		callback function which is called when the user accepts the dialog (and
		the chosen value will be sent as a single parameter), a cancel callback
		which is called when the user cancels, and a has_auto boolean if an
		'AUTO' option should be given in addition to numbers.
		"""
		self.value = str(initial)
		self.unit_text = unit_text
		self.model = model
		self.accept = accept
		self.cancel = cancel
		# Initialize button grid.
		self.buttons = ui.ButtonGrid(model.width, model.height, 4, 5)
		self.buttons.add(0, 1, '1', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(1, 1, '2', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(2, 1, '3', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(0, 2, '4', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(1, 2, '5', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(2, 2, '6', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(0, 3, '7', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(1, 3, '8', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(2, 3, '9', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(1, 4, '0', font_size=freqshow.NUM_FONT, click=self.number_click)
		self.buttons.add(2, 4, '.', font_size=freqshow.NUM_FONT, click=self.decimal_click)
		self.buttons.add(0, 4, 'DELETE', click=self.delete_click)
		if not allow_negative:
			# Render a clear button if only positive values are allowed.
			self.buttons.add(3, 1, 'CLEAR', click=self.clear_click)
		else:
			# Render a +/- toggle if negative values are allowed.
			self.buttons.add(3, 1, '+/-', click=self.posneg_click)
		self.buttons.add(3, 3, 'CANCEL', click=self.cancel_click,
			bg_color=freqshow.CANCEL_BG)
		self.buttons.add(3, 4, 'ACCEPT', click=self.accept_click,
			bg_color=freqshow.ACCEPT_BG) 
		if has_auto:
			self.buttons.add(3, 2, 'AUTO', click=self.auto_click)
		# Build label text for faster rendering.
		self.input_rect = (0, 0, self.model.width, self.buttons.row_size)
		self.label = ui.render_text(label_text, size=freqshow.MAIN_FONT, 
			fg=freqshow.INPUT_FG, bg=freqshow.INPUT_BG)
		self.label_pos = ui.align(self.label.get_rect(), self.input_rect,
			horizontal=ui.ALIGN_LEFT, hpad=10)
コード例 #20
0
ファイル: views.py プロジェクト: chadwyck-w/ui_flyby
    def __init__(self, model, controller):
        self.model = model
        self.controller = controller
        # Create button labels with current model values.

        # Create buttons.
        self.buttons = ui.ButtonGrid(model.width, model.height, 6, 5)
        self.buttons.add(5,
                         0,
                         'MAP',
                         click=self.controller.change_to_allPlanesMap)
        self.buttons.add(5,
                         4,
                         'X',
                         click=self.quit_click,
                         bg_color=ui_flyby.CANCEL_BG)
        self.plane_buttons = None
コード例 #21
0
ファイル: views.py プロジェクト: aliveable/RTLSDR-NBTC
 def __init__(self, model, controller):
     # self.sweep_start_enabled = False
     # self.sweep_stop_enabled = False
     self.model = model
     self.controller = controller
     # Create button labels with current model values.
     centerfreq_text = 'CENTER FREQ: {0:0.2f} MHz'.format(
         model.get_center_freq())
     samplerate_text = 'SPAN: {0:0.2f} MHz'.format(model.get_sample_rate())
     gain_text = 'GAIN: {0} dBm'.format(model.get_gain())
     min_text = 'MIN: {0} dBm'.format(model.get_min_string())
     max_text = 'MAX: {0} dBm'.format(model.get_max_string())
     start_text = 'START: {0} MHz'.format(model.get_start_string())
     stop_text = 'STOP: {0} MHz'.format(model.get_stop_string())
     step_text = 'STEP: {0} MHz'.format(model.get_step_string())
     puase_text = 'TRACK: {0}'.format(model.get_puase_string())
     # Create buttons.
     self.buttons = ui.ButtonGrid(model.width, model.height, 6, 7)
     self.buttons.add(0,
                      0,
                      centerfreq_text,
                      colspan=6,
                      click=self.centerfreq_click)
     self.buttons.add(0,
                      1,
                      samplerate_text,
                      colspan=6,
                      click=self.sample_click)
     self.buttons.add(0, 2, gain_text, colspan=6, click=self.gain_click)
     self.buttons.add(0, 3, min_text, colspan=3, click=self.min_click)
     self.buttons.add(3, 3, max_text, colspan=3, click=self.max_click)
     # self.buttons.add(0, 4, start_text,        colspan=3, click=self.start_click)
     # self.buttons.add(3, 4, step_text,        colspan=3, click=self.step_click)
     # self.buttons.add(0, 5, stop_text,        colspan=3, click=self.stop_click)
     # self.buttons.add(3, 5, puase_text,        colspan=3, click=self.puase_click)
     self.buttons.add(0, 6, 'BACK', click=self.controller.change_to_main)
     self.buttons.add(5, 6, 'Page2', click=self.page2_click)
     self.puase_disable = True
コード例 #22
0
	def __init__(self, model, controller):
		self.model      = model
		self.controller = controller
		# Create button labels with current model values.
		centerfreq_text = 'Center Freq: {0:0.4f} MHz'.format(model.get_center_freq())
		samplerate_text = 'Sample Rate: {0:0.3f} MHz'.format(model.get_sample_rate())
		gain_text       = 'Gain: {0} dB'.format(model.get_gain())
		min_text        = 'Min: {0} dB'.format(model.get_min_string())
		max_text        = 'Max: {0} dB'.format(model.get_max_string())
		fft_ave_text    = 'FFT ave: {0}'.format(model.get_fft_ave())
		tune_rate_text	= 'Tune Rate: {0:0.4f} MHz'.format(model.get_tune_rate())
		lo_offset_text = 'LO Offset: {0:0.4f} MHz'.format(model.get_lo_offset())
		zoom_fac_text = 'Zoom: {0:0.2f} MHz'.format(model.get_zoom_fac())
		freq_correction_text = 'Freq Corr: {0} ppm'.format(model.get_freq_correction())
		filter_text = '{0}'.format(model.get_filter())
		kaiser_beta_text = 'beta:{0:0.1f}'.format(model.get_kaiser_beta())
		swap_iq_text = 'Swap IQ: {0}'.format(model.get_swap_iq())
               	peak_text = 'Peak: {0}'.format(model.get_peak())

		# Create buttons.
		self.buttons = ui.ButtonGrid(model.width, model.height, 4, 6)
		self.buttons.add(0, 0, centerfreq_text, colspan=2, click=self.centerfreq_click)
		self.buttons.add(0, 1, samplerate_text, colspan=2, click=self.sample_click)
		self.buttons.add(0, 2, fft_ave_text,    colspan=1, click=self.fft_ave_click)
		self.buttons.add(2, 1, tune_rate_text,  colspan=2, click=self.tune_rate_click)
		self.buttons.add(2, 0, zoom_fac_text,   colspan=2, click=self.zoom_fac_click)
		self.buttons.add(0, 3, freq_correction_text, colspan=2, click=self.freq_correction_click)
		self.buttons.add(2, 4, gain_text,       colspan=1, click=self.gain_click)
		self.buttons.add(0, 4, min_text,        colspan=1, click=self.min_click)
		self.buttons.add(1, 4, max_text,        colspan=1, click=self.max_click)
		self.buttons.add(3, 5, 'BACK', 		colspan=1, click=self.controller.change_to_main)
		self.buttons.add(1, 2, lo_offset_text, colspan=2, click=self.lo_offset_click)
		self.buttons.add(2, 3, filter_text, colspan=1, click=self.filter_click)
		if self.model.get_filter() == 'kaiser':
			self.buttons.add(3, 3, kaiser_beta_text, colspan=1, click=self.kaiser_beta_click)
		self.buttons.add(0, 5, swap_iq_text,    colspan=1, click=self.swap_iq_click)
                self.buttons.add(1, 5, peak_text,    colspan=1, click=self.peak_click)