Tag selection buttons now populate the form entry menu with available tags.
This commit is contained in:
@@ -2,6 +2,7 @@ class_name BugbotServerAPI
|
||||
extends Resource
|
||||
|
||||
enum BugbotServerError { OK, THREAD_NULL, THREAD_BUSY, API_RESPONSE_ERROR }
|
||||
enum BugbotTagArray { VERSION, HARDWARE, OS, COMPONENT, SEVERITY, MAX }
|
||||
|
||||
var __bugbot_server_thread : Thread
|
||||
|
||||
|
||||
+17
-16
@@ -132,11 +132,13 @@ func __prepare_form_thread(callback:Callable) -> void:
|
||||
if __validate_server_response(response_data) != Error.OK:
|
||||
return
|
||||
|
||||
var version_tags : Array
|
||||
var hardware_tags : Array
|
||||
var os_tags : Array
|
||||
var component_tags : Array
|
||||
var priority_tags : Array
|
||||
var tag_lists : Array
|
||||
tag_lists.resize(BugbotTagArray.MAX)
|
||||
tag_lists[BugbotTagArray.VERSION] = Array()
|
||||
tag_lists[BugbotTagArray.HARDWARE] = Array()
|
||||
tag_lists[BugbotTagArray.OS] = Array()
|
||||
tag_lists[BugbotTagArray.COMPONENT] = Array()
|
||||
tag_lists[BugbotTagArray.SEVERITY] = Array()
|
||||
var version_prefix : String = ProjectSettings.get_setting("bugbot/reporting/gitea/status_labels/version_label_prefix", DEFAULT_VERSION_LABEL_PREFIX)
|
||||
var hardware_prefix : String = ProjectSettings.get_setting("bugbot/reporting/gitea/status_labels/hardware_label_prefix", DEFAULT_HARDWARE_LABEL_PREFIX)
|
||||
var os_prefix : String = ProjectSettings.get_setting("bugbot/reporting/gitea/status_labels/os_label_prefix", DEFAULT_OS_LABEL_PREFIX)
|
||||
@@ -144,22 +146,21 @@ func __prepare_form_thread(callback:Callable) -> void:
|
||||
var priority_prefix : String = ProjectSettings.get_setting("bugbot/reporting/gitea/status_labels/priority_label_prefix", DEFAULT_PRIORITY_LABEL_PREFIX)
|
||||
for label_in:Dictionary in response_data:
|
||||
if version_prefix and label_in["name"].begins_with(version_prefix):
|
||||
version_tags.append(label_in)
|
||||
tag_lists[BugbotTagArray.VERSION].append(label_in)
|
||||
if hardware_prefix and label_in["name"].begins_with(hardware_prefix):
|
||||
hardware_tags.append(label_in)
|
||||
tag_lists[BugbotTagArray.HARDWARE].append(label_in)
|
||||
if os_prefix and label_in["name"].begins_with(os_prefix):
|
||||
os_tags.append(label_in)
|
||||
tag_lists[BugbotTagArray.OS].append(label_in)
|
||||
if component_prefix and label_in["name"].begins_with(component_prefix):
|
||||
component_tags.append(label_in)
|
||||
tag_lists[BugbotTagArray.COMPONENT].append(label_in)
|
||||
if priority_prefix and label_in["name"].begins_with(priority_prefix):
|
||||
priority_tags.append(label_in)
|
||||
version_tags.sort_custom(func(a,b):return a["id"] < b["id"])
|
||||
hardware_tags.sort_custom(func(a,b):return a["id"] < b["id"])
|
||||
os_tags.sort_custom(func(a,b):return a["id"] < b["id"])
|
||||
component_tags.sort_custom(func(a,b):return a["id"] < b["id"])
|
||||
priority_tags.sort_custom(func(a,b): return a["id"] < b["id"])
|
||||
tag_lists[BugbotTagArray.SEVERITY].append(label_in)
|
||||
tag_lists[BugbotTagArray.VERSION].sort_custom(func(a,b):return a["id"] < b["id"])
|
||||
tag_lists[BugbotTagArray.HARDWARE].sort_custom(func(a,b):return a["id"] < b["id"])
|
||||
tag_lists[BugbotTagArray.OS].sort_custom(func(a,b):return a["id"] < b["id"])
|
||||
tag_lists[BugbotTagArray.COMPONENT].sort_custom(func(a,b):return a["id"] < b["id"])
|
||||
tag_lists[BugbotTagArray.SEVERITY].sort_custom(func(a,b): return a["id"] < b["id"])
|
||||
|
||||
var tag_lists : Array = [version_tags, hardware_tags, os_tags, component_tags, priority_tags]
|
||||
callback.call_deferred(tag_lists)
|
||||
__bugbot_server_thread.call_deferred("wait_to_finish")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user