Рефактор.

This commit is contained in:
sasha80
2025-05-12 08:47:38 +03:00
parent dd9c546f3f
commit 07f9e879d4

View File

@@ -54,7 +54,7 @@ const SETTING_TABLE = [
]
const EXTERNAL_CU = 17 # Внешнее целееуказание
const SUPPRESS = 18 # Строка - Подавление
const KEYBORD = 19 # Строка - Виртуальная клавиатура
const KEYBOARD = 19 # Строка - Виртуальная клавиатура
const HIDE_EMS2 = 20 # Строка - Скрыть вкладку ЭМС 2
const COMMIT = 21 # Строка - Версия УАРЭП
const SERVER = 22 # Строка - Сервер карт
@@ -103,6 +103,7 @@ func setting_tab():
$heard_table.set_columns_alignments(ALIGNMENT)
var settings_data = {} # Загружаем настройки из файла
var file = FileAccess.open(settings.settings_file, FileAccess.READ)
var abs_path = ProjectSettings.globalize_path(settings.settings_file)
if file:
var read = file.get_as_text()
file.close()
@@ -110,9 +111,9 @@ func setting_tab():
if json_conv.parse(read) == OK:
settings_data = json_conv.get_data()
else:
log.info("Не удалось прочитать JSON, используем настройки по умолчанию")
log.warning('Не удалось разобрать \"%s\", будут использованы настройки по умолчанию' % abs_path)
else:
log.info("Файл настроек не найден, используем настройки по умолчанию")
log.warning('Файл \"%s\" не найден, будут использованы настройки по умолчанию' % abs_path)
for i in SETTING_TABLE.size():
var setting_str = SETTING_TABLE[i]
var parameter = setting_str[0]
@@ -144,12 +145,12 @@ func setting_tab():
if parameter in settings.UnitProfiles:
var unit_data = settings.UnitProfiles[parameter]
var profiles = $scroll_set/table.get_node2(1, i)
var joined_data = ""
var joined_data = ''
for j in range(unit_data[2].size()):
joined_data += str(unit_data[2][j])
if j < unit_data[2].size() - 1:
joined_data += ","
profiles.text = str(unit_data[1]) + " : " + joined_data
joined_data += ','
profiles.text = str(unit_data[1]) + ' : ' + joined_data
$scroll_set/table.connect('row_pressed', Callable(self, 'on_row_pressed'))
button_settings()
@@ -158,8 +159,8 @@ func button_settings():
var extern_cu_node = $scroll_set/table.get_node2(1, EXTERNAL_CU).get_children()[0]
extern_cu_node.connect('pressed', on_external_cu_btn_pressed.bind(extern_cu_node))
$scroll_set/table.set_row_text(SUPPRESS,(['Кнопка «Подавление»']))
$scroll_set/table.set_row_text(KEYBORD,(['Виртуальная клавиатура']))
var vk_node = $scroll_set/table.get_node2(1, KEYBORD).get_children()[0]
$scroll_set/table.set_row_text(KEYBOARD,(['Виртуальная клавиатура']))
var vk_node = $scroll_set/table.get_node2(1, KEYBOARD).get_children()[0]
vk_node.connect('pressed', on_vk_pressed.bind(vk_node))
$scroll_set/table.set_row_text(HIDE_EMS2,(['Скрыть вкладку ЭМС 2']))
var ems2_hide_node = $scroll_set/table.get_node2(1, HIDE_EMS2).get_children()[0]
@@ -177,15 +178,15 @@ func _on_btn_save_settings_pressed():
var value = profiles.get_text()
if parameter not in json_data:
json_data[parameter] = []
if value.find(":") != -1:
var parts = value.split(":")
if value.find(':') != -1:
var parts = value.split(':')
var ip = parts[0].strip_edges()
var ports = parts[1].split(",")
var ports = parts[1].split(',')
json_data[parameter].append(ip)
for port in ports:
if port == "true":
if port == 'true':
json_data[parameter].append(true)
elif port == "false":
elif port == 'false':
json_data[parameter].append(false)
else:
port = port.strip_edges()
@@ -197,12 +198,11 @@ func _on_btn_save_settings_pressed():
var children = $scroll_set/table.get_node2(1, i).get_children()
if len(children):
var child = children[0]
if parameter not in json_data:
json_data[parameter] = child.is_pressed()
json_data[parameter] = child.is_pressed()
var file = FileAccess.open(settings.settings_file, FileAccess.WRITE)
var abs_path = ProjectSettings.globalize_path(settings.settings_file)
if not file:
log.info('Не удалось открыть файл для записи \"%s\"' % abs_path)
log.error('Не удалось открыть файл для записи \"%s\"' % abs_path)
return
var json_string = JSON.stringify(json_data, ' ', true)
if file.store_string(json_string):