Make command dropdown prettier

This commit is contained in:
Sebastian Morr 2020-09-14 19:36:58 +02:00
parent d555612791
commit e9c3217015
5 changed files with 24 additions and 99 deletions

View file

@ -1,12 +0,0 @@
extends Button
export var async = false
func _ready():
pass
func pressed():
if async:
$"../..".send_command_async(text)
else:
$"../..".send_command(text)

View file

@ -1,15 +0,0 @@
[gd_scene load_steps=2 format=2]
[ext_resource path="res://command_button.gd" type="Script" id=1]
[node name="Button" type="Button"]
margin_left = 1418.81
margin_top = 760.827
margin_right = 1672.81
margin_bottom = 780.827
text = "git commit --allow-empty -m \"emtpy\""
script = ExtResource( 1 )
__meta__ = {
"_edit_use_anchors_": false
}
[connection signal="pressed" from="." to="." method="pressed"]

View file

@ -7,8 +7,8 @@ var client_connection
var current_level = 0 var current_level = 0
onready var terminal = $Terminal onready var terminal = $Terminal
onready var input = $Terminal/Control/Input onready var input = terminal.input
onready var output = $Terminal/Control/Output onready var output = terminal.output
onready var goal_repository = $Repositories/GoalRepository onready var goal_repository = $Repositories/GoalRepository
onready var active_repository = $Repositories/ActiveRepository onready var active_repository = $Repositories/ActiveRepository

View file

@ -5,10 +5,10 @@ var thread
var history = [] var history = []
var history_position = 0 var history_position = 0
onready var input = $Control/Input onready var input = $Control/InputLine/Input
onready var output = $Control/Output onready var output = $Control/Output
onready var repo = $"../Repositories/ActiveRepository" onready var repo = $"../Repositories/ActiveRepository"
onready var command_dropdown = $Control/CommandDropdown onready var command_dropdown = $Control/InputLine/CommandDropdown
onready var main = get_parent() onready var main = get_parent()
var premade_commands = [ var premade_commands = [
@ -23,6 +23,8 @@ func _ready():
for command in premade_commands: for command in premade_commands:
command_dropdown.get_popup().add_item(command) command_dropdown.get_popup().add_item(command)
command_dropdown.get_popup().connect("id_pressed", self, "load_command") command_dropdown.get_popup().connect("id_pressed", self, "load_command")
command_dropdown.theme = Theme.new()
command_dropdown.theme.default_font = load("res://fonts/default.tres")
func _input(event): func _input(event):
if event is InputEventKey: if event is InputEventKey:

View file

@ -1,8 +1,7 @@
[gd_scene load_steps=7 format=2] [gd_scene load_steps=6 format=2]
[ext_resource path="res://fonts/default.tres" type="DynamicFont" id=1] [ext_resource path="res://fonts/default.tres" type="DynamicFont" id=1]
[ext_resource path="res://terminal.gd" type="Script" id=2] [ext_resource path="res://terminal.gd" type="Script" id=2]
[ext_resource path="res://command_button.tscn" type="PackedScene" id=4]
[sub_resource type="StyleBoxFlat" id=1] [sub_resource type="StyleBoxFlat" id=1]
content_margin_left = 10.0 content_margin_left = 10.0
@ -43,7 +42,7 @@ __meta__ = {
[node name="Output" type="RichTextLabel" parent="Control"] [node name="Output" type="RichTextLabel" parent="Control"]
margin_right = 1920.0 margin_right = 1920.0
margin_bottom = 1007.0 margin_bottom = 1039.0
focus_mode = 2 focus_mode = 2
size_flags_vertical = 3 size_flags_vertical = 3
custom_styles/normal = SubResource( 1 ) custom_styles/normal = SubResource( 1 )
@ -52,73 +51,15 @@ custom_colors/selection_color = Color( 0.14902, 0.368627, 0.168627, 0.690196 )
scroll_following = true scroll_following = true
selection_enabled = true selection_enabled = true
[node name="Button" parent="Control" instance=ExtResource( 4 )] [node name="InputLine" type="HBoxContainer" parent="Control"]
visible = false
margin_left = 0.0
margin_top = 887.0
margin_right = 1920.0
margin_bottom = 907.0
text = "git commit --allow-empty"
align = 0
[node name="Button5" parent="Control" instance=ExtResource( 4 )]
visible = false
margin_left = 0.0
margin_top = 907.0
margin_right = 1920.0
margin_bottom = 927.0
text = "echo $RANDOM | git hash-object -w --stdin"
align = 0
[node name="Button6" parent="Control" instance=ExtResource( 4 )]
visible = false
margin_left = 0.0
margin_top = 927.0
margin_right = 1920.0
margin_bottom = 947.0
text = "git update-index --add noises; git write-tree"
align = 0
[node name="Button2" parent="Control" instance=ExtResource( 4 )]
visible = false
margin_left = 0.0
margin_top = 947.0
margin_right = 1920.0
margin_bottom = 967.0
text = "git switch -c $RANDOM"
align = 0
[node name="Button3" parent="Control" instance=ExtResource( 4 )]
visible = false
margin_left = 0.0
margin_top = 967.0
margin_right = 1920.0
margin_bottom = 987.0
text = "git checkout HEAD^"
align = 0
[node name="Button4" parent="Control" instance=ExtResource( 4 )]
visible = false
margin_left = 0.0
margin_top = 987.0
margin_right = 1920.0
margin_bottom = 1007.0
text = "sleep 1;echo hey"
align = 0
[node name="CommandDropdown" type="MenuButton" parent="Control"]
margin_top = 1007.0
margin_right = 1920.0
margin_bottom = 1039.0
custom_fonts/font = ExtResource( 1 )
text = "Pick a command..."
flat = false
align = 0
[node name="Input" type="LineEdit" parent="Control"]
margin_top = 1039.0 margin_top = 1039.0
margin_right = 1920.0 margin_right = 1920.0
margin_bottom = 1080.0 margin_bottom = 1080.0
[node name="Input" type="LineEdit" parent="Control/InputLine"]
margin_right = 1874.0
margin_bottom = 41.0
size_flags_horizontal = 3
custom_styles/read_only = SubResource( 2 ) custom_styles/read_only = SubResource( 2 )
custom_styles/normal = SubResource( 3 ) custom_styles/normal = SubResource( 3 )
custom_fonts/font = ExtResource( 1 ) custom_fonts/font = ExtResource( 1 )
@ -127,6 +68,15 @@ __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
[node name="CommandDropdown" type="MenuButton" parent="Control/InputLine"]
margin_left = 1878.0
margin_right = 1920.0
margin_bottom = 41.0
custom_fonts/font = ExtResource( 1 )
text = "..."
flat = false
align = 0
[node name="ClearButton" type="Button" parent="."] [node name="ClearButton" type="Button" parent="."]
anchor_left = 0.9 anchor_left = 0.9
anchor_right = 1.0 anchor_right = 1.0
@ -135,5 +85,5 @@ margin_top = 10.0
margin_right = -10.0 margin_right = -10.0
custom_fonts/font = ExtResource( 1 ) custom_fonts/font = ExtResource( 1 )
text = "Clear" text = "Clear"
[connection signal="text_entered" from="Control/Input" to="." method="send_command"] [connection signal="text_entered" from="Control/InputLine/Input" to="." method="send_command"]
[connection signal="pressed" from="ClearButton" to="." method="clear"] [connection signal="pressed" from="ClearButton" to="." method="clear"]