Рефактор. Режим ЭМС-ТГ

This commit is contained in:
sasha80
2026-04-02 10:58:13 +03:00
parent b3455947fd
commit 96436596d8
2 changed files with 14 additions and 10 deletions

View File

@@ -4,8 +4,11 @@ extends PanelContainer
## Предназначено для отображения диапазонов на горизонтальной шкале ## Предназначено для отображения диапазонов на горизонтальной шкале
@export_range(0.0, 1.0) var gap_top: float = 0.05 ## Зазор сверху @export_range(0.0, 1.0) var gap_top: float = 0.05 ## Зазор сверху
@export_range(0.0, 1.0) var gap_bottom: float = 0.05 ## Зазор снизу @export_range(0.0, 1.0) var gap_bottom: float = 0.05 ## Зазор снизу
var ranges_save: Dictionary[StringName, Array] ## <имя диапазона>: [диапазон(x - начало, y - конец), цвет]
@export_file var image_file: String: @export_file var image_file: String:
set(val): set(val):
image_file = val image_file = val
@@ -20,9 +23,6 @@ extends PanelContainer
_enter_tree() _enter_tree()
var ranges_save: Dictionary[StringName, Array] ## <имя диапазона>: [диапазон(x - начало, y - конец), цвет]
func _enter_tree() -> void: func _enter_tree() -> void:
if ResourceLoader.exists(image_file): if ResourceLoader.exists(image_file):
$grid/image.texture = load(image_file) $grid/image.texture = load(image_file)

View File

@@ -48,8 +48,10 @@ extends Panel
#endregion #endregion
#region Заполняется автоматически при запуске #region Заполняется автоматически при запуске
var name_to_index: Dictionary[StringName, int] ## Имя устройства -> Индекс устройства ## Имя устройства -> Индекс устройства
var name_to_scale: Dictionary[StringName, GridContainer] ## Имя устройства -> Шкала var name_to_index: Dictionary[StringName, int]
## Имя устройства -> Шкала
var name_to_scale: Dictionary[StringName, GridContainer]
var table_cell_row: Array var table_cell_row: Array
## Образец параметров кластера ## Образец параметров кластера
var ref_cls: = {'cname': '<имя>', 'ttl': 1.0, 'daa': 360.0, 'dap': 0.0, var ref_cls: = {'cname': '<имя>', 'ttl': 1.0, 'daa': 360.0, 'dap': 0.0,
@@ -341,7 +343,9 @@ func update_indexes(unit_info: Dictionary, indexes: Dictionary) -> Array:
return new_indexes return new_indexes
# Объединяет список кластеров принятых от устройства со списком сохранённым ## Объединяет список кластеров принятых от устройства со списком сохранённым
## [param unit_info] - доклад ранее полученный
## [param data_rx] - доклад принятый от устройства
func unit_info_merge(unit_info: Dictionary, data_rx: Dictionary): func unit_info_merge(unit_info: Dictionary, data_rx: Dictionary):
var drx: = {} var drx: = {}
for cls_rx in data_rx.mcls: for cls_rx in data_rx.mcls:
@@ -538,10 +542,10 @@ func map_yems_info_to_scale(unit_info: Dictionary, cscale: GridContainer):
# Диапазон работает (информация обновляется) # Диапазон работает (информация обновляется)
if cls.status == ClasterStatus.RUNNING: if cls.status == ClasterStatus.RUNNING:
# Отобразить диапазон приёмника, в соответствии с разрешением # Отобразить диапазон приёмника, в соответствии с разрешением
var color_rxe: = color_enabled if cls.get('rxe', false) else color_disabled var color_rxe: = color_enabled if cls.rxe else color_disabled
scale_rx.set_range(cls.cname, l, h, color_rxe) scale_rx.set_range(cls.cname, l, h, color_rxe)
# Отобразить диапазон передатчика, в соответствии с разрешением # Отобразить диапазон передатчика, в соответствии с разрешением
var color_txe: = color_enabled if cls.get('txe', false) else color_disabled var color_txe: = color_enabled if cls.txe else color_disabled
scale_tx.set_range(cls.cname, l, h, color_txe) scale_tx.set_range(cls.cname, l, h, color_txe)
# Диапазон удалён (информация не обновляется) # Диапазон удалён (информация не обновляется)
elif cls.status == ClasterStatus.DELETED: elif cls.status == ClasterStatus.DELETED: