diff --git a/PRD2B03.tmp b/PRD2B03.tmp new file mode 100644 index 0000000..fef3e76 --- /dev/null +++ b/PRD2B03.tmp @@ -0,0 +1,1391 @@ +[gd_scene load_steps=77 format=3 uid="uid://cvor2jm4xk3ha"] + +[ext_resource type="Script" path="res://scripts/PRD.gd" id="1_v273n"] +[ext_resource type="Texture2D" uid="uid://cdxdluvyb5uei" path="res://table/on.png" id="2_dv7xx"] +[ext_resource type="Script" path="res://table/table.gd" id="2_vmbyo"] +[ext_resource type="Shader" path="res://Shaders/gradient.gdshader" id="2_vn1it"] +[ext_resource type="Material" uid="uid://s6xe8igevnv2" path="res://Shaders/shader_edu.tres" id="3_3syd3"] +[ext_resource type="Texture2D" uid="uid://cfktmk2rowmul" path="res://table/off.png" id="3_qvuyu"] +[ext_resource type="Shader" path="res://Shaders/ray.gdshader" id="4_uy5o2"] +[ext_resource type="Texture2D" uid="uid://671got5vbput" path="res://pictures/бургер.png" id="5_eoogc"] +[ext_resource type="Texture2D" uid="uid://co8dxcd8eckjs" path="res://pictures/Web.png" id="5_i3nvb"] +[ext_resource type="Texture2D" uid="uid://didrk0pcfgirg" path="res://pictures/клад.png" id="6_bqc7t"] +[ext_resource type="Texture2D" uid="uid://cxn1guhi7lg3i" path="res://pictures/серпимолот.png" id="7_0pknj"] +[ext_resource type="Shader" path="res://Shaders/ray_2.gdshader" id="8_12mng"] +[ext_resource type="Texture2D" uid="uid://ysxmr26y0i8v" path="res://pictures/серпимоло_pressed.png" id="8_iuer1"] +[ext_resource type="Texture2D" uid="uid://ckvwvec0hop37" path="res://pictures/контролер.png" id="8_qqoau"] +[ext_resource type="Texture2D" uid="uid://cgtg4gbqnuxrc" path="res://pictures/nine-patch-round.png" id="9_0r2qk"] +[ext_resource type="Script" path="res://scripts/control_panel.gd" id="9_akagi"] +[ext_resource type="Script" path="res://scripts/ems_g.gd" id="9_g1wia"] +[ext_resource type="Shader" path="res://Shaders/load.gdshader" id="10_lf1xh"] +[ext_resource type="Texture2D" uid="uid://t3bxox5ehcg8" path="res://pictures/контролер_pressed.png" id="10_t2sq8"] +[ext_resource type="PackedScene" uid="uid://bdb0bhfu7366l" path="res://kasseta-fs-kd.tscn" id="10_tdh2s"] +[ext_resource type="PackedScene" uid="uid://p2suppildvq0" path="res://table/элемент-в.tscn" id="11_fg7ul"] +[ext_resource type="PackedScene" uid="uid://bn2n3lgc4ts1r" path="res://table/блок-а.tscn" id="11_k47r2"] +[ext_resource type="Texture2D" uid="uid://dpes8l540mgrd" path="res://pictures/эмс.png" id="11_qqb3s"] +[ext_resource type="Texture2D" uid="uid://bcq6o4fuxh88b" path="res://pictures/эмс_pressed.png" id="12_u035s"] +[ext_resource type="Texture2D" uid="uid://b8jfjs7qh10wh" path="res://pictures/фс.png" id="13_xdqnq"] +[ext_resource type="Texture2D" uid="uid://c8gfddmqnws7v" path="res://pictures/фс_pressed.png" id="14_0dei1"] +[ext_resource type="Script" path="res://scripts/modul_fs.gd" id="15_b4pr1"] +[ext_resource type="Texture2D" uid="uid://cyuv78v6vem55" path="res://pictures/сохр.png" id="15_bpwqh"] +[ext_resource type="Shader" path="res://Shaders/loadead.gdshader" id="16_4osrw"] +[ext_resource type="Texture2D" uid="uid://bk2cbbj31mq2x" path="res://pictures/сохр_pressed.png" id="16_55rvl"] +[ext_resource type="Texture2D" uid="uid://c12e2lcqf6r3o" path="res://pictures/загр.png" id="17_uy706"] +[ext_resource type="Texture2D" uid="uid://gjqcmfxb4vo4" path="res://pictures/загр_pressed.png" id="18_iu14f"] +[ext_resource type="Shader" path="res://Shaders/ray_litera_1.gdshader" id="20_do1s5"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_o0too"] +bg_color = Color(0.447059, 0.0784314, 0.192157, 1) +border_width_bottom = 6 +border_color = Color(0.396649, 0.0647458, 0.167246, 1) +border_blend = true +corner_radius_top_left = 10 +corner_radius_bottom_left = 10 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_eib3t"] +bg_color = Color(0.252841, 0.19297, 0.252851, 1) +border_width_bottom = 6 +border_color = Color(0.228592, 0.173062, 0.22863, 1) +border_blend = true +corner_radius_top_left = 10 +corner_radius_bottom_left = 10 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_gooip"] +bg_color = Color(0.143, 0.103, 0.143, 0.799) + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_148rs"] +bg_color = Color(0.141176, 0.101961, 0.141176, 0.8) +border_width_bottom = 4 +border_color = Color(0.223529, 0.168627, 0.223529, 1) +border_blend = true +corner_radius_top_left = 2 +corner_radius_top_right = 2 +corner_radius_bottom_right = 2 +corner_radius_bottom_left = 2 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ldbvf"] +bg_color = Color(0.141176, 0.101961, 0.141176, 0.8) + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_h8aei"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_d322q"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_8j02b"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ls6vm"] + +[sub_resource type="Theme" id="Theme_k5ur4"] +Button/colors/font_color = Color(1, 1, 0.941176, 1) +Button/colors/font_focus_color = Color(1, 1, 0.941176, 1) +Button/styles/focus = null +Button/styles/hover = SubResource("StyleBoxFlat_o0too") +Button/styles/normal = SubResource("StyleBoxFlat_o0too") +Button/styles/pressed = SubResource("StyleBoxFlat_eib3t") +CheckButton/icons/checked = ExtResource("2_dv7xx") +CheckButton/icons/unchecked = ExtResource("3_qvuyu") +OptionButton/colors/font_color = Color(1, 1, 0.941176, 1) +OptionButton/colors/font_focus_color = Color(1, 1, 0.941176, 1) +OptionButton/font_sizes/font_size = 17 +OptionButton/styles/focus = SubResource("StyleBoxFlat_gooip") +OptionButton/styles/hover = SubResource("StyleBoxFlat_148rs") +OptionButton/styles/normal = SubResource("StyleBoxFlat_148rs") +OptionButton/styles/pressed = SubResource("StyleBoxFlat_ldbvf") +TabContainer/styles/panel = SubResource("StyleBoxTexture_h8aei") +TabContainer/styles/tab_focus = SubResource("StyleBoxTexture_d322q") +TabContainer/styles/tab_selected = SubResource("StyleBoxTexture_8j02b") +TabContainer/styles/tabbar_background = SubResource("StyleBoxTexture_ls6vm") + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_3q35w"] +shader = ExtResource("2_vn1it") +shader_parameter/outerRadius = 4.0 +shader_parameter/MainAlpha = 1.0 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_4qm5k"] +bg_color = Color(0.6, 0.501961, 0.6, 0.901961) + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_p247y"] +bg_color = Color(0.294118, 0.231373, 0.294118, 1) +corner_radius_top_left = 10 +corner_radius_bottom_left = 10 + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_rh6pm"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_x11tp"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_mn8w2"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_21lc8"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_k08q3"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_dklg6"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_17le6"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_7u7p7"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_1as41"] + +[sub_resource type="PlaceholderTexture2D" id="PlaceholderTexture2D_723du"] +size = Vector2(1600, 1200) + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_o7txs"] + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_dgiai"] +shader = ExtResource("4_uy5o2") +shader_parameter/color_signal = Color(0.588235, 0.466667, 0, 1) +shader_parameter/turn = 0.785 +shader_parameter/inner_radius = 0.32 +shader_parameter/speed = 0.0 + +[sub_resource type="Gradient" id="Gradient_ki0n7"] + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_0pk2o"] +gradient = SubResource("Gradient_ki0n7") +fill_from = Vector2(0.474359, 0.5) +metadata/_snap_enabled = true + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_2pxu2"] +shader = ExtResource("8_12mng") +shader_parameter/color_signal = Color(0.588242, 0.466356, 0, 1) +shader_parameter/turn = 0.785 +shader_parameter/inner_radius = 0.32 +shader_parameter/speed = 0.0 + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_ps0lm"] +shader = ExtResource("20_do1s5") +shader_parameter/color_signal = Color(0.374965, 0.291384, 0.05121, 1) +shader_parameter/turn = 0.785 +shader_parameter/inner_radius = 0.795 +shader_parameter/speed = 0.0 + +[sub_resource type="Gradient" id="Gradient_anl0y"] + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_766ko"] +gradient = SubResource("Gradient_anl0y") + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_eleyh"] +bg_color = Color(0.447059, 0.0784314, 0.192157, 1) +corner_radius_top_left = 5 +corner_radius_top_right = 5 +corner_radius_bottom_right = 5 +corner_radius_bottom_left = 5 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_yaooi"] +bg_color = Color(0.699728, 0.157278, 0.320529, 1) +corner_radius_top_left = 5 +corner_radius_top_right = 5 +corner_radius_bottom_right = 5 +corner_radius_bottom_left = 5 + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_tn8m6"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_13x31"] +bg_color = Color(0.111197, 0.111197, 0.111197, 0.201) +corner_radius_top_left = 15 +corner_radius_top_right = 15 +corner_radius_bottom_right = 15 +corner_radius_bottom_left = 15 + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_07wue"] +shader = ExtResource("10_lf1xh") +shader_parameter/frequency = 5.0 +shader_parameter/amplitude = 0.1 +shader_parameter/speed = 5.0 +shader_parameter/direction = -1.0 +shader_parameter/color1 = Color(0, 0, 0, 1) +shader_parameter/color2 = Color(0.235, 0.18, 0.235, 1) +shader_parameter/color3 = Color(0.235, 0.18, 0.235, 0.5) +shader_parameter/color4 = Color(0, 0, 0, 0) +shader_parameter/opacity = 0.5 +shader_parameter/turn = 0.785 + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ooo4i"] + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_cm644"] +shader = ExtResource("16_4osrw") +shader_parameter/dot_scale = 0.5 +shader_parameter/ring_radius = 0.2 +shader_parameter/num_points = 8 +shader_parameter/gap_ratio = 0.102 +shader_parameter/all_dots_same_size = false +shader_parameter/dot_color_start = Color(0.893646, 0.893797, 0.859099, 1) +shader_parameter/dot_color_end = Color(0.888169, 0.740534, 1, 1) +shader_parameter/enable_shadow = true +shader_parameter/shadow_color = Color(0, 0, 0, 0.35) +shader_parameter/shadow_offset = Vector2(0.03, 0.01) +shader_parameter/rotation_speed = 4.995 +shader_parameter/icon_size = 0.15 +shader_parameter/enable_icon_rotation = false +shader_parameter/reverse_icon_rotation = false +shader_parameter/icon_rotation_speed = 1.0 +shader_parameter/show_icon = false + +[sub_resource type="Gradient" id="Gradient_kvhy4"] +colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_2sr0p"] +gradient = SubResource("Gradient_kvhy4") +width = 100 +height = 150 +fill = 1 +fill_from = Vector2(0.521368, 0.512821) + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_slcfo"] +shader = ExtResource("10_lf1xh") +shader_parameter/frequency = 5.0 +shader_parameter/amplitude = 600.0 +shader_parameter/speed = 5.0 +shader_parameter/direction = -1.0 +shader_parameter/color1 = Color(0, 0, 0, 1) +shader_parameter/color2 = Color(0.235, 0.18, 0.235, 1) +shader_parameter/color3 = Color(0.235, 0.18, 0.235, 0.5) +shader_parameter/color4 = Color(0, 0, 0, 0) +shader_parameter/opacity = 0.218 +shader_parameter/turn = 0.785 + +[sub_resource type="Theme" id="Theme_yblys"] +CheckBox/font_sizes/font_size = 14 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ei3d4"] +bg_color = Color(0.362983, 0.685867, 0.396516, 1) +corner_radius_top_left = 5 +corner_radius_top_right = 5 +corner_radius_bottom_right = 5 +corner_radius_bottom_left = 5 + +[node name="Node2D" type="Node2D"] +script = ExtResource("1_v273n") + +[node name="Background" type="ColorRect" parent="."] +offset_right = 3012.0 +offset_bottom = 1080.0 +theme = SubResource("Theme_k5ur4") +color = Color(0.356863, 0.278431, 0.356863, 1) +metadata/_edit_lock_ = true + +[node name="gradient" type="ColorRect" parent="Background"] +material = SubResource("ShaderMaterial_3q35w") +layout_mode = 0 +offset_left = -1149.0 +offset_top = -31.0 +offset_right = 3008.0 +offset_bottom = 1103.0 +metadata/_edit_lock_ = true + +[node name="switch_panel" type="Panel" parent="Background"] +layout_mode = 0 +offset_left = -10.0 +offset_top = -8.0 +offset_right = 222.0 +offset_bottom = 1112.0 +theme_override_styles/panel = SubResource("StyleBoxFlat_4qm5k") + +[node name="select_prd" type="Button" parent="Background/switch_panel" groups=["select_grp"]] +layout_mode = 0 +offset_left = 16.0 +offset_top = 128.0 +offset_right = 232.0 +offset_bottom = 164.0 +focus_mode = 0 +mouse_default_cursor_shape = 2 +theme_override_font_sizes/font_size = 14 +theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y") +toggle_mode = true +button_pressed = true +text = "ПРД" + +[node name="select_control" type="Button" parent="Background/switch_panel" groups=["select_grp"]] +layout_mode = 0 +offset_left = 16.0 +offset_top = 168.0 +offset_right = 232.0 +offset_bottom = 204.0 +focus_mode = 0 +mouse_default_cursor_shape = 2 +theme_override_font_sizes/font_size = 14 +theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y") +toggle_mode = true +text = "КОНТРОЛЬ" + +[node name="select_ems_g" type="Button" parent="Background/switch_panel" groups=["select_grp"]] +layout_mode = 0 +offset_left = 16.0 +offset_top = 208.0 +offset_right = 232.0 +offset_bottom = 244.0 +focus_mode = 0 +mouse_default_cursor_shape = 2 +theme_override_font_sizes/font_size = 14 +theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y") +toggle_mode = true +text = "ЭМС Г" + +[node name="select_fs" type="Button" parent="Background/switch_panel" groups=["select_grp"]] +layout_mode = 0 +offset_left = 16.0 +offset_top = 249.0 +offset_right = 232.0 +offset_bottom = 285.0 +focus_mode = 0 +mouse_default_cursor_shape = 2 +theme_override_font_sizes/font_size = 14 +theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y") +toggle_mode = true +text = "Модуль ФС" + +[node name="save_config" type="Button" parent="Background/switch_panel" groups=["select_grp"]] +layout_mode = 0 +offset_left = 16.0 +offset_top = 840.0 +offset_right = 232.0 +offset_bottom = 876.0 +focus_mode = 0 +mouse_default_cursor_shape = 2 +theme_override_font_sizes/font_size = 14 +theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y") +text = "Сохранить" + +[node name="load_config" type="Button" parent="Background/switch_panel" groups=["select_grp"]] +layout_mode = 0 +offset_left = 16.0 +offset_top = 880.0 +offset_right = 232.0 +offset_bottom = 916.0 +focus_mode = 0 +mouse_default_cursor_shape = 2 +theme_override_font_sizes/font_size = 14 +theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y") +text = "Загрузить" + +[node name="burgerButton" type="TextureButton" parent="Background/switch_panel"] +self_modulate = Color(1, 1, 0.941176, 1) +layout_mode = 0 +offset_left = 188.0 +offset_top = 28.0 +offset_right = 220.0 +offset_bottom = 60.0 +tooltip_text = "свернуть/развернуть боковую панель" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource("6_bqc7t") +texture_pressed = ExtResource("5_eoogc") +ignore_texture_size = true +stretch_mode = 0 +metadata/_edit_lock_ = true + +[node name="block" type="Panel" parent="Background/switch_panel/burgerButton"] +self_modulate = Color(1, 1, 1, 0) +layout_mode = 0 +offset_left = -290.0 +offset_top = -12.0 +offset_right = -234.0 +offset_bottom = 44.0 + +[node name="texture_prd" type="TextureButton" parent="Background/switch_panel" groups=["burger_gr"]] +self_modulate = Color(1, 1, 0.941, 0.85) +layout_mode = 0 +offset_left = -159.0 +offset_top = 122.0 +offset_right = -118.0 +offset_bottom = 162.0 +mouse_default_cursor_shape = 2 +toggle_mode = true +button_pressed = true +texture_normal = ExtResource("13_xdqnq") +texture_pressed = ExtResource("14_0dei1") +ignore_texture_size = true +stretch_mode = 0 + +[node name="texture_control" type="TextureButton" parent="Background/switch_panel" groups=["burger_gr"]] +self_modulate = Color(1, 1, 0.941, 0.85) +layout_mode = 0 +offset_left = -155.0 +offset_top = 184.0 +offset_right = -115.0 +offset_bottom = 224.0 +tooltip_text = "Старт контроля прибора" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource("8_qqoau") +texture_pressed = ExtResource("10_t2sq8") +ignore_texture_size = true +stretch_mode = 0 + +[node name="texture_ems_g" type="TextureButton" parent="Background/switch_panel" groups=["burger_gr"]] +layout_mode = 0 +offset_left = -155.0 +offset_top = 240.0 +offset_right = -115.0 +offset_bottom = 280.0 +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource("11_qqb3s") +texture_pressed = ExtResource("12_u035s") +ignore_texture_size = true +stretch_mode = 0 + +[node name="texture_fs" type="TextureButton" parent="Background/switch_panel" groups=["burger_gr"]] +self_modulate = Color(1, 1, 0.941, 0.85) +layout_mode = 0 +offset_left = -155.0 +offset_top = 304.0 +offset_right = -115.0 +offset_bottom = 344.0 +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource("7_0pknj") +texture_pressed = ExtResource("8_iuer1") +ignore_texture_size = true +stretch_mode = 0 + +[node name="texture_save_config" type="TextureButton" parent="Background/switch_panel" groups=["burger_gr"]] +self_modulate = Color(1, 1, 0.941, 0.85) +layout_mode = 0 +offset_left = -155.0 +offset_top = 824.0 +offset_right = -115.0 +offset_bottom = 864.0 +tooltip_text = "Сохранить текущие настройки ЭМС-Г" +mouse_default_cursor_shape = 2 +texture_normal = ExtResource("15_bpwqh") +texture_pressed = ExtResource("16_55rvl") +ignore_texture_size = true +stretch_mode = 0 + +[node name="texture_load_config" type="TextureButton" parent="Background/switch_panel" groups=["burger_gr"]] +self_modulate = Color(1, 1, 0.941, 0.85) +layout_mode = 0 +offset_left = -155.0 +offset_top = 880.0 +offset_right = -115.0 +offset_bottom = 920.0 +tooltip_text = "Загрузить настройки для ЭМС-Г" +mouse_default_cursor_shape = 2 +texture_normal = ExtResource("17_uy706") +texture_pressed = ExtResource("18_iu14f") +ignore_texture_size = true +stretch_mode = 0 + +[node name="notice" type="GridContainer" parent="Background"] +layout_mode = 0 +offset_left = 1098.0 +offset_top = 937.0 +offset_right = 1832.0 +offset_bottom = 1000.0 +columns = 3 + +[node name="lbl_commit" type="Label" parent="Background/notice"] +layout_mode = 2 +theme_override_colors/font_color = Color(1, 1, 0.941176, 1) + +[node name="bind_addr" type="Label" parent="Background/notice"] +layout_mode = 2 + +[node name="bind_port" type="Label" parent="Background/notice"] +layout_mode = 2 + +[node name="load_notice" type="Label" parent="Background/notice"] +layout_mode = 2 + +[node name="TabContainer" type="TabContainer" parent="."] +offset_left = 216.0 +offset_top = 39.0 +offset_right = 2420.0 +offset_bottom = 936.0 +theme = SubResource("Theme_k5ur4") +theme_override_colors/font_unselected_color = Color(0, 0, 0, 0.0392157) +theme_override_colors/font_selected_color = Color(0, 0, 0, 0) +theme_override_styles/tab_focus = SubResource("StyleBoxTexture_rh6pm") +theme_override_styles/tab_disabled = SubResource("StyleBoxTexture_x11tp") +theme_override_styles/tabbar_background = SubResource("StyleBoxTexture_mn8w2") +theme_override_styles/panel = SubResource("StyleBoxTexture_21lc8") +theme_override_styles/tab_selected = SubResource("StyleBoxTexture_k08q3") +theme_override_styles/tab_hovered = SubResource("StyleBoxTexture_dklg6") +theme_override_styles/tab_unselected = SubResource("StyleBoxTexture_17le6") +tab_alignment = 2 +current_tab = 0 +tab_focus_mode = 0 +metadata/_edit_lock_ = true + +[node name="PRD" type="Panel" parent="TabContainer"] +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_7u7p7") +metadata/_tab_index = 0 +metadata/_edit_lock_ = true + +[node name="body_grid" type="GridContainer" parent="TabContainer/PRD"] +layout_mode = 0 +offset_left = 272.0 +offset_top = -20.0 +offset_right = 1680.0 +offset_bottom = 888.0 +metadata/_edit_lock_ = true + +[node name="litera_2_4_6" type="GridContainer" parent="TabContainer/PRD/body_grid"] +clip_contents = true +custom_minimum_size = Vector2(700, 300) +layout_mode = 2 +size_flags_horizontal = 3 +columns = 5 + +[node name="fs_control" type="GridContainer" parent="TabContainer/PRD/body_grid/litera_2_4_6"] +custom_minimum_size = Vector2(350, 0) +layout_mode = 2 +script = ExtResource("2_vmbyo") +metadata/_edit_lock_ = true + +[node name="space" type="Panel" parent="TabContainer/PRD/body_grid/litera_2_4_6"] +custom_minimum_size = Vector2(50, 0) +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_1as41") + +[node name="yau07b_control" type="GridContainer" parent="TabContainer/PRD/body_grid/litera_2_4_6"] +layout_mode = 2 +script = ExtResource("2_vmbyo") +metadata/_edit_lock_ = true + +[node name="space2" type="Panel" parent="TabContainer/PRD/body_grid/litera_2_4_6"] +custom_minimum_size = Vector2(50, 0) +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_1as41") + +[node name="table_ukp_1" type="GridContainer" parent="TabContainer/PRD/body_grid/litera_2_4_6"] +layout_mode = 2 +script = ExtResource("2_vmbyo") +metadata/_edit_lock_ = true + +[node name="PSK" type="Sprite2D" parent="TabContainer/PRD/body_grid/litera_2_4_6"] +modulate = Color(1, 1, 0.941176, 0.733333) +material = ExtResource("3_3syd3") +position = Vector2(1002, 20) +scale = Vector2(0.23, 0.217) +texture = SubResource("PlaceholderTexture2D_723du") +offset = Vector2(800, 600) + +[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/body_grid/litera_2_4_6/PSK"] +modulate = Color(1, 1, 0.941176, 0.784314) +material = SubResource("ShaderMaterial_o7txs") +offset_left = 554.954 +offset_top = -30.0 +offset_right = 1290.95 +offset_bottom = 1134.0 +texture = ExtResource("5_i3nvb") +expand_mode = 1 +metadata/_edit_lock_ = true + +[node name="ray_1" type="Sprite2D" parent="TabContainer/PRD/body_grid/litera_2_4_6/PSK"] +material = SubResource("ShaderMaterial_dgiai") +position = Vector2(549.221, 543.623) +scale = Vector2(21.8765, 21.6782) +texture = SubResource("GradientTexture2D_0pk2o") +metadata/_edit_lock_ = true + +[node name="litera_3_5_7" type="GridContainer" parent="TabContainer/PRD/body_grid"] +custom_minimum_size = Vector2(500, 300) +layout_mode = 2 +columns = 5 + +[node name="fs_control" type="GridContainer" parent="TabContainer/PRD/body_grid/litera_3_5_7"] +custom_minimum_size = Vector2(350, 0) +layout_mode = 2 +script = ExtResource("2_vmbyo") +metadata/_edit_lock_ = true + +[node name="space" type="Panel" parent="TabContainer/PRD/body_grid/litera_3_5_7"] +custom_minimum_size = Vector2(50, 0) +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_1as41") + +[node name="yau07b_control" type="GridContainer" parent="TabContainer/PRD/body_grid/litera_3_5_7"] +layout_mode = 2 +script = ExtResource("2_vmbyo") +metadata/_edit_lock_ = true + +[node name="space2" type="Panel" parent="TabContainer/PRD/body_grid/litera_3_5_7"] +custom_minimum_size = Vector2(50, 0) +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_1as41") + +[node name="table_ukp_2" type="GridContainer" parent="TabContainer/PRD/body_grid/litera_3_5_7"] +layout_mode = 2 +script = ExtResource("2_vmbyo") +metadata/_edit_lock_ = true + +[node name="PSK2" type="Sprite2D" parent="TabContainer/PRD/body_grid/litera_3_5_7"] +modulate = Color(1, 1, 0.941176, 0.733333) +material = ExtResource("3_3syd3") +position = Vector2(1002, 14) +scale = Vector2(0.23, 0.217) +texture = SubResource("PlaceholderTexture2D_723du") +offset = Vector2(800, 600) + +[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/body_grid/litera_3_5_7/PSK2"] +modulate = Color(1, 1, 0.941176, 0.784314) +show_behind_parent = true +material = SubResource("ShaderMaterial_o7txs") +offset_left = 554.954 +offset_top = -30.0 +offset_right = 1290.95 +offset_bottom = 1134.0 +texture = ExtResource("5_i3nvb") +expand_mode = 1 +metadata/_edit_lock_ = true + +[node name="ray_2" type="Sprite2D" parent="TabContainer/PRD/body_grid/litera_3_5_7/PSK2"] +material = SubResource("ShaderMaterial_2pxu2") +position = Vector2(549.221, 539.353) +scale = Vector2(21.8765, 21.6782) +texture = SubResource("GradientTexture2D_0pk2o") +metadata/_edit_lock_ = true + +[node name="litera_1" type="GridContainer" parent="TabContainer/PRD/body_grid"] +clip_contents = true +custom_minimum_size = Vector2(700, 300) +layout_mode = 2 +size_flags_horizontal = 3 +columns = 5 +metadata/_edit_lock_ = true + +[node name="fs_control" type="GridContainer" parent="TabContainer/PRD/body_grid/litera_1"] +custom_minimum_size = Vector2(300, 0) +layout_mode = 2 +script = ExtResource("2_vmbyo") +metadata/_edit_lock_ = true + +[node name="space" type="Panel" parent="TabContainer/PRD/body_grid/litera_1"] +custom_minimum_size = Vector2(50, 0) +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_1as41") + +[node name="yau07b_control" type="GridContainer" parent="TabContainer/PRD/body_grid/litera_1"] +layout_mode = 2 +script = ExtResource("2_vmbyo") +metadata/_edit_lock_ = true + +[node name="space2" type="Panel" parent="TabContainer/PRD/body_grid/litera_1"] +custom_minimum_size = Vector2(50, 0) +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_1as41") + +[node name="table_ukp_1" type="GridContainer" parent="TabContainer/PRD/body_grid/litera_1"] +layout_mode = 2 +script = ExtResource("2_vmbyo") +metadata/_edit_lock_ = true + +[node name="PSK3" type="Sprite2D" parent="TabContainer/PRD/body_grid/litera_1"] +modulate = Color(1, 1, 0.941176, 0.733333) +position = Vector2(1215.13, 138.125) +scale = Vector2(0.645437, 0.590045) +texture = ExtResource("5_i3nvb") +metadata/_edit_lock_ = true + +[node name="ray_litera_1" type="Sprite2D" parent="TabContainer/PRD/body_grid/litera_1/PSK3"] +material = SubResource("ShaderMaterial_ps0lm") +position = Vector2(-125.87, -7.32874) +scale = Vector2(7.7412, 7.33907) +texture = SubResource("GradientTexture2D_766ko") +metadata/_edit_lock_ = true + +[node name="select_dev" type="GridContainer" parent="TabContainer/PRD"] +layout_mode = 2 +offset_left = 48.0 +offset_top = -16.0 +offset_right = 48.0 +offset_bottom = -16.0 +script = ExtResource("2_vmbyo") +node_gap = Vector2(100, 50) + +[node name="Connect_prd" type="Button" parent="TabContainer/PRD"] +layout_mode = 0 +offset_left = 47.0 +offset_top = 30.0 +offset_right = 248.0 +offset_bottom = 58.0 +focus_mode = 0 +mouse_default_cursor_shape = 16 +theme_override_colors/font_color = Color(1, 1, 0.941176, 1) +theme_override_styles/hover = SubResource("StyleBoxFlat_eleyh") +theme_override_styles/pressed = SubResource("StyleBoxFlat_yaooi") +theme_override_styles/normal = SubResource("StyleBoxFlat_eleyh") +text = "Подключение" +metadata/_edit_lock_ = true + +[node name="ControlPanel" type="Panel" parent="TabContainer"] +visible = false +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_tn8m6") +script = ExtResource("9_akagi") +metadata/_tab_index = 1 +metadata/_edit_lock_ = true + +[node name="lbl_control" type="Label" parent="TabContainer/ControlPanel"] +modulate = Color(1, 0, 0, 1) +layout_mode = 0 +offset_left = 135.0 +offset_top = -46.0 +offset_right = 755.0 +offset_bottom = -15.0 +theme_override_font_sizes/font_size = 22 +text = "Прибор не исправен" +horizontal_alignment = 1 +vertical_alignment = 1 +metadata/_edit_lock_ = true + +[node name="socket_ym_lb" type="NinePatchRect" parent="TabContainer/ControlPanel"] +layout_mode = 0 +offset_left = 47.0 +offset_top = -14.0 +offset_right = 272.0 +offset_bottom = 769.0 +texture = ExtResource("9_0r2qk") +patch_margin_left = 16 +patch_margin_top = 16 +patch_margin_right = 16 +patch_margin_bottom = 16 +metadata/_edit_lock_ = true + +[node name="blok_ym_1" parent="TabContainer/ControlPanel/socket_ym_lb" instance=ExtResource("11_k47r2")] +layout_mode = 2 +offset_left = 20.0 +offset_top = 40.0 +offset_right = 201.0 +offset_bottom = 149.0 +max_value1 = 2000.0 +value_name0 = "Т°" +value_name1 = "Pwr" +name_min_size0 = Vector2i(30, 0) +fname = "УМ 1" + +[node name="blok_ym_2" parent="TabContainer/ControlPanel/socket_ym_lb" instance=ExtResource("11_k47r2")] +layout_mode = 2 +offset_left = 20.0 +offset_top = 160.0 +offset_right = 201.0 +offset_bottom = 269.0 +fname = "УМ 2" + +[node name="blok_ym_3" parent="TabContainer/ControlPanel/socket_ym_lb" instance=ExtResource("11_k47r2")] +layout_mode = 0 +offset_left = 20.0 +offset_top = 280.0 +offset_right = 201.0 +offset_bottom = 389.0 +fname = "УМ 3" + +[node name="blok_ym_4" parent="TabContainer/ControlPanel/socket_ym_lb" instance=ExtResource("11_k47r2")] +layout_mode = 0 +offset_left = 20.0 +offset_top = 408.0 +offset_right = 201.0 +offset_bottom = 517.0 +fname = "УМ 4" + +[node name="blok_ym_5" parent="TabContainer/ControlPanel/socket_ym_lb" instance=ExtResource("11_k47r2")] +layout_mode = 0 +offset_left = 20.0 +offset_top = 528.0 +offset_right = 201.0 +offset_bottom = 637.0 +fname = "УМ 5" + +[node name="blok_ym_6" parent="TabContainer/ControlPanel/socket_ym_lb" instance=ExtResource("11_k47r2")] +layout_mode = 0 +offset_left = 20.0 +offset_top = 656.0 +offset_right = 201.0 +offset_bottom = 765.0 +fname = "УМ 6" + +[node name="blok_ym_litera_1" parent="TabContainer/ControlPanel/socket_ym_lb" instance=ExtResource("11_k47r2")] +layout_mode = 0 +offset_left = 309.0 +offset_top = 830.0 +offset_right = 490.0 +offset_bottom = 939.0 +fname = "УМОМ" + +[node name="Kasseta" type="Label" parent="TabContainer/ControlPanel/socket_ym_lb"] +self_modulate = Color(1, 1, 1, 0.62) +layout_mode = 0 +offset_left = 7.0 +offset_top = 8.0 +offset_right = 229.0 +offset_bottom = 33.0 +text = "Младшая литера" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="socket_ym_pb" type="NinePatchRect" parent="TabContainer/ControlPanel"] +layout_mode = 0 +offset_left = 623.0 +offset_top = -14.0 +offset_right = 848.0 +offset_bottom = 769.0 +texture = ExtResource("9_0r2qk") +patch_margin_left = 16 +patch_margin_top = 16 +patch_margin_right = 16 +patch_margin_bottom = 16 +metadata/_edit_lock_ = true + +[node name="blok_ym_1" parent="TabContainer/ControlPanel/socket_ym_pb" instance=ExtResource("11_k47r2")] +layout_mode = 2 +offset_left = 20.0 +offset_top = 40.0 +offset_right = 201.0 +offset_bottom = 149.0 +fname = "УМ 1" + +[node name="blok_ym_2" parent="TabContainer/ControlPanel/socket_ym_pb" instance=ExtResource("11_k47r2")] +layout_mode = 2 +offset_left = 20.0 +offset_top = 160.0 +offset_right = 201.0 +offset_bottom = 269.0 +fname = "УМ 2" + +[node name="blok_ym_3" parent="TabContainer/ControlPanel/socket_ym_pb" instance=ExtResource("11_k47r2")] +layout_mode = 0 +offset_left = 20.0 +offset_top = 280.0 +offset_right = 201.0 +offset_bottom = 389.0 +fname = "УМ 3" + +[node name="blok_ym_4" parent="TabContainer/ControlPanel/socket_ym_pb" instance=ExtResource("11_k47r2")] +layout_mode = 0 +offset_left = 20.0 +offset_top = 408.0 +offset_right = 201.0 +offset_bottom = 517.0 +fname = "УМ 4" + +[node name="blok_ym_5" parent="TabContainer/ControlPanel/socket_ym_pb" instance=ExtResource("11_k47r2")] +layout_mode = 0 +offset_left = 20.0 +offset_top = 528.0 +offset_right = 201.0 +offset_bottom = 637.0 +fname = "УМ 5" + +[node name="blok_ym_6" parent="TabContainer/ControlPanel/socket_ym_pb" instance=ExtResource("11_k47r2")] +layout_mode = 0 +offset_left = 20.0 +offset_top = 656.0 +offset_right = 201.0 +offset_bottom = 765.0 +fname = "УМ 6" + +[node name="Kasseta" type="Label" parent="TabContainer/ControlPanel/socket_ym_pb"] +self_modulate = Color(1, 1, 1, 0.62) +layout_mode = 0 +offset_left = 7.0 +offset_top = 8.0 +offset_right = 229.0 +offset_bottom = 33.0 +text = "Старшая литера" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="soc_y5" type="NinePatchRect" parent="TabContainer/ControlPanel"] +layout_mode = 0 +offset_left = 287.0 +offset_top = -14.0 +offset_right = 604.0 +offset_bottom = 176.0 +texture = ExtResource("9_0r2qk") +patch_margin_left = 16 +patch_margin_top = 16 +patch_margin_right = 16 +patch_margin_bottom = 16 +metadata/_edit_lock_ = true + +[node name="IP5_25" parent="TabContainer/ControlPanel/soc_y5" instance=ExtResource("11_fg7ul")] +offset_left = 9.0 +offset_top = 34.0 +offset_right = 59.0 +offset_bottom = 184.0 +fname = "ИП5-25" +rname = "A24" + +[node name="yau_07b" parent="TabContainer/ControlPanel/soc_y5" instance=ExtResource("11_fg7ul")] +offset_left = 59.0 +offset_top = 34.0 +offset_right = 109.0 +offset_bottom = 184.0 +fname = "ЯУ-07" +rname = "A30" + +[node name="ems_g" parent="TabContainer/ControlPanel/soc_y5" instance=ExtResource("11_fg7ul")] +offset_left = 109.0 +offset_top = 34.0 +offset_right = 159.0 +offset_bottom = 184.0 +fname = "ЭМС-Г" +rname = "A26" + +[node name="ug" parent="TabContainer/ControlPanel/soc_y5" instance=ExtResource("11_fg7ul")] +offset_left = 159.0 +offset_top = 34.0 +offset_right = 209.0 +offset_bottom = 184.0 +fname = "УГ" +rname = "A27" + +[node name="ukp_2" parent="TabContainer/ControlPanel/soc_y5" instance=ExtResource("11_fg7ul")] +offset_left = 259.0 +offset_top = 34.0 +offset_right = 309.0 +offset_bottom = 184.0 +fname = "УКП-2" +rname = "A29" + +[node name="ukp_1" parent="TabContainer/ControlPanel/soc_y5" instance=ExtResource("11_fg7ul")] +offset_left = 210.0 +offset_top = 35.0 +offset_right = 260.0 +offset_bottom = 185.0 +fname = "УКП-1" +rname = "A28" + +[node name="Kasseta" type="Label" parent="TabContainer/ControlPanel/soc_y5"] +self_modulate = Color(1, 1, 1, 0.62) +layout_mode = 0 +offset_left = 7.0 +offset_top = 8.0 +offset_right = 309.0 +offset_bottom = 33.0 +text = "Кассета У5" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="Kasseta_FS" parent="TabContainer/ControlPanel" instance=ExtResource("10_tdh2s")] +layout_mode = 0 +offset_left = 286.0 +offset_top = 177.0 +offset_right = 604.0 +offset_bottom = 396.0 +script = null +metadata/_edit_lock_ = true + +[node name="Kasseta" type="Label" parent="TabContainer/ControlPanel/Kasseta_FS"] +self_modulate = Color(1, 1, 1, 0.62) +layout_mode = 0 +offset_left = 7.0 +offset_top = 8.0 +offset_right = 299.0 +offset_bottom = 33.0 +text = "Кассета ФС-НД" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="ref_A3" parent="TabContainer/ControlPanel/Kasseta_FS" instance=ExtResource("11_fg7ul")] +offset_left = 109.0 +offset_top = 41.0 +offset_right = 159.0 +offset_bottom = 211.0 +self_size = Vector2i(50, 170) +fname = "БЛОК ФС-2" +rname = "A3" + +[node name="ref_A1" parent="TabContainer/ControlPanel/Kasseta_FS" instance=ExtResource("11_fg7ul")] +offset_left = 159.0 +offset_top = 41.0 +offset_right = 209.0 +offset_bottom = 211.0 +self_size = Vector2i(50, 170) +fname = "Модуль ФС" +rname = "A1" + +[node name="ref_A2" parent="TabContainer/ControlPanel/Kasseta_FS" instance=ExtResource("11_fg7ul")] +offset_left = 209.0 +offset_top = 41.0 +offset_right = 259.0 +offset_bottom = 211.0 +self_size = Vector2i(50, 170) +fname = "Модуль ФС" +rname = "A2" + +[node name="ref_A4" parent="TabContainer/ControlPanel/Kasseta_FS" instance=ExtResource("11_fg7ul")] +offset_left = 259.0 +offset_top = 41.0 +offset_right = 309.0 +offset_bottom = 211.0 +self_size = Vector2i(50, 170) +fname = "БЛОК ФС-3" +rname = "A4" + +[node name="Block_FS_PRD_K" parent="TabContainer/ControlPanel/Kasseta_FS" instance=ExtResource("11_fg7ul")] +offset_left = 12.0 +offset_top = 40.0 +offset_right = 62.0 +offset_bottom = 210.0 +self_size = Vector2i(50, 170) +fname = "БЛОК ФС-1" +rname = "A4" + +[node name="FS_PRD_K" parent="TabContainer/ControlPanel/Kasseta_FS" instance=ExtResource("11_fg7ul")] +offset_left = 61.0 +offset_top = 41.0 +offset_right = 111.0 +offset_bottom = 211.0 +self_size = Vector2i(50, 170) +fname = "Модуль ФС" +rname = "A1" + +[node name="soc_P1" type="NinePatchRect" parent="TabContainer/ControlPanel"] +layout_mode = 0 +offset_left = 349.0 +offset_top = 615.0 +offset_right = 537.0 +offset_bottom = 810.0 +texture = ExtResource("9_0r2qk") +patch_margin_left = 16 +patch_margin_top = 16 +patch_margin_right = 16 +patch_margin_bottom = 16 +metadata/_edit_lock_ = true + +[node name="Kasseta" type="Label" parent="TabContainer/ControlPanel/soc_P1"] +self_modulate = Color(1, 1, 1, 0.62) +layout_mode = 0 +offset_left = 7.0 +offset_top = 3.0 +offset_right = 181.0 +offset_bottom = 28.0 +text = "Кассета П-1" +horizontal_alignment = 1 +vertical_alignment = 1 +metadata/_edit_lock_ = true + +[node name="MAA_1" parent="TabContainer/ControlPanel/soc_P1" instance=ExtResource("11_fg7ul")] +offset_left = -58.0 +offset_top = 21.0 +offset_right = -8.0 +offset_bottom = 181.0 +self_size = Vector2i(50, 160) +fname = "МАА2000" +rname = "А22" +metadata/_edit_lock_ = true + +[node name="MAA_2" parent="TabContainer/ControlPanel/soc_P1" instance=ExtResource("11_fg7ul")] +offset_left = 196.0 +offset_top = 21.0 +offset_right = 246.0 +offset_bottom = 181.0 +self_size = Vector2i(50, 160) +fname = "МАА2000" +rname = "А23" +metadata/_edit_lock_ = true + +[node name="IP9_50_2" parent="TabContainer/ControlPanel/soc_P1" instance=ExtResource("11_fg7ul")] +offset_left = 129.0 +offset_top = 29.0 +offset_right = 179.0 +offset_bottom = 187.0 +self_size = Vector2i(50, 158) +fname = "ИП9-50" +rname = "А19" +metadata/_edit_lock_ = true + +[node name="IP9_50_1" parent="TabContainer/ControlPanel/soc_P1" instance=ExtResource("11_fg7ul")] +offset_left = 73.0 +offset_top = 29.0 +offset_right = 123.0 +offset_bottom = 187.0 +self_size = Vector2i(50, 158) +fname = "ИП9-50" +rname = "А20" +metadata/_edit_lock_ = true + +[node name="IP12_50" parent="TabContainer/ControlPanel/soc_P1" instance=ExtResource("11_fg7ul")] +offset_left = 16.0 +offset_top = 29.0 +offset_right = 66.0 +offset_bottom = 186.0 +self_size = Vector2i(50, 157) +fname = "ИП12-50" +rname = "А21" +metadata/_edit_lock_ = true + +[node name="soc_DKM" type="NinePatchRect" parent="TabContainer/ControlPanel"] +layout_mode = 0 +offset_left = 424.0 +offset_top = 404.0 +offset_right = 604.0 +offset_bottom = 604.0 +texture = ExtResource("9_0r2qk") +patch_margin_left = 16 +patch_margin_top = 16 +patch_margin_right = 16 +patch_margin_bottom = 16 +metadata/_edit_lock_ = true + +[node name="Kasseta" type="Label" parent="TabContainer/ControlPanel/soc_DKM"] +self_modulate = Color(1, 1, 1, 0.62) +layout_mode = 0 +offset_left = 5.0 +offset_top = 6.0 +offset_right = 174.0 +offset_bottom = 29.0 +text = "ДКМ" +horizontal_alignment = 1 +vertical_alignment = 1 +metadata/_edit_lock_ = true + +[node name="DKM_3" parent="TabContainer/ControlPanel/soc_DKM" instance=ExtResource("11_fg7ul")] +offset_left = 121.0 +offset_top = 32.0 +offset_right = 171.0 +offset_bottom = 195.0 +self_size = Vector2i(50, 163) +fname = "ДКМ3" +rname = " " +metadata/_edit_lock_ = true + +[node name="DKM_2" parent="TabContainer/ControlPanel/soc_DKM" instance=ExtResource("11_fg7ul")] +offset_left = 66.0 +offset_top = 32.0 +offset_right = 116.0 +offset_bottom = 195.0 +self_size = Vector2i(50, 163) +fname = "ДКМ2" +rname = " " +metadata/_edit_lock_ = true + +[node name="DKM_1" parent="TabContainer/ControlPanel/soc_DKM" instance=ExtResource("11_fg7ul")] +offset_left = 10.0 +offset_top = 32.0 +offset_right = 60.0 +offset_bottom = 195.0 +self_size = Vector2i(50, 163) +fname = "ДКМ-1" +rname = " " +metadata/_edit_lock_ = true + +[node name="soc_P2" type="NinePatchRect" parent="TabContainer/ControlPanel"] +layout_mode = 0 +offset_left = 285.0 +offset_top = 403.0 +offset_right = 413.0 +offset_bottom = 605.0 +texture = ExtResource("9_0r2qk") +patch_margin_left = 16 +patch_margin_top = 16 +patch_margin_right = 16 +patch_margin_bottom = 16 +metadata/_edit_lock_ = true + +[node name="Kasseta" type="Label" parent="TabContainer/ControlPanel/soc_P2"] +self_modulate = Color(1, 1, 1, 0.62) +layout_mode = 0 +offset_left = 8.0 +offset_top = 8.0 +offset_right = 120.0 +offset_bottom = 33.0 +text = "Кассета П-2" +horizontal_alignment = 1 +vertical_alignment = 1 +metadata/_edit_lock_ = true + +[node name="IP12_50" parent="TabContainer/ControlPanel/soc_P2" instance=ExtResource("11_fg7ul")] +offset_left = 67.0 +offset_top = 36.0 +offset_right = 117.0 +offset_bottom = 196.0 +self_size = Vector2i(50, 160) +fname = "ИП12-50" +rname = "A25" +metadata/_edit_lock_ = true + +[node name="IP9_50" parent="TabContainer/ControlPanel/soc_P2" instance=ExtResource("11_fg7ul")] +offset_left = 11.0 +offset_top = 36.0 +offset_right = 61.0 +offset_bottom = 196.0 +self_size = Vector2i(50, 160) +fname = "ИП9-50" +rname = "A22" +metadata/_edit_lock_ = true + +[node name="log_array" type="TextEdit" parent="TabContainer/ControlPanel"] +layout_mode = 0 +offset_left = 870.0 +offset_top = -11.0 +offset_right = 1664.0 +offset_bottom = 860.0 +theme_override_colors/font_color = Color(1, 1, 0.941176, 1) +theme_override_font_sizes/font_size = 17 +theme_override_styles/normal = SubResource("StyleBoxFlat_13x31") +placeholder_text = "Ожидание контроля ..." +wrap_mode = 1 +metadata/_edit_lock_ = true + +[node name="await" type="ColorRect" parent="TabContainer/ControlPanel/log_array"] +material = SubResource("ShaderMaterial_07wue") +layout_mode = 0 +offset_top = -17.0 +offset_right = 853.0 +offset_bottom = 23.0 + +[node name="EMS_G" type="Panel" parent="TabContainer"] +visible = false +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_ooo4i") +script = ExtResource("9_g1wia") +metadata/_tab_index = 2 +metadata/_edit_lock_ = true + +[node name="table1" type="GridContainer" parent="TabContainer/EMS_G"] +layout_mode = 2 +offset_left = 35.0 +offset_top = 60.0 +offset_right = 35.0 +offset_bottom = 60.0 +script = ExtResource("2_vmbyo") + +[node name="load_boadr" type="ColorRect" parent="TabContainer/EMS_G"] +layout_mode = 0 +offset_left = 35.0 +offset_top = 58.0 +offset_right = 1604.0 +offset_bottom = 782.0 +color = Color(0, 0, 0, 0.596078) +metadata/_edit_lock_ = true + +[node name="win_load" type="TextureButton" parent="TabContainer/EMS_G/load_boadr"] +material = SubResource("ShaderMaterial_cm644") +layout_mode = 0 +offset_left = 730.0 +offset_top = 311.0 +offset_right = 830.0 +offset_bottom = 461.0 +texture_normal = SubResource("GradientTexture2D_2sr0p") + +[node name="load" type="Sprite2D" parent="TabContainer/EMS_G/load_boadr"] +visible = false +material = SubResource("ShaderMaterial_slcfo") +position = Vector2(785.001, 361.5) +scale = Vector2(24.5313, 11.2656) +texture = SubResource("GradientTexture2D_0pk2o") +metadata/_edit_lock_ = true + +[node name="Modul_fs" type="Panel" parent="TabContainer"] +visible = false +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxTexture_ooo4i") +script = ExtResource("15_b4pr1") +metadata/_tab_index = 3 +metadata/_edit_lock_ = true + +[node name="manage_panel" type="GridContainer" parent="TabContainer/Modul_fs"] +layout_mode = 0 +offset_left = 200.0 +offset_top = 186.0 +offset_right = 773.0 +offset_bottom = 308.0 +columns = 3 + +[node name="con" type="Button" parent="TabContainer/Modul_fs/manage_panel"] +layout_mode = 2 +text = " Подключение " + +[node name="ip_connect" type="Label" parent="TabContainer/Modul_fs/manage_panel/con"] +layout_mode = 0 +offset_top = 32.0 +offset_right = 118.0 +offset_bottom = 55.0 + +[node name="addres_fs" type="LineEdit" parent="TabContainer/Modul_fs/manage_panel"] +custom_minimum_size = Vector2(150, 0) +layout_mode = 2 + +[node name="get_gen_status" type="Button" parent="TabContainer/Modul_fs/manage_panel"] +layout_mode = 2 +toggle_mode = true +text = "Переключатель генератора " + +[node name="status_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_gen_status"] +layout_mode = 0 +offset_top = 33.0 +offset_right = 84.0 +offset_bottom = 56.0 + +[node name="read" type="LineEdit" parent="TabContainer/Modul_fs"] +layout_mode = 0 +offset_left = 199.0 +offset_top = 322.0 +offset_right = 954.0 +offset_bottom = 353.0 + +[node name="fs_connect" type="Label" parent="TabContainer/Modul_fs"] +layout_mode = 0 +offset_left = 206.0 +offset_top = 144.0 +offset_right = 377.0 +offset_bottom = 167.0 +text = "Связь с модулем ФС" + +[node name="temp_1" type="Label" parent="TabContainer/Modul_fs"] +layout_mode = 0 +offset_left = 1015.0 +offset_top = 119.0 +offset_right = 1102.0 +offset_bottom = 152.0 +text = "Темп" + +[node name="temp_2" type="Label" parent="TabContainer/Modul_fs"] +layout_mode = 0 +offset_left = 1016.0 +offset_top = 156.0 +offset_right = 1103.0 +offset_bottom = 189.0 +text = "Темп" + +[node name="temp_3" type="Label" parent="TabContainer/Modul_fs"] +layout_mode = 0 +offset_left = 1015.0 +offset_top = 193.0 +offset_right = 1102.0 +offset_bottom = 226.0 +text = "Темп" + +[node name="save_other" type="CheckBox" parent="."] +visible = false +offset_left = 2.0 +offset_top = 799.0 +offset_right = 215.0 +offset_bottom = 827.0 +theme = SubResource("Theme_yblys") +text = "Сохранить все настройки" + +[node name="load_status_yau" type="ProgressBar" parent="."] +offset_left = 490.0 +offset_top = 19.0 +offset_right = 1560.0 +offset_bottom = 24.0 +theme_override_font_sizes/font_size = 13 +theme_override_styles/fill = SubResource("StyleBoxFlat_ei3d4") +max_value = 32.0 +step = 1.0 +show_percentage = false +metadata/_edit_lock_ = true + +[connection signal="pressed" from="Background/switch_panel/select_prd" to="." method="_on_prd_select"] +[connection signal="pressed" from="Background/switch_panel/select_control" to="." method="_on_control_button"] +[connection signal="pressed" from="Background/switch_panel/select_ems_g" to="." method="_on_emsg_select"] +[connection signal="pressed" from="Background/switch_panel/select_fs" to="." method="_on_mfs_select"] +[connection signal="pressed" from="Background/switch_panel/save_config" to="." method="_on_save_config"] +[connection signal="pressed" from="Background/switch_panel/load_config" to="." method="_load_selected_file"] +[connection signal="toggled" from="Background/switch_panel/burgerButton" to="." method="_on_burger_button"] +[connection signal="pressed" from="Background/switch_panel/texture_prd" to="." method="_on_prd_select"] +[connection signal="pressed" from="Background/switch_panel/texture_control" to="." method="_on_control_button"] +[connection signal="pressed" from="Background/switch_panel/texture_ems_g" to="." method="_on_emsg_select"] +[connection signal="pressed" from="Background/switch_panel/texture_fs" to="." method="_on_mfs_select"] +[connection signal="pressed" from="Background/switch_panel/texture_save_config" to="." method="_on_save_config"] +[connection signal="pressed" from="Background/switch_panel/texture_load_config" to="." method="_load_selected_file"] +[connection signal="pressed" from="TabContainer/PRD/Connect_prd" to="." method="_on_connect_prd_pressed"] +[connection signal="pressed" from="TabContainer/Modul_fs/manage_panel/con" to="TabContainer/Modul_fs" method="_on_start"] +[connection signal="text_submitted" from="TabContainer/Modul_fs/manage_panel/addres_fs" to="TabContainer/Modul_fs" method="_on_addres_fs"] +[connection signal="toggled" from="TabContainer/Modul_fs/manage_panel/get_gen_status" to="TabContainer/Modul_fs" method="_on_get_status"] diff --git a/PRD_MP550.tscn b/PRD_MP550.tscn index fef3e76..44f321a 100644 --- a/PRD_MP550.tscn +++ b/PRD_MP550.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=77 format=3 uid="uid://cvor2jm4xk3ha"] +[gd_scene load_steps=76 format=3 uid="uid://cvor2jm4xk3ha"] [ext_resource type="Script" path="res://scripts/PRD.gd" id="1_v273n"] [ext_resource type="Texture2D" uid="uid://cdxdluvyb5uei" path="res://table/on.png" id="2_dv7xx"] @@ -133,7 +133,7 @@ size = Vector2(1600, 1200) [sub_resource type="ShaderMaterial" id="ShaderMaterial_dgiai"] shader = ExtResource("4_uy5o2") -shader_parameter/color_signal = Color(0.588235, 0.466667, 0, 1) +shader_parameter/color_signal = Color(1, 1, 0, 1) shader_parameter/turn = 0.785 shader_parameter/inner_radius = 0.32 shader_parameter/speed = 0.0 @@ -244,9 +244,6 @@ shader_parameter/color4 = Color(0, 0, 0, 0) shader_parameter/opacity = 0.218 shader_parameter/turn = 0.785 -[sub_resource type="Theme" id="Theme_yblys"] -CheckBox/font_sizes/font_size = 14 - [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ei3d4"] bg_color = Color(0.362983, 0.685867, 0.396516, 1) corner_radius_top_left = 5 @@ -469,9 +466,9 @@ stretch_mode = 0 [node name="notice" type="GridContainer" parent="Background"] layout_mode = 0 -offset_left = 1098.0 +offset_left = 986.0 offset_top = 937.0 -offset_right = 1832.0 +offset_right = 1720.0 offset_bottom = 1000.0 columns = 3 @@ -711,6 +708,14 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_eleyh") text = "Подключение" metadata/_edit_lock_ = true +[node name="status_yau" type="Label" parent="TabContainer/PRD"] +layout_mode = 0 +offset_left = 56.0 +offset_top = 91.0 +offset_right = 111.0 +offset_bottom = 114.0 +text = "ЯУ-07Б" + [node name="ControlPanel" type="Panel" parent="TabContainer"] visible = false layout_mode = 2 @@ -1351,15 +1356,6 @@ offset_right = 1102.0 offset_bottom = 226.0 text = "Темп" -[node name="save_other" type="CheckBox" parent="."] -visible = false -offset_left = 2.0 -offset_top = 799.0 -offset_right = 215.0 -offset_bottom = 827.0 -theme = SubResource("Theme_yblys") -text = "Сохранить все настройки" - [node name="load_status_yau" type="ProgressBar" parent="."] offset_left = 490.0 offset_top = 19.0 @@ -1377,14 +1373,14 @@ metadata/_edit_lock_ = true [connection signal="pressed" from="Background/switch_panel/select_ems_g" to="." method="_on_emsg_select"] [connection signal="pressed" from="Background/switch_panel/select_fs" to="." method="_on_mfs_select"] [connection signal="pressed" from="Background/switch_panel/save_config" to="." method="_on_save_config"] -[connection signal="pressed" from="Background/switch_panel/load_config" to="." method="_load_selected_file"] +[connection signal="pressed" from="Background/switch_panel/load_config" to="." method="_on_load_config"] [connection signal="toggled" from="Background/switch_panel/burgerButton" to="." method="_on_burger_button"] [connection signal="pressed" from="Background/switch_panel/texture_prd" to="." method="_on_prd_select"] [connection signal="pressed" from="Background/switch_panel/texture_control" to="." method="_on_control_button"] [connection signal="pressed" from="Background/switch_panel/texture_ems_g" to="." method="_on_emsg_select"] [connection signal="pressed" from="Background/switch_panel/texture_fs" to="." method="_on_mfs_select"] [connection signal="pressed" from="Background/switch_panel/texture_save_config" to="." method="_on_save_config"] -[connection signal="pressed" from="Background/switch_panel/texture_load_config" to="." method="_load_selected_file"] +[connection signal="pressed" from="Background/switch_panel/texture_load_config" to="." method="_on_load_config"] [connection signal="pressed" from="TabContainer/PRD/Connect_prd" to="." method="_on_connect_prd_pressed"] [connection signal="pressed" from="TabContainer/Modul_fs/manage_panel/con" to="TabContainer/Modul_fs" method="_on_start"] [connection signal="text_submitted" from="TabContainer/Modul_fs/manage_panel/addres_fs" to="TabContainer/Modul_fs" method="_on_addres_fs"] diff --git a/export_presets.cfg b/export_presets.cfg index 9469392..8e8a837 100644 --- a/export_presets.cfg +++ b/export_presets.cfg @@ -9,7 +9,7 @@ custom_features="" export_filter="all_resources" include_filter="" exclude_filter="" -export_path="./testPRD_2.0.exe" +export_path="bin/testPRD.exe" encryption_include_filters="" encryption_exclude_filters="" encrypt_pck=false diff --git a/icon.svg b/icon.svg index 3fe4f4a..99f3604 100644 --- a/icon.svg +++ b/icon.svg @@ -1 +1,51 @@ - + + diff --git a/project.godot b/project.godot index e0ee6cb..387d9f8 100644 --- a/project.godot +++ b/project.godot @@ -13,6 +13,7 @@ config_version=5 config/name="ПРД_для_МП-550" run/main_scene="res://PRD_MP550.tscn" config/features=PackedStringArray("4.3", "GL Compatibility") +boot_splash/bg_color=Color(0.356863, 0.278431, 0.356863, 1) config/icon="res://icon.svg" [autoload] @@ -29,9 +30,9 @@ gdscript/warnings/unused_signal=0 [display] -window/size/viewport_width=1910 +window/size/viewport_width=1900 window/size/viewport_height=1000 -window/size/initial_position_type=0 +window/size/extend_to_title=true [editor] diff --git a/saves/fs_setting b/saves/fs_setting deleted file mode 100644 index f1b6eaa..0000000 Binary files a/saves/fs_setting and /dev/null differ diff --git a/saves/ПРД-В1 b/saves/ПРД-В1 deleted file mode 100644 index 3b13e1d..0000000 --- a/saves/ПРД-В1 +++ /dev/null @@ -1 +0,0 @@ -{"1":{"290":1,"292":0,"296":0,"298":32768},"2":{"290":2,"292":0,"296":0,"298":32768},"3":{"290":3,"292":0,"296":0,"298":32768},"4":{"290":4,"292":0,"296":0,"298":32768},"5":{"290":5,"292":0,"296":0,"298":32768},"6":{"290":6,"292":0,"296":0,"298":32768},"7":{"290":7,"292":0,"296":0,"298":32768},"8":{"290":8,"292":0,"296":0,"298":32768},"9":{"290":9,"292":0,"296":0,"298":32768},"10":{"290":10,"292":0,"296":0,"298":32768},"11":{"290":11,"292":0,"296":0,"298":0},"12":{"290":12,"292":0,"296":0,"298":0},"13":{"290":13,"292":0,"296":0,"298":32768},"14":{"290":14,"292":0,"296":0,"298":32768},"15":{"290":15,"292":0,"296":0,"298":32768},"16":{"290":16,"292":0,"296":0,"298":32768},"47":{"290":47,"292":0,"296":0,"298":32768},"48":{"290":48,"292":2048,"296":0,"298":32768},"49":{"290":49,"292":4096,"296":0,"298":32768},"50":{"290":50,"292":0,"296":16384,"298":32768},"51":{"290":51,"292":0,"296":16384,"298":32768},"52":{"290":52,"292":0,"296":16384,"298":32768},"53":{"290":53,"292":0,"296":0,"298":32768},"54":{"290":54,"292":0,"296":0,"298":32768},"55":{"290":55,"292":0,"296":0,"298":32768},"56":{"290":56,"292":0,"296":0,"298":32768},"57":{"290":57,"292":0,"296":16384,"298":32768},"58":{"290":58,"292":0,"296":0,"298":32768},"59":{"290":59,"292":0,"296":0,"298":32768},"60":{"290":60,"292":0,"296":0,"298":32768},"61":{"290":61,"292":0,"296":0,"298":32768},"62":{"290":62,"292":0,"296":0,"298":32768}} \ No newline at end of file diff --git a/saves/ПРД-К1 b/saves/ПРД-К1 deleted file mode 100644 index cfdb460..0000000 --- a/saves/ПРД-К1 +++ /dev/null @@ -1 +0,0 @@ -{"1":{"290":1,"292":0,"296":8192,"298":32768},"2":{"290":2,"292":0,"296":8192,"298":0},"3":{"290":3,"292":0,"296":8192,"298":32768},"4":{"290":4,"292":0,"296":8192,"298":32768},"5":{"290":5,"292":0,"296":8192,"298":32768},"6":{"290":6,"292":0,"296":8192,"298":32768},"7":{"290":7,"292":0,"296":8192,"298":32768},"8":{"290":8,"292":0,"296":8192,"298":32768},"9":{"290":9,"292":0,"296":8192,"298":32768},"10":{"290":10,"292":0,"296":8192,"298":32768},"11":{"290":11,"292":0,"296":8192,"298":0},"12":{"290":12,"292":0,"296":8192,"298":32768},"13":{"290":13,"292":0,"296":8192,"298":0},"14":{"290":14,"292":0,"296":8192,"298":0},"15":{"290":15,"292":0,"296":8192,"298":0},"16":{"290":16,"292":0,"296":8192,"298":32768},"47":{"290":47,"292":256,"296":0,"298":32768},"48":{"290":48,"292":8192,"296":0,"298":32768},"49":{"290":49,"292":16384,"296":0,"298":32768},"50":{"290":50,"292":0,"296":8192,"298":32768},"51":{"290":51,"292":0,"296":16384,"298":32768},"52":{"290":52,"292":0,"296":16384,"298":32768},"53":{"290":53,"292":0,"296":0,"298":32768},"54":{"290":54,"292":0,"296":0,"298":32768},"55":{"290":55,"292":0,"296":0,"298":32768},"56":{"290":56,"292":0,"296":0,"298":32768},"57":{"290":57,"292":0,"296":8192,"298":32768},"58":{"290":58,"292":0,"296":0,"298":32768},"59":{"290":59,"292":0,"296":0,"298":32768},"60":{"290":60,"292":0,"296":0,"298":32768},"61":{"290":61,"292":0,"296":0,"298":32768},"62":{"290":62,"292":0,"296":0,"298":32768}} \ No newline at end of file diff --git a/saves/ПРД-К2 b/saves/ПРД-К2 deleted file mode 100644 index 1392d51..0000000 --- a/saves/ПРД-К2 +++ /dev/null @@ -1 +0,0 @@ -{"1":{"290":1,"292":2,"296":0,"298":0},"2":{"290":2,"292":2,"296":0,"298":32768},"3":{"290":3,"292":2,"296":0,"298":32768},"4":{"290":4,"292":2,"296":0,"298":32768},"5":{"290":5,"292":2,"296":0,"298":32768},"6":{"290":6,"292":2,"296":0,"298":32768},"7":{"290":7,"292":2,"296":0,"298":0},"8":{"290":8,"292":2,"296":0,"298":32768},"9":{"290":9,"292":2,"296":0,"298":32768},"10":{"290":10,"292":2,"296":0,"298":0},"11":{"290":11,"292":2,"296":0,"298":32768},"12":{"290":12,"292":2,"296":0,"298":32768},"13":{"290":13,"292":2,"296":0,"298":32768},"14":{"290":14,"292":2,"296":0,"298":32768},"15":{"290":15,"292":2,"296":0,"298":32768},"16":{"290":16,"292":2,"296":0,"298":32768},"47":{"290":47,"292":1,"296":0,"298":32768},"48":{"290":48,"292":2,"296":0,"298":32768},"49":{"290":49,"292":0,"296":0,"298":32768},"50":{"290":50,"292":0,"296":0,"298":32768},"51":{"290":51,"292":0,"296":0,"298":32768},"52":{"290":52,"292":0,"296":0,"298":32768},"53":{"290":53,"292":0,"296":0,"298":32768},"54":{"290":54,"292":0,"296":0,"298":32768},"55":{"290":55,"292":0,"296":0,"298":32768},"56":{"290":56,"292":0,"296":0,"298":32768},"57":{"290":57,"292":0,"296":0,"298":32768},"58":{"290":58,"292":0,"296":0,"298":32768},"59":{"290":59,"292":0,"296":0,"298":32768},"60":{"290":60,"292":0,"296":0,"298":32768},"61":{"290":61,"292":0,"296":0,"298":32768},"62":{"290":62,"292":0,"296":0,"298":32768}} \ No newline at end of file diff --git a/saves/ПРД-Н1 b/saves/ПРД-Н1 deleted file mode 100644 index 6b37857..0000000 --- a/saves/ПРД-Н1 +++ /dev/null @@ -1 +0,0 @@ -{"1":{"290":1,"292":0,"296":0,"298":32768},"2":{"290":2,"292":0,"296":0,"298":32768},"3":{"290":3,"292":0,"296":0,"298":32768},"4":{"290":4,"292":0,"296":0,"298":32768},"5":{"290":5,"292":0,"296":0,"298":32768},"6":{"290":6,"292":0,"296":0,"298":0},"7":{"290":7,"292":0,"296":0,"298":32768},"8":{"290":8,"292":0,"296":0,"298":32768},"9":{"290":9,"292":0,"296":0,"298":0},"10":{"290":10,"292":0,"296":0,"298":32768},"11":{"290":11,"292":0,"296":0,"298":0},"12":{"290":12,"292":0,"296":0,"298":32768},"13":{"290":13,"292":0,"296":0,"298":32768},"14":{"290":14,"292":0,"296":0,"298":32768},"15":{"290":15,"292":0,"296":0,"298":32768},"16":{"290":16,"292":0,"296":0,"298":32768},"47":{"290":47,"292":0,"296":0,"298":32768},"48":{"290":48,"292":512,"296":0,"298":32768},"49":{"290":49,"292":1024,"296":0,"298":32768},"50":{"290":50,"292":0,"296":16384,"298":32768},"51":{"290":51,"292":0,"296":16384,"298":32768},"52":{"290":52,"292":0,"296":16384,"298":32768},"53":{"290":53,"292":0,"296":0,"298":32768},"54":{"290":54,"292":0,"296":0,"298":32768},"55":{"290":55,"292":0,"296":0,"298":32768},"56":{"290":56,"292":0,"296":0,"298":32768},"57":{"290":57,"292":0,"296":16384,"298":32768},"58":{"290":58,"292":0,"296":0,"298":32768},"59":{"290":59,"292":0,"296":0,"298":32768},"60":{"290":60,"292":0,"296":0,"298":32768},"61":{"290":61,"292":0,"296":0,"298":32768},"62":{"290":62,"292":0,"296":0,"298":32768}} \ No newline at end of file diff --git a/scripts/PRD.gd b/scripts/PRD.gd index 1a36338..089ce35 100644 --- a/scripts/PRD.gd +++ b/scripts/PRD.gd @@ -33,13 +33,6 @@ func _ready() -> void: $Background/notice/bind_addr.text = '/Базовый адресс: %s' % Constants.UNICAST_ADDRESS $Background/notice/bind_port.text = '/Базовый порт: %s ' % Constants.UNICAST_PORT - # Считывание аргументов с консоли (путь сохранения) - #var args = OS.get_cmdline_user_args() - #for i in range(args.size()): - #if args[i] == "testsave-path" and i + 1 < args.size(): - #save_path = args[i + 1] - #break - # Таблица 1 УКП-1 (Температура, Мощность) node_select1 = $TabContainer/PRD/body_grid/litera_2_4_6/table_ukp_1 draw_tabl(node_select1, Constants.ROWS_REGS_DATA, Constants.ROWS_REGS_DATA.size()) @@ -325,6 +318,17 @@ func add_signs_scene(): node_select_yau_07b_2.get_node2(1, 4).add_item(key) +func _on_yau_status(addr: String): + if addr != '': + $TabContainer/PRD/status_yau.modulate = Color.AQUAMARINE + for check in Constants.ADDRESSES: + if check[1] == addr: + $TabContainer/PRD/status_yau.text = 'ЯУ-07Б: ' + check[0] + else: + $TabContainer/PRD/status_yau.modulate = Color.CRIMSON + $TabContainer/PRD/status_yau.text = 'ЯУ-07Б: нет связи' + + func _on_read_isa(unit_isa_ports: Dictionary) -> void: isa_from_yau07b = unit_isa_ports var isa_data: Dictionary = {} @@ -382,21 +386,33 @@ func _on_read_isa(unit_isa_ports: Dictionary) -> void: var data_dict = Constants.EMS_G_PORT_DATA_HOLDER[index][1] if Constants.BASE_PORTS.EMS_G+8 in data_dict: $TabContainer/PRD/body_grid/litera_3_5_7/yau07b_control.get_node2(1,1).get_child(1).button_pressed = data_dict[Constants.BASE_PORTS.EMS_G+8] >> 14 - if tmp_device_mode == Constants.META.MODUL_UM_1: + if tmp_device_mode == Constants.META.MODUL_UM_1: ## Синхронизация с Модуляцией УМ лиетры 1 var data_dict = Constants.EMS_G_PORT_DATA_HOLDER[index][1] if Constants.BASE_PORTS.EMS_G+8 in data_dict: var select = data_dict[Constants.BASE_PORTS.EMS_G+8] >> 13 if data_dict[Constants.BASE_PORTS.EMS_G+8] >> 13 < 3 else 3 $TabContainer/PRD/body_grid/litera_1/yau07b_control.get_node2(1,2).select(select) - if tmp_device_mode == Constants.META.MODUL_UM_2: + if select == 1: + $TabContainer/PRD/body_grid/litera_1/PSK3/ray_litera_1.material.set('shader_parameter/color_signal', Color.RED) + else: + $TabContainer/PRD/body_grid/litera_1/PSK3/ray_litera_1.material.set('shader_parameter/color_signal', Color.DARK_ORANGE) + if tmp_device_mode == Constants.META.MODUL_UM_2: ## Синхронизация с Модуляцией УМ лиетры 2, 4, 6 var data_dict = Constants.EMS_G_PORT_DATA_HOLDER[index][1] if Constants.BASE_PORTS.EMS_G+8 in data_dict: var select = data_dict[Constants.BASE_PORTS.EMS_G+8] >> 13 if data_dict[Constants.BASE_PORTS.EMS_G+8] >> 13 < 3 else 3 $TabContainer/PRD/body_grid/litera_2_4_6/yau07b_control.get_node2(1,2).select(select) - if tmp_device_mode == Constants.META.MODUL_UM_3: + if select == 3: + $TabContainer/PRD/body_grid/litera_2_4_6/PSK/ray_1.material.set('shader_parameter/color_signal', Color.RED) + else: + $TabContainer/PRD/body_grid/litera_2_4_6/PSK/ray_1.material.set('shader_parameter/color_signal', Color.DARK_ORANGE) + if tmp_device_mode == Constants.META.MODUL_UM_3: ## Синхронизация с Модуляцией УМ лиетры 3, 5, 7 var data_dict = Constants.EMS_G_PORT_DATA_HOLDER[index][1] if Constants.BASE_PORTS.EMS_G+8 in data_dict: var select = data_dict[Constants.BASE_PORTS.EMS_G+8] >> 13 if data_dict[Constants.BASE_PORTS.EMS_G+8] >> 13 < 3 else 3 $TabContainer/PRD/body_grid/litera_3_5_7/yau07b_control.get_node2(1,2).select(select) + if select == 3: + $TabContainer/PRD/body_grid/litera_3_5_7/PSK2/ray_2.material.set('shader_parameter/color_signal', Color.RED) + else: + $TabContainer/PRD/body_grid/litera_3_5_7/PSK2/ray_2.material.set('shader_parameter/color_signal', Color.DARK_ORANGE) if tmp_device_mode == Constants.META.FGOZ_4: var data_dict = Constants.EMS_G_PORT_DATA_HOLDER[index][1] if Constants.BASE_PORTS.EMS_G+8 in data_dict: @@ -489,12 +505,12 @@ func _on_data_fs_3(fs_3_data): node_select_fs_3.set_node_text(2, 5, 'Включен') node_select_fs_3.get_node2(2, 5).modulate = Color.AQUAMARINE node_select_fs_3.get_node2(1, 5).get_child(1).button_pressed = true - #$TabContainer/PRD/body_grid/litera_3_5_7/PSK2/ray_2.material.set('shader_parameter/speed', 2.5) + $TabContainer/PRD/body_grid/litera_1/PSK3/ray_litera_1.material.set('shader_parameter/speed', 2.5) else: node_select_fs_3.set_node_text(2, 5, 'Отключен') node_select_fs_3.get_node2(2, 5).modulate = Color.CRIMSON node_select_fs_3.get_node2(1, 5).get_child(1).button_pressed = false - #$TabContainer/PRD/body_grid/litera_3_5_7/PSK2/ray_2.material.set('shader_parameter/speed', 0.0) + $TabContainer/PRD/body_grid/litera_1/PSK3/ray_litera_1.material.set('shader_parameter/speed', 0.0) Constants.CMD.BASE_GET_CURRENT_TEMP: if GRP == Constants.GROUP.BASE: node_select_fs_3.set_node_text(2, 0, '%.2f' % fs_3_data.decode_float(0xC) + ' °C') @@ -581,18 +597,12 @@ func set_frame(node: Node, val: int): node.set_frame(val) func _on_save_config(): - var da = DirAccess.open(save_path) - if da == null: - return - else: - da.dir_exists(save_path) - da.make_dir_recursive(save_path) var file_dialog = FileDialog.new() + file_dialog.access = FileDialog.ACCESS_USERDATA file_dialog.title = "Сохранить файл как" file_dialog.set_size(Vector2(600, 400)) file_dialog.mode = FileDialog.FILE_MODE_SAVE_FILE - file_dialog.current_dir = save_path - file_dialog.set_current_file("ЭМС-Г") + file_dialog.current_dir = 'user://saves' file_dialog.connect("file_selected", Callable(self, "_save_selected_file")) add_child(file_dialog) file_dialog.popup_centered() @@ -608,14 +618,13 @@ func _save_selected_file(file_path: String): for key in item[1]: if key in need_port: regist[key] = item[1][key] - print(regist) param_ems_g[item[0]] = regist # Сохранение данных ЭМС-Г var file = FileAccess.open(file_path, FileAccess.WRITE) if file != null: file.store_string(JSON.stringify(param_ems_g)) file.close() - $Background/notice/load_notice.text = '✅ Файл %s записан успешно!' % file_path + $Background/notice/load_notice.text = '✅ Файл %s записан успешно!' % ProjectSettings.globalize_path(file_path) $Background/notice/load_notice.visible = true await get_tree().create_timer(2.0).timeout $Background/notice/load_notice.visible = false @@ -623,17 +632,18 @@ func _save_selected_file(file_path: String): func _on_load_config(): var file_dialog = FileDialog.new() + file_dialog.access = FileDialog.ACCESS_USERDATA file_dialog.set_title("Выберите файл") file_dialog.set_size(Vector2(600, 400)) file_dialog.mode = FileDialog.FILE_MODE_OPEN_FILE - file_dialog.current_dir = save_path + + file_dialog.current_dir = 'user://saves' file_dialog.connect("file_selected", Callable(self, "_load_selected_file")) add_child(file_dialog) file_dialog.popup_centered() -func _load_selected_file(): - var file_path: String = 'res://saves/%s' % Constants.ADDRESSES[$TabContainer/PRD/select_dev.get_node2(1, 0).get_selected_id()][0] +func _load_selected_file(file_path: String): var file = FileAccess.open(file_path, FileAccess.READ) # Проверка на открытие/чтение файла if file == null: @@ -652,29 +662,20 @@ func _load_selected_file(): await get_tree().create_timer(2.0).timeout $Background/notice/load_notice.visible = false else: - print("Несоответствующий тип данных!") + print_debug("Несоответствующий тип данных!") else: - print("JSON Parse Error: ", json.get_error_message(), " in ", file_content, " at line ", json.get_error_line()) - + print_debug("JSON Parse Error: ", json.get_error_message(), " in ", file_content, " at line ", json.get_error_line()) func _on_write_ems_g(data_to_ems_g: Dictionary): for key in data_to_ems_g.keys(): - #if int(key) < 17: - #print('Constants.BASE_PORTS.EMS_G+2: ', data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x2)]) - #print('Constants.BASE_PORTS.EMS_G+0xA: ', data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0xA)]) - #Network.write_port_isa(Constants.BASE_PORTS.EMS_G+2, data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x2)]) - #Network.write_port_isa(Constants.BASE_PORTS.EMS_G+0xA, data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0xA)]) - #Network.read_port_isa([Constants.BASE_PORTS.EMS_G+0xA]) - if int(key) > 46: - print('Constants.BASE_PORTS.EMS_G+2: ', data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x2)]) - #print('Constants.BASE_PORTS.EMS_G+8', data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x8)]) - print('Constants.BASE_PORTS.EMS_G+4: ', data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x4)]) + if int(key) < 17: Network.write_port_isa(Constants.BASE_PORTS.EMS_G+2, data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x2)]) - #Network.write_port_isa(Constants.BASE_PORTS.EMS_G+4, data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x8)]) + Network.write_port_isa(Constants.BASE_PORTS.EMS_G+0xA, data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0xA)]) + if int(key) > 46: + Network.write_port_isa(Constants.BASE_PORTS.EMS_G+2, data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x2)]) + Network.write_port_isa(Constants.BASE_PORTS.EMS_G+4, data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x8)]) Network.write_port_isa(Constants.BASE_PORTS.EMS_G+4, data_to_ems_g[key][str(Constants.BASE_PORTS.EMS_G+0x4)]) - #Network.read_port_isa([Constants.BASE_PORTS.EMS_G+4, Constants.BASE_PORTS.EMS_G+8]) - func on_mode_select(intem_from_sector: int) -> void: @@ -735,6 +736,7 @@ func _on_modul_um(item_from_ray_1: int, node: Node): Network.write_port_isa(Constants.BASE_PORTS.EMS_G + 2, current_meta[index]) Network.write_port_isa(Constants.BASE_PORTS.EMS_G + 8, modul_um[index]) + Network.read_port_isa([Constants.BASE_PORTS.EMS_G+8]) else: return @@ -1067,7 +1069,7 @@ func save_settings(to_att_change: float, mode: int): Constants.FS_ATT[Constants.ADDRESSES[$TabContainer/PRD/select_dev.get_node2(1, 0).get_selected_id()][0]] = read_temp else: return - var file = FileAccess.open("res://saves/fs_setting", FileAccess.WRITE) + var file = FileAccess.open("user://saves/fs_setting", FileAccess.WRITE) if file: file.store_var(Constants.FS_ATT) file.close() diff --git a/scripts/constants.gd b/scripts/constants.gd index 2c6131e..c087218 100644 --- a/scripts/constants.gd +++ b/scripts/constants.gd @@ -435,7 +435,33 @@ func _ready() -> void: func read_file(): - var file = FileAccess.open("res://saves/fs_setting", FileAccess.READ) - if file.get_length() > 0: - FS_ATT = file.get_var() - file.close() + var file_path = "user://saves/fs_setting" + var dir_path = "user://saves" + + # Проверяем и создаем папку, если она не существует + var dir = DirAccess.open(dir_path) + if not dir: + create_dir(dir_path) + + var file = FileAccess.open(file_path, FileAccess.READ) + if file: + # Файл существует, читаем его содержимое + if file.get_length() > 0: + FS_ATT = file.get_var() + file.close() + else: + # Файл не существует, создаем его + create_file(file_path) + + +func create_dir(dir_path: String): + DirAccess.make_dir_absolute(dir_path) + + +func create_file(file_path: String): + var file = FileAccess.open(file_path, FileAccess.WRITE) + if file: + file.close() + print("Файл создан: ", file_path) + else: + print("Не удалось создать файл по пути:", file_path) diff --git a/scripts/control_panel.gd b/scripts/control_panel.gd index 12adea1..2a4d6bf 100644 --- a/scripts/control_panel.gd +++ b/scripts/control_panel.gd @@ -717,7 +717,7 @@ func _on_start_timer_03(): count_packet = 0 flag_start = false flag_control_add = true - timer_03.wait_time = 0.3 + timer_03.wait_time = 0.4 timer_03.one_shot = true timer_03.start() @@ -752,7 +752,7 @@ func _on_contol_err(): logger.warning('❌❌❌') flag_continue_control = false _status_prd() - timer.wait_time = 5.0 + timer.wait_time = 15.0 timer.one_shot = true timer.start() diff --git a/scripts/network.gd b/scripts/network.gd index b06211b..de1cb3b 100644 --- a/scripts/network.gd +++ b/scripts/network.gd @@ -7,7 +7,7 @@ var soc_unicast: Socket var soc_brodcast: Socket var ip_address_yau: String = Constants.ADDRESSES[0][1] var ip_port_yau: int = Constants.ADDRESSES[0][2] -var timeout: float = Yau07.ONLINE_TIMEOUT +var timeout: float = 10.0 var last_update_time_yau07: float = 0.0 var last_update_time_fs: float = 0.0 var broadcast_packet: PackedByteArray @@ -39,10 +39,10 @@ var command_stack_3: Array var counter_fs_3: int = 0 # Яу-07б -signal yau_status_line(_status) ## Вызывается когда меняется состояние связи с ячейкой -signal yau_receive(_data_from_yau) -signal yau_feedback_receive(_data_from_yau) -signal yau_read_isa(_unit_isa_ports) +signal yau_status_line(status, addr) ## Вызывается когда меняется состояние связи с ячейкой +signal yau_receive(data_from_yau) +signal yau_feedback_receive(data_from_yau) +signal yau_read_isa(unit_isa_ports) # ФС модуль signal data_from_fs_1(data:PackedByteArray) signal data_from_fs_2(data:PackedByteArray) @@ -65,7 +65,6 @@ func poll_receive_yau07(sock: Socket) -> bool: ## Приёмник broadcast_packet = sock.get_packet() var addr_receive = sock.get_packet_ip() var port_receive = sock.get_packet_port() - if (ip_address_yau == addr_receive) and (ip_port_yau == port_receive): last_update_time_yau07 = 0.0 unit.parse(broadcast_packet) @@ -73,9 +72,12 @@ func poll_receive_yau07(sock: Socket) -> bool: ## Приёмник emit_signal('yau_receive', data_from_yau_07) if sock == soc_unicast: emit_signal('yau_feedback_receive', data_from_yau_07) + emit_signal('yau_status_line', addr_receive) else: if sock.get_available_packet_count(): last_update_time_yau07 = 0.0 + else: + emit_signal('yau_status_line', '') return false @@ -124,7 +126,6 @@ func _ready() -> void: if rc != OK: print_debug('Ошибка: неудачная привязка адреса: ', Constants.UNICAST_ADDRESS) - unit.connect('line_changed', Callable(self, 'on_line_changed')) unit.connect('command_fail', Callable(self, 'on_command_fail')) set_config() @@ -170,7 +171,7 @@ func _process(delta: float) -> void: match unit.process(delta): Error.OK: soc_unicast.send_to(ip_address_yau, ip_port_yau, unit.tx_data.slice(0, unit.tx_len)) - Error.FAILED: print_debug('Ошибка отправки данных') + #Error.FAILED: print_debug('Ошибка отправки данных') func state_machine_yau07(): @@ -211,9 +212,6 @@ func write_port_isa(port_isa: int, data_isa: int) -> void: send_array.append(['wr', write_data]) -func on_line_changed(_unit) -> void: - emit_signal('yau_status_line', unit.online) - ## Ессли отсутствует подключение к ячейке ЯУ-07Б func on_command_fail(_unit) -> void: diff --git a/scripts/yau07.gd b/scripts/yau07.gd index 7d1c660..9c6a1c0 100644 --- a/scripts/yau07.gd +++ b/scripts/yau07.gd @@ -241,7 +241,7 @@ class YaU07: if not online: online = true emit_signal('line_changed', self) - + var rx_data_len = rx_data.size() if rx_data_len < 10: return false diff --git a/table/node_list.tscn b/table/node_list.tscn index bf5ecf8..22ace8a 100644 --- a/table/node_list.tscn +++ b/table/node_list.tscn @@ -1,9 +1,13 @@ -[gd_scene format=3 uid="uid://mxm8nthir8h4"] +[gd_scene load_steps=2 format=3 uid="uid://mxm8nthir8h4"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_i3io3"] +bg_color = Color(0, 0, 0, 0.490196) [node name="OptionButton" type="OptionButton"] offset_right = 130.0 offset_bottom = 25.0 focus_mode = 0 mouse_default_cursor_shape = 2 +theme_override_styles/normal = SubResource("StyleBoxFlat_i3io3") alignment = 1 expand_icon = true diff --git a/testPRD_2.0.exe b/testPRD_2.0.exe deleted file mode 100644 index 55690f8..0000000 Binary files a/testPRD_2.0.exe and /dev/null differ