Доработка. Таблица настроек
This commit is contained in:
@@ -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]
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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())
|
||||
|
||||
@@ -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")
|
||||
|
||||
@@ -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="."]
|
||||
|
||||
@@ -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")
|
||||
|
||||
Reference in New Issue
Block a user