Adds missing data
This commit is contained in:
parent
e6391d9fdd
commit
53cdcc3433
620 changed files with 47293 additions and 151 deletions
65
addons/cyclops_level_builder/controls/tree/cyclops_tree.gd
Normal file
65
addons/cyclops_level_builder/controls/tree/cyclops_tree.gd
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
@tool
|
||||
extends PanelContainer
|
||||
class_name CyclopsTree
|
||||
|
||||
@export var node_display_component:PackedScene
|
||||
|
||||
var model:AbstractCyclopsTreeModel:
|
||||
get:
|
||||
return model
|
||||
set(value):
|
||||
if model == value:
|
||||
return
|
||||
|
||||
if model:
|
||||
model.tree_nodes_inserted.disconnect(on_tree_nodes_inserted)
|
||||
model.tree_nodes_removed.disconnect(on_tree_nodes_removed)
|
||||
model.refresh_node.disconnect(on_refresh_node)
|
||||
model.tree_node_changed.disconnect(on_tree_node_changed)
|
||||
model.tree_structure_changed.disconnect(on_tree_structure_changed)
|
||||
|
||||
model = value
|
||||
|
||||
if model:
|
||||
model.tree_nodes_inserted.connect(on_tree_nodes_inserted)
|
||||
model.tree_nodes_removed.connect(on_tree_nodes_removed)
|
||||
model.refresh_node.connect(on_refresh_node)
|
||||
model.tree_node_changed.connect(on_tree_node_changed)
|
||||
model.tree_structure_changed.connect(on_tree_structure_changed)
|
||||
|
||||
rebuild_tree()
|
||||
|
||||
func on_tree_nodes_inserted(parent_node:Object, child_nodes:Array[Object], child_node_indices:PackedInt32Array):
|
||||
pass
|
||||
|
||||
func on_tree_nodes_removed(parent_node:Object, child_nodes:Array[Object], child_node_indices:PackedInt32Array):
|
||||
pass
|
||||
|
||||
func on_refresh_node(old_node:Object, new_node:Object):
|
||||
pass
|
||||
|
||||
func on_tree_node_changed(node:Object):
|
||||
pass
|
||||
|
||||
func on_tree_structure_changed():
|
||||
rebuild_tree()
|
||||
|
||||
func rebuild_tree():
|
||||
for child in get_children():
|
||||
remove_child(child)
|
||||
child.queue_free()
|
||||
|
||||
if !model:
|
||||
return
|
||||
|
||||
model.get_root()
|
||||
pass
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
Loading…
Add table
Add a link
Reference in a new issue