From c5a4a655bf3ce96bebd79ded657b93423111b421 Mon Sep 17 00:00:00 2001 From: Rodolphe Suescun Date: Wed, 14 Jul 2021 12:17:01 +0200 Subject: [PATCH] Started modifying the About dialog --- material_maker/windows/about/about.gd | 18 +- material_maker/windows/about/about.tscn | 308 ++++++++++++++-------- material_maker/windows/about/facebook.png | Bin 539 -> 6155 bytes 3 files changed, 212 insertions(+), 114 deletions(-) diff --git a/material_maker/windows/about/about.gd b/material_maker/windows/about/about.gd index 5c739049..71d5801e 100644 --- a/material_maker/windows/about/about.gd +++ b/material_maker/windows/about/about.gd @@ -1,11 +1,25 @@ extends WindowDialog +onready var application_name_label = $HBoxContainer/VBoxContainer/HBoxContainer3/VBoxContainer/ApplicationName +onready var authors_grid = $HBoxContainer/VBoxContainer/VBoxContainer/Authors + +const CONTRIBUTORS = [ + { name="Rodolphe Suescun", contribution="Lead developer" }, + { name="Hugo Locurcio", contribution="Lots of contributions, mostly related to UI and rendering" }, +] func _ready() -> void: if Engine.editor_hint: - $VBoxContainer/VBoxContainer1/ApplicationName.text = "Material Maker" + application_name_label.text = "Material Maker" else: - $VBoxContainer/VBoxContainer1/ApplicationName.text = ProjectSettings.get_setting("application/config/name")+" v"+ProjectSettings.get_setting("application/config/actual_release") + application_name_label.text = ProjectSettings.get_setting("application/config/name")+" v"+ProjectSettings.get_setting("application/config/actual_release") + for c in CONTRIBUTORS: + var label : Label = Label.new() + label.text = c.name + authors_grid.add_child(label) + label = Label.new() + label.text = c.contribution + authors_grid.add_child(label) func open_url(url) -> void: OS.shell_open(url) diff --git a/material_maker/windows/about/about.tscn b/material_maker/windows/about/about.tscn index feed715c..02ddd334 100644 --- a/material_maker/windows/about/about.tscn +++ b/material_maker/windows/about/about.tscn @@ -11,42 +11,40 @@ [ext_resource path="res://material_maker/windows/about/facebook.png" type="Texture" id=9] [node name="About" type="WindowDialog"] -margin_right = 200.0 -margin_bottom = 289.0 +margin_right = 664.0 +margin_bottom = 377.0 window_title = "About..." script = ExtResource( 1 ) +__meta__ = { +"_edit_use_anchors_": false +} -[node name="VBoxContainer" type="VBoxContainer" parent="."] +[node name="HBoxContainer" type="HBoxContainer" parent="."] anchor_right = 1.0 anchor_bottom = 1.0 -margin_left = 10.0 -margin_top = 10.0 -margin_right = -9.0 -margin_bottom = -8.0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="VBoxContainer" type="VBoxContainer" parent="HBoxContainer"] +margin_right = 612.0 +margin_bottom = 377.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 custom_constants/separation = 8 __meta__ = { "_edit_use_anchors_": false } -[node name="VBoxContainer1" type="VBoxContainer" parent="VBoxContainer"] -margin_left = 43.0 -margin_right = 138.0 -margin_bottom = 99.0 -size_flags_horizontal = 4 -size_flags_vertical = 2 -custom_constants/separation = 5 +[node name="HBoxContainer3" type="HBoxContainer" parent="HBoxContainer/VBoxContainer"] +margin_left = 94.0 +margin_right = 517.0 +margin_bottom = 80.0 +size_flags_horizontal = 6 -[node name="ApplicationName" type="Label" parent="VBoxContainer/VBoxContainer1"] -margin_right = 95.0 -margin_bottom = 14.0 -text = "Material Maker" -align = 1 - -[node name="MMLogo" type="TextureRect" parent="VBoxContainer/VBoxContainer1"] -margin_left = 7.0 -margin_top = 19.0 -margin_right = 87.0 -margin_bottom = 99.0 +[node name="MMLogo" type="TextureRect" parent="HBoxContainer/VBoxContainer/HBoxContainer3"] +margin_right = 80.0 +margin_bottom = 80.0 rect_min_size = Vector2( 80, 80 ) size_flags_horizontal = 4 size_flags_vertical = 3 @@ -54,15 +52,64 @@ texture = ExtResource( 6 ) expand = true stretch_mode = 1 -[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer"] -margin_left = 30.0 -margin_top = 123.0 -margin_right = 151.0 -margin_bottom = 155.0 -size_flags_horizontal = 4 -size_flags_vertical = 6 +[node name="Control" type="Control" parent="HBoxContainer/VBoxContainer/HBoxContainer3"] +margin_left = 84.0 +margin_right = 104.0 +margin_bottom = 80.0 +rect_min_size = Vector2( 20, 0 ) -[node name="Godot" type="TextureButton" parent="VBoxContainer/HBoxContainer2"] +[node name="VBoxContainer" type="VBoxContainer" parent="HBoxContainer/VBoxContainer/HBoxContainer3"] +margin_left = 108.0 +margin_top = 20.0 +margin_right = 423.0 +margin_bottom = 59.0 +size_flags_vertical = 4 + +[node name="ApplicationName" type="Label" parent="HBoxContainer/VBoxContainer/HBoxContainer3/VBoxContainer"] +margin_right = 95.0 +margin_bottom = 14.0 +size_flags_horizontal = 0 +size_flags_vertical = 0 +text = "Material Maker" +align = 1 + +[node name="Control" type="Control" parent="HBoxContainer/VBoxContainer/HBoxContainer3/VBoxContainer"] +margin_top = 18.0 +margin_right = 315.0 +margin_bottom = 21.0 +rect_min_size = Vector2( 0, 3 ) + +[node name="Copyright" type="Label" parent="HBoxContainer/VBoxContainer/HBoxContainer3/VBoxContainer"] +margin_top = 25.0 +margin_right = 315.0 +margin_bottom = 39.0 +size_flags_horizontal = 0 +size_flags_vertical = 6 +text = "© 2018-2021 Rodolphe Suescun and contributors" +align = 1 + +[node name="VBoxContainer" type="TabContainer" parent="HBoxContainer/VBoxContainer"] +margin_top = 88.0 +margin_right = 612.0 +margin_bottom = 369.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="Authors" type="GridContainer" parent="HBoxContainer/VBoxContainer/VBoxContainer"] +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = 4.0 +margin_top = 32.0 +margin_right = -4.0 +margin_bottom = -4.0 +custom_constants/hseparation = 30 +columns = 2 + +[node name="Godot" type="HBoxContainer" parent="HBoxContainer/VBoxContainer/VBoxContainer/Authors"] +margin_right = 125.0 +margin_bottom = 32.0 + +[node name="Godot" type="TextureButton" parent="HBoxContainer/VBoxContainer/VBoxContainer/Authors/Godot"] margin_right = 32.0 margin_bottom = 32.0 rect_min_size = Vector2( 32, 32 ) @@ -71,96 +118,133 @@ texture_normal = ExtResource( 4 ) expand = true stretch_mode = 4 -[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer2"] +[node name="Label" type="Label" parent="HBoxContainer/VBoxContainer/VBoxContainer/Authors/Godot"] margin_left = 36.0 -margin_right = 121.0 -margin_bottom = 31.0 -text = "Based on -Godot Engine" +margin_top = 9.0 +margin_right = 125.0 +margin_bottom = 23.0 +text = " Godot Engine" align = 1 -[node name="VBoxContainer3" type="VBoxContainer" parent="VBoxContainer"] -margin_left = 22.0 -margin_top = 179.0 -margin_right = 158.0 -margin_bottom = 271.0 -size_flags_horizontal = 4 -size_flags_vertical = 8 -custom_constants/separation = 4 +[node name="Label" type="Label" parent="HBoxContainer/VBoxContainer/VBoxContainer/Authors"] +margin_left = 155.0 +margin_top = 9.0 +margin_right = 604.0 +margin_bottom = 23.0 +size_flags_horizontal = 3 +text = "99% of Material Maker's code is the awesome Godot Engine" +autowrap = true -[node name="RZLogo" type="TextureRect" parent="VBoxContainer/VBoxContainer3"] -margin_left = 36.0 -margin_right = 100.0 -margin_bottom = 64.0 -rect_min_size = Vector2( 64, 64 ) +[node name="License" type="TextEdit" parent="HBoxContainer/VBoxContainer/VBoxContainer"] +visible = false +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = 4.0 +margin_top = 32.0 +margin_right = -4.0 +margin_bottom = -4.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 +text = "Copyright (c) 2018-2021 Rodolphe Suescun and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE." +readonly = true +wrap_enabled = true + +[node name="HBoxContainer" type="HBoxContainer" parent="HBoxContainer/VBoxContainer"] +margin_top = 377.0 +margin_right = 612.0 +margin_bottom = 377.0 +size_flags_horizontal = 3 + +[node name="SocialNetworks" type="VBoxContainer" parent="HBoxContainer"] +margin_left = 616.0 +margin_right = 664.0 +margin_bottom = 377.0 +size_flags_vertical = 3 + +[node name="RZLogo" type="TextureRect" parent="HBoxContainer/SocialNetworks"] +margin_top = 5.0 +margin_right = 48.0 +margin_bottom = 53.0 +rect_min_size = Vector2( 48, 48 ) size_flags_horizontal = 4 -size_flags_vertical = 4 +size_flags_vertical = 6 texture = ExtResource( 8 ) expand = true -[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/VBoxContainer3"] -margin_top = 68.0 -margin_right = 136.0 -margin_bottom = 92.0 -size_flags_horizontal = 4 - -[node name="Facebook" type="TextureButton" parent="VBoxContainer/VBoxContainer3/HBoxContainer"] -margin_right = 24.0 -margin_bottom = 24.0 -rect_min_size = Vector2( 24, 24 ) -hint_tooltip = "Facebook" -mouse_default_cursor_shape = 2 -texture_normal = ExtResource( 9 ) -expand = true -stretch_mode = 4 - -[node name="Twitter" type="TextureButton" parent="VBoxContainer/VBoxContainer3/HBoxContainer"] -margin_left = 28.0 -margin_right = 52.0 -margin_bottom = 24.0 -rect_min_size = Vector2( 24, 24 ) -hint_tooltip = "Twitter" -mouse_default_cursor_shape = 2 -texture_normal = ExtResource( 3 ) -expand = true -stretch_mode = 4 - -[node name="Youtube" type="TextureButton" parent="VBoxContainer/VBoxContainer3/HBoxContainer"] -margin_left = 56.0 -margin_right = 80.0 -margin_bottom = 24.0 -rect_min_size = Vector2( 24, 24 ) -hint_tooltip = "YouTube" -mouse_default_cursor_shape = 2 -texture_normal = ExtResource( 7 ) -expand = true -stretch_mode = 4 - -[node name="Github" type="TextureButton" parent="VBoxContainer/VBoxContainer3/HBoxContainer"] -margin_left = 84.0 -margin_right = 108.0 -margin_bottom = 24.0 -rect_min_size = Vector2( 24, 24 ) -hint_tooltip = "GitHub" -mouse_default_cursor_shape = 2 -texture_normal = ExtResource( 2 ) -expand = true -stretch_mode = 4 - -[node name="ItchIo" type="TextureButton" parent="VBoxContainer/VBoxContainer3/HBoxContainer"] -margin_left = 112.0 -margin_right = 136.0 -margin_bottom = 24.0 -rect_min_size = Vector2( 24, 24 ) +[node name="ItchIo" type="TextureButton" parent="HBoxContainer/SocialNetworks"] +margin_top = 69.0 +margin_right = 48.0 +margin_bottom = 117.0 +rect_min_size = Vector2( 48, 48 ) hint_tooltip = "itch.io" mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 6 texture_normal = ExtResource( 5 ) expand = true stretch_mode = 4 -[connection signal="pressed" from="VBoxContainer/HBoxContainer2/Godot" to="." method="open_url" binds= [ "https://godotengine.org/" ]] -[connection signal="pressed" from="VBoxContainer/VBoxContainer3/HBoxContainer/Facebook" to="." method="open_url" binds= [ "https://www.facebook.com/RodzLabs" ]] -[connection signal="pressed" from="VBoxContainer/VBoxContainer3/HBoxContainer/Twitter" to="." method="open_url" binds= [ "https://twitter.com/R0dZill4" ]] -[connection signal="pressed" from="VBoxContainer/VBoxContainer3/HBoxContainer/Youtube" to="." method="open_url" binds= [ "https://www.youtube.com/channel/UCTDByv9i3ul_qQ98zUYlNAQ" ]] -[connection signal="pressed" from="VBoxContainer/VBoxContainer3/HBoxContainer/Github" to="." method="open_url" binds= [ "https://github.com/RodZill4/godot-procedural-textures" ]] -[connection signal="pressed" from="VBoxContainer/VBoxContainer3/HBoxContainer/ItchIo" to="." method="open_url" binds= [ "https://rodzilla.itch.io/material-maker" ]] +[node name="Github" type="TextureButton" parent="HBoxContainer/SocialNetworks"] +margin_top = 132.0 +margin_right = 48.0 +margin_bottom = 180.0 +rect_min_size = Vector2( 48, 48 ) +hint_tooltip = "GitHub" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 6 +texture_normal = ExtResource( 2 ) +expand = true +stretch_mode = 4 + +[node name="Twitter" type="TextureButton" parent="HBoxContainer/SocialNetworks"] +margin_top = 196.0 +margin_right = 48.0 +margin_bottom = 244.0 +rect_min_size = Vector2( 48, 48 ) +hint_tooltip = "Twitter" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 6 +texture_normal = ExtResource( 3 ) +expand = true +stretch_mode = 4 + +[node name="Youtube" type="TextureButton" parent="HBoxContainer/SocialNetworks"] +margin_top = 259.0 +margin_right = 48.0 +margin_bottom = 307.0 +rect_min_size = Vector2( 48, 48 ) +hint_tooltip = "YouTube" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 6 +texture_normal = ExtResource( 7 ) +expand = true +stretch_mode = 4 + +[node name="Facebook" type="TextureButton" parent="HBoxContainer/SocialNetworks"] +margin_top = 323.0 +margin_right = 48.0 +margin_bottom = 371.0 +rect_min_size = Vector2( 48, 48 ) +hint_tooltip = "Facebook" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 6 +texture_normal = ExtResource( 9 ) +expand = true +stretch_mode = 4 + +[connection signal="pressed" from="HBoxContainer/VBoxContainer/VBoxContainer/Authors/Godot/Godot" to="." method="open_url" binds= [ "https://godotengine.org/" ]] +[connection signal="pressed" from="HBoxContainer/SocialNetworks/ItchIo" to="." method="open_url" binds= [ "https://rodzilla.itch.io/material-maker" ]] +[connection signal="pressed" from="HBoxContainer/SocialNetworks/Github" to="." method="open_url" binds= [ "https://github.com/RodZill4/godot-procedural-textures" ]] +[connection signal="pressed" from="HBoxContainer/SocialNetworks/Twitter" to="." method="open_url" binds= [ "https://twitter.com/R0dZill4" ]] +[connection signal="pressed" from="HBoxContainer/SocialNetworks/Youtube" to="." method="open_url" binds= [ "https://www.youtube.com/channel/UCTDByv9i3ul_qQ98zUYlNAQ" ]] +[connection signal="pressed" from="HBoxContainer/SocialNetworks/Facebook" to="." method="open_url" binds= [ "https://www.facebook.com/RodzLabs" ]] diff --git a/material_maker/windows/about/facebook.png b/material_maker/windows/about/facebook.png index b98896a537045b18c5d2d1f9a882900635380795..0c4fc54154abf56fe9c24d94b959123bd1282066 100644 GIT binary patch literal 6155 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 delta 528 zcmV+r0`L8cFq;G+iBL{Q4GJ0x0000DNk~Le0000$0000$2m=5B0G+pi?33;j7=LC^ zOjJbxXZHX9|2tWjI$NEDmApGynK)ONOK79!>+)rKs*aq$L|~o0#@zY({FkJ}cZ;{< z=kc(-)Y{+c@bdSbt<1m3+{Dh{lA^^|ajL1b&VZD^(Aeg0g|>N%xTLSkMPr|1d$DAB zsV>_3`2YX_0d!JMQvg8b*k%9#0Dl2uOGiWihy@);0003&Nklln