diff options
author | rom <romangraef@gmail.com> | 2021-04-24 21:47:27 +0200 |
---|---|---|
committer | rom <romangraef@gmail.com> | 2021-04-24 21:47:27 +0200 |
commit | 5d74b160790f35f201f2dd1876b84201a8be9534 (patch) | |
tree | 6b38166cb8e0e5e49f3b476e460b7896c36dddfc /components | |
parent | bcbbc97af8a9c1d3620c45df8e8d26aa4223524b (diff) | |
download | ldjam48-5d74b160790f35f201f2dd1876b84201a8be9534.tar.gz ldjam48-5d74b160790f35f201f2dd1876b84201a8be9534.tar.bz2 ldjam48-5d74b160790f35f201f2dd1876b84201a8be9534.zip |
dynamic button size
Diffstat (limited to 'components')
-rw-r--r-- | components/buttontest.gd | 20 | ||||
-rw-r--r-- | components/buttontest.tscn | 20 |
2 files changed, 29 insertions, 11 deletions
diff --git a/components/buttontest.gd b/components/buttontest.gd new file mode 100644 index 0000000..0303480 --- /dev/null +++ b/components/buttontest.gd @@ -0,0 +1,20 @@ +extends Node2D +class_name ButtonTest +export var text = "Hello, Button" +onready var stretcher : Node2D = $Middle +onready var left : Node2D = $Left +onready var right : Node2D = $Right +onready var font_source : RichTextLabel = $FontSource +const BASE_WIDTH = 6 + +func _ready(): + var label = Label.new() + label.text = text + label.theme = font_source.theme + add_child(label) + label.rect_position = -label.rect_size / 2 + var width = label.rect_size.x + stretcher.scale.x = width / BASE_WIDTH + left.position.x = -label.rect_size.x / 2 - BASE_WIDTH + right.position.x = label.rect_size.x / 2 + diff --git a/components/buttontest.tscn b/components/buttontest.tscn index d0d4e6b..cd9ff17 100644 --- a/components/buttontest.tscn +++ b/components/buttontest.tscn @@ -1,9 +1,10 @@ -[gd_scene load_steps=7 format=2] +[gd_scene load_steps=8 format=2] [ext_resource path="res://textures/components/button/middle.png" type="Texture" id=1] [ext_resource path="res://textures/components/button/right.png" type="Texture" id=2] [ext_resource path="res://fonts/Fipps-Regular.otf" type="DynamicFontData" id=3] [ext_resource path="res://textures/components/button/left.png" type="Texture" id=4] +[ext_resource path="res://components/buttontest.gd" type="Script" id=5] [sub_resource type="DynamicFont" id=1] outline_color = Color( 0, 0, 0, 1 ) @@ -12,7 +13,8 @@ font_data = ExtResource( 3 ) [sub_resource type="Theme" id=2] default_font = SubResource( 1 ) -[node name="Node2D" type="Node2D"] +[node name="ButtonTest" type="Node2D"] +script = ExtResource( 5 ) [node name="Left" type="Sprite" parent="."] position = Vector2( -100, 0 ) @@ -25,22 +27,18 @@ scale = Vector2( 4, 4 ) texture = ExtResource( 2 ) [node name="Middle" type="Sprite" parent="."] +position = Vector2( -0.5, 0 ) scale = Vector2( 30.321, 4 ) texture = ExtResource( 1 ) -[node name="RichTextLabel" type="RichTextLabel" parent="."] -anchor_left = 0.5 -anchor_top = 0.5 -anchor_right = 0.5 -anchor_bottom = 0.5 -margin_left = -31.9373 -margin_top = -19.027 -margin_right = 76.0627 -margin_bottom = 27.973 +[node name="FontSource" type="RichTextLabel" parent="."] grow_horizontal = 2 grow_vertical = 2 +rect_clip_content = false +size_flags_horizontal = 3 theme = SubResource( 2 ) text = "Menu" +scroll_active = false __meta__ = { "_edit_use_anchors_": false } |