From 9bf00b609838acc0da04f21451d6996b813bb389 Mon Sep 17 00:00:00 2001 From: MaD_CaT Date: Tue, 29 Jul 2025 08:37:38 +0300 Subject: [PATCH 1/4] Godot4. --- scenes/работа/работа.tscn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scenes/работа/работа.tscn b/scenes/работа/работа.tscn index 1b179b14..442c2dcd 100644 --- a/scenes/работа/работа.tscn +++ b/scenes/работа/работа.tscn @@ -288,6 +288,6 @@ texture_pressed = ExtResource("13_ggrwd") [connection signal="drag_continue" from="." to="." method="_on_drag_continue"] [connection signal="toggled" from="btn_view" to="." method="on_button_view_toggled"] [connection signal="toggled" from="chk_auto" to="." method="on_value_changed"] -[connection signal="toggled" from="btn_activate" to="." method="on_btn_activate"] [connection signal="toggled" from="btn_activate" to="." method="on_btn_activate_toggled"] +[connection signal="toggled" from="btn_activate" to="." method="on_btn_activate"] [connection signal="toggled" from="btn_center" to="." method="on_btn_center_toggled"] From c03c729dc1c9cdf3ffaa03e0452e126d051d8e86 Mon Sep 17 00:00:00 2001 From: MaD_CaT Date: Tue, 29 Jul 2025 16:07:37 +0300 Subject: [PATCH 2/4] Godot4. --- project.godot | 1 + scenes/tilemap/tilemap.gd | 2 +- scenes/настройки/настройки.gd | 2 +- scenes/работа/работа.tscn | 2 +- table/table.gd | 4 ++-- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/project.godot b/project.godot index 0be2d552..14f0d506 100644 --- a/project.godot +++ b/project.godot @@ -84,6 +84,7 @@ gdscript/warnings/integer_division=0 window/size/viewport_width=1600 window/size/viewport_height=1200 +window/size/mode=3 window/size/window_height_override=768 window/subwindows/embed_subwindows=false window/stretch/mode="canvas_items" diff --git a/scenes/tilemap/tilemap.gd b/scenes/tilemap/tilemap.gd index 38140519..9ec8d542 100644 --- a/scenes/tilemap/tilemap.gd +++ b/scenes/tilemap/tilemap.gd @@ -362,7 +362,7 @@ func _process(delta) -> void: push_error('запрос \"%s\" не отправлен' % tile.url) if _queue.is_empty(): emit_signal('load_completed') - + update_scale_label() diff --git a/scenes/настройки/настройки.gd b/scenes/настройки/настройки.gd index 4e07d7e8..29564b25 100644 --- a/scenes/настройки/настройки.gd +++ b/scenes/настройки/настройки.gd @@ -165,7 +165,7 @@ func setting_tab(): var tootip_text = tbl_row[3] name_to_line_index[param_name] = i $scroll_set/table.add_row([node_label, node_value]) - var label_instance = $scroll_set/table.get_node2(0, i) + var label_instance = $scroll_set/table.get_node2(0, i) label_instance.text = param_name label_instance.tooltip_text = tootip_text $scroll_set/table.set_node_editable(0, i, false) diff --git a/scenes/работа/работа.tscn b/scenes/работа/работа.tscn index 1336c77b..4bb6358e 100644 --- a/scenes/работа/работа.tscn +++ b/scenes/работа/работа.tscn @@ -304,6 +304,6 @@ text = "Масштаб:" [connection signal="drag_continue" from="." to="." method="_on_drag_continue"] [connection signal="toggled" from="btn_view" to="." method="on_button_view_toggled"] [connection signal="toggled" from="chk_auto" to="." method="on_value_changed"] -[connection signal="toggled" from="btn_activate" to="." method="on_btn_activate_toggled"] [connection signal="toggled" from="btn_activate" to="." method="on_btn_activate"] +[connection signal="toggled" from="btn_activate" to="." method="on_btn_activate_toggled"] [connection signal="toggled" from="btn_center" to="." method="on_btn_center_toggled"] diff --git a/table/table.gd b/table/table.gd index 4d6e220c..fa0be948 100644 --- a/table/table.gd +++ b/table/table.gd @@ -599,8 +599,8 @@ func set_node_frame(i_col: int, i_row: int, node_name: String, val: int) -> void func set_node_editable(i_col: int, i_row: int, val: bool) -> void: var key: = get_node_key(NODE_KEY_FORMAT, i_col, i_row) nodes[key].editable = val - - + + ## Устанавливает контекстное меню для ячейки таблицы. Ячейка должна иметь свойство [param context_menu].[br] ## [param i_col] - Индекс колонки.[br] ## [param i_row] - Индекс ряда.[br] From 78fd6758e086b4f0d6654758b6ca1bb9448616f3 Mon Sep 17 00:00:00 2001 From: MaD_CaT Date: Thu, 31 Jul 2025 15:33:49 +0300 Subject: [PATCH 3/4] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0.=20=D0=A0=D0=B5=D0=B6=D0=B8=D0=BC=D1=8B=20=D1=80?= =?UTF-8?q?=D0=B0=D0=B1=D0=BE=D1=82=D1=8B=20=D0=BA=D0=BD=D0=BE=D0=BF=D0=BA?= =?UTF-8?q?=D0=B8=20=D0=BF=D0=BE=D0=B4=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5.=20=D0=A2=D0=B5=D0=BF=D0=B5=D1=80=D1=8C=20=D0=BE=D1=82?= =?UTF-8?q?=20=D0=BD=D0=B5=D1=91=20=D0=B7=D0=B0=D0=B2=D0=B8=D1=81=D0=B8?= =?UTF-8?q?=D1=82=20=D0=B1=D1=83=D0=B4=D0=B5=D1=82=20=D0=BE=D1=82=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=BB=D1=8F=D1=82=D1=8C=D1=81=D1=8F=20=D0=BA?= =?UTF-8?q?=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D0=B0=20=D0=B2=20Skysensor=20?= =?UTF-8?q?=D0=B8=D0=BB=D0=B8=20=D0=BD=D0=B5=D1=82.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scenes/frame-ecm-params/scroll-ecm-params.gd | 6 ------ scenes/работа/работа.gd | 7 ++----- scenes/работа/работа.tscn | 1 + scripts/interfer.gd | 7 +++++-- 4 files changed, 8 insertions(+), 13 deletions(-) diff --git a/scenes/frame-ecm-params/scroll-ecm-params.gd b/scenes/frame-ecm-params/scroll-ecm-params.gd index 3fc2c3a0..1d9c5650 100644 --- a/scenes/frame-ecm-params/scroll-ecm-params.gd +++ b/scenes/frame-ecm-params/scroll-ecm-params.gd @@ -45,7 +45,6 @@ func init_table(): $table.set_meta('id', 0) signaller.connect('interfer_selected', Callable(self, 'on_interfer_selected').bind(toggle_btn)) signaller.connect('rto_threat_unsel', Callable(self, 'on_rto_threat_unsel')) - signaller.connect('emit_changed', Callable(self, 'on_emit_changed').bind(toggle_btn)) ## Called when the node enters the scene tree for the first time. @@ -114,8 +113,3 @@ func on_toggle_btn(toggle_btn): if not $table.has_meta('ecm'): return var ecm: interfer.Interfer = $table.get_meta('ecm') ecm.modulation = toggle_btn.button_pressed - - -func on_emit_changed(state, toggle_btn): - if not toggle_btn.disabled: - toggle_btn.button_pressed = state diff --git a/scenes/работа/работа.gd b/scenes/работа/работа.gd index 724eef04..31db96ca 100644 --- a/scenes/работа/работа.gd +++ b/scenes/работа/работа.gd @@ -84,9 +84,6 @@ func on_threat_selected(th, ecm_btns): on_rto_threat_sel(th.id, ecm_btns) func on_enter_tree() -> void: call_deferred('on_button_strobe_pressed') -func on_btn_activate(val: bool): signaller.emit_signal('emit_changed', val) - - ## Обработчик нажатия на кнопку вид. func on_button_view_toggled(toggled: bool): signaller.emit_signal('map_mode_changed', int(toggled)) @@ -144,7 +141,7 @@ func _ready(): signaller.connect('update_coordinates_map', Callable(self, 'on_update_coordinates_label')) signaller.connect('update_scale_map', Callable(self, 'on_update_scale_label')) on_btn_center_toggled(true) - on_btn_activate_toggled(false) + on_btn_activate_toggled(true) func on_user_panning(): @@ -308,7 +305,6 @@ func on_button_pressed(btn_this, btn_others) -> void: var interfer_name: String = btn_this.get_meta('rfi_name') for key in fs_selected.keys(): fs_arr.append(prd.get_fs_param(key)) - print(fs_arr) signaller.emit_signal('interfer_init', interfer_name, fs_arr, interfer.POW_DEFAULT) @@ -514,6 +510,7 @@ func on_btn_center_toggled(toggled_on: bool) -> void: func on_btn_activate_toggled(toggled_on: bool) -> void: $btn_activate.tooltip_text = 'Включает подавление (%s)' % ('включено' if toggled_on else 'отключено') + signaller.emit_signal('emit_changed', toggled_on) func on_update_coordinates_label(coordinates_label) -> void: diff --git a/scenes/работа/работа.tscn b/scenes/работа/работа.tscn index 4bb6358e..6d645182 100644 --- a/scenes/работа/работа.tscn +++ b/scenes/работа/работа.tscn @@ -257,6 +257,7 @@ offset_right = 1136.0 offset_bottom = 1127.0 scale = Vector2(0.5, 0.5) toggle_mode = true +button_pressed = true action_mode = 0 texture_normal = ExtResource("10_cnr1s") texture_pressed = ExtResource("11_xp4y6") diff --git a/scripts/interfer.gd b/scripts/interfer.gd index dabecd58..b3025d18 100644 --- a/scripts/interfer.gd +++ b/scripts/interfer.gd @@ -304,6 +304,11 @@ func interfer_create(u, interfer_name, ecms, param, kni, id, dict, source_interf func send_ecm(ecm, unit0) -> void: + if ecm.krp != INTERFER_OFF: + if not emit_enable: + return + elif not ecm.modulation: + return msg6_num += 1 var json_data = ecm.get_msg6_data(msg6_num) unit0.tx_stack.append(json_data) @@ -341,5 +346,3 @@ func push_id(id: int) -> void: func on_emit_changed(state, ecms) -> void: emit_enable = state - for ecm in ecms.values(): - ecm.modulation = state From fa0a2f4b24425cb0116813f80d59167fc38e9887 Mon Sep 17 00:00:00 2001 From: MaD_CaT Date: Fri, 1 Aug 2025 13:44:33 +0300 Subject: [PATCH 4/4] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0.=20=D0=9A=D0=BE=D0=BD=D1=82=D1=80=D0=BE=D0=BB?= =?UTF-8?q?=D1=8C=20=D1=81=D0=BE=D0=B4=D0=B5=D1=80=D0=B6=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D1=8F=20=D1=84=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20=D0=B7=D0=B0=D0=B3=D1=80=D1=83=D0=B7=D0=BA=D0=B8=20?= =?UTF-8?q?=D0=AD=D0=9C=D0=A1-=D0=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scenes/эмс/yems-boards.gd | 14 ++++++++------ scenes/эмс/эмс.gd | 9 ++++++--- scripts/prd.gd | 11 ++++++++--- 3 files changed, 22 insertions(+), 12 deletions(-) diff --git a/scenes/эмс/yems-boards.gd b/scenes/эмс/yems-boards.gd index 4b818f47..eac8030a 100644 --- a/scenes/эмс/yems-boards.gd +++ b/scenes/эмс/yems-boards.gd @@ -297,15 +297,17 @@ class EmsBoard: if not check_dev_number(): continue if ports.has('%d'%(base_addr_isa + 4)): cur_dev.ports_data[base_addr_isa + 4] = int(ports['%d'%(base_addr_isa + 4)]) - else: continue + else: return false if ports.has('%d'%(base_addr_isa + 6)): - cur_dev.ports_data[base_addr_isa + 6] = int(ports['%d'%(base_addr_isa + 6)]) - else: continue + cur_dev.ports_data[base_addr_isa + 6] = int(ports['%d'%(base_addr_isa + 6)]) + else: return false if ports.has('%d'%(base_addr_isa + 8)): - cur_dev.ports_data[base_addr_isa + 8] = int(ports['%d'%(base_addr_isa + 8)]) - else: continue + cur_dev.ports_data[base_addr_isa + 8] = int(ports['%d'%(base_addr_isa + 8)]) + else: return false if ports.has('%d'%(base_addr_isa + 10)): - cur_dev.ports_data[base_addr_isa + 10] = int(ports['%d'%(base_addr_isa + 10)]) + cur_dev.ports_data[base_addr_isa + 10] = int(ports['%d'%(base_addr_isa + 10)]) + else: return false + return true func set_load_done(): state_board = LOADING diff --git a/scenes/эмс/эмс.gd b/scenes/эмс/эмс.gd index 5878e921..78f067aa 100644 --- a/scenes/эмс/эмс.gd +++ b/scenes/эмс/эмс.gd @@ -655,6 +655,9 @@ func _on_btn_load_pressed() -> void: if not json_data.has(str(board.id_board)): return var data = json_data[str(board.id_board)] - board.btn_load(data) - board.need_write = true - log.message(log.INFO, 'Произведено чтение настроек ЭМС из файла: %s' %fl_name) + var read_ok = board.btn_load(data) + if read_ok: + board.need_write = true + log.message(log.INFO, 'Произведено чтение настроек ЭМС из файла: %s, для платы %s' %[fl_name, board.id_board]) + else: + log.message(log.ERROR, 'Ошибка чтение настроек ЭМС из файла: %s' %fl_name) diff --git a/scripts/prd.gd b/scripts/prd.gd index 406fc7ed..5bf1ae00 100644 --- a/scripts/prd.gd +++ b/scripts/prd.gd @@ -242,9 +242,14 @@ class PRD: var json_data = json_conv.get_data() yemsg_board.need_write = true yemsg_board.ems_load = yemsg_board.LoadState.IN_PROCESS - yemsg_board.btn_load(json_data) - yemsg_board.state_board = yemsg_board.WRITE - yemsg_board.start_rw_kems(false) + var read_ok = yemsg_board.btn_load(json_data) + if read_ok: + yemsg_board.state_board = yemsg_board.WRITE + yemsg_board.start_rw_kems(false) + else: + yemsg_board.ems_load = yemsg_board.LoadState.FAIL + yemsg_board.set_wait() + log.error('Не удалось прочитать файл настроек ячейки ЭМС-Г %s' %abs_dir) else: yemsg_board.ems_load = yemsg_board.LoadState.FAIL yemsg_board.set_wait()