diff --git a/scenes/pribor-afsp/pribor-afsp.gd b/scenes/pribor-afsp/pribor-afsp.gd index 3e5d5e2e..67a150ba 100644 --- a/scenes/pribor-afsp/pribor-afsp.gd +++ b/scenes/pribor-afsp/pribor-afsp.gd @@ -9,6 +9,7 @@ class_name pribor_afsp extends 'res://scenes/контроль/прибор.gd' static var json_conv: JSON = JSON.new() static var node_maper = load('res://scenes/контроль/node-maper.gd') +var ctrl_pos = 0 # SystemName: "gen" DevList - там состояние связи с генератором по кан шине diff --git a/scenes/pribor-afsp/pribor-bpo.gd b/scenes/pribor-afsp/pribor-bpo.gd index e493d0e3..e68f542c 100644 --- a/scenes/pribor-afsp/pribor-bpo.gd +++ b/scenes/pribor-afsp/pribor-bpo.gd @@ -13,6 +13,7 @@ class_name pribor_rtr extends 'res://scenes/контроль/прибор.gd' static var json_conv: JSON = JSON.new() static var node_maper = load('res://scenes/контроль/node-maper.gd') +var ctrl_pos = 110 var bort_to_node_name = {} @@ -23,6 +24,7 @@ var bort_to_unit_name = {} func _ready() -> void: ProjectSettings.connect('settings_changed', on_settings_changed) on_settings_changed() + find_labels(self) func on_settings_changed(): @@ -94,3 +96,19 @@ func _on_request_completed(result, _response_code, headers, body: PackedByteArra if node.state == 1: $mod_pit_g1.state = 1 break + + +func find_labels(node1: Node): + if node1 is Label: + if node1.name in ["lbl_rname", "rname"]: + if not node1.has_meta("tooltip_set"): + ctrl_pos += 1 + var box_number = ceili(float(ctrl_pos) / 10.0) + var position_number = ctrl_pos % 10 + if position_number == 0: + position_number = 10 + node1.tooltip_text = "Ящик - %d, Позиция - %d" % [box_number, position_number] + node1.mouse_filter = Control.MOUSE_FILTER_STOP + node1.set_meta("tooltip_set", true) + for child in node1.get_children(): + find_labels(child) diff --git a/scenes/pribor-prd-k/pribor-prd-k.gd b/scenes/pribor-prd-k/pribor-prd-k.gd index b392fac7..92d616c9 100644 --- a/scenes/pribor-prd-k/pribor-prd-k.gd +++ b/scenes/pribor-prd-k/pribor-prd-k.gd @@ -77,6 +77,7 @@ var control_results_k: Dictionary = { } var test_control_k = preload('res://scripts/pribor-prd.gd') +var ctrl_pos = 30 func _ready() -> void: @@ -86,6 +87,7 @@ func _ready() -> void: initialize_connections() setup_timer() set_default_state() + find_labels(self) func on_state_mashine() -> void: @@ -245,3 +247,19 @@ func on_control_result(result_dic: Dictionary, power_dic: Dictionary) -> void: else: $control_result.text = 'Прибор ПРД-%s неисправен' % name_prd $control_result.add_theme_color_override('font_color', Color.RED) + + +func find_labels(node1: Node): + if node1 is Label: + if node1.name in ["lbl_rname", "rname"]: + if not node1.has_meta("tooltip_set"): + ctrl_pos += 1 + var box_number = ceili(float(ctrl_pos) / 10.0) + var position_number = ctrl_pos % 10 + if position_number == 0: + position_number = 10 + node1.tooltip_text = "Ящик - %d, Позиция - %d" % [box_number, position_number] + node1.mouse_filter = Control.MOUSE_FILTER_STOP + node1.set_meta("tooltip_set", true) + for child in node1.get_children(): + find_labels(child) diff --git a/scenes/pribor-prd-n/pribor-prd-n.gd b/scenes/pribor-prd-n/pribor-prd-n.gd index cd835968..8497ec61 100644 --- a/scenes/pribor-prd-n/pribor-prd-n.gd +++ b/scenes/pribor-prd-n/pribor-prd-n.gd @@ -69,8 +69,7 @@ var control_results_n: Dictionary = { 'fs_3': 2, } var test_control_n = preload('res://scripts/pribor-prd.gd') - - +var ctrl_pos = 0 ################################ func on_state_mashine() -> void: control_prd_n.state_control_machine() @@ -83,7 +82,8 @@ func _ready() -> void: initialize_connections() setup_timer() set_default_state() - + find_labels(self) + func initialize_connections() -> void: var unit_name = get_meta('unit_name')[0] @@ -230,3 +230,19 @@ func on_control_result(result_dic: Dictionary, power_dic: Dictionary) -> void: else: $control_result.text = 'Прибор ПРД-%s неисправен' % name_prd $control_result.add_theme_color_override('font_color', Color.RED) + + +func find_labels(node1: Node): + if node1 is Label: + if node1.name in ["lbl_rname", "rname"]: + if not node1.has_meta("tooltip_set"): + ctrl_pos += 1 + var box_number = ceili(float(ctrl_pos) / 10.0) + var position_number = ctrl_pos % 10 + if position_number == 0: + position_number = 10 + node1.tooltip_text = "Ящик - %d, Позиция - %d" % [box_number, position_number] + node1.mouse_filter = Control.MOUSE_FILTER_STOP + node1.set_meta("tooltip_set", true) + for child in node1.get_children(): + find_labels(child) diff --git a/scenes/pribor-prd-v/pribor-prd-v.gd b/scenes/pribor-prd-v/pribor-prd-v.gd index f50352f1..40f55e16 100644 --- a/scenes/pribor-prd-v/pribor-prd-v.gd +++ b/scenes/pribor-prd-v/pribor-prd-v.gd @@ -69,6 +69,7 @@ var control_results_v: Dictionary = { 'fs_5': 2, } var test_control_v = preload('res://scripts/pribor-prd.gd') +var ctrl_pos = 70 func on_state_mashine() -> void: @@ -82,6 +83,7 @@ func _ready() -> void: initialize_connections() setup_timer() set_default_state() + find_labels(self) func initialize_connections() -> void: @@ -227,3 +229,19 @@ func on_control_result(result_dic: Dictionary, power_dic: Dictionary) -> void: else: $control_result.text = 'Прибор ПРД-%s неисправен' % name_prd $control_result.add_theme_color_override('font_color', Color.RED) + + +func find_labels(node1: Node): + if node1 is Label: + if node1.name in ["lbl_rname", "rname"]: + if not node1.has_meta("tooltip_set"): + ctrl_pos += 1 + var box_number = ceili(float(ctrl_pos) / 10.0) + var position_number = ctrl_pos % 10 + if position_number == 0: + position_number = 10 + node1.tooltip_text = "Ящик - %d, Позиция - %d" % [box_number, position_number] + node1.mouse_filter = Control.MOUSE_FILTER_STOP + node1.set_meta("tooltip_set", true) + for child in node1.get_children(): + find_labels(child) diff --git a/scenes/pribor-uf/pribor-uf.gd b/scenes/pribor-uf/pribor-uf.gd index 159c6d64..3f2ab26e 100644 --- a/scenes/pribor-uf/pribor-uf.gd +++ b/scenes/pribor-uf/pribor-uf.gd @@ -5,6 +5,7 @@ enum STATE_VAL {NONE = 0, GOOD = 1, ERROR = 2} const DEV_LIST = ['00:1f.6', '07:00.0', '08:00.0', '0b:00.0'] const USB_TRACKERBALL = '13ba:0018' const REVFF = '(rev ff)' +var ctrl_pos = 100 func _ready() -> void: @@ -14,6 +15,7 @@ func _ready() -> void: unit_uf.connect('line_changed', on_line_changed) control_vk() on_line_changed(unit_uf) + find_labels(self) func on_timer(unit_name: StringName): @@ -99,3 +101,19 @@ func status_uf() -> void: $lbl_header2.text = 'Прибор не исправен' $lbl_header2.modulate = Color.RED $lbl_header2.visible = true + + +func find_labels(node1: Node): + if node1 is Label: + if node1.name in ["lbl_rname", "rname"]: + if not node1.has_meta("tooltip_set"): + ctrl_pos += 1 + var box_number = ceili(float(ctrl_pos) / 10.0) + var position_number = ctrl_pos % 10 + if position_number == 0: + position_number = 10 + node1.tooltip_text = "Ящик - %d, Позиция - %d" % [box_number, position_number] + node1.mouse_filter = Control.MOUSE_FILTER_STOP + node1.set_meta("tooltip_set", true) + for child in node1.get_children(): + find_labels(child) diff --git a/scenes/pribor-uyep/pribor-uyep.tscn b/scenes/pribor-uyep/pribor-uyep.tscn index 4748443f..e78e7826 100644 --- a/scenes/pribor-uyep/pribor-uyep.tscn +++ b/scenes/pribor-uyep/pribor-uyep.tscn @@ -33,6 +33,7 @@ offset_left = 88.0 offset_top = 319.0 offset_right = 343.0 offset_bottom = 749.0 +tooltip_text = "Ящик - 11, Позиция - 3" script = ExtResource("4_v0lil") unit_name = "уарэп-спт25-1" fname = "СПТ-25-230-400-3" @@ -67,6 +68,7 @@ offset_left = 392.0 offset_top = 320.0 offset_right = 642.0 offset_bottom = 750.0 +tooltip_text = "Ящик - 11, Позиция - 2" script = ExtResource("4_v0lil") unit_name = "уарэп-спт25-2" fname = "СПТ-25-230-400-3" diff --git a/scenes/pribor-uyep/sch3.tscn b/scenes/pribor-uyep/sch3.tscn index a175a03f..296270da 100644 --- a/scenes/pribor-uyep/sch3.tscn +++ b/scenes/pribor-uyep/sch3.tscn @@ -106,7 +106,7 @@ vertical_alignment = 1 layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 6 -tooltip_text = "Позиционное обозначение" +tooltip_text = "Ящик - 11, Позиция - 1" mouse_filter = 0 theme_override_font_sizes/font_size = 22 horizontal_alignment = 2 diff --git a/scenes/работа/работа.tscn b/scenes/работа/работа.tscn index dca53d69..006c55c8 100644 --- a/scenes/работа/работа.tscn +++ b/scenes/работа/работа.tscn @@ -346,7 +346,7 @@ text = "−" [connection signal="toggled" from="btn_activate" to="." method="on_btn_activate_toggled"] [connection signal="toggled" from="btn_center" to="." method="on_btn_center_toggled"] [connection signal="button_down" from="zoom_plus" to="tilemap" method="_on_zoom_plus_button_down"] -[connection signal="button_up" from="zoom_plus" to="tilemap" method="_on_zoom_button_up"] [connection signal="button_up" from="zoom_plus" to="tilemap" method="_on_zoom_plus_button_up"] +[connection signal="button_up" from="zoom_plus" to="tilemap" method="_on_zoom_button_up"] [connection signal="button_down" from="zoom_minus" to="tilemap" method="_on_zoom_minus_button_down"] [connection signal="button_up" from="zoom_minus" to="tilemap" method="_on_zoom_button_up"] diff --git a/scripts/signaller.gd b/scripts/signaller.gd index 16cdb39a..c77682f3 100644 --- a/scripts/signaller.gd +++ b/scripts/signaller.gd @@ -193,3 +193,6 @@ signal update_scale_map(new_scale) ## Вызывается при изменении текущих координат.[br] ## [param new_coordinates] - обновленное значение координат ([b]true[/b] signal update_coordinates_map(new_coordinates) + + +signal tool_tip(new_ctrl_pos)