Files
uarep-ctl/scenes/журнал/журнал.gd
2025-10-12 01:55:23 +03:00

68 lines
3.2 KiB
GDScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

extends Panel
func on_line_changed(unit_inst): log.message(Logger.INFO, '\"%s\" изменение состояния: %s' % [unit_inst.name, 'на связи' if unit_inst.online else 'отключен'])
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, 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_mode_trenazh(val: bool): log.message(Logger.INFO, 'Режим \"Тренаж\" %s' % ['отменён', 'задейсвован'][int(val)])
func on_interfer_new(ecm, msg: String):
if ecm.krp != interfer.INTERFER_OFF:
log.message(Logger.INFO, '%s: %s' % [msg, ecm.to_string()])
func _enter_tree():
var flts: Array = []
for item in $filtrs.get_children():
flts.append(item)
log.set_filtrs(flts)
func _ready() -> void:
log.info('Аргументы коммандной строки: \"%s\"' % OS.get_cmdline_args())
log.info('Операционная система: \"%s\"' % OS.get_distribution_name())
log.info('Текущая версия ПО УАРЭП: \"%s\"' % commit.VCS_HEAD)
threats.connect('threat_new', Callable(self, 'on_threats_changed').bind('Цель обнаружена'))
threats.connect('threat_lost', Callable(self, 'on_threats_changed').bind('Цель потеряна'))
signaller.conn(signaller.interfer_new, Callable(self, 'on_interfer_new').bind('Создан сеанс помехи'))
signaller.conn(signaller.interfer_off, Callable(self, 'on_interfer_off').bind('Сеанс помехи отключен'))
signaller.conn(signaller.режим_работа, Callable(log, 'info').bind('Программа в режиме \"Работа\"'))
signaller.conn(signaller.режимастройки, Callable(log, 'info').bind('Программа в режиме \"Настройки\"'))
signaller.conn(signaller.режим_эмс, Callable(log, 'info').bind('Программа в режиме \"ЭМС\"'))
signaller.conn(signaller.режимурнал, Callable(log, 'info').bind('Программа в режиме \"Журнал\"'))
signaller.conn(signaller.режимонтроль, Callable(log, 'info').bind('Программа в режиме \"Контроль\"'))
signaller.conn(signaller.режимренаж, Callable(self, 'on_mode_trenazh'))
func _on_clear_button_down() -> void:
$content.clear()
log.info('Cодержание журнала очищено оператором')
func _on_btn_save_button_down() -> void:
$content.hide()
$btn_clear.hide()
$btn_save.hide()
$filtrs.hide()
$dlg_file.show()
func _on_dlg_file_confirmed() -> void:
$content.show()
$btn_clear.show()
$btn_save.show()
$filtrs.show()
$dlg_file.hide()
func _on_dlg_file_file_selected(path):
log.save_file(path)
func _on_check_box_pressed():
$content.clear()
log.add_msgs()