mirror of
https://github.com/git-learning-game/oh-my-git.git
synced 2024-11-22 16:20:19 +01:00
Fix drag and drop
For the input event to reach the nodes, all Controls need to set mouse_filter to "ignore" it seems?
This commit is contained in:
parent
24f194872b
commit
0fdc6cd69c
7 changed files with 72 additions and 68 deletions
|
@ -23,6 +23,7 @@ corner_radius_bottom_left = 3
|
||||||
[node name="Main" type="Control"]
|
[node name="Main" type="Control"]
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
|
mouse_filter = 2
|
||||||
theme = ExtResource( 6 )
|
theme = ExtResource( 6 )
|
||||||
script = ExtResource( 2 )
|
script = ExtResource( 2 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
|
@ -53,6 +54,7 @@ margin_left = 5.0
|
||||||
margin_top = 5.0
|
margin_top = 5.0
|
||||||
margin_right = -5.0
|
margin_right = -5.0
|
||||||
margin_bottom = -5.0
|
margin_bottom = -5.0
|
||||||
|
mouse_filter = 2
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
|
5
node.gd
5
node.gd
|
@ -17,7 +17,10 @@ func _ready():
|
||||||
|
|
||||||
func _process(_delta):
|
func _process(_delta):
|
||||||
if held:
|
if held:
|
||||||
global_position = get_global_mouse_position()
|
if not Input.is_action_pressed("click"):
|
||||||
|
held = false
|
||||||
|
else:
|
||||||
|
global_position = get_global_mouse_position()
|
||||||
|
|
||||||
if visible:
|
if visible:
|
||||||
apply_forces()
|
apply_forces()
|
||||||
|
|
|
@ -32,7 +32,7 @@ game="*res://game.gd"
|
||||||
window/size/width=1920
|
window/size/width=1920
|
||||||
window/size/height=1080
|
window/size/height=1080
|
||||||
window/stretch/mode="2d"
|
window/stretch/mode="2d"
|
||||||
window/stretch/aspect="expand"
|
window/stretch/aspect="keep"
|
||||||
|
|
||||||
[input]
|
[input]
|
||||||
|
|
||||||
|
|
|
@ -18,12 +18,12 @@ func _process(_delta):
|
||||||
if path:
|
if path:
|
||||||
apply_forces()
|
apply_forces()
|
||||||
|
|
||||||
func _input(event):
|
#func _input(event):
|
||||||
if mouse_inside:
|
# if mouse_inside:
|
||||||
if event.is_action_pressed("zoom_out") and $Nodes.rect_scale.x > 0.3:
|
# if event.is_action_pressed("zoom_out") and $Nodes.rect_scale.x > 0.3:
|
||||||
$Nodes.rect_scale -= Vector2(0.05, 0.05)
|
# $Nodes.rect_scale -= Vector2(0.05, 0.05)
|
||||||
if event.is_action_pressed("zoom_in") and $Nodes.rect_scale.x < 2:
|
# if event.is_action_pressed("zoom_in") and $Nodes.rect_scale.x < 2:
|
||||||
$Nodes.rect_scale += Vector2(0.05, 0.05)
|
# $Nodes.rect_scale += Vector2(0.05, 0.05)
|
||||||
|
|
||||||
func update_everything():
|
func update_everything():
|
||||||
if shell.run("test -d .git && echo yes || echo no") == "yes\n":
|
if shell.run("test -d .git && echo yes || echo no") == "yes\n":
|
||||||
|
|
|
@ -3,14 +3,14 @@
|
||||||
[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://fonts/monospace.tres" type="DynamicFont" id=2]
|
[ext_resource path="res://fonts/monospace.tres" type="DynamicFont" id=2]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=2]
|
[sub_resource type="StyleBoxFlat" id=1]
|
||||||
bg_color = Color( 0.223529, 0.223529, 0.223529, 1 )
|
bg_color = Color( 0.223529, 0.223529, 0.223529, 1 )
|
||||||
corner_radius_top_left = 5
|
corner_radius_top_left = 5
|
||||||
corner_radius_top_right = 5
|
corner_radius_top_right = 5
|
||||||
corner_radius_bottom_right = 5
|
corner_radius_bottom_right = 5
|
||||||
corner_radius_bottom_left = 5
|
corner_radius_bottom_left = 5
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=3]
|
[sub_resource type="StyleBoxFlat" id=2]
|
||||||
bg_color = Color( 0.207843, 0.207843, 0.207843, 1 )
|
bg_color = Color( 0.207843, 0.207843, 0.207843, 1 )
|
||||||
border_width_left = 2
|
border_width_left = 2
|
||||||
border_width_top = 2
|
border_width_top = 2
|
||||||
|
@ -22,14 +22,14 @@ corner_radius_top_right = 5
|
||||||
corner_radius_bottom_right = 5
|
corner_radius_bottom_right = 5
|
||||||
corner_radius_bottom_left = 5
|
corner_radius_bottom_left = 5
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=4]
|
[sub_resource type="StyleBoxFlat" id=3]
|
||||||
bg_color = Color( 0.278431, 0.278431, 0.278431, 1 )
|
bg_color = Color( 0.278431, 0.278431, 0.278431, 1 )
|
||||||
corner_radius_top_left = 5
|
corner_radius_top_left = 5
|
||||||
corner_radius_top_right = 5
|
corner_radius_top_right = 5
|
||||||
corner_radius_bottom_right = 5
|
corner_radius_bottom_right = 5
|
||||||
corner_radius_bottom_left = 5
|
corner_radius_bottom_left = 5
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=1]
|
[sub_resource type="StyleBoxFlat" id=4]
|
||||||
content_margin_left = 10.0
|
content_margin_left = 10.0
|
||||||
content_margin_right = 10.0
|
content_margin_right = 10.0
|
||||||
content_margin_top = 5.0
|
content_margin_top = 5.0
|
||||||
|
@ -47,19 +47,19 @@ corner_radius_top_right = 5
|
||||||
corner_radius_bottom_right = 5
|
corner_radius_bottom_right = 5
|
||||||
corner_radius_bottom_left = 5
|
corner_radius_bottom_left = 5
|
||||||
|
|
||||||
|
[sub_resource type="StyleBoxEmpty" id=6]
|
||||||
|
|
||||||
|
[sub_resource type="StyleBoxEmpty" id=7]
|
||||||
|
|
||||||
|
[sub_resource type="StyleBoxEmpty" id=8]
|
||||||
|
|
||||||
|
[sub_resource type="StyleBoxEmpty" id=9]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxEmpty" id=10]
|
[sub_resource type="StyleBoxEmpty" id=10]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxEmpty" id=11]
|
[sub_resource type="StyleBoxEmpty" id=11]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxEmpty" id=12]
|
[sub_resource type="StyleBoxFlat" id=12]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxEmpty" id=13]
|
|
||||||
|
|
||||||
[sub_resource type="StyleBoxEmpty" id=14]
|
|
||||||
|
|
||||||
[sub_resource type="StyleBoxEmpty" id=15]
|
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=9]
|
|
||||||
bg_color = Color( 0, 0, 0, 1 )
|
bg_color = Color( 0, 0, 0, 1 )
|
||||||
border_width_left = 2
|
border_width_left = 2
|
||||||
border_width_top = 2
|
border_width_top = 2
|
||||||
|
@ -71,7 +71,7 @@ corner_radius_top_right = 5
|
||||||
corner_radius_bottom_right = 5
|
corner_radius_bottom_right = 5
|
||||||
corner_radius_bottom_left = 5
|
corner_radius_bottom_left = 5
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=7]
|
[sub_resource type="StyleBoxFlat" id=13]
|
||||||
content_margin_left = 7.0
|
content_margin_left = 7.0
|
||||||
content_margin_right = 7.0
|
content_margin_right = 7.0
|
||||||
content_margin_top = 5.0
|
content_margin_top = 5.0
|
||||||
|
@ -82,7 +82,7 @@ corner_radius_top_right = 5
|
||||||
corner_radius_bottom_right = 5
|
corner_radius_bottom_right = 5
|
||||||
corner_radius_bottom_left = 5
|
corner_radius_bottom_left = 5
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=8]
|
[sub_resource type="StyleBoxFlat" id=14]
|
||||||
content_margin_left = 7.0
|
content_margin_left = 7.0
|
||||||
content_margin_right = 7.0
|
content_margin_right = 7.0
|
||||||
content_margin_top = 5.0
|
content_margin_top = 5.0
|
||||||
|
@ -93,13 +93,13 @@ corner_radius_top_right = 5
|
||||||
corner_radius_bottom_right = 5
|
corner_radius_bottom_right = 5
|
||||||
corner_radius_bottom_left = 5
|
corner_radius_bottom_left = 5
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=18]
|
[sub_resource type="StyleBoxFlat" id=15]
|
||||||
bg_color = Color( 0.294118, 0.294118, 0.294118, 1 )
|
bg_color = Color( 0.294118, 0.294118, 0.294118, 1 )
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=19]
|
[sub_resource type="StyleBoxFlat" id=16]
|
||||||
bg_color = Color( 0.172549, 0.172549, 0.172549, 1 )
|
bg_color = Color( 0.172549, 0.172549, 0.172549, 1 )
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=16]
|
[sub_resource type="StyleBoxFlat" id=17]
|
||||||
content_margin_left = 5.0
|
content_margin_left = 5.0
|
||||||
content_margin_right = 5.0
|
content_margin_right = 5.0
|
||||||
content_margin_top = 5.0
|
content_margin_top = 5.0
|
||||||
|
@ -114,7 +114,7 @@ corner_radius_top_left = 5
|
||||||
corner_radius_top_right = 5
|
corner_radius_top_right = 5
|
||||||
corner_radius_bottom_right = 5
|
corner_radius_bottom_right = 5
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=17]
|
[sub_resource type="StyleBoxFlat" id=18]
|
||||||
content_margin_left = 5.0
|
content_margin_left = 5.0
|
||||||
content_margin_right = 5.0
|
content_margin_right = 5.0
|
||||||
content_margin_top = 5.0
|
content_margin_top = 5.0
|
||||||
|
@ -133,10 +133,10 @@ Button/colors/font_color_hover = Color( 0.94, 0.94, 0.94, 1 )
|
||||||
Button/colors/font_color_pressed = Color( 1, 1, 1, 1 )
|
Button/colors/font_color_pressed = Color( 1, 1, 1, 1 )
|
||||||
Button/constants/hseparation = 2
|
Button/constants/hseparation = 2
|
||||||
Button/fonts/font = null
|
Button/fonts/font = null
|
||||||
Button/styles/disabled = SubResource( 2 )
|
Button/styles/disabled = SubResource( 1 )
|
||||||
Button/styles/focus = SubResource( 3 )
|
Button/styles/focus = SubResource( 2 )
|
||||||
Button/styles/hover = SubResource( 4 )
|
Button/styles/hover = SubResource( 3 )
|
||||||
Button/styles/normal = SubResource( 1 )
|
Button/styles/normal = SubResource( 4 )
|
||||||
Button/styles/pressed = SubResource( 5 )
|
Button/styles/pressed = SubResource( 5 )
|
||||||
CheckBox/colors/font_color = Color( 0.88, 0.88, 0.88, 1 )
|
CheckBox/colors/font_color = Color( 0.88, 0.88, 0.88, 1 )
|
||||||
CheckBox/colors/font_color_disabled = Color( 0.9, 0.9, 0.9, 0.2 )
|
CheckBox/colors/font_color_disabled = Color( 0.9, 0.9, 0.9, 0.2 )
|
||||||
|
@ -150,12 +150,12 @@ CheckBox/icons/checked = null
|
||||||
CheckBox/icons/radio_checked = null
|
CheckBox/icons/radio_checked = null
|
||||||
CheckBox/icons/radio_unchecked = null
|
CheckBox/icons/radio_unchecked = null
|
||||||
CheckBox/icons/unchecked = null
|
CheckBox/icons/unchecked = null
|
||||||
CheckBox/styles/disabled = SubResource( 10 )
|
CheckBox/styles/disabled = SubResource( 6 )
|
||||||
CheckBox/styles/focus = SubResource( 11 )
|
CheckBox/styles/focus = SubResource( 7 )
|
||||||
CheckBox/styles/hover = SubResource( 12 )
|
CheckBox/styles/hover = SubResource( 8 )
|
||||||
CheckBox/styles/hover_pressed = SubResource( 13 )
|
CheckBox/styles/hover_pressed = SubResource( 9 )
|
||||||
CheckBox/styles/normal = SubResource( 14 )
|
CheckBox/styles/normal = SubResource( 10 )
|
||||||
CheckBox/styles/pressed = SubResource( 15 )
|
CheckBox/styles/pressed = SubResource( 11 )
|
||||||
LineEdit/colors/clear_button_color = Color( 0.878431, 0.878431, 0.878431, 1 )
|
LineEdit/colors/clear_button_color = Color( 0.878431, 0.878431, 0.878431, 1 )
|
||||||
LineEdit/colors/clear_button_color_pressed = Color( 1, 1, 1, 1 )
|
LineEdit/colors/clear_button_color_pressed = Color( 1, 1, 1, 1 )
|
||||||
LineEdit/colors/cursor_color = Color( 0.94, 0.94, 0.94, 1 )
|
LineEdit/colors/cursor_color = Color( 0.94, 0.94, 0.94, 1 )
|
||||||
|
@ -166,9 +166,9 @@ LineEdit/colors/selection_color = Color( 0.584314, 0.415686, 0.972549, 0.462745
|
||||||
LineEdit/constants/minimum_spaces = 12
|
LineEdit/constants/minimum_spaces = 12
|
||||||
LineEdit/fonts/font = ExtResource( 2 )
|
LineEdit/fonts/font = ExtResource( 2 )
|
||||||
LineEdit/icons/clear = null
|
LineEdit/icons/clear = null
|
||||||
LineEdit/styles/focus = SubResource( 9 )
|
LineEdit/styles/focus = SubResource( 12 )
|
||||||
LineEdit/styles/normal = SubResource( 7 )
|
LineEdit/styles/normal = SubResource( 13 )
|
||||||
LineEdit/styles/read_only = SubResource( 8 )
|
LineEdit/styles/read_only = SubResource( 14 )
|
||||||
PopupMenu/colors/font_color = Color( 0.88, 0.88, 0.88, 1 )
|
PopupMenu/colors/font_color = Color( 0.88, 0.88, 0.88, 1 )
|
||||||
PopupMenu/colors/font_color_accel = Color( 0.7, 0.7, 0.7, 0.8 )
|
PopupMenu/colors/font_color_accel = Color( 0.7, 0.7, 0.7, 0.8 )
|
||||||
PopupMenu/colors/font_color_disabled = Color( 0.4, 0.4, 0.4, 0.8 )
|
PopupMenu/colors/font_color_disabled = Color( 0.4, 0.4, 0.4, 0.8 )
|
||||||
|
@ -181,10 +181,10 @@ PopupMenu/icons/radio_checked = null
|
||||||
PopupMenu/icons/radio_unchecked = null
|
PopupMenu/icons/radio_unchecked = null
|
||||||
PopupMenu/icons/submenu = null
|
PopupMenu/icons/submenu = null
|
||||||
PopupMenu/icons/unchecked = null
|
PopupMenu/icons/unchecked = null
|
||||||
PopupMenu/styles/hover = SubResource( 18 )
|
PopupMenu/styles/hover = SubResource( 15 )
|
||||||
PopupMenu/styles/labeled_separator_left = null
|
PopupMenu/styles/labeled_separator_left = null
|
||||||
PopupMenu/styles/labeled_separator_right = null
|
PopupMenu/styles/labeled_separator_right = null
|
||||||
PopupMenu/styles/panel = SubResource( 19 )
|
PopupMenu/styles/panel = SubResource( 16 )
|
||||||
PopupMenu/styles/panel_disabled = null
|
PopupMenu/styles/panel_disabled = null
|
||||||
PopupMenu/styles/separator = null
|
PopupMenu/styles/separator = null
|
||||||
TextEdit/colors/background_color = Color( 0, 0, 0, 0 )
|
TextEdit/colors/background_color = Color( 0, 0, 0, 0 )
|
||||||
|
@ -223,6 +223,6 @@ TextEdit/icons/folded = null
|
||||||
TextEdit/icons/space = null
|
TextEdit/icons/space = null
|
||||||
TextEdit/icons/tab = null
|
TextEdit/icons/tab = null
|
||||||
TextEdit/styles/completion = null
|
TextEdit/styles/completion = null
|
||||||
TextEdit/styles/focus = SubResource( 16 )
|
TextEdit/styles/focus = SubResource( 17 )
|
||||||
TextEdit/styles/normal = SubResource( 17 )
|
TextEdit/styles/normal = SubResource( 18 )
|
||||||
TextEdit/styles/read_only = null
|
TextEdit/styles/read_only = null
|
||||||
|
|
30
terminal.gd
30
terminal.gd
|
@ -27,21 +27,21 @@ func _ready():
|
||||||
command_dropdown.theme = Theme.new()
|
command_dropdown.theme = Theme.new()
|
||||||
command_dropdown.theme.default_font = load("res://fonts/default.tres")
|
command_dropdown.theme.default_font = load("res://fonts/default.tres")
|
||||||
|
|
||||||
func _input(event):
|
#func _input(event):
|
||||||
if history.size() > 0:
|
# if history.size() > 0:
|
||||||
if event.is_action_pressed("ui_up"):
|
# if event.is_action_pressed("ui_up"):
|
||||||
if history_position > 0:
|
# if history_position > 0:
|
||||||
history_position -= 1
|
# history_position -= 1
|
||||||
input.text = history[history_position]
|
# input.text = history[history_position]
|
||||||
input.caret_position = input.text.length()
|
# input.caret_position = input.text.length()
|
||||||
# This prevents the Input taking the arrow as a "skip to beginning" command.
|
# # This prevents the Input taking the arrow as a "skip to beginning" command.
|
||||||
get_tree().set_input_as_handled()
|
# get_tree().set_input_as_handled()
|
||||||
if event.is_action_pressed("ui_down"):
|
# if event.is_action_pressed("ui_down"):
|
||||||
if history_position < history.size()-1:
|
# if history_position < history.size()-1:
|
||||||
history_position += 1
|
# history_position += 1
|
||||||
input.text = history[history_position]
|
# input.text = history[history_position]
|
||||||
input.caret_position = input.text.length()
|
# input.caret_position = input.text.length()
|
||||||
get_tree().set_input_as_handled()
|
# get_tree().set_input_as_handled()
|
||||||
|
|
||||||
func load_command(id):
|
func load_command(id):
|
||||||
input.text = premade_commands[id]
|
input.text = premade_commands[id]
|
||||||
|
|
|
@ -2,23 +2,21 @@
|
||||||
|
|
||||||
[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://fonts/monospace.tres" type="DynamicFont" id=4]
|
||||||
[ext_resource path="res://text_editor.tscn" type="PackedScene" id=5]
|
[ext_resource path="res://text_editor.tscn" type="PackedScene" id=5]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=1]
|
|
||||||
bg_color = Color( 0, 0, 0, 1 )
|
|
||||||
border_width_left = 2
|
|
||||||
border_width_top = 2
|
|
||||||
border_width_right = 2
|
|
||||||
border_width_bottom = 2
|
|
||||||
border_color = Color( 0.145098, 0.388235, 0.937255, 1 )
|
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=2]
|
[sub_resource type="StyleBoxFlat" id=2]
|
||||||
|
content_margin_left = 5.0
|
||||||
|
content_margin_right = 5.0
|
||||||
|
content_margin_top = 5.0
|
||||||
|
content_margin_bottom = 5.0
|
||||||
bg_color = Color( 0, 0, 0, 1 )
|
bg_color = Color( 0, 0, 0, 1 )
|
||||||
border_color = Color( 0.415686, 0.333333, 1, 1 )
|
border_color = Color( 0.415686, 0.333333, 1, 1 )
|
||||||
|
|
||||||
[node name="Terminal" type="Container"]
|
[node name="Terminal" type="Container"]
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
|
mouse_filter = 1
|
||||||
script = ExtResource( 2 )
|
script = ExtResource( 2 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
|
@ -36,8 +34,8 @@ __meta__ = {
|
||||||
margin_right = 1920.0
|
margin_right = 1920.0
|
||||||
margin_bottom = 1049.0
|
margin_bottom = 1049.0
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
custom_styles/focus = SubResource( 1 )
|
|
||||||
custom_styles/normal = SubResource( 2 )
|
custom_styles/normal = SubResource( 2 )
|
||||||
|
custom_fonts/normal_font = ExtResource( 4 )
|
||||||
scroll_following = true
|
scroll_following = true
|
||||||
|
|
||||||
[node name="InputLine" type="HBoxContainer" parent="Control"]
|
[node name="InputLine" type="HBoxContainer" parent="Control"]
|
||||||
|
@ -74,6 +72,7 @@ text = "Clear"
|
||||||
|
|
||||||
[node name="TextEditor" parent="." instance=ExtResource( 5 )]
|
[node name="TextEditor" parent="." instance=ExtResource( 5 )]
|
||||||
visible = false
|
visible = false
|
||||||
|
mouse_filter = 1
|
||||||
syntax_highlighting = false
|
syntax_highlighting = false
|
||||||
[connection signal="text_entered" from="Control/InputLine/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"]
|
||||||
|
|
Loading…
Reference in a new issue