Merge remote-tracking branch 'refs/remotes/Cat/master'

# Conflicts:
#	scripts/trassa.gd
This commit is contained in:
lepshiy
2025-09-26 14:47:38 +03:00
12 changed files with 138 additions and 30 deletions

View File

@@ -56,6 +56,7 @@ offset_right = 20.0
offset_bottom = 20.0
theme_override_styles/panel = SubResource("1")
script = ExtResource("1_ui6sg")
font_size = null
[node name="back" type="Sprite2D" parent="."]
material = SubResource("ShaderMaterial_hhdyc")
@@ -79,6 +80,7 @@ axis_stretch_vertical = 2
layout_mode = 2
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_constants/outline_size = 4
theme_override_font_sizes/font_size = 15
theme_override_styles/focus = SubResource("4")
theme_override_styles/disabled = SubResource("5")
theme_override_styles/hover = SubResource("2")

View File

@@ -59,6 +59,11 @@ var _pressed: = false
$button.set_toggle_mode(val)
@export var font_size: int = true:
set(val):
$button.add_theme_font_size_override('theme_override_font_sizes/font_size', val)
func set_pressed(val: bool):
pressed = val

View File

@@ -57,6 +57,7 @@ size_flags_vertical = 3
tooltip_text = "Включает принудительную помеху"
strips_rotation = 15.0
text = "СРН"
font_size = null
metadata/rfi_name = "srn"
[node name="btn_jtids" parent="grd_forced" groups=["группа-принудительно"] instance=ExtResource("4_7ys3c")]
@@ -66,6 +67,7 @@ size_flags_horizontal = 3
size_flags_vertical = 3
strips_rotation = 15.0
text = "СПРС"
font_size = null
metadata/rfi_name = "sprs"
[node name="btn_kupd" parent="grd_forced" groups=["группа-принудительно"] instance=ExtResource("4_7ys3c")]
@@ -75,6 +77,7 @@ size_flags_vertical = 3
tooltip_text = "Кнопка для принудительного включения группы секторов в режим КУПД"
strips_rotation = 15.0
text = "КУПД"
font_size = null
metadata/rfi_name = "kupd"
[node name="btn_panika" parent="grd_forced" groups=["группа-принудительно"] instance=ExtResource("4_7ys3c")]
@@ -84,6 +87,7 @@ size_flags_vertical = 3
tooltip_text = "Кнопка для принудительного включения группы секторов в режим КУПД"
strips_rotation = 15.0
text = "Паника"
font_size = null
metadata/rfi_name = "<off>"
[node name="btn_cancel" parent="grd_forced" groups=["прин-секторы-срн"] instance=ExtResource("4_7ys3c")]
@@ -92,4 +96,5 @@ size_flags_horizontal = 3
size_flags_vertical = 3
strips_rotation = 15.0
text = "Очистить"
font_size = null
metadata/rfi_name = "<off>"

View File

@@ -36,7 +36,8 @@ const INTERFER_NAMES = {
'svi1': 'СВ-И1',
'k1': 'K1',
'svm2': 'СВ-М2',
'ozp1': 'ОЗП-1'}
'ozp1': 'ОЗП-1',
'eprls': 'ЕПРЛС',}
## Индексы колонок
@@ -84,6 +85,7 @@ func _ready():
signaller.connect('rto_threat_unsel', Callable(self, 'on_rto_threat_unsel'))
signaller.connect('rto_threat_sel', Callable(self, 'on_rto_threat_sel').bind(table_index))
interfer.connect('interfer_update', Callable(self, 'on_interfer_update').bind(table_index))
interfer.connect('interfer_recommendate', Callable(self, 'on_interfer_recommendate'))
$table.connect('row_pressed', Callable(self, 'on_row_pressed'))
call_deferred('init_table')
@@ -120,21 +122,13 @@ func on_interfer_new(ecm, table_index):
signaller.emit_signal('interfer_selected', ecm)
func on_interfer_off(ecm, ecms, thrs, table_index):
var sz = ecms.size()
func on_interfer_off(ecm, table_index):
$table.remove_row(table_index[ecm.ispp])
rehash(table_index)
ecms.erase(ecm.ispp)
thrs.erase(ecm.ispp)
interfer.cu.erase(ecm.ispp)
interfer.fs.erase(ecm.ispp)
interfer.push_id(ecm.ispp)
var sel_rows: Array
$table.get_selected_rows(sel_rows)
if not len(sel_rows):
signaller.emit_signal('interfer_selected', null)
if sz != ecms.size():
interfer.call_deferred('emit_signal', 'interfer_resized', ecms)
## Перестраивает индекс таблицы. Вызывать при удалении строки
@@ -159,3 +153,13 @@ func map_th_to_row(ecm) -> Array:
if INTERFER_STATE.has(ecm.svk):
row[COLUMN_STATE] = '%s' % INTERFER_STATE[ecm.svk]
return row
func on_interfer_recommendate(ecm):
var sel_rows: Array
$table.get_selected_rows(sel_rows)
if not len(sel_rows): return
var row = sel_rows[0]
var sel_ecm = $table.get_node_user_data(0, sel_rows[0])
if ecm == sel_ecm:
signaller.emit_signal('interfer_selected', ecm)

View File

@@ -5,7 +5,7 @@
[node name="grd_btns" type="GridContainer"]
offset_right = 1096.0
offset_bottom = 54.0
columns = 15
columns = 16
[node name="btn_off" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
layout_mode = 2
@@ -14,6 +14,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "Откл."
disabled = true
font_size = 1
metadata/rfi_name = "off"
[node name="btn_p12" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -23,6 +24,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "МЧМ-1"
disabled = true
font_size = 1
metadata/rfi_name = "mchm1"
[node name="btn_p16" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -32,6 +34,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "СРН-И1"
disabled = true
font_size = 1
metadata/rfi_name = "srni1"
[node name="btn_p15" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -41,6 +44,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "СРН-М2"
disabled = true
font_size = 1
metadata/rfi_name = "srnm2"
[node name="btn_p18" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -50,6 +54,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "СРН-GPS"
disabled = true
font_size = 1
metadata/rfi_name = "srngps"
[node name="btn_p14" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -59,6 +64,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "ПД-М4"
disabled = true
font_size = 1
metadata/rfi_name = "pdm4"
[node name="btn_p13" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -68,6 +74,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "ПД-М2"
disabled = true
font_size = 1
metadata/rfi_name = "pdm2"
[node name="btn_p11" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -77,6 +84,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "ЛЧМ-1"
disabled = true
font_size = 1
metadata/rfi_name = "lchm1"
[node name="btn_p17" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -86,6 +94,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "ЛЧМ-2"
disabled = true
font_size = 1
metadata/rfi_name = "lchm2"
[node name="btn_p10" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -95,6 +104,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "ПД-М4С"
disabled = true
font_size = 1
metadata/rfi_name = "pdm4s"
[node name="btn_p9" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -104,6 +114,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "ПД-ЧМ"
disabled = true
font_size = 1
metadata/rfi_name = "pdchm"
[node name="btn_p8" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -113,6 +124,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "СВ-И1"
disabled = true
font_size = 1
metadata/rfi_name = "svi1"
[node name="btn_p7" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -122,6 +134,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "K1"
disabled = true
font_size = 1
metadata/rfi_name = "k1"
[node name="btn_p6" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -131,6 +144,7 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "СВ-М2"
disabled = true
font_size = 1
metadata/rfi_name = "svm2"
[node name="btn_p5" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
@@ -140,4 +154,15 @@ size_flags_vertical = 3
strips_rotation = 30.0
text = "ОЗП-1"
disabled = true
font_size = 1
metadata/rfi_name = "ozp1"
[node name="btn_p19" parent="." groups=["группа-режим-помехи"] instance=ExtResource("1_oy80h")]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
strips_rotation = 30.0
text = "ЕПРЛС"
disabled = true
font_size = 1
metadata/rfi_name = "eprls"

View File

@@ -5,7 +5,7 @@ func on_line_changed(unit_inst): log.message(Logger.INFO, '\"%s\" изменен
func on_command_fail(unit_inst): log.message(Logger.ERROR, '\"%s\" команда не выполнена' % unit_inst.name)
func on_threats_changed(th: Object, msg: String): log.message(Logger.INFO, '%s: %s' % [msg, th.to_string()])
func on_parse_error(unit_inst, msg: String): log.message(Logger.ERROR, '%s: %s' % [unit_inst.name, msg])
func on_interfer_off(ecm, _ecms, _thrs,msg: String): log.message(Logger.INFO, '%s: %s' % [msg, ecm.to_string()])
func on_interfer_off(ecm, msg: String): log.message(Logger.INFO, '%s: %s' % [msg, ecm.to_string()])
func on_set_program_mode(msg: String): log.message(Logger.INFO, msg)
func on_interfer_new(ecm, msg: String):

View File

@@ -229,13 +229,6 @@ func on_interfer_off_all():
update_fs_colors()
func on_interfer_off(ecm_id):
fs_active.erase(ecm_id)
fs_selected.erase(ecm_id)
fs_active.clear()
update_fs_colors()
## Обработчик сигнала обнаружения цели.
func on_threat_new(th) -> void:
var bip = Bip.instantiate()

View File

@@ -174,6 +174,7 @@ size_flags_vertical = 3
tooltip_text = "Кнопка для выбора сектора при помощи клика мышкой"
strips_rotation = 25.0
text = "Строб"
font_size = null
metadata/state = 0
[node name="btn_threats" parent="btns_select" groups=["группа-режим-выбора"] instance=ExtResource("8_k0iv2")]
@@ -183,6 +184,7 @@ size_flags_vertical = 3
tooltip_text = "Кнопка для выбора сектора при помощи клика мышкой"
strips_rotation = 25.0
text = "Цель"
font_size = null
metadata/state = 1
[node name="btn_fs_sector" parent="btns_select" groups=["группа-режим-выбора"] instance=ExtResource("8_k0iv2")]
@@ -192,6 +194,7 @@ size_flags_vertical = 3
tooltip_text = "Кнопка для выбора сектора при помощи клика мышкой"
strips_rotation = 25.0
text = "Сектор"
font_size = null
metadata/state = 2
[node name="chk_auto" type="CheckBox" parent="."]

View File

@@ -81,6 +81,7 @@ offset_right = 1583.0
offset_bottom = 85.0
strips_rotation = 10.0
text = "Прочитать"
font_size = null
[node name="btn_flash_write" parent="." instance=ExtResource("2_eju8r")]
layout_mode = 0
@@ -90,6 +91,7 @@ offset_right = 1583.0
offset_bottom = 129.0
strips_rotation = 10.0
text = "Записать"
font_size = null
[node name="btn_save" type="Button" parent="."]
layout_mode = 0