def _wifi_callback(self, *args): if self.wifi_list != []: self.wifi_grid.clear_widgets() buttons = [] for w in self.wifi_list: ssid = w['ssid'] encrypted = w['encrypted'] quality = w['quality'] b = WifiButton(ssid=ssid, encrypted=encrypted, quality=quality) config_screen = partial(self.generate_configuration_screen, b.ssid, b.encrypted) b.bind(on_press=config_screen) buttons.append([b, w['quality']]) buttons.sort(key=lambda quality: quality[1], reverse=True) sorted_buttons = [] for button in buttons: sorted_buttons.append(button[0]) layout = Scroll_Box_Even(sorted_buttons) self.wifi_grid.add_widget(layout) Logger.info('Wifi_Callback Is now Uncheduling itself') return False
def make_folder_screen(self, files): buttons = [] folders = [] for entry in files: if files[entry]['type'] == self.file_type: path = files[entry]['path'] if path.find('USB/') != -1: buttons.append( self.create_file_button(entry, files[entry], is_usb=True)) else: buttons.append(self.create_file_button( entry, files[entry])) elif files[entry]['type'] == 'folder': folders.append( self.create_folder_button(entry, files[entry]['path'])) sorted_buttons = self.order_buttons_by_date(buttons) #merge buttons with folders folders += sorted_buttons return Scroll_Box_Even(folders)
def __init__(self, robosm, back_destination): super(Firmware_Wizard, self).__init__() self.sm = robosm files = self._find_hex_in_usb() if files: #continue to the hex select screen back_destination = self.sm.current name = roboprinter.lang.pack['Firmware_Wizard']['Select_Firmware'] buttons = [] for file in files: temp_button = Hex_Button(file, files[file], self.generate_confirmation) buttons.append(temp_button) layout = Scroll_Box_Even(buttons) self.sm._generate_backbutton_screen( name=name, title=name, back_destination=back_destination, content=layout) else: #show warning saying that we cannot detect a hex file on the USB ep = Error_Popup( roboprinter.lang.pack['Firmware_Wizard']['Hex_Error_Title'], roboprinter.lang.pack['Firmware_Wizard']['Hex_Error_Body'], callback=partial(roboprinter.robosm.go_back_to_main, tab='printer_status_tab')) ep.open()
def generate_eeprom(self, **kwargs): _name = kwargs['name'] eeprom = EEPROM(self) layout = Scroll_Box_Even(eeprom.buttons) self._generate_backbutton_screen( name=_name, title=kwargs['title'], back_destination=kwargs['back_destination'], content=layout)
def make_folder_screen(self, files): buttons = [] folders = [] for entry in files: if files[entry]['type'] == 'folder': #if the USB isn't mounted don't show it as an option if entry == "USB": if 'usb_mounted' in session_saver.saved: if session_saver.saved['usb_mounted']: folders.append( self.create_folder_button( entry, files[entry]['path'])) else: folders.append( self.create_folder_button(entry, files[entry]['path'])) return Scroll_Box_Even(folders)
def load_values(self, catagory): back_destination = self.sm.current acceptable_catagories = {'HOME_OFFSETS': 'home offset', 'Z_OFFSET_EEPROM': 'z offset', 'FILAMENT_SETTINGS': 'filament settings', 'FEED_RATES' : 'max feed rate', 'PID': 'PID', 'BPID': "BPID", 'STEPS_PER_UNIT': 'steps per unit', 'ACCELERATIONS': 'accelerations', 'MAX_ACCELERATIONS':'max acceleration', 'ADVANCED_VARIABLES': 'advanced variables'} buttons = [] if catagory[0] in acceptable_catagories: for value in pconsole.eeprom[acceptable_catagories[catagory[0]]]: button_value = value + ": " + str(pconsole.eeprom[acceptable_catagories[catagory[0]]][value]) temp = Scroll_Box_Even_Button(button_value, self.change_value, [catagory[0], value]) buttons.append(temp) layout = Scroll_Box_Even(buttons) self.sm._generate_backbutton_screen(name=catagory[0], title=catagory[1], back_destination=back_destination, content=layout)