class OverscanTemplate(Gtk.Box): def __init__(self, win, title, description, original_overscan=None): Gtk.Box.__init__(self, orientation=Gtk.Orientation.VERTICAL) self.kano_button = KanoButton(_("APPLY CHANGES")) self.kano_button.connect('button-release-event', self.apply_changes) self.kano_button.pack_and_align() self.heading = Heading(title, description) self.pack_start(self.heading.container, False, False, 0) self.win = win self.win.set_main_widget(self) self.win.top_bar.enable_prev() # Launch pipe for the overscan c code launch_pipe() self.overscan_values = get_overscan_status() self.original_overscan = original_overscan # Pass original overscan values between the classes # If original_overscan hasn't been generated yet, get it from current # overscan status. Alternatively, maybe read this from a file in future if original_overscan is None: self.original_overscan = get_overscan_status() # Reset button self.reset_button = OrangeButton() reset_icon_path = os.path.join(common.media, '/Icons/reset.png') reset_image = Gtk.Image().new_from_file(reset_icon_path) self.reset_button.set_image(reset_image) self.reset_button.connect('button_press_event', self.reset) def apply_changes(self, button, event): # NB, write_overscan_values ends the transaction write_overscan_values(self.overscan_values) self.original_overscan = self.overscan_values # Tell user to reboot to see changes common.need_reboot = True self.go_to_display() def adjust(self, adj, varname): self.overscan_values[varname] = int(adj.get_value()) set_overscan_status(self.overscan_values) def adjust_all(self, adj): self.overscan_values['top'] = int(adj.get_value()) self.overscan_values['bottom'] = int(adj.get_value()) self.overscan_values['left'] = int(adj.get_value()) self.overscan_values['right'] = int(adj.get_value()) set_overscan_status(self.overscan_values) def go_to_display(self, widget=None, button=None): self.reset() self.win.clear_win() SetDisplay(self.win) def reset(self, widget=None, event=None): pass
class OverscanTemplate(Gtk.Box): def __init__(self, win, title, description, original_overscan=None): Gtk.Box.__init__(self, orientation=Gtk.Orientation.VERTICAL) self.kano_button = KanoButton("APPLY CHANGES") self.kano_button.connect("button-release-event", self.apply_changes) self.kano_button.pack_and_align() self.heading = Heading(title, description) self.pack_start(self.heading.container, False, False, 0) self.win = win self.win.set_main_widget(self) self.win.top_bar.enable_prev() # Launch pipe for the overscan c code launch_pipe() self.overscan_values = get_overscan_status() self.original_overscan = original_overscan # Pass original overscan values between the classes # If original_overscan hasn't been generated yet, get it from current overscan status # Alternatively, maybe read this from a file in future if original_overscan is None: self.original_overscan = get_overscan_status() # Reset button self.reset_button = OrangeButton() reset_image = Gtk.Image().new_from_file(common.media + "/Icons/reset.png") self.reset_button.set_image(reset_image) self.reset_button.connect("button_press_event", self.reset) def apply_changes(self, button, event): # Apply changes write_overscan_values(self.overscan_values) self.original_overscan = self.overscan_values set_config_comment('kano_screen_used', get_model()) # Tell user to reboot to see changes common.need_reboot = True self.go_to_display() def adjust(self, adj, varname): self.overscan_values[varname] = int(adj.get_value()) set_overscan_status(self.overscan_values) def adjust_all(self, adj): self.overscan_values['top'] = int(adj.get_value()) self.overscan_values['bottom'] = int(adj.get_value()) self.overscan_values['left'] = int(adj.get_value()) self.overscan_values['right'] = int(adj.get_value()) set_overscan_status(self.overscan_values) def go_to_display(self, widget=None, button=None): self.reset() self.win.clear_win() SetDisplay(self.win) def reset(self, widget=None, event=None): pass