From c8f125b1a15403bb3353b94273cd1c1fffbee5fe Mon Sep 17 00:00:00 2001 From: kira-a-k Date: Fri, 21 Nov 2025 18:56:26 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=BF=D0=B5=D1=80=D0=B5=D0=BA=D0=BB=D1=8E=D1=87=D0=B0?= =?UTF-8?q?=D1=82=D0=B5=D0=BB=D1=8C=20=D0=B4=D0=B5=D0=B1=D0=B0=D0=B3=20-?= =?UTF-8?q?=20"=D0=9E=D1=82=D0=BB=D0=B0=D0=B4=D0=BA=D0=B0"=20=D0=B2=20?= =?UTF-8?q?=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9=D0=BA=D0=B0=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scenes/контроль/контроль.tscn | 17 ++++++++++++++--- scenes/настройки/настройки.tscn | 15 +++++++++++++-- scripts/signaller.gd | 5 +++++ 3 files changed, 32 insertions(+), 5 deletions(-) diff --git a/scenes/контроль/контроль.tscn b/scenes/контроль/контроль.tscn index d9e2429..4299ff0 100644 --- a/scenes/контроль/контроль.tscn +++ b/scenes/контроль/контроль.tscn @@ -46,6 +46,7 @@ const PRIBORS_RES = \\ 'pribor_uf': ['res://scenes/pribor-uf/pribor-uf.tscn', 'Контроль исправности прибора УФ'], 'pribor_uyep': ['res://scenes/pribor-uyep/pribor-uyep.tscn', 'Контроль исправности устройства У-ЭП'], } +var ctl_btn_state := false func on_line_changed(u, conn_node, _pribor_meta): conn_node.set_val(u.online) @@ -102,6 +103,7 @@ func _ready(): signaller.conn(signaller.режим_журнал, on_mode_changed) signaller.conn(signaller.режим_настройки, on_mode_changed) signaller.conn(signaller.режим_эмс, on_mode_changed) + signaller.connect('debag_control_pressed', Callable(self, 'on_control_button_pressed')) func online_change_arr(_u, conn_node, pribor_meta): @@ -138,6 +140,7 @@ func on_pribor_press(pribor_path, header_text, pribor_node): pribor.set_meta('unit_name', unit_name) pribor.add_to_group('pribor_items') add_child(pribor) + update_pribor_items_visibility() func on_serviceability_changed(prd_module: Object, prd_pribor:Node)-> void: @@ -164,9 +167,17 @@ func on_update_max_value_progress(max_value_progress: int, pribor_node: Node) -> pribor_node.progress_max_value = max_value_progress -func _on_check_debag_toggled(toggled_on: bool) -> void: - for node in get_tree().get_nodes_in_group(\"debag_control\"): - node.visible = toggled_on +func on_control_button_pressed(state: bool) -> void: + ctl_btn_state = state + update_pribor_items_visibility() + + +func update_pribor_items_visibility(): + var pribor_items = get_tree().get_nodes_in_group('pribor_items') + for pribor in pribor_items: + for child_name in ['input_0', 'output_0', 'input_1', 'output_1']: + if pribor.has_node(child_name): + pribor.get_node(child_name).visible = ctl_btn_state " [sub_resource type="SpriteFrames" id="SpriteFrames_foasq"] diff --git a/scenes/настройки/настройки.tscn b/scenes/настройки/настройки.tscn index 9a6497d..d115368 100644 --- a/scenes/настройки/настройки.tscn +++ b/scenes/настройки/настройки.tscn @@ -35,6 +35,7 @@ const SETTING_TABLE = [ ['Кнопка «Подавление»', TableEdit, TableToggle, 'Разрешить отображение кнопки'], ['Виртуальная клавиатура', TableEdit, TableToggle, 'Включить отображение экранной клавиатуры'], ['Скрыть вкладку ЭМС 2', TableEdit, TableToggle, 'Отображать вкладку \\\"ЭМС-2\\\"'], + ['Отладка контроля', TableEdit, TableToggle, 'Отображать отладку контроля'], ['Текущая версия ПО УАРЭП', TableEdit, TableEdit, 'Время сборки, версия и номер фиксации'], ['уарэп-яу07-частный', TableEdit, TableEdit, 'IP-адрес для получения частных сообщений от ЯУ-07'], ['уарэп-яу07-общий', TableEdit, TableEdit, 'IP-адрес для получения широковещательных сообщений от ЯУ-07'], @@ -73,8 +74,9 @@ const TRASSA = 17 const SUPPRESS = 18 ## Строка - Подавление const KEYBOARD = 19 ## Строка - Виртуальная клавиатура const HIDE_EMS2 = 20 ## Строка - Скрыть вкладку ЭМС 2 -const COMMIT = 21 ## Строка - Версия УАРЭП -const GOS_BTN = 51 ## Разрешить работу по своим целям +const DEBAG_CONTROL = 21## Строка - Отладка контроля +const COMMIT = 22 ## Строка - Версия УАРЭП +const GOS_BTN = 52 ## Разрешить работу по своим целям var name_to_line_index: = {} ## Для преобразования названия параметра в номер строки @@ -114,6 +116,11 @@ func on_ems2_pressed(btn) -> void: signaller.emit_signal('ems2_hide_pressed', state) +func on_debag_control_pressed(btn) -> void: + var state = btn.button_pressed + signaller.emit_signal(\"debag_control_pressed\", state) + + func on_row_pressed(i_row: int): $scroll_set/table.clear_rows_selected() $scroll_set/table.set_row_selected(i_row, true) @@ -231,6 +238,10 @@ func button_settings(): on_ems2_pressed(ems2_hide_node) var gos_node = $scroll_set/table.get_node2(1, GOS_BTN).get_children()[0] gos_node.connect('pressed', on_gos_pressed.bind(gos_node)) + var debag_control = $scroll_set/table.get_node2(1, DEBAG_CONTROL).get_children()[0] + debag_control.connect('pressed', on_debag_control_pressed.bind(debag_control)) + debag_control.set_pressed(false) + on_debag_control_pressed(debag_control) func _on_btn_save_settings_pressed(): diff --git a/scripts/signaller.gd b/scripts/signaller.gd index 82d2afe..434df1e 100644 --- a/scripts/signaller.gd +++ b/scripts/signaller.gd @@ -182,6 +182,11 @@ signal kb_pressed(state) signal ems2_hide_pressed(state) +## Вызывается при нажатии на кнопку отладки контроля +## [param state] - состояние показа отладки контроля +signal debag_control_pressed(state) + + ## Вызывается при нажатии на кнопку экранной клавиатуры ## [param state] - состояние скрытия кнопки ЭМС2 signal emit_changed(state)