Moved code for hiding bug markers into a separate static function.

This commit is contained in:
Jamie Greunbaum 2024-05-21 21:22:33 -04:00
parent 75bd3d2793
commit 131e944779
2 changed files with 17 additions and 8 deletions

View File

@ -30,6 +30,12 @@ static func _create_new_server_api() -> BugbotServerAPI:
BugReportPlatform.JIRA: return BugbotServerAPI.new() BugReportPlatform.JIRA: return BugbotServerAPI.new()
return BugbotServerAPI.new() return BugbotServerAPI.new()
static func _hide_markers(marker_root:Node):
var markers : Array = marker_root.get_children()
for marker:Node3D in markers:
marker.queue_free()
func __connect_to_server(http_client:HTTPClient, default_server:String) -> int: func __connect_to_server(http_client:HTTPClient, default_server:String) -> int:
var full_server : String = ProjectSettings.get_setting("bugbot/reporting/gitea/server", default_server) var full_server : String = ProjectSettings.get_setting("bugbot/reporting/gitea/server", default_server)
var server_and_port : PackedStringArray = full_server.rsplit(":",true,1) var server_and_port : PackedStringArray = full_server.rsplit(":",true,1)

View File

@ -95,18 +95,22 @@ func __on_bugbot_menu_item_pressed(id:int):
match id: match id:
BugbotMenuItems.SHOW_BUG_MARKERS: BugbotMenuItems.SHOW_BUG_MARKERS:
var scene : String = EditorInterface.get_edited_scene_root().scene_file_path var scene : String = EditorInterface.get_edited_scene_root().scene_file_path
if __bugbot_marker_containers.has(scene): if not __bugbot_marker_containers.has(scene):
__bugbot_marker_containers[scene].queue_free() var marker_container : Node3D = Node3D.new()
marker_container.name = "BugMarkerContainer"
__bugbot_marker_containers[scene] = marker_container
__editor_server_api = BugbotServerAPI._create_new_server_api() __editor_server_api = BugbotServerAPI._create_new_server_api()
__editor_server_api._return_list_of_bugs(__show_bug_markers_response) __editor_server_api._return_list_of_bugs(__show_bug_markers_response)
BugbotMenuItems.HIDE_BUG_MARKERS: BugbotMenuItems.HIDE_BUG_MARKERS:
var marker_container : Node3D = __bugbot_marker_containers[EditorInterface.get_edited_scene_root().scene_file_path] var scene_root : Node = EditorInterface.get_edited_scene_root()
var markers : Array = marker_container.get_children() var scene_path : String = scene_root.scene_file_path
for marker:Node3D in markers: if __bugbot_marker_containers.has(scene_path):
marker.queue_free() var marker_container : Node3D = __bugbot_marker_containers[scene_path]
BugbotServerAPI._hide_markers(marker_container)
scene_root.remove_child(marker_container)
func __show_bug_markers_response(bug_list:Array) -> void: func __show_bug_markers_response(bug_list:Array) -> void:
var marker_container : Node3D = Node3D.new()
var scene_root : Node = EditorInterface.get_edited_scene_root() var scene_root : Node = EditorInterface.get_edited_scene_root()
var marker_container : Node3D = __bugbot_marker_containers[scene_root.scene_file_path]
scene_root.add_child(marker_container) scene_root.add_child(marker_container)
for bugbot_data:Resource in bug_list: for bugbot_data:Resource in bug_list:
if bugbot_data is BugbotBugData: if bugbot_data is BugbotBugData:
@ -131,7 +135,6 @@ func __show_bug_markers_response(bug_list:Array) -> void:
marker_container.add_child(bug_marker) marker_container.add_child(bug_marker)
bug_marker.marker_status = bug_status bug_marker.marker_status = bug_status
bug_marker.bug_data = bugbot_data bug_marker.bug_data = bugbot_data
__bugbot_marker_containers[scene_root.scene_file_path] = marker_container
func __add_project_setting(_setting:String, _type:int, _default_value:Variant, _hint:int = PropertyHint.PROPERTY_HINT_NONE, _hint_string:String = ""): func __add_project_setting(_setting:String, _type:int, _default_value:Variant, _hint:int = PropertyHint.PROPERTY_HINT_NONE, _hint_string:String = ""):