68 lines
3.2 KiB
GDScript
68 lines
3.2 KiB
GDScript
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()
|