chore(client): vendor GUT 9.7.1 + headless test harness

This commit is contained in:
2026-07-09 14:05:20 -05:00
parent 1c5f08c5e7
commit 5486ed00fa
261 changed files with 22760 additions and 0 deletions

View File

@@ -0,0 +1,136 @@
@tool
extends AcceptDialog
var GutEditorGlobals = load('res://addons/gut/gui/editor_globals.gd')
var _bbcode = \
"""
[center][b]GUT Links[/b]
{gut_link_table}[/center]
[center][b]VSCode Extension Links[/b]
{vscode_link_table}[/center]
[center]You can support GUT development at:
{donate_link}
Thanks for using GUT!
[/center]
"""
var _gut_links = [
[&"Documentation", &"https://gut.readthedocs.io"],
[&"What's New", &"https://github.com/bitwes/Gut/releases/tag/v{gut_version}"],
[&"Repo", &"https://github.com/bitwes/gut"],
[&"Report Bugs", &"https://github.com/bitwes/gut/issues"]
]
var _vscode_links = [
["Repo", "https://github.com/bitwes/gut-extension"],
["Market Place", "https://marketplace.visualstudio.com/items?itemName=bitwes.gut-extension"]
]
var _donate_link = "https://buymeacoffee.com/bitwes"
@onready var _logo = $Logo
@onready var rtl = $HBox/VBoxContainer/Scroll/RichTextLabel
@onready var check_for_update = $HBox/VBoxContainer/CheckForUpdate
func _ready():
if(get_parent() is SubViewport):
return
elif(get_parent() == get_tree().root):
size = Vector2(100, 100)
title = str("GUT ", GutUtils.version_numbers.gut_version)
_vert_center_logo()
_logo.disabled = true
rtl.text = _make_text()
func _color_link(link_text):
return str("[color=ROYAL_BLUE]", link_text, "[/color]")
func _link_table(entries):
var text = ''
for entry in entries:
text += str("[cell][right]", entry[0], "[/right][/cell]")
var link = str("[url]", entry[1], "[/url]")
if(entry[1].length() > 60):
link = str("[url=", entry[1], "]", entry[1].substr(0, 50), "...[/url]")
text += str("[cell][left]", _color_link(link), "[/left][/cell]\n")
return str('[table=2]', text, '[/table]')
func url_bbcode(url, link_text=null):
if(link_text == null):
link_text = url
var text = str("[url=", url, "]", link_text, "[/url]")
return _color_link(text)
func _make_text():
var gut_link_table = _link_table(_gut_links)
var vscode_link_table = _link_table(_vscode_links)
var text = _bbcode.format({
"gut_link_table":gut_link_table,
"vscode_link_table":vscode_link_table,
"donate_link":_color_link(str('[url]', _donate_link, '[/url]')),
})
return text
func _vert_center_logo():
_logo.position.y = size.y / 2.0
# -----------
# Events
# -----------
func _on_rich_text_label_meta_clicked(meta: Variant) -> void:
OS.shell_open(str(meta))
func _on_mouse_entered() -> void:
pass#_logo.active = true
func _on_mouse_exited() -> void:
pass#_logo.active = false
var _odd_ball_eyes_l = 1.1
var _odd_ball_eyes_r = .7
func _on_rich_text_label_meta_hover_started(meta: Variant) -> void:
if(meta == _gut_links[0][1]):
_logo.set_eye_color(Color.RED)
elif(meta.find("releases/tag/") > 0):
_logo.set_eye_color(Color.GREEN)
elif(meta == _gut_links[2][1]):
_logo.set_eye_color(Color.PURPLE)
elif(meta == _gut_links[3][1]):
_logo.set_eye_scale(1.2)
elif(meta == _vscode_links[0][1]):
_logo.set_eye_scale(.5, .5)
elif(meta == _vscode_links[1][1]):
_logo.set_eye_scale(_odd_ball_eyes_l, _odd_ball_eyes_r)
var temp = _odd_ball_eyes_l
_odd_ball_eyes_l = _odd_ball_eyes_r
_odd_ball_eyes_r = temp
elif(meta == _donate_link):
_logo.active = false
func _on_rich_text_label_meta_hover_ended(meta: Variant) -> void:
if(meta == _donate_link):
_logo.active = true
func _on_logo_pressed() -> void:
_logo.disabled = !_logo.disabled
func _on_check_for_update_verbose_enabled() -> void:
check_for_update.size_flags_vertical = check_for_update.SIZE_EXPAND_FILL
check_for_update.z_index = 100