diff --git a/scenes/контроль/кнопка-прибора.gd b/scenes/контроль/кнопка-прибора.gd index f395586..d24dae3 100644 --- a/scenes/контроль/кнопка-прибора.gd +++ b/scenes/контроль/кнопка-прибора.gd @@ -5,7 +5,23 @@ extends TextureButton @export var state_colors: Array func _on_toggled(toggled_on): $frame.visible = toggled_on -func _enter_tree() -> void: $label.self_modulate = state_colors[state] + + +func _enter_tree() -> void: + $label.self_modulate = state_colors[state] + ProjectSettings.connect('settings_changed', _on_settings_changed) + + +func _exit_tree() -> void: + ProjectSettings.disconnect('settings_changed', _on_settings_changed) + + +func _on_settings_changed(): + if not is_inside_tree(): return + var white_color = ProjectSettings.get_setting('Схема прибора. Белый цвет', Color.DIM_GRAY) + var black_color = ProjectSettings.get_setting('Схема прибора. Чёрный цвет', Color.CORAL) + $pic_functional.material.set('shader_parameter/white', white_color) + $pic_functional.material.set('shader_parameter/black', black_color) @export var state: int: diff --git a/scenes/контроль/контроль.tscn b/scenes/контроль/контроль.tscn index d78d689..5be593c 100644 --- a/scenes/контроль/контроль.tscn +++ b/scenes/контроль/контроль.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=27 format=3 uid="uid://lwmw4egynmd1"] +[gd_scene load_steps=26 format=3 uid="uid://lwmw4egynmd1"] [ext_resource type="Texture2D" uid="uid://bar8k5qef7kch" path="res://data/УФ.png" id="2_0nvm1"] [ext_resource type="Script" uid="uid://q3gmpsqspjfp" path="res://scenes/контроль/внешний.gd" id="2_8r80x"] @@ -22,7 +22,6 @@ [ext_resource type="Texture2D" uid="uid://vdhmga62vjsj" path="res://data/АФСП-РТР.png" id="13_32yvq"] [ext_resource type="Texture2D" uid="uid://dm350ta8noa0v" path="res://data/У-РЭП-РПД-К.png" id="16_32yvq"] [ext_resource type="Texture2D" uid="uid://c3cyog3gy24ft" path="res://data/У-ЭП.png" id="16_gjf0t"] -[ext_resource type="Texture2D" uid="uid://cllxcfa130vqu" path="res://data/УА-РЭП.png" id="22_1s34a"] [sub_resource type="GDScript" id="GDScript_iqgf5"] script/source = "extends Panel @@ -143,6 +142,7 @@ func on_pribor_press(pribor_path, header_text, pribor_node): push_error('экземпляр не создан: \\\"%s\\\" (%s)' % [pribor_path, header_text]) return $lbl_header.text = header_text + $chk_show_functional.disabled = false var meta_list = pribor_node.get_meta_list() if meta_list.find('unit_name') > -1: var unit_name = pribor_node.get_meta('unit_name') @@ -183,8 +183,8 @@ animations = [{ [sub_resource type="ShaderMaterial" id="ShaderMaterial_71ec4"] shader = ExtResource("9_71ec4") -shader_parameter/grey = Vector3(0.14, 0.13, 0.13) -shader_parameter/orange = Vector3(0.95, 0.55, 0.05) +shader_parameter/white = Vector3(0.14, 0.13, 0.13) +shader_parameter/black = Vector3(0.95, 0.55, 0.05) shader_parameter/gamma = 2.0 [node name="Контроль" type="Panel"] @@ -1621,15 +1621,16 @@ points = PackedVector2Array(-8, 0, 608, 0) width = 2.0 default_color = Color(1, 1, 1, 0.352941) -[node name="pic_functional" type="TextureRect" parent="."] -visible = false +[node name="chk_show_functional" type="CheckButton" parent="."] layout_mode = 0 -offset_left = -962.0 -offset_top = 73.0 -offset_right = 96.9999 -offset_bottom = 746.0 -scale = Vector2(5, 5) -texture = ExtResource("22_1s34a") +offset_left = 1050.0 +offset_top = 26.0 +offset_right = 1429.0 +offset_bottom = 60.0 +theme_override_font_sizes/font_size = 22 +disabled = true +text = "Показть функциональную схему Э2" +flat = true [node name="chk_show_functional" type="CheckButton" parent="."] layout_mode = 0 diff --git a/settings.json b/settings.json index 427f445..daf3d72 100644 --- a/settings.json +++ b/settings.json @@ -4,6 +4,7 @@ "Адрес БПО левого борта": "http://172.22.246.13:8081/selftest?presetType=bpo&400000000", "Адрес БПО правого борта": "http://172.22.246.11:8082/selftest?presetType=bpo&400000000", "Виртуальная клавиатура": false, + "Включить работу по своим целям": true, "Внешнее указание Трасса": false, "Внешнее управление": false, "Кнопка «JTIDS»": false, @@ -26,29 +27,31 @@ "Период опроса состояния АФСП, секунды": "30", "Период опроса состояния БПО, секунды": "30", "Скрыть вкладку ЭМС 2": true, + "Список своих протоколов": "j11", + "Схема прибора. Белый цвет": [1.0, 1.0, 1.0], + "Схема прибора. Чёрный цвет": [0.0, 0.0, 0.0], "Текущая версия ПО УАРЭП": "master b2633d8 Thu Sep 11 16:26:39 2025 +0300", - "Шаблон адреса сервера карт": "http://10.1.1.2:8001/osm_tiles/{z}/{x}/{y}.png", + "Шаблон адреса сервера карт": "http://169.254.27.71:8001/osm_tiles/{z}/{x}/{y}.png", "навигация": [ "*", 60000, true, true ], - "уареп-трасса": "127.0.0.1,127.0.0.1,50200,10004", "уарэп-5п28": [ "127.0.0.1", 50777 ], "уарэп-капсрпб": [ - "192.168.11.102", - "192.168.11.105", + "127.0.0.1", + "127.0.0.1", 42023, 42022, false, true ], "уарэп-спт25-1": [ - "/home/user/tty0", + "/home/sasha/dev/tty0", 0, 19200, "N", @@ -56,15 +59,23 @@ 1 ], "уарэп-спт25-2": [ - "/home/user/tty1", + "/home/sasha/dev/tty4", 0, 19200, "N", 8, 1 ], + "уарэп-трасса": [ + "127.0.0.1", + "127.0.0.1", + 50200, + 10004, + false, + true + ], "уарэп-щ3": [ - "/home/user/tty3", + "/home/sasha/dev/tty2", 7, 19200, "N", diff --git a/shaders/two-color.gdshader b/shaders/two-color.gdshader index 570725e..fd0f624 100644 --- a/shaders/two-color.gdshader +++ b/shaders/two-color.gdshader @@ -1,7 +1,7 @@ shader_type canvas_item; -uniform vec3 grey = vec3(0.14, 0.13, 0.13); -uniform vec3 orange = vec3(0.95, 0.55, 0.05); +uniform vec3 white = vec3(0.14, 0.13, 0.13); +uniform vec3 black = vec3(0.95, 0.55, 0.05); uniform float gamma = 2.0; vec3 bw_to_2color(vec3 c, vec3 dark, vec3 light) @@ -13,5 +13,5 @@ vec3 bw_to_2color(vec3 c, vec3 dark, vec3 light) void fragment() { - COLOR.rgb = bw_to_2color(texture(TEXTURE, UV).rgb, grey, orange); + COLOR.rgb = bw_to_2color(texture(TEXTURE, UV).rgb, white, black); }