diff --git a/save_to_radio.py b/save_to_radio.py index 1484f88..0ab7b4d 100644 --- a/save_to_radio.py +++ b/save_to_radio.py @@ -3,24 +3,6 @@ from google.protobuf.message import Message import logging import base64 -def settings_reboot(interface): - interface.localNode.reboot() - -def settings_reset_nodedb(interface): - interface.localNode.resetNodeDb() - -def settings_shutdown(interface): - interface.localNode.shutdown() - -def settings_factory_reset(interface): - interface.localNode.factoryReset() - -# def settings_set_owner(interface, long_name=None, short_name=None, is_licensed=False): -# if isinstance(is_licensed, str): -# is_licensed = is_licensed.lower() == 'true' -# interface.localNode.setOwner(long_name, short_name, is_licensed) - - def save_changes(interface, menu_path, modified_settings): """ Save changes to the device based on modified settings. diff --git a/settings.py b/settings.py index 35c6f38..3c94441 100644 --- a/settings.py +++ b/settings.py @@ -2,7 +2,7 @@ import curses import logging import os -from save_to_radio import settings_factory_reset, settings_reboot, settings_reset_nodedb, settings_shutdown, save_changes +from save_to_radio import save_changes from utilities.config_io import config_export, config_import from input_handlers import get_bool_selection, get_repeated_input, get_user_input, get_enum_input, get_fixed32_input, select_from_list from ui.menus import generate_menu_from_protobuf @@ -227,28 +227,28 @@ def settings_menu(stdscr, interface): elif selected_option == "Reboot": confirmation = get_bool_selection("Are you sure you want to Reboot?", 0) if confirmation == "True": - settings_reboot(interface) + interface.localNode.reboot() logging.info(f"Node Reboot Requested by menu") break continue elif selected_option == "Reset Node DB": confirmation = get_bool_selection("Are you sure you want to Reset Node DB?", 0) if confirmation == "True": - settings_reset_nodedb(interface) + interface.localNode.resetNodeDb() logging.info(f"Node DB Reset Requested by menu") break continue elif selected_option == "Shutdown": confirmation = get_bool_selection("Are you sure you want to Shutdown?", 0) if confirmation == "True": - settings_shutdown(interface) + interface.localNode.shutdown() logging.info(f"Node Shutdown Requested by menu") break continue elif selected_option == "Factory Reset": confirmation = get_bool_selection("Are you sure you want to Factory Reset?", 0) if confirmation == "True": - settings_factory_reset(interface) + interface.localNode.factoryReset() logging.info(f"Factory Reset Requested by menu") break continue @@ -259,7 +259,6 @@ def settings_menu(stdscr, interface): continue # need_redraw = True - field_info = current_menu.get(selected_option) if isinstance(field_info, tuple): field, current_value = field_info diff --git a/ui/menus.py b/ui/menus.py index 2098572..13cde37 100644 --- a/ui/menus.py +++ b/ui/menus.py @@ -1,6 +1,6 @@ from collections import OrderedDict from meshtastic.protobuf import config_pb2, module_config_pb2, channel_pb2 -import logging, traceback +import logging import base64 @@ -17,8 +17,6 @@ def extract_fields(message_instance, current_config=None): if field.name in {"sessionkey", "channel_num", "id", "ignore_incoming"}: # Skip certain fields continue - - if field.message_type: # Nested message nested_instance = getattr(message_instance, field.name) nested_config = getattr(current_config, field.name, None) if current_config else None @@ -37,10 +35,8 @@ def extract_fields(message_instance, current_config=None): else: # Handle other field types current_value = getattr(current_config, field.name, "Not Set") if current_config else "Not Set" menu[field.name] = (field, current_value) - return menu - def generate_menu_from_protobuf(interface): # Function to generate the menu structure from protobuf messages menu_structure = {"Main Menu": {}} @@ -58,7 +54,6 @@ def generate_menu_from_protobuf(interface): "shortName": (None, current_user_config.get("shortName", "Not Set")), "isLicensed": (None, current_user_config.get("isLicensed", "False")) } - else: logging.info("User settings not found in Node Info") menu_structure["Main Menu"]["User Settings"] = "No user settings available"