add basic functionality for adding group items

This commit is contained in:
2023-03-06 16:33:46 +03:00
parent 8fdec75ec9
commit f0ce658518
8 changed files with 109 additions and 7 deletions

35
UI/Main/GroupsView.gd Normal file
View File

@ -0,0 +1,35 @@
extends VBoxContainer
@onready var group_menus_container: VBoxContainer = %GroupMenusContainer
@onready var new_group_button: Button = %NewGroupButton
@onready var group_edit_dialog: GroupEditDialog = %GroupEditDialog
const GROUP_MENU_SCENE := preload("res://UI/Components/GroupMenu.tscn")
var group_list_metadata: GroupListMetadata
func _ready() -> void:
group_list_metadata = GroupListMetadata.new()
new_group_button.pressed.connect(add_new_group)
func add_new_group():
group_edit_dialog.clear()
group_edit_dialog.ok_button_text = "Create"
group_edit_dialog.confirmed.connect(
func():
var gm := group_edit_dialog.group_metadata
# TODO: hack, redo later
var group_name := group_edit_dialog.name_line_edit.text
var group_menu: GroupMenu = GROUP_MENU_SCENE.instantiate()
group_menus_container.add_child(group_menu)
group_menu.setup_from_metadata(group_name, gm)
)
group_edit_dialog.show()

View File

@ -1,4 +1,7 @@
[gd_scene format=3 uid="uid://bf464y0q4l67h"]
[gd_scene load_steps=3 format=3 uid="uid://bf464y0q4l67h"]
[ext_resource type="Script" path="res://UI/Main/GroupsView.gd" id="1_15bdc"]
[ext_resource type="PackedScene" uid="uid://du25gr7aoh34m" path="res://UI/Dialogs/GroupEditDialog.tscn" id="1_fqa62"]
[node name="GroupsView" type="VBoxContainer"]
anchors_preset = 15
@ -6,6 +9,7 @@ anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_15bdc")
metadata/_edit_use_anchors_ = true
[node name="Label" type="Label" parent="."]
@ -22,6 +26,7 @@ layout_mode = 2
size_flags_vertical = 3
[node name="GroupMenusContainer" type="VBoxContainer" parent="PanelContainer/ScrollContainer"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
@ -29,5 +34,9 @@ size_flags_horizontal = 3
layout_mode = 2
[node name="NewGroupButton" type="Button" parent="CenterContainer"]
unique_name_in_owner = true
layout_mode = 2
text = "New Group"
[node name="GroupEditDialog" parent="." instance=ExtResource("1_fqa62")]
unique_name_in_owner = true