space-ace/addons/copilot/CopilotUI.tscn

294 lines
9.0 KiB
Plaintext

[gd_scene load_steps=7 format=3 uid="uid://rv5dl08lcb8e"]
[ext_resource type="Script" path="res://addons/copilot/Copilot.gd" id="1_pq1gj"]
[ext_resource type="Script" path="res://addons/copilot/OpenAIChat.gd" id="2"]
[ext_resource type="Material" uid="uid://cccmbprav6vgu" path="res://addons/copilot/small_icon.tres" id="2_gdw4j"]
[ext_resource type="Script" path="res://addons/copilot/OpenAICompletion.gd" id="3_loa2x"]
[ext_resource type="Material" uid="uid://bl1rtf743e4l3" path="res://addons/copilot/large_icon.tres" id="3_xn70b"]
[ext_resource type="Script" path="res://addons/copilot/GithubCopilot.gd" id="6_hmh8w"]
[node name="Copilot" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_pq1gj")
icon_shader = ExtResource("2_gdw4j")
highlight_color = Color(0.223529, 0.254902, 0.298039, 1)
[node name="VBoxParent" type="VBoxContainer" parent="."]
layout_mode = 0
anchor_right = 1.0
anchor_bottom = 1.0
[node name="Indicator" type="ColorRect" parent="VBoxParent"]
material = ExtResource("3_xn70b")
custom_minimum_size = Vector2(200, 200)
layout_mode = 2
size_flags_horizontal = 4
[node name="ContextTitle" type="Label" parent="VBoxParent"]
modulate = Color(1, 1, 1, 0.7)
layout_mode = 2
text = "Current Context"
horizontal_alignment = 1
vertical_alignment = 1
autowrap_mode = 3
[node name="Context" type="Label" parent="VBoxParent"]
layout_mode = 2
horizontal_alignment = 1
vertical_alignment = 1
autowrap_mode = 3
[node name="Status" type="Label" parent="VBoxParent"]
modulate = Color(1, 1, 1, 0.7)
custom_minimum_size = Vector2(2.08165e-12, 100)
layout_mode = 2
horizontal_alignment = 1
vertical_alignment = 1
autowrap_mode = 3
[node name="HowToTitle" type="Label" parent="VBoxParent"]
layout_mode = 2
text = "How To Use"
[node name="Separator1" type="HSeparator" parent="VBoxParent"]
layout_mode = 2
[node name="HowTo" type="Label" parent="VBoxParent"]
layout_mode = 2
text = "Press the selected shortcut in the code editor to request a completion from Copilot at the current caret position"
autowrap_mode = 3
[node name="SettingTitle" type="Label" parent="VBoxParent"]
layout_mode = 2
text = "Settings"
[node name="Separator2" type="HSeparator" parent="VBoxParent"]
layout_mode = 2
[node name="OpenAiSetting" type="HBoxContainer" parent="VBoxParent"]
custom_minimum_size = Vector2(2.08165e-12, 2.08165e-12)
layout_mode = 2
theme_override_constants/separation = 10
[node name="Label" type="Label" parent="VBoxParent/OpenAiSetting"]
custom_minimum_size = Vector2(100, 2.08165e-12)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
text = "OpenAI API Key"
vertical_alignment = 1
autowrap_mode = 3
[node name="VSeparator" type="VSeparator" parent="VBoxParent/OpenAiSetting"]
layout_mode = 2
[node name="OpenAiKey" type="LineEdit" parent="VBoxParent/OpenAiSetting"]
custom_minimum_size = Vector2(2.08165e-12, 2.08165e-12)
layout_mode = 2
size_flags_horizontal = 10
placeholder_text = "API Key"
secret = true
[node name="ModelSetting" type="HBoxContainer" parent="VBoxParent"]
custom_minimum_size = Vector2(2.08165e-12, 2.08165e-12)
layout_mode = 2
theme_override_constants/separation = 10
[node name="Label" type="Label" parent="VBoxParent/ModelSetting"]
custom_minimum_size = Vector2(100, 2.08165e-12)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
text = "Model"
vertical_alignment = 1
[node name="VSeparator" type="VSeparator" parent="VBoxParent/ModelSetting"]
layout_mode = 2
[node name="Model" type="OptionButton" parent="VBoxParent/ModelSetting"]
layout_mode = 2
size_flags_horizontal = 10
item_count = 3
selected = 1
fit_to_longest_item = false
popup/item_0/text = "text-davinci-003"
popup/item_0/id = 0
popup/item_1/text = "gpt-3.5-turbo"
popup/item_1/id = 1
popup/item_2/text = "gpt-4"
popup/item_2/id = 2
[node name="ShortcutSetting" type="HBoxContainer" parent="VBoxParent"]
custom_minimum_size = Vector2(2.08165e-12, 2.08165e-12)
layout_mode = 2
theme_override_constants/separation = 10
[node name="Label" type="Label" parent="VBoxParent/ShortcutSetting"]
custom_minimum_size = Vector2(100, 2.08165e-12)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
text = "Shortcut"
vertical_alignment = 1
[node name="VSeparator" type="VSeparator" parent="VBoxParent/ShortcutSetting"]
layout_mode = 2
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxParent/ShortcutSetting"]
layout_mode = 2
size_flags_horizontal = 10
[node name="Modifier" type="OptionButton" parent="VBoxParent/ShortcutSetting/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 10
item_count = 4
selected = 2
popup/item_0/text = "Cmd"
popup/item_0/id = 0
popup/item_1/text = "Option"
popup/item_1/id = 1
popup/item_2/text = "Control"
popup/item_2/id = 2
popup/item_3/text = "Shift"
popup/item_3/id = 3
[node name="Key" type="OptionButton" parent="VBoxParent/ShortcutSetting/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 10
item_count = 32
selected = 2
popup/item_0/text = "A"
popup/item_0/id = 0
popup/item_1/text = "B"
popup/item_1/id = 1
popup/item_2/text = "C"
popup/item_2/id = 2
popup/item_3/text = "D"
popup/item_3/id = 3
popup/item_4/text = "E"
popup/item_4/id = 4
popup/item_5/text = "F"
popup/item_5/id = 5
popup/item_6/text = "G"
popup/item_6/id = 6
popup/item_7/text = "H"
popup/item_7/id = 7
popup/item_8/text = "L"
popup/item_8/id = 8
popup/item_9/text = "M"
popup/item_9/id = 9
popup/item_10/text = "N"
popup/item_10/id = 10
popup/item_11/text = "O"
popup/item_11/id = 11
popup/item_12/text = "P"
popup/item_12/id = 12
popup/item_13/text = "Q"
popup/item_13/id = 13
popup/item_14/text = "R"
popup/item_14/id = 14
popup/item_15/text = "S"
popup/item_15/id = 15
popup/item_16/text = "T"
popup/item_16/id = 16
popup/item_17/text = "U"
popup/item_17/id = 17
popup/item_18/text = "V"
popup/item_18/id = 18
popup/item_19/text = "X"
popup/item_19/id = 19
popup/item_20/text = "Y"
popup/item_20/id = 20
popup/item_21/text = "Z"
popup/item_21/id = 21
popup/item_22/text = "1"
popup/item_22/id = 22
popup/item_23/text = "2"
popup/item_23/id = 23
popup/item_24/text = "3"
popup/item_24/id = 24
popup/item_25/text = "4"
popup/item_25/id = 25
popup/item_26/text = "5"
popup/item_26/id = 26
popup/item_27/text = "6"
popup/item_27/id = 27
popup/item_28/text = "7"
popup/item_28/id = 28
popup/item_29/text = "8"
popup/item_29/id = 29
popup/item_30/text = "9"
popup/item_30/id = 30
popup/item_31/text = "0"
popup/item_31/id = 31
[node name="MultilineSetting" type="HBoxContainer" parent="VBoxParent"]
custom_minimum_size = Vector2(2.08165e-12, 2.08165e-12)
layout_mode = 2
theme_override_constants/separation = 10
[node name="Label" type="Label" parent="VBoxParent/MultilineSetting"]
custom_minimum_size = Vector2(100, 2.08165e-12)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
text = "Multiline Completions"
vertical_alignment = 1
autowrap_mode = 3
[node name="VSeparator" type="VSeparator" parent="VBoxParent/MultilineSetting"]
layout_mode = 2
[node name="Multiline" type="CheckBox" parent="VBoxParent/MultilineSetting"]
layout_mode = 2
size_flags_horizontal = 10
button_pressed = true
text = "Enabled"
[node name="Info" type="RichTextLabel" parent="VBoxParent"]
layout_mode = 2
focus_mode = 2
fit_content = true
selection_enabled = true
[node name="LLMs" type="Node" parent="."]
[node name="OpenAICompletion" type="Node" parent="LLMs"]
script = ExtResource("3_loa2x")
[node name="OpenAIChat" type="Node" parent="LLMs"]
script = ExtResource("2")
[node name="GithubCopilot" type="Node" parent="LLMs"]
script = ExtResource("6_hmh8w")
[node name="Version" type="Label" parent="."]
layout_mode = 1
anchors_preset = 12
anchor_top = 1.0
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = -23.0
grow_horizontal = 2
grow_vertical = 0
horizontal_alignment = 2
vertical_alignment = 2
[connection signal="text_changed" from="VBoxParent/OpenAiSetting/OpenAiKey" to="." method="_on_open_ai_key_changed"]
[connection signal="item_selected" from="VBoxParent/ModelSetting/Model" to="." method="_on_model_selected"]
[connection signal="item_selected" from="VBoxParent/ShortcutSetting/HBoxContainer/Modifier" to="." method="_on_shortcut_modifier_selected"]
[connection signal="item_selected" from="VBoxParent/ShortcutSetting/HBoxContainer/Key" to="." method="_on_shortcut_key_selected"]
[connection signal="toggled" from="VBoxParent/MultilineSetting/Multiline" to="." method="_on_multiline_toggled"]
[connection signal="meta_clicked" from="VBoxParent/Info" to="." method="on_info_meta_clicked"]
[connection signal="completion_error" from="LLMs/OpenAICompletion" to="." method="_on_code_completion_error"]
[connection signal="completion_received" from="LLMs/OpenAICompletion" to="." method="_on_code_completion_received"]
[connection signal="completion_error" from="LLMs/OpenAIChat" to="." method="_on_code_completion_error"]
[connection signal="completion_received" from="LLMs/OpenAIChat" to="." method="_on_code_completion_received"]
[connection signal="completion_error" from="LLMs/GithubCopilot" to="." method="_on_code_completion_error"]
[connection signal="completion_received" from="LLMs/GithubCopilot" to="." method="_on_code_completion_received"]