From 280aeace967ffcea61c44f291c5a634eb945bf1c Mon Sep 17 00:00:00 2001 From: lepshiy Date: Fri, 28 Mar 2025 11:28:16 +0300 Subject: [PATCH 1/2] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0.=20=D0=A2=D0=B0=D0=B1=D0=BB=D0=B8=D1=86=D0=B0=20?= =?UTF-8?q?=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/save1.png.import | 6 +- scenes/frame-ecm-params/scroll-ecm-params.gd | 2 +- scenes/настройки/настройки.gd | 83 ++++++++++++-------- scenes/настройки/настройки.tscn | 2 +- table/set-toggle.tscn | 14 +--- table/settings-toggle.tscn | 37 +++++---- 6 files changed, 79 insertions(+), 65 deletions(-) diff --git a/data/save1.png.import b/data/save1.png.import index 32b523c7..7e445061 100644 --- a/data/save1.png.import +++ b/data/save1.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://csnts8f155sf7" -path="res://.godot/imported/save1.png-71614b438670d8c00484426836e4048f.ctex" +path="res://.godot/imported/save1.png-fe0ea2e877c55fd87cac57974b80e102.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://scenes/настройки/save1.png" -dest_files=["res://.godot/imported/save1.png-71614b438670d8c00484426836e4048f.ctex"] +source_file="res://data/save1.png" +dest_files=["res://.godot/imported/save1.png-fe0ea2e877c55fd87cac57974b80e102.ctex"] [params] diff --git a/scenes/frame-ecm-params/scroll-ecm-params.gd b/scenes/frame-ecm-params/scroll-ecm-params.gd index 0245a76a..72315ae4 100644 --- a/scenes/frame-ecm-params/scroll-ecm-params.gd +++ b/scenes/frame-ecm-params/scroll-ecm-params.gd @@ -38,7 +38,7 @@ func init_table(): $table.set_node_alligment(0, MOD_ROW_INDEX, HORIZONTAL_ALIGNMENT_LEFT) $table.set_node_editable(0, MOD_ROW_INDEX, false) var taggle_node = $table.get_node2(1, MOD_ROW_INDEX) - var taggle_btn = taggle_node.get_children()[1] + var taggle_btn = taggle_node.get_children()[0] taggle_btn.connect('pressed', on_taggle_btn.bind(taggle_btn)) taggle_btn.disabled = true $table.set_columns_min_size(TABLE_COLUMN_SIZE) diff --git a/scenes/настройки/настройки.gd b/scenes/настройки/настройки.gd index 82bf49a0..29c7c245 100644 --- a/scenes/настройки/настройки.gd +++ b/scenes/настройки/настройки.gd @@ -1,34 +1,34 @@ class_name setting extends Panel const TableHeader = preload('res://table/header.tscn') -const TableTaggle = preload('res://table/settings-toggle.tscn') +const TableToggle = preload('res://table/settings-toggle.tscn') const TableEdit = preload('res://table/ячейка-2.tscn') const ALIGNMENT = [HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER] const HEADER_ROW = [TableHeader, TableHeader] const HEADER_ROW_TEXT = ['Параметр', 'Значение'] const SETTING_TABLE = [ - ['Ограниченный режим', TableEdit, TableTaggle], - ['Управление элементами в ограниченном режиме', TableEdit, TableTaggle], - ['Кнопка «ПД-М4»', TableEdit, TableTaggle], - ['Кнопка «ПД-М2»', TableEdit, TableTaggle], - ['Кнопка «ОЗП-1»', TableEdit, TableTaggle], - ['Кнопка «МЧМ-1»', TableEdit, TableTaggle], - ['Кнопка «ОРН-И1»', TableEdit, TableTaggle], - ['Кнопка «ОРН-М2»', TableEdit, TableTaggle], - ['Кнопка «ЛЧМ-1»', TableEdit, TableTaggle], - ['Кнопка «ПД-М4С»', TableEdit, TableTaggle], - ['Кнопка «ПД-ЧМ»', TableEdit, TableTaggle], - ['Кнопка «СВ-И1»', TableEdit, TableTaggle], - ['Кнопка «К1»', TableEdit, TableTaggle], - ['Кнопка «СВ-М2»', TableEdit, TableTaggle], - ['Кнопка «ОРН»', TableEdit, TableTaggle], - ['Кнопка «JTIDS»', TableEdit, TableTaggle], - ['Кнопка «КУПД»', TableEdit, TableTaggle], - ['Внешнее целеуказание', TableEdit, TableTaggle], - ['Кнопка «Подавление»', TableEdit, TableTaggle], - ['Виртуальная клавиатура', TableEdit, TableTaggle], - ['Скрыть вкладку ЭМС 2', TableEdit, TableTaggle], + ['Ограниченный режим', TableEdit, TableToggle], + ['Управление элементами в ограниченном режиме', TableEdit, TableToggle], + ['Кнопка «ПД-М4»', TableEdit, TableToggle], + ['Кнопка «ПД-М2»', TableEdit, TableToggle], + ['Кнопка «ОЗП-1»', TableEdit, TableToggle], + ['Кнопка «МЧМ-1»', TableEdit, TableToggle], + ['Кнопка «ОРН-И1»', TableEdit, TableToggle], + ['Кнопка «ОРН-М2»', TableEdit, TableToggle], + ['Кнопка «ЛЧМ-1»', TableEdit, TableToggle], + ['Кнопка «ПД-М4С»', TableEdit, TableToggle], + ['Кнопка «ПД-ЧМ»', TableEdit, TableToggle], + ['Кнопка «СВ-И1»', TableEdit, TableToggle], + ['Кнопка «К1»', TableEdit, TableToggle], + ['Кнопка «СВ-М2»', TableEdit, TableToggle], + ['Кнопка «ОРН»', TableEdit, TableToggle], + ['Кнопка «JTIDS»', TableEdit, TableToggle], + ['Кнопка «КУПД»', TableEdit, TableToggle], + ['Внешнее целеуказание', TableEdit, TableToggle], + ['Кнопка «Подавление»', TableEdit, TableToggle], + ['Виртуальная клавиатура', TableEdit, TableToggle], + ['Скрыть вкладку ЭМС 2', TableEdit, TableToggle], ['Текущая версия ПО УАРЭП', TableEdit, TableEdit ], ['Адрес сервера карт', TableEdit, TableEdit ], ['уарэп-яу07-частный', TableEdit, TableEdit ], @@ -55,6 +55,8 @@ const SETTING_TABLE = [ const SUPPRESS = 18 # Строка - Подавление const KEYBORD = 19 # Строка - Виртуальная клавиатура const HIDE_EMS2 = 20 # Строка - Скрыть вкладку ЭМС 2 +const COMMIT = 21 # Строка - Версия УАРЭП +const SERVER = 22 # Строка - Сервер карт ## Вызывается, когда узел впервые попадает в дерево сцены. @@ -84,6 +86,13 @@ func on_ems2_pressed(btn) -> void: signaller.emit_signal('ems2_hide_pressed', state) +func on_row_pressed(i_row: int): + $scroll_set/table.clear_rows_selected() + $scroll_set/table.set_row_selected(i_row, true) + +func on_checkbutton_pressed(i_row: int): + on_row_pressed(i_row) + func setting_tab(): $heard_table.set_header(HEADER_ROW) $heard_table.set_header_text(HEADER_ROW_TEXT) @@ -107,23 +116,32 @@ func setting_tab(): var node_label = setting_str[1] var node_value = setting_str[2] $scroll_set/table.add_row([node_label, node_value]) + + #for column in range(2): + #var cell_instance = $scroll_set/table.get_node2(column, i) + #if cell_instance is LineEdit: + #if i % 2 == 0: + #cell_instance.modulate = Color(0.9, 0.9, 0.9, 1.0) + #else: + #cell_instance.modulate = Color(0.95, 0.95, 0.95, 1.0) + var label_instance = $scroll_set/table.get_node2(0, i) label_instance.text = parameter $scroll_set/table.set_node_editable(0, i, false) var node_values = $scroll_set/table.get_node2(1, i).get_children() - if node_values.size() > 1: - var child = node_values[1] + if node_values.size(): + var child = node_values[0] if child is CheckButton: + child.connect('pressed', Callable(self, 'on_checkbutton_pressed').bind(i)) if parameter in settings_data: child.set_pressed(settings_data[parameter][0]) else: child.set_pressed(false) - var commit_instance = $scroll_set/table.get_node2(1, 21) - var server_instance = $scroll_set/table.get_node2(1, 22) + var commit_instance = $scroll_set/table.get_node2(1, COMMIT) + var server_instance = $scroll_set/table.get_node2(1, SERVER) commit_instance.text = '%s' % commit.VCS_HEAD server_instance.text = ProjectSettings.get('application/config/map_server_addr') - $scroll_set/table.set_node_editable(1, 21, false) - $scroll_set/table.set_node_editable(1, 22, false) + $scroll_set/table.set_node_editable(1, COMMIT, false) $scroll_set/table.set_columns_min_size([600, 950]) $scroll_set/table.set_columns_alignments(ALIGNMENT) for i in SETTING_TABLE.size(): @@ -138,18 +156,19 @@ func setting_tab(): if j < unit_data[2].size() - 1: joined_data += "," profiles.text = str(unit_data[1]) + " : " + joined_data + $scroll_set/table.connect('row_pressed', Callable(self, 'on_row_pressed')) button_settings() func button_settings(): - var extern_cu_node = $scroll_set/table.get_node2(1, SUPPRESS).get_children()[1] + var extern_cu_node = $scroll_set/table.get_node2(1, SUPPRESS).get_children()[0] extern_cu_node.connect('pressed', on_external_cu_btn_pressed.bind(extern_cu_node)) $scroll_set/table.set_row_text(SUPPRESS,(['Кнопка «Подавление»'])) $scroll_set/table.set_row_text(KEYBORD,(['Виртуальная клавиатура'])) - var vk_node = $scroll_set/table.get_node2(1, KEYBORD).get_children()[1] + var vk_node = $scroll_set/table.get_node2(1, KEYBORD).get_children()[0] vk_node.connect('pressed', on_vk_pressed.bind(vk_node)) $scroll_set/table.set_row_text(HIDE_EMS2,(['Скрыть вкладку ЭМС 2'])) - var ems2_hide_node = $scroll_set/table.get_node2(1, HIDE_EMS2).get_children()[1] + var ems2_hide_node = $scroll_set/table.get_node2(1, HIDE_EMS2).get_children()[0] ems2_hide_node.connect('pressed', on_ems2_pressed.bind(ems2_hide_node)) ems2_hide_node.set_pressed(true) on_ems2_pressed(ems2_hide_node) @@ -183,7 +202,7 @@ func _on_btn_save_settings_pressed(): else: var children = $scroll_set/table.get_node2(1, i).get_children() if len(children): - var child = children[1] + var child = children[0] if parameter not in json_data: json_data[parameter] = [] json_data[parameter].append(child.is_pressed()) diff --git a/scenes/настройки/настройки.tscn b/scenes/настройки/настройки.tscn index 6fa43a2c..1d8ad663 100644 --- a/scenes/настройки/настройки.tscn +++ b/scenes/настройки/настройки.tscn @@ -2,7 +2,7 @@ [ext_resource type="Script" path="res://scenes/настройки/настройки.gd" id="1_2l3rd"] [ext_resource type="Script" path="res://table/table.gd" id="2_6sx73"] -[ext_resource type="Texture2D" uid="uid://lkw8k7ouj42i" path="res://data/save1.png" id="3_dbpks"] +[ext_resource type="Texture2D" uid="uid://csnts8f155sf7" path="res://data/save1.png" id="3_dbpks"] [sub_resource type="StyleBoxTexture" id="StyleBoxTexture_pyq6h"] texture = ExtResource("3_dbpks") diff --git a/table/set-toggle.tscn b/table/set-toggle.tscn index 81a1b4a5..39a32422 100644 --- a/table/set-toggle.tscn +++ b/table/set-toggle.tscn @@ -1,24 +1,16 @@ [gd_scene load_steps=4 format=3 uid="uid://dgidt8lifm7xe"] -[ext_resource type="PackedScene" uid="uid://dspa16ufrpanp" path="res://table/ячейка-2.tscn" id="1_eib5d"] +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_f4oye"] [sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_t3fqw"] [sub_resource type="Theme" id="Theme_odxqp"] CheckButton/styles/focus = SubResource("StyleBoxEmpty_t3fqw") -[node name="Control" type="Control"] -layout_mode = 3 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 - -[node name="LineEdit" parent="." instance=ExtResource("1_eib5d")] -layout_mode = 0 +[node name="LineEdit" type="LineEdit"] offset_right = 85.0 offset_bottom = 27.0 +theme_override_styles/focus = SubResource("StyleBoxEmpty_f4oye") editable = false [node name="CheckButton" type="CheckButton" parent="."] diff --git a/table/settings-toggle.tscn b/table/settings-toggle.tscn index 76facf9b..96d9426f 100644 --- a/table/settings-toggle.tscn +++ b/table/settings-toggle.tscn @@ -1,29 +1,32 @@ -[gd_scene load_steps=4 format=3 uid="uid://5rw652cmnybi"] +[gd_scene load_steps=5 format=3 uid="uid://5rw652cmnybi"] -[ext_resource type="PackedScene" uid="uid://dspa16ufrpanp" path="res://table/ячейка-2.tscn" id="1_qcan0"] +[ext_resource type="Shader" path="res://shaders/color-invers.gdshader" id="1_anyuq"] -[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_q2spu"] +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_7hsq1"] -[sub_resource type="Theme" id="Theme_hnhcj"] -CheckButton/styles/focus = SubResource("StyleBoxEmpty_q2spu") +[sub_resource type="ShaderMaterial" id="ShaderMaterial_xxfw6"] +shader = ExtResource("1_anyuq") -[node name="SettingsTaggle" type="Control"] -layout_mode = 3 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_y8485"] -[node name="LineEdit" parent="." instance=ExtResource("1_qcan0")] -layout_mode = 0 +[node name="LineEdit" type="LineEdit"] offset_right = 950.0 +offset_bottom = 27.0 +theme_override_colors/font_uneditable_color = Color(1, 0.596078, 0.4, 1) +theme_override_colors/font_color = Color(1, 0.596078, 0.4, 1) +theme_override_styles/focus = SubResource("StyleBoxEmpty_7hsq1") editable = false +context_menu_enabled = false +shortcut_keys_enabled = false +middle_mouse_paste_enabled = false +selecting_enabled = false +deselect_on_focus_loss_enabled = false [node name="CheckButton" type="CheckButton" parent="."] +material = SubResource("ShaderMaterial_xxfw6") layout_mode = 0 offset_left = 453.0 -offset_top = 4.0 +offset_top = 1.5 offset_right = 497.0 -offset_bottom = 28.0 -theme = SubResource("Theme_hnhcj") +offset_bottom = 25.5 +theme_override_styles/focus = SubResource("StyleBoxEmpty_y8485") From 2f526ca270512715be4660bf84f3cc80bf4ced2a Mon Sep 17 00:00:00 2001 From: lepshiy Date: Fri, 28 Mar 2025 11:38:34 +0300 Subject: [PATCH 2/2] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0.=20=D0=A2=D0=B0=D0=B1=D0=BB=D0=B8=D1=86=D0=B0=20?= =?UTF-8?q?=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scenes/настройки/настройки.gd | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/scenes/настройки/настройки.gd b/scenes/настройки/настройки.gd index 29c7c245..25ebfa85 100644 --- a/scenes/настройки/настройки.gd +++ b/scenes/настройки/настройки.gd @@ -52,6 +52,7 @@ const SETTING_TABLE = [ ['уарэп-спт25-1', TableEdit, TableEdit ], ['уарэп-спт25-2', TableEdit, TableEdit ] ] +const EXTERNAL_CU = 17 # Внешнее целееуказание const SUPPRESS = 18 # Строка - Подавление const KEYBORD = 19 # Строка - Виртуальная клавиатура const HIDE_EMS2 = 20 # Строка - Скрыть вкладку ЭМС 2 @@ -90,9 +91,11 @@ func on_row_pressed(i_row: int): $scroll_set/table.clear_rows_selected() $scroll_set/table.set_row_selected(i_row, true) + func on_checkbutton_pressed(i_row: int): on_row_pressed(i_row) + func setting_tab(): $heard_table.set_header(HEADER_ROW) $heard_table.set_header_text(HEADER_ROW_TEXT) @@ -116,15 +119,6 @@ func setting_tab(): var node_label = setting_str[1] var node_value = setting_str[2] $scroll_set/table.add_row([node_label, node_value]) - - #for column in range(2): - #var cell_instance = $scroll_set/table.get_node2(column, i) - #if cell_instance is LineEdit: - #if i % 2 == 0: - #cell_instance.modulate = Color(0.9, 0.9, 0.9, 1.0) - #else: - #cell_instance.modulate = Color(0.95, 0.95, 0.95, 1.0) - var label_instance = $scroll_set/table.get_node2(0, i) label_instance.text = parameter $scroll_set/table.set_node_editable(0, i, false) @@ -161,7 +155,7 @@ func setting_tab(): func button_settings(): - var extern_cu_node = $scroll_set/table.get_node2(1, SUPPRESS).get_children()[0] + var extern_cu_node = $scroll_set/table.get_node2(1, EXTERNAL_CU).get_children()[0] extern_cu_node.connect('pressed', on_external_cu_btn_pressed.bind(extern_cu_node)) $scroll_set/table.set_row_text(SUPPRESS,(['Кнопка «Подавление»'])) $scroll_set/table.set_row_text(KEYBORD,(['Виртуальная клавиатура']))